利用interPhaseChangeFoam的LES计算空化流动求助



  • 大家好!

    我现在利用interPhaseChangeFoam里面的LES 一方程涡粘模型 计算绕Clark-Y水翼空化流动,计算出的升力系数cl比试验值偏大一倍,总的空穴体积小与实验值。我分析是我计算的 流场压力,出了问题,我感觉主要可能是离散格式 和求解器的问题,请问谁 利用interPhaseChangeFoam里面的LES计算过水翼空化呢? 可以分享一下经验吗?

    谢谢!

    求解器设置

    /*--------------------------------*- C++ -*----------------------------------*\
    | =========                 |                                                 |
    | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
    |  \\    /   O peration     | Version:  4.0                                   |
    |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
    |    \\/     M anipulation  |                                                 |
    \*---------------------------------------------------------------------------*/
    FoamFile
    {
        version     2.0;
        format      ascii;
        class       dictionary;
        location    "system";
        object      fvSolution;
    }
    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
    
    solvers
    {
        alpha.water
        {
            nAlphaCorr      1;
            nAlphaSubCycles 1;
            cAlpha          1;
    
            MULESCorr       yes;
            nLimiterIter    5;
    
            solver          smoothSolver;
            smoother        symGaussSeidel;
            tolerance       1e-8;
            relTol          0;
            maxIter         100;
    
        }
    
        alpha.waterFinal
        {
            nAlphaCorr      1;
            nAlphaSubCycles 1;
            cAlpha          1;
    
            MULESCorr       yes;
            nLimiterIter    5;
    
            solver          smoothSolver;
            smoother        symGaussSeidel;
            tolerance       1e-8;
            relTol          0;
            maxIter         100;
    
        }
    
        "U.*"
        {
            solver          smoothSolver;
            smoother        symGaussSeidel;
            tolerance       1e-6;
            relTol          0;
        };
    
        ".*(rho|rhoFinal)"
        {
            solver          diagonal;
        }
    
        pcorr
        {
            solver          PCG;
            preconditioner
            {
                preconditioner  GAMG;
                tolerance       1e-05;
                relTol          0;
                smoother        DICGaussSeidel;
            }
            tolerance       1e-05;
            relTol          0;
            maxIter         500;
        }
    	pcorrFinal
        {
            solver          PCG;
            preconditioner
            {
                preconditioner  GAMG;
                tolerance       1e-05;
                relTol          0;
                smoother        DICGaussSeidel;
            }
            tolerance       1e-05;
            relTol          0;
            maxIter         500;
        }
        Phi
        {
            $p_rgh;
            relTol          0;
        };
    
        p_rgh
        {
            solver          GAMG;
            tolerance       1e-07;
            relTol          0.00001;
            smoother        DIC;
        }
    
        p_rghFinal
        {
            solver          PCG;
            preconditioner
            {
                preconditioner  GAMG;
                tolerance       1e-07;
                relTol          0;
                nVcycles        2;
                smoother        DICGaussSeidel;
                nPreSweeps      2;
            }
            tolerance       1e-07;
            relTol          0;
            maxIter         1000;
        }
    
        U
        {
            solver          smoothSolver;
            smoother        GaussSeidel;
            tolerance       1e-06;
            relTol          0;
            nSweeps         1;
        }
    
        "(U|k|omega)"
        {
            solver          smoothSolver;
            smoother        symGaussSeidel;
            tolerance       1e-08;
            relTol          0.0001;
        }
    
        "(T|k|B|nuTilda).*"
        {
            solver          smoothSolver;
            smoother        symGaussSeidel;
            tolerance       1e-08;
            relTol          0;
            maxIter         100;
        }
        "(U|k|omega)Final"
        {
            solver          smoothSolver;
            smoother        symGaussSeidel;
            tolerance       1e-08;
            relTol          0;
        }
    }
    
    PIMPLE
    {
        momentumPredictor no;
        transonic       no;
        nOuterCorrectors 1;
        nCorrectors     2;
        nNonOrthogonalCorrectors 0;
    }
    
    
    
    // ************************************************************************* //
    

    离散格式设置

    /*--------------------------------*- C++ -*----------------------------------*\
    | =========                 |                                                 |
    | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
    |  \\    /   O peration     | Version:  4.0                                   |
    |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
    |    \\/     M anipulation  |                                                 |
    \*---------------------------------------------------------------------------*/
    FoamFile
    {
        version     2.0;
        format      ascii;
        class       dictionary;
        location    "system";
        object      fvSchemes;
    }
    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
    
    ddtSchemes
    {
        default         Euler;
    }
    
    gradSchemes
    {
        default         Gauss linear;
    }
    
    divSchemes
    {
        default             none;
        div(phi,alpha)  Gauss vanLeer;
        div(phirb,alpha) Gauss linear;
        div(phi,rho)    Gauss limitedLinear 1;
    
        div(rhoPhi,U)  Gauss linearUpwind grad(U);
        div(phi,thermo:rho.water) Gauss upwind;
        div(phi,thermo:rho.air) Gauss upwind;
        div(rhoPhi,T)  Gauss upwind;
        div(rhoPhi,K)  Gauss upwind;
        div(phi,p)      Gauss upwind;
        div(phi,k)      Gauss upwind;
        div(rhoPhi,omega)  Gauss limitedLinear 1;
    
        div(phi,omega)   Gauss upwind;
    
        div(rhoPhi,k)   Gauss upwind;
    
        div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
    
    }
    
    laplacianSchemes
    {
        default         Gauss linear limited corrected 0.33;
    }
    
    interpolationSchemes
    {
        default         linear;
    }
    
    snGradSchemes
    {
        default         limited corrected 0.33;
    }
    wallDist
    {
        method meshWave;
    }
    
    // ************************************************************************* //
    

Log in to reply
 

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