openfoam set fields
-
哪位大神用过set fields设置多边形的初始流体区域
 -
@子仲无未 用CAD画一个多面体,坐标要跟你的网格适配,保证这个多面体刚刚好包围了你想要的网格。然后将该多边形导出成 STL 格式,然后用 topoSet 将改多边形所包围的网格提取到一个 cellSet,topoSetDict大致是这样写:
{ name c0; type cellSet; action delete; source surfaceToCell; sourceInfo { file "constant/triSurface/block.stl"; outsidePoints (( 1.012 0.01 0.902)); //includeCut false; includeCut true; includeInside true; includeOutside false; nearDistance 0.0; curvature 0; } }
最后,在 setFieldsDict里,这样写:
defaultFieldValues ( volScalarFieldValue alpha 0 ); regions ( cellToCell { set c0 ; fieldValues ( volScalarFieldValue alpha 0.60 ) ; } );
用这种方法,可以做到对任意形状的网格区块设置初始场。
-
@xpqiu 谢谢啦,我先试试,不懂的再请教您。
-
@xpqiu 在 openfoam set fields 中说:
outsidePoints (( 1.012 0.01 0.902));指的是哪里点的坐标
-
@子仲无未 区域外的随便一个点
-
@xpqiu FOAM FATAL IO ERROR:
cannot open filefile: /root/101/damBreak-biaozhun/system/topoSetDict at line 0.
From function regIOobject::readStream() in file db/regIOobject/regIOobjectRead.C at line 87.
FOAM exiting
-
@xpqiu topoSetDict这个需要头文件吗?还是只要把你贴的代码写进去。
-
@子仲无未 需要头文件,你可以找一个topoSetDict来改一下
-
@xpqiu 好的,谢谢了,我把用到topoSetDict的例子都先看看。
-
@xpqiu 上面的问题已经解决了,多谢大神帮助。想问问您有没有搞过在twoPhaseEulerFoam里实现造波?
-
@子仲无未 没有,造波的一般都是用 interFoam吧? twoPhaseEulerFoam 这种求解器,界面捕捉应该不行吧
论坛登录问题反馈可联系 li.dy@dyfluid.com