翻译自:CFD-online
帖子地址:http://www.cfd-online.com/Forums/openfoam-solving/126777-chtmultiregionsimplefoam-heat-source-not-boundary.html
Antimony:
Foamers大家好
一个简单的问题—我注意到chtMultiRegionSimpleFoam案例将热源施加在面片上(PS:我觉得面片等同于边界)
我跟着案例操作并且尝试将一个主体(比如方块)悬浮在流体域中。当我尝试将这个方块作为一个热源时,我不能启用这个求解器。(求解器似乎完全没有将这个考虑进去)。
我已经查找了整个论坛的线索,但是我没有发现任何这个问题的答案。谁能告诉我如何克服这个问题吗?难道是这个求解器的限制亦或是我忽略了什么吗?
感谢任何建议。
非常感谢!
祝好
Antimony
Antimony:
大家好
我不知道我的问题是否清楚因此我重新表述并且问问题如下:
我的问题基本上是这样:我有一个固体箱子(被叫做box)在流体域中(被叫做domain0)。我应该如何设置一个热源的热流密度在固体域和流体域分离的面上?我想要理解两个区域的温度分布。
我如何设置一个热流密度或者热源在挡板上,特别是对于compressible::turbulentTemperatureCoupledBaffleMix ed类型?
亦或者我能使用一些像compressible::turbulentHeatFluxTemperature或者指定热源的东西?
感谢任何建议。
祝好
Antimony
tomf:
你好,Antimony
我不确定是否是边界的变化,看起来似乎不是直接改变边界。我认为你可以使用fvOptions框架直接为整个固体域指定热源(或者分开它)。这个传热过程从/到流体将使用turbulentTemperatureCoupledBaffleMixed边界。
祝好运
Tom
Antimony:
你好,Tom
非常感谢你的回复!至少我现在有一些思路去思考这个问题。
我已经尝试了turbulentHeatFluxTemperature方法并且在两面都指定了相同的热流密度。然而在交界面处的结果不正确。不幸的是,在交界面处,取决于你在固体侧还是流体侧,对于一个500W/m2的热源(仅作为测试值),温度不同并且温度差异较大(>30K)。无论你怎么看,在交界面上的温度都应该只有一个值对吗?
几个补充的问题思考:
- 根据你的建议,如果我想要使用一个热流密度,我就需要将它转换为一个体热源?
- 我现在是OF 2.1.x版本。不幸的是,在这个时候,我不能升级2.2.x发行版,因此fvOption这个选项不适合我,至少暂时是这样。有可以应用体热源而无需使用fvOptions的解决建议吗?我猜测有一些像interFoam求解器下的damBreak算例一样的案例,但是我不知道应该如何设置到体热源上。除非我不得不修改求解器本身?
- 我也已经阅读了一些旧的发布的帖子,特别是来自OF 1.6版本的。里面有一种被称为solidWallHeatFluxTemperature的边界条件并且他们可以指定热流密度。从所有发布的帖子,它似乎是一个便利的工具,不幸的是在OF 2.0版本使用temperatureCoupledBaffle将它替换了。给了非常有用的工具,我想他们已经将它合并在了什么新边界里面,不对吗?
-
最后,你们是否知道关于什么是refValue, refGradient和 valueFraction,实际上他们是怎么在turbulentTemperatureCoupledBaffleMixed被添加和运行的?我尝试查询源项但是我真的没办法理解它。并且如果我指定其中一个参数,求解器就不能运行因为它需要三个输入参数。我想在一般施加温度同时在另一半施加热流密度,然后看看会发生什么,但是因为这个错误,这个想法没有实现。
这么长的回复,实在对不起
再次感谢你们的观点,他们非常不错
祝好
Antimony
tomf:
你好
我认为我不能在所有事情上帮助你,但是我至少能尝试回答你的问题:
- 是的
- 你是否认真思考过,除了的确修改求解器
- 我不知道这个特殊的边界条件,所以我无法帮助你
-
从案例(of22x),我看见一些像这样的边界条件:
Code:
heater_to_bottomAir
{
type compressible::turbulentTemperatureCoupledBaffleMixed;
value uniform 300;
neighbourFieldName T;
kappa solidThermo;
kappaName none;
}
对于of21x我看见一些相似的东西。因此我不知道为什么你需要知道"refValue, refGradient, valueFraction"?他们依赖于你给定边界条件时候的输入值。我认为他们参考了此前一些混合边界类型的代码。因此我认为你不需要设置这些值。
希望能帮助你
祝好
Tom
Antimony:
你好,Tom
非常感谢你的再次回复!回复非常有用有给了我一个前进的方向。
我将在你说的基础上继续深入下去。
只想要你知道:对于turbulentTemperatureCoupledBaffleMixed边界条件,似乎有refValue, refGradient等。我同意你关于他们是由求解器自行计算的观点,但是如果你或者其他人有任何关于这些参数的信息,请满足我的好奇心。
再次非常感谢。如果我有任何进展,我会回来回复的。
祝好
Antimony
Antimony:
新年好,朋友们!
一个简单的问题(这个参考我原来发布的相似的主题:http://www.cfd-online.com/Forums/openfoam-solving/126777-chtmultiregionsimplefoam-heat-source-not-boundary.html)—还有其他人描述将一个热流密度施加到边界上吗?
我希望我没有发送垃圾信息。我只想知道是否有人继续深入这个并且给出建议
非常感谢
祝好
Antimony
skuznet:
你好,Antimony!
我现在正在设置固定温度,但是现在需要实际设定一个热流密度来替代。我不确定在OF当中是否有可能直接设定一个固定的热流密度,但是人们可以使用fixedGradient边界设置温度梯度
你是否已经这样设置了呢?
Sergey
Antimony:
你好,Sergey
对于我正在解决的一些其他问题,我使用compressible::turbulentHeatFluxTemperature,因为它允许你在热流密度(W/m2)和热源(W)之间选择
对于我正在解决的cht问题,我想在固体域和流体域的交界面设置一个热流密度。不幸的是,当我使用compressible::turbulentHeatFluxTemperature,在交界面上存在巨大的不连续。
我在这个论坛上得到的建议之一是使用体积热源,但是如果我使用了,它将会改变固体域的热传导方式。
结果,我现在卡在这里了。
如果你有什么想法,我非常高兴去尝试他们。我现在使用OF的2.1.x BTW版本。
祝好
Antimony
wyldckat:
大家好:
Antimony:我已经移到3帖下了,因为放在其他板块下会给人造成一点困惑。-http://www.cfd-online.com/Forums/openfoam/126652-conjugate-heat-transfer-openfoam.html。在这里讨论这个问题似乎更合适。一些关于你问题的问题,其他一些相似的问题我已经在其他地方询问了Sergey:
- 你是否开启了湍流模型?如果开启了,是哪一个湍流模型?
- 算例中壁面和流体之间的网格特征是怎么样的?是均匀网格还是考级壁面处更细致?
- 什么是接触面?来流速度是多少?
- 你的这个算例基于你的结论是否存在解析解?
- 你是否尝试了在这个示例算例中重新你的问题:
http://openfoamwiki.net/index.php/Getting_started_with_chtMultiRegionSimpleFoam_-_planeWall2D
—这是一个很好的简单的可以操作/改变的算例,他可以添加额外的解,可以更容易的分享。最重要的是,针对"plane wall"存在解析解。
祝好
Bruno
Antimony:
亲爱的Bruno:
感谢你的回复和移动帖子到更好的位置!
我首先回到你的最后一个问题?我认为从这里开始比较好。
是的,我已经下载和尝试了planeWall2D问题。事实上,我尝试使用那个算例来理解chtMultiRegionSimpleFoam求解器是如何工作的,特别是区域分离的情况。非常感谢!已经非常有帮助了。
很不幸的是,那个项目的边界条件和我想的非常不一样。
附件是我使用的将固体浸没在流体当中几何的快照。如你所见,我在交界面需要的边界条件和planeWall2D案例的边界条件不一样。事实上,在OF的chtMultiRegionSimpleFoam求解器默认案例中,没有任何例子使用热流密度,特别是在交界面上,我所想要的那种交界面上。
我非常感谢你所提出的任何指点。一些早期的建议是使用体积热源。我尽可能不使用那种方法因为我对于热量如何穿过固体的过程很感兴趣。
回答你的其他问题:
- 是的,我使用的是k-w SST湍流模型。
- 我在固体区域周围创建了更细的网格区域并且这个区域的网格比其他区域的网格更好。
- 固体是静止的。我知道我不能设置速度为0,特别是在将空气设置为理想气体模型的时候。因此我设置internalField的值为(0.01 0 0)。
- 我没得出这个算例的解析解。
再次感谢你的建议和帮助。
祝好
micpage18:
你好,Antimony
我有一个算例和你的很相似。你是否成功设置了体热源?
谢谢你
wyldckat:
大家伙!
@Antimony:对不起,在过去的几周我非常忙并且在论坛上有一长串的帖子需要我回复。
好的,我只能快速浏览了一下你的回复并且我认为"externalWallHeatFluxTemperature"边界条件是你正在寻找的。如何使用它的命令在一下命令文件相关的评论部分:
Code:
echo $FOAM_SRC/turbulenceModels/compressible/turbulenceModel/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.H
有疑问的时候,看一下这里展示的边界条件:
http://foam.sourceforge.net/docs/cpp/modules.html
这个边界条件的问题是,你不能使用网格到一个固体区域本身。
其他可能就是依赖"fvOptions"来创建一个特殊的cell-zone操作,比如在案例下的例子"heatTransfer/chtMultiRegionSimpleFoam/heatExchanger"。你可以找到几个可以运行的例子:
Code:
find $FOAM_TUTORIALS -name "fvOptions"
通过浏览可以使用的"fvOptions"类型,通过下面的命令列出文件夹:
Code:
echo $FOAM_SRC/fvOptions/constraints/
echo $FOAM_SRC/fvOptions/sources/
祝好
Bruno
kortak:
我有一个相似的问题需要解决,我想要模拟一个太阳辐射能量的热流密度到一个壁面表面。我是一个OpenFOAM的新手并且很快就会尝试这种模拟...因此我不管得到了好坏的结果,我都会回来回复这个帖子的。