slip条件を用いる際の境界条件

908 views
Skip to first unread message

稲垣

unread,
Oct 5, 2016, 2:00:19 AM10/5/16
to OpenFOAM
はじめまして。
OpenFOAM初心者の稲垣といいます。
今回OpenFOAMでslip条件を用いるケースについての質問にお答えしていただきたく、投稿しました。

水面上での平板の駆動による水面・水面下への影響を考えたくて、以下のような計算をしました。
チュートリアルにある天井駆動のキャビティ流れのケースを元にmovingWallの長さを半分にして、天井のもう半分にslip条件を与えました。
駆動する部分はx=0~0.05[m]でUx=1[m/s]で動き、x=0.05~0.1[m]の部分は条件です。

simpleFoamを使いRANSのk-εモデルで計算したところ、天井でx=0.05[m]あたりでUxが急にさがる結果になりました(添付ファイル"cavity2")。
本来はもうすこしなだらかに値が下降と思い、境界条件の設定がうまくいっていないのではないかと予想しています。

質問は、
1、境界条件に訂正箇所があるか
2、水面への影響を考えるのにあたり、今回の方法は妥当か
というものです。

何卒アドバイスよろしくお願いします。

以下、形状・境界条件

blockMeshDict
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

convertToMeters 0.1;

vertices
(
    (0 0 0)//0
    (1 0 0)//
    (1 1 0)//2
    (0 1 0)//3
    (0.5 0 0)//4
    (0.5 1 0)//5
    (0 0 0.1)//6
    (1 0 0.1)//7
    (1 1 0.1)//8
    (0 1 0.1)//9
    (0.5 0 0.1)//10
    (0.5 1 0.1)//11
);

blocks
(
    hex (0 4 5 3 6 10 11 9) (10 20 1) simpleGrading (1 1 1)
    hex (4 1 2 5 10 7 8 11) (10 20 1) simpleGrading (1 1 1)
);

edges
(
);

boundary
(
    movingWall
    {
        type wall;
        faces
        (
            (3 5 11 9)
        );
    }
    fixedWalls
    {
        type wall;
        faces
        (
            (0 4 10 6)
            (4 1 7 10)
            (0 6 9 3)
            (1 7 8 2)
        );
    }
    slip
    {
        type wall;
        faces
        (
            (5 2 8 11)
        );
    }
    frontAndBack
    {
        type empty;
        faces
        (
            (0 4 5 3)
            (4 1 2 5)
            (6 10 11 9)
            (10 7 8 11)
        );
    }
);

mergePatchPairs
(
);

// ************************************************************************* //
U
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform (0 0 0);

boundaryField
{
    movingWall
    {
        type            fixedValue;
        value           uniform (1 0 0);
    }

    fixedWalls
    {
        type            fixedValue;
        value           uniform (0 0 0);
    }
    slip
    {
        type            slip;
    }
    frontAndBack
    {
        type            empty;
    }
}

// ************************************************************************* //
epsilon
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 0.000765;

boundaryField
{
    movingWall
    {
        type            epsilonWallFunction;
        value           uniform 0.000765;
    }
    fixedWalls
    {
        type            epsilonWallFunction;
        value           uniform 0.000765;
    }
    slip
    {
        type            slip;
    }
    frontAndBack
    {
        type            empty;
    }
}


// ************************************************************************* //
k
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 0.00325;

boundaryField
{
    movingWall
    {
        type            kqRWallFunction;
        value           uniform 0.00325;
    }
    fixedWalls
    {
        type            kqRWallFunction;
        value           uniform 0.00325;
    }
    slip
    {
        type            slip;
    }
    frontAndBack
    {
        type            empty;
    }
}


// ************************************************************************* //
nut
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 0;

boundaryField
{
    movingWall
    {
        type            nutkWallFunction;
        value           uniform 0;
    }
    fixedWalls
    {
        type            nutkWallFunction;
        value           uniform 0;
    }
    slip
    {
        type            calculated;
        value           uniform 0;
    }
    frontAndBack
    {
        type            empty;
    }
}

// ************************************************************************* //
p
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 0;

boundaryField
{
    movingWall
    {
        type            zeroGradient;
    }
    fixedWalls
    {
        type            zeroGradient;
    }
    slip
    {
        type            slip;
    }
    frontAndBack
    {
        type            empty;
    }
}

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


cavity1.jpg
cavity2.jpg
Reply all
Reply to author
Forward
0 new messages