圧縮空気の流入流出条件について

1,436 views
Skip to first unread message

photo-n

unread,
Sep 19, 2012, 6:28:56 AM9/19/12
to open...@googlegroups.com
はじめまして、photo-nと申します。

エアブローの大気流出のシミュレーションに取り組んでいます。

使用ソルバーは rhoSimplecFoamです。

大まかな境界条件はです。
Inlet 圧縮空気
P: 0.5Mpa 
U: 10L/min
T: 293K

Outlet 大気
P: 0.1Mpa,
U: inletOutlet
T: 293K

ここで質問なのですが、
Inletの速度は、flowRateInletVelocityで与えていますが、圧力の与え方がわかりません。
fixvalueで0.5Mpaを与えると、流出後に差圧で加速し、音速を超えてしまいます。
境界条件の設定についてご教授いただけないでしょうか。
計算ファイルを添付します。よろしくお願いします。

photo-n

unread,
Sep 19, 2012, 6:36:11 AM9/19/12
to open...@googlegroups.com
ファイルをアップデートできなかったので
こちらに境界条件を書かせていただきます。

/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.0.0                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       volVectorField;
    object      U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform (0 0 0);

boundaryField
{
    allBoundary
    {
        type            empty;
    }

    outlet_solid
    {
        type            inletOutlet;
        inletValue      uniform (0 0 0);
        value           uniform (0 0 0);
    }

    wall_solid
    {
        type            fixedValue;
        value           uniform (0 0 0);
    }

    inlet_solid
    {
//        type            fixedValue;
//        value           uniform (39.8 0 0);
        type            flowRateInletVelocity;
        flowRate        2.0e-4; //6.0e-4
        value           uniform (0 0 0);
    }
}

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


/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.0.0                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       volScalarField;
    object      p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 1.013e5;

boundaryField
{
    allBoundary
    {
        type            empty;
    }

    outlet_solid
    {
        type            fixedValue;
        value           uniform 1.013e5;
    }

    wall_solid
    {
        type            zeroGradient;
    }

    inlet_solid
    {
//        type            zeroGradient;
        type            fixedValue;
        value           uniform 5.013e5;
    }
}

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

/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.0.0                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       volScalarField;
    object      T;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 0 0 1 0 0 0];

internalField   uniform 293;

boundaryField
{
    allBoundary
    {
        type            empty;
    }

    outlet_solid
    {
        type            inletOutlet;
        //type            zeroGradient;
        value           uniform 293;
        inletValue      uniform 293;
    }

    wall_solid
    {
        type            fixedValue;
        value           uniform 293;
    }

    inlet_solid
    {
        type            fixedValue;
        value           uniform 293;
    }
}

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


/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.0.x                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       volScalarField;
    location    "0";
    object      k;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 1;

boundaryField
{
    allBoundary
    {
        type            empty;
    }
    outlet_solid
    {
        type            inletOutlet;
        inletValue      uniform 1;
        value           uniform 1;
    }
    wall_solid
    {
        type            compressible::kqRWallFunction;
        value           uniform 1;
    }
    inlet_solid
    {
        type            turbulentIntensityKineticEnergyInlet;
        intensity       0.05;
        value           uniform 1;
    }
}


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

/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.0.0                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       volScalarField;
    location    "0";
    object      omega;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 200;

boundaryField
{
    allBoundary
    {
        type            empty;
    }

    outlet_solid
    {
        type            inletOutlet;
        inletValue      uniform 200;
        value           uniform 200;
    }

    wall_solid
    {
        type            compressible::omegaWallFunction;
        value           uniform 200;
    }

    inlet_solid
    {
        type            compressible::turbulentMixingLengthFrequencyInlet;
        mixingLength    1.4e-04;
        value           uniform 200;
    }
}


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

Shinji Nakagawa

unread,
Sep 19, 2012, 9:40:34 PM9/19/12
to open...@googlegroups.com
中川です。

この掲示版の過去の議論(例えば下記2件)をご覧ください。
入りと出の両方で圧力を固定し,かつ,速度まで固定するのは,良くないでしょう。
ディスカッション中のリンク先なども参照されることをお勧めします。

差圧境界条件での解析について
https://groups.google.com/d/topic/openfoam/6YpjtpNu5Jg/discussion

境界条件の設定に関して
https://groups.google.com/d/topic/openfoam/SkHP51CnUgs/discussion



2012年9月19日 19:36 photo-n <chemi...@gmail.com>:
> --
> このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
> このディスカッションをウェブ上で閲覧するには、https://groups.google.com/d/msg/openfoam/-/fHt2Zw5hk5AJ
> にアクセスしてください。
>
> このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
> このグループから退会するには、openfoam+u...@googlegroups.com にメールを送信してください。
> 詳細については、http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。



--
(外出中のため,学外メールから送信しています。)
〒939-0398
富山県射水市黒河5180
富山県立大学 機械システム工学科
機械エネルギー工学講座
准教授 中川慎二
TEL (0766)56-7500(内線386)
FAX (0766)56-6131
E-mail snak...@pu-toyama.ac.jp
http://fluid.pu-toyama.ac.jp/

photo-n

unread,
Sep 20, 2012, 2:19:46 AM9/20/12
to open...@googlegroups.com
早速のご返信ありがとうございます。
やはり単純に差圧を与えても解けないようですね

私のイメージとしては、0.5Mpaで圧縮された空気(密度5倍の空気)がノズルを通り、
ノズル出口で大気解放して圧縮されてた空気が「ぶわっと」広がる解析をしたいと考えております。

このときの流入流出の境界条件について
アドバイスしていただけませんでしょうか。
よろしくお願いします。

ohbuchi

unread,
Sep 20, 2012, 4:52:48 PM9/20/12
to open...@googlegroups.com
こんにちは。
圧縮性ソルバでも、下記の組み合わせで差圧流れの計算ができます。

入口
 U pressureInletVelocity
 p   totalPressure
出口
 U   pressureInletOutletVelocity
 p    fixedValue

圧縮性流れでは、亜音速か超音速かでエネルギー方程式の特性曲線の向きが変わるので
圧力の境界条件の与え方がパッチの流れの状態で変わるという特徴があります。
差圧条件が正しくてもU,pの初期値が不適切だと計算初期に不自然な加速が生じて
計算が破綻することもあります。potentialFoamで初期圧力分布を作ったり、初期に
差圧を小さくして徐々に増やすなど計算を安定化させる工夫が必要だと思います。

以上、ご参考まで。

2012年9月20日木曜日 15時19分46秒 UTC+9 photo-n:
Reply all
Reply to author
Forward
0 new messages