PISO算法讨论
-
@李东岳 老师,还有几个问题向您请教。
1.
$ \triangledown p $离散后为啥要除以体积?

2.
这三段代码对应的应该是(3)、(4)、(5)都除以$ \Delta t$ 吧?

3.
icoFoam.C源代码中,
if (piso.momentumPredictor()) { solve(UEqn == -fvc::grad(p)); }// Non-orthogonal pressure corrector loop while (piso.correctNonOrthogonal())中
piso.momentumPredictor()和piso.correctNonOrthogonal()是在哪个文件中定义的?constant和system两个文件夹下没找到。4.
icoFoam.C源代码中,HbyA的定义为啥是
HbyA(constrainHbyA(rAU*UEqn.H(), U, p)),constrainHbyA啥意思?5.
组建
phiHbyA用到的fvc::flux(HbyA) + fvc::interpolate(rAU)*fvc::ddtCorr(U, phi)是啥意思呢? -
- 方程(27)等号右边等于
\begin{equation}
\Delta t \int_{}^{}\frac{1}{A}\bigtriangledown pd\textbf{S}
\end{equation}
\begin{equation}
=\Delta t\sum \frac{1}{A_{f}}(\bigtriangledown p)_{f}\cdot \textbf{S}
\end{equation}
面上压力梯度咋就变成了方程(26)矩形框的那部分?3.cavity案例的fvSolution里p-preconditioner DIC对应
piso.momentumPredictor,因为有DIC这一设置,所以if为真,执行动量预测步。同样在fvSolution里,PISO-nNonOrthogonalCorrectors 0对应的应该是piso.correctNonOrthogonal,但值为0,while语句不执行,就不会求解压力方程了。但运行该案例,是有求解压力的。4.无痛苦笔记中没有关于
constrainHbyA的解释。 - 方程(27)等号右边等于
-
- 方程(27)等号右边等于
\begin{equation}
\Delta t \int_{}^{}\frac{1}{A}\bigtriangledown pd\textbf{S}
\end{equation}
\begin{equation}
=\Delta t\sum \frac{1}{A_{f}}(\bigtriangledown p)_{f}\cdot \textbf{S}
\end{equation}
面上压力梯度咋就变成了方程(26)矩形框的那部分?3.cavity案例的fvSolution里p-preconditioner DIC对应
piso.momentumPredictor,因为有DIC这一设置,所以if为真,执行动量预测步。同样在fvSolution里,PISO-nNonOrthogonalCorrectors 0对应的应该是piso.correctNonOrthogonal,但值为0,while语句不执行,就不会求解压力方程了。但运行该案例,是有求解压力的。4.无痛苦笔记中没有关于
constrainHbyA的解释。老师,问题3,
piso.correctNonOrthogonal对应的是fvSolution下的PISO-nCorrectors,因为我把这一行注释之后报错了。 - 方程(27)等号右边等于




