DNS 计算报错
-
各位大佬,我现在正在用DNS求解器求解槽道湍流。
速度和压力设置如下:dimensions [0 1 -1 0 0 0 0]; internalField uniform (0 0 0); boundaryField { INLET { type fixedValue; value uniform (0.1616 0 0); } OUTLET { type zeroGradient; } wall_r { type cyclic; } GRID { type zeroGradient; } wall_l { type cyclic; } wall_u { type cyclic; } wall_d { type cyclic; }
压力:
dimensions [0 2 -2 0 0 0 0]; internalField uniform 0; boundaryField { INLET { type zeroGradient; } OUTLET { type zeroGradient; } wall_r { type cyclic; } GRID { type zeroGradient; } wall_l { type cyclic; } wall_u { type cyclic; } wall_d { type cyclic; } }
由于出口想设置成outflow,故选用zeroGradient条件。
但是当我去求解的时候发现报错提示不满足连续性方程--> FOAM FATAL ERROR: Continuity error cannot be removed by adjusting the outflow. Please check the velocity boundary conditions and/or run potentialFoam to initialise the outflow. Total flux : 0.0390532 Specified mass inflow : 5.18519e-225 Specified mass outflow : 1616 Adjustable mass outflow : 8.9386e-209 From function adjustPhi(surfaceScalarField&, const volVectorField&,volScalarField&) in file cfdTools/general/adjustPhi/adjustPhi.C at line 114. FOAM exiting
但当我使用potentialFoam试图建立一个初始场的时候发现会出现同样的错误
各位大佬,请问一下我这个错误出现的原因是什么呢,应该如何修复 -
Continuity error cannot be removed by adjusting the outflow.
这个肯定是边界条件的问题。你这个自己写的求解器?也有可能你的求解器边界条件没处理好。
这个是二阶DNS,是我师兄当时编译的,他做的是流动加传热。我把师兄的能量方程剔除掉之后计算的。当时他的这个求解器应该是没啥大问题吧 压力求解就是用的简单的piso循环,速度就是N-S方程...
你为什么不直接用pisoFoam/pimpleFoam呢?这个就能算2阶DNS。这是我之前用pisoFoam算的quasi-DNS