reactingFoamにおける入口・出口のU・P条件について

103 views
Skip to first unread message

kota

unread,
Nov 21, 2023, 11:38:38 PM11/21/23
to OpenFOAM
大学にてOpenFOAMをもちいて研究をしております、kotaと申します。

研究内容としましては、外側にヒーターを設置し管にガスを流したときの化学反応をシミュレーションするというものです。

実験によって計測したガスの分解率などを同じ条件で得ることが目標となっておりますが現在ガスの流れをうまく再現できていない状態となっております。

reactingFoam/laminarにて以下のような管を作成しました。
Screenshot from 2023-11-22 13-08-11.png
/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  10
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    format      binary;
    class       volVectorField;
    location    "0";
    object      U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 -1 0 0 0 0];

internalField   uniform (0 0 0);

boundaryField
{
    inlet
    {
        type            fixedValue;
        value           uniform (0 0 0.002135);

    }
    outlet
    {
        type            pressureInletOutletVelocity;
        value           uniform (0 0 0.002135);
    }
   walls
    {

        type noSlip;
    }
    frontwalls
    {
    type zeroGradient;
    }
}

// ************************************************************************* //
/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  10
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    format      ascii;
    class       volScalarField;
    location    "0";
    object      p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [1 -1 -2 0 0 0 0];

internalField   uniform 101325;

boundaryField
{
    inlet
    {
        type            zeroGradient;
    }
    outlet
    {
        type            totalPressure;
        value    $internalField;
        p0              $internalField;
    }
    walls
    {
        type            zeroGradient;
    }
    frontwalls
    {
    type zeroGradient;
    }
}

// ************************************************************************* //

実験による結果では、ガスが分解によって2molになるため押し出されて
U入口:0.002135m/s、出口:0.005614m/s
P入口:1気圧、出口:1気圧
となるのですが、私の条件では速度は加速して次第にコアダンプしてしまします。

ガスの量が増えて押し出されるためには、どのような境界条件にすればいいのかご享受お願いいたします。
blockMeshDict

Hideaki Kominami

unread,
Nov 26, 2023, 7:06:41 AM11/26/23
to open...@googlegroups.com
kota さん

kominamiです.

題意より、パッチoutletで逆流が無いと仮定できるので、ひとまずU.outletをtype zerogradient にしてみては? 

kotaさんは、U.inletとU.outletの境界条件に平均流速の理論値を設定しています.流出側と想定しているU.outletにも平均風速を指定しているのが問題で,計算中に生じる僅かな計算誤差のため、inletとoutletの両方を理論値で指定しているとソルバー内部で発散(コアダンプ)に繋がります.

2023年11月22日(水) 13:38 kota <kokoko5...@gmail.com>:
--
このメールは Google グループのグループ「OpenFOAM」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには openfoam+u...@googlegroups.com にメールを送信してください。
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/openfoam/2b8bdb48-0a8d-4f32-a9dd-e0a10de8259an%40googlegroups.com にアクセスしてください。

kota

unread,
Nov 26, 2023, 9:10:46 PM11/26/23
to OpenFOAM
kominamiさま

返信ありがとうございます、kotaです。

計算誤差による発散について理解し、そちらに修正させていただこうと思います。
そこでもう一つ質問なのですが、現在P.outletをtotalPressureに、CH4.outletをinletOutletにしているのですがこれらも全てzeroGradientにするのがプログラムとしては自然でしょうか。
現在チュートリアルと同じ組み合わせにしており、それ以外ではどう組み合わせるのがよいのかがわかっておりません。

よろしくおねがいします。

2023年11月26日日曜日 21:06:41 UTC+9 Hideaki Kominami:
Reply all
Reply to author
Forward
0 new messages