大家好,下面是我模拟二维轴对称问题(楔形网格)时的残差输出数据:
# Residuals
# Time Ux Uy Uz
1 5.309251929100e-09 1.000000000000e+00 4.436625998480e-26
2 4.414663995710e-01 2.951341476950e-01 3.919150148100e-01
3 2.663688575780e-01 3.034687781910e-01 2.766193325110e-01
……
为何在Z方向会有残差的输出?Z方向只有一个网格厚度,按道理说,在第三维方向不会进行求解呀。现在我很疑惑,怀疑我做的是不是二维轴对称,请各位帮忙解答一下,谢谢
实际上这个是伪二维的情况,cyclic 边界的一种轴对称情况,z 向是求解的。
\frac{\partial}{\partial\theta}=0
前辈,我用的不是cyclic边界,而是wedge边界。你的意思是说,wedge边界实际上是cyclic边界的轴对称吗?其他软件,如Fluent计算二维轴对称也是这样的伪二维吗?我发现在这个不需要求解的第三维的速度场Uz很难收敛,而Ux和Uy收敛得比较好。这样一来,让我对OpenFOAM的二维轴对称模拟的准确度有点担心
第三维(周向)的速度并不一定是没有的。因此,对其进行解算是有必要的。在 OpenFOAM 的计算中,对于 wedge 边界的处理也是很复杂的,不过可以先看一部分:
template<>
tmp<scalarField> wedgeFvPatchField<scalar>::snGrad() const
{
return tmp<scalarField >(new scalarField(size(), 0.0));
}
实际上是作出了一定的限制。
对于这样的二维模拟的准确度,我看的文献大概在 5% 左右吧。理论本身是 OK 的。
另外,你可以参考一下 Fluent 里面的情况 https://www.cnblogs.com/LSCAX/p/6427156.html