OpenFOAM边界条件问题



  • 我用OpenFOAM计算外流问题,当来流速度设置为0时可以正常计算,但当来流速度大于零时最多计算一步流道就堵塞了,我怀疑是边界条件有问题。我的边界条件设置如下,请教大家这样搭配可以吗?如果不行应该是怎样呢?
    U

    FoamFile
    {
        version     2.0;
        format      ascii;
        class       volVectorField;
        location    "0";
        object      U;
    }
    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
    
    dimensions      [0 1 -1 0 0 0 0];
    
    internalField   uniform (0 0 0);
    
    boundaryField
    {
        //- Set patchGroups for constraint patches
        #includeEtc "caseDicts/setConstraintTypes"
    
        inlet
        {
            type            fixedValue;
            value           uniform (0 0 50);
        }
    
        outlet
        {
            type            zeroGradient;
        }
    
        symm
        {
            type            slip;
    
        }
    
    
        propellerW-f
        {
           type            movingWallVelocity;
           value           uniform (0 0 0);
        }
    
        propellerW-s
        {
           type            movingWallVelocity;
           value           uniform (0 0 0);
        }
    
        propellerW-h
        {
           type            fixedValue;
           value           uniform (0 0 0);
        }
    
        propellerW-t
        {
           type            fixedValue;
           value           uniform (0 0 0);
        }
    }
    

    p

    dimensions      [1 -1 -2 0 0 0 0];
    
    internalField   uniform 101325;
    
    boundaryField
    {
        //- Set patchGroups for constraint patches
        #includeEtc "caseDicts/setConstraintTypes"
    
        inlet
        {
            type            zeroGradient;
        }
    
        outlet
        {
            type            fixedValue;
            value           uniform 101325;
        }
    
        symm
        {
            type            slip;
    
        }
    
        wall
        {
            type            zeroGradient;
        }
    }
    
    

    T

    dimensions      [0 0 0 1 0 0 0];
    
    internalField   uniform 293;
    
    boundaryField
    {
        inlet
        {
            type            fixedValue;
            value           uniform 293;
        }
    
        outlet     
        { 
            type            inletOutlet;
            inletValue      uniform 293;
            value           uniform 293;
        }
    
        symm
        {
            type            slip;
    
        }
        "inter.*"
        {
            type            fixedValue;
            value           $internalField;
        }
        wall
        { 
            type            zeroGradient;
        }
      
    
        #includeEtc "caseDicts/setConstraintTypes"
    }
    
    

    nuTilda

    dimensions      [0 2 -1 0 0 0 0];
    
    internalField   uniform 1e-5;
    boundaryField
    {
        //- Set patchGroups for constraint patches
        #includeEtc "caseDicts/setConstraintTypes"
    
        inlet
        {
            type            fixedValue;
            value           uniform 1e-5;
        }
    
        outlet
        {
            type            inletOutlet;
            inletValue      uniform 1e-5;
            value           uniform 1e-5;
        }
    
        symm
        {
            type            slip;
    
        }
    
        wall
        {
            type            fixedValue;
            value           uniform 0;
        }
    }
    

    nut

    dimensions      [0 2 -1 0 0 0 0];
    
    internalField   uniform 8.58e-6;
    
    boundaryField
    {
        //- Set patchGroups for constraint patches
        #includeEtc "caseDicts/setConstraintTypes"
    
        inlet
        {
            type            fixedValue;
            value           uniform 8.58e-6;
        }
    
        outlet
        {
            type            inletOutlet;
            inletValue           uniform 8.58e-06;
            value           uniform 8.58e-06;
        }
    
        symm
        {
            type            slip;
    
        }
    
        wall
        {
            type            nutUSpaldingWallFunction;
            value           uniform 0;
        }
    }
    
    

    alphat

    dimensions      [1 -1 -1 0 0 0 0];
    
    internalField   uniform 0;
    
    boundaryField
    {
        inlet     
        {
            type    calculated;
            value   uniform 0;
        }
        outlet    
        { 
            type    calculated;
            value   uniform 0;
        }
    
        symm
        {
            type            slip;
    
        }
        "inter.*"
        {
            type            fixedValue;
            value           $internalField;
        }
        wall
        {
            type            compressible::alphatWallFunction;
            Prt             0.85;
            value           uniform 0;
        }
    
        #includeEtc "caseDicts/setConstraintTypes"
    }
    
    

    其中inlet,outlet,分别是进口和出口,几何边界条件为patch;symm为四周的自由边界,为柱状,几何边界条件为patch,propeller是计算的螺旋桨,几何边界条件为Wall;计算所用湍流模型为SA模型,所用求解器为rhoSimpleFoam,设置了两块MRF区域,MRF设置如下:

    FoamFile
    {
        version     2.0;
        format      ascii;
        class       dictionary;
        location    "constant";
        object      MRFProperties;
    }
    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
    
    MRF1
    {
        cellZone    sector_part1;
        active      yes;
    
        Fixed patches (propellerW-f);
        nonRotatingPatches ();
    
        origin    (0 0 0);
        axis      (0 0 1);
        omega     112.5737; // rad/s
    }
    
    MRF2
    {
        cellZone    sector_part2;
        active      yes;
    
        Fixed patches (propellerW-s);
        nonRotatingPatches ();
    
        origin    (0 0 0);
        axis      (0 0 1);
        omega     -112.5737; // rad/s
    }
    
    

Log in to reply
 

CFD中文网 2016 - 2020 | 京ICP备15017992号-2