先日質問させていただきましたが、ちょっと困ったことがあったのでまた質問させていただきます。
ohbuchi様がおっしゃったようにdp/dz=-ρg, p=ρRTの式を用いて気圧の高度分布を作成しようと試みたのですが、プログラムの書き方などが分からず、挫折してしまいました。
そこで今回、私は圧縮性のrhoPimpleFoamを使用しているのでなんとかこのソルバで気圧の高度分布を作成できないかと思いまして質問させていただきました。
実際にはソルバの式に
rho*g = -fvc::grad(p)
のような式があるので気圧の高度分布が作成できるのではないかと考えたのですが、うまくいきませんでした。
ソルバの運動量方程式は以下のようになります。
// Solve the Momentum equation
tmp<fvVectorMatrix> UEqn
(
fvm::ddt(rho, U)
+ fvm::div(phi, U)
+ turbulence->divDevRhoReff(U)
==rho*g
);
UEqn().relax();
volScalarField rAU(1.0/UEqn().A());
if (pimple.momentumPredictor())
{
solve(UEqn() == -fvc::grad(p));
}
else
{
U = rAU*(UEqn().H() - fvc::grad(p));
U.correctBoundaryConditions();
}
「==rho*gの部分は新しく付け足しています。」
最終的には、手計算で求めた気圧分布と比較して本当にOpenFoamで作成した値が合致しているのかどうか検証したいと考えています。
実際にこのソルバで気圧の高度分布の作成は可能なのでしょうか?
皆様のお考えお聞かせください。
よろしくおねがいします。
endu