投稿日時: 2018/11/18
S Nakagawa
OpenFOAM で,任意の分布をもつ境界条件を与える方法 codedFixedValue の使い方についてメモします.。
例えば,pitzDaily例題の入口において,高さ y 方向に線形の速度分布を与える場合,下記のように設定する。
例えば,pitzDaily例題の入口において,高さ y 方向に線形の速度分布を与える場合,下記のように設定する。
inlet
{
type codedFixedValue;
value uniform (0 0 0);
redirectType velocityProfileInlet;
code
#{
const fvPatch& boundaryPatch = patch();
const vectorField& Cf = boundaryPatch.Cf();
vectorField& field = *this;
//scalar min = 0.501;
//scalar max = 0.751;
scalar yMin = 0;
scalar uMin = 0;
scalar yMax = 0.02;
scalar uMax = 10;
scalar yRange = yMax - yMin;
scalar uRange = uMax - uMin;
forAll(Cf, faceI)
{
// linear u profile
scalar u = uMin + uRange * (Cf[faceI].y()-yMin) / yRange;
field[faceI] = vector(u, 0, 0);
}
#};
}
下記のサイトを参考にしました。
https://sourceflux.de/blog/the-codedfixedvalue-boundary-condition/