パッチpatch沿いのセルcellを取得する方法/パッチpatchの隣のセルcellを取得する方法
openfoam2.2.2
壁wallパッチpatchの第一メッシュとか隣のセルcellだけに対して何か処理したいときに、それらのセルcellの内容or参照を得る方法です。
例えば、場の変数pに対して、"wall"と名付けられたパッチの隣のセルを取得するには、以下のようにやります。
fvPatchのfaceCells()でお目当てのセルデータが格納されている配列(メモリ)のリストを取得して、、、という感じです。
下の例では、上記のようにリストを取得して場の変数pのwallという名前のパッチの隣のセルたちに、123という数値を格納しています。
volScalarField p;
forAll (p.boundaryField(), patchi)
{
const word nameofpatch = mesh.boundary()[patchi].name();
if (nameofpatch == "wall") {
const labelUList& labelL = p.boundaryField()[patchi].patch().faceCells();
forAll (labelL, index) {
p[labelL[index]] = scalar(123);
}//forAll
break;
}
}//forAll
<2014/10/25sat>
[EOF] -
最終更新:2014年10月25日 07:32