CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (http://www.cfd-online.com/Forums/openfoam-solving/)
-   -   MRFSimpleFoam + AMI in 2.1.0 vs GGI in 1.5-dev (http://www.cfd-online.com/Forums/openfoam-solving/103769-mrfsimplefoam-ami-2-1-0-vs-ggi-1-5-dev.html)

marcelgt87 June 26, 2012 09:44

MRFSimpleFoam + AMI in 2.1.0 vs GGI in 1.5-dev
 
5 Attachment(s)
hello everyone,

I recently managed to run the ERCOFTAC Centrifugal Pump validation test case in a recent version of OpenFoam 1.5-dev with the help of this forum (thanks again!)

now I want to run this exact same case in OpenFoam 2.1.0 with AMI interfaces instead of GGI.

the turbulence model (k-epsilon) and all the boundary conditions are exactly the same as in the 1.5-dev case except for the pressure-outlet. in 1.5-dev the pressure outlet is set as "fixedmeanvalue", unfortunately this bc doesn't exist any more in 2.1.0, so i defined it as "fixedvalue".

the case converges, though not as good as in 1.5-dev.
the results for U make sense but still differ from those i got in 1.5-dev.
what puzzles me the most are the results for p. the pressure gradient is just inverted!

see for yourselves, i uploaded the pictures.

does anyone have an idea how this could happen or what i could do to get better results?

best regards,
Marcel

paulo June 27, 2012 08:24

Hi,

Are the two cases rotating in the same direction?

Best Regards,

Paulo Rocha

marcelgt87 June 27, 2012 08:37

yes, they are. i just checked it again, to be safe.

vonboett June 29, 2012 04:52

could you please post your initial U and p / p_rgh file and fvSolution, fvSchemes? I probably can't help put I'd like to take a look.

vonboett June 29, 2012 04:54

...because I think your geometry is qite challanging for your turbulence model. Did you try with LES in combination with DMM subgrid scale model developed by the LTT Rostock and a SimpleGridFilter to allow backscatter? This would account better for the Influence of your geometry on the turbulence.

wiedangel July 2, 2012 03:33

Hi marcelgt87,

I also wanted to do the same comparison you did using the ERCOFTAC validation case. This is because I also did not obtain the same P for a very simple case that I tried to compare using both approaches which you used ... It would be nice if you give some details about your schemes and solutions dictionaries.

Regards

marcelgt87 July 2, 2012 04:12

sorry, that it took so long. here are my files for OF 2.1.0.

U:
Code:

internalField  uniform (0 0 0);

boundaryField
{
    INLET
    {
        type            surfaceNormalFixedValue;
        refValue        uniform -11.4;
    }
    OUTLET
    {
        type            zeroGradient;
    }
    BLADE_ROT
    {
        type            fixedValue;
        value          uniform (0 0 0);   
    }
    BLADE_STAT
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    HUB_SHROUD
    {
        type                empty;
    }
    AMI_INT
    {
        type                cyclicAMI;
        value                $internalField;
    }
    AMI_EXT
    {
        type                cyclicAMI;
        value                $internalField;
    }
}

p:
Code:

internalField  uniform 0;

boundaryField
{
    INLET
    {
        type            zeroGradient;
    }
    OUTLET
    {
        type            fixedValue;
        value                uniform 0;
    }
    BLADE_ROT
    {
        type            zeroGradient;
    }
    BLADE_STAT
    {
        type            zeroGradient;
    }
    HUB_SHROUD
    {
        type            empty;
    }
    AMI_INT
    {
        type                cyclicAMI;
        value                $internalField;
    }
    AMI_EXT
    {
        type                cyclicAMI;
        value                $internalField;
    }
}

fvSolutions:
Code:

solvers
{
    p
    {
        solver          GAMG;
        smoother        GaussSeidel;
        cacheAgglomeration true;
        nCellsInCoarsestLevel 20;
        agglomerator    faceAreaPair;
        mergeLevels    1;

        tolerance      1e-08;
        relTol          0.05;
    }

    pFinal
    {
        solver          GAMG;
        smoother        GaussSeidel;
        cacheAgglomeration true;
        nCellsInCoarsestLevel 10;
        agglomerator    faceAreaPair;
        mergeLevels    1;

        tolerance      1e-06;
        relTol          0;
    }

    "(U|k|epsilon)"
    {
        solver          smoothSolver;
        smoother        GaussSeidel;
        tolerance      1e-07;
        relTol          0.1;
    }

    "(U|k|epsilon)Final"
    {
        solver          PBiCG;
        preconditioner  DILU;

        tolerance      1e-05;
        relTol          0;
    }
}

PIMPLE
{
    nOuterCorrectors 4;
    nCorrectors    1;
    nNonOrthogonalCorrectors 0;
    pRefCell        0;
    pRefValue      0;
}

SIMPLE
{
    nNonOrthogonalCorrectors 0;
}

relaxationFactors
{
    fields
    {
        p              0.3;
    }
    equations
    {
        U              0.7;
        k              0.9;
        "epsilon.*"    0.9;
    }
}

cache
{
    grad(U);
}

fvSchemes:
Code:

ddtSchemes
{
    default        steadyState;
}

gradSchemes
{
    default        Gauss linear;
    grad(p)        Gauss linear;
    grad(U)        Gauss linear;
}

divSchemes
{
    default        none;
    div(phi,U)      Gauss limitedLinearV 1;
    div(phi,k)      Gauss limitedLinear 1;
    div(phi,epsilon) Gauss limitedLinear 1;
    div(phi,R)      Gauss limitedLinear 1;
    div(R)          Gauss linear;
    div(phi,nuTilda) Gauss limitedLinear 1;
    div((nuEff*dev(T(grad(U))))) Gauss linear;
}

laplacianSchemes
{
    default        none;
    laplacian(nuEff,U) Gauss linear corrected;
    laplacian((1|A(U)),p) Gauss linear corrected;
    laplacian(DkEff,k) Gauss linear corrected;
    laplacian(DepsilonEff,epsilon) Gauss linear corrected;
    laplacian(DREff,R) Gauss linear corrected;
    laplacian(DnuTildaEff,nuTilda) Gauss linear corrected;
}

interpolationSchemes
{
    default        linear;
    interpolate(U)  linear;
}

snGradSchemes
{
    default        corrected;
}

fluxRequired
{
    default        no;
    p              ;
}

unfortunately my background knowledge about all the settings in fvSchemes and fvSolutions is quite limited, so i copied those files from a tutorial case.

@wiedangel: did you succeed? did you get any results with that comparison? could you give me some more details about what exactly you did?

thank you!
marcel

vonboett July 2, 2012 08:32

Hi Marcel, I would use OUTLET { type zeroGradient; } for p since I had some funny coordinate-dependent effects using fixedValue 0 at my outlets.

marcelgt87 July 2, 2012 09:06

i just tried to do what you said. i set the outlet to zerogradient. as a result openfoam tells me to provide a reference value for p. when i do that (refvalue 0 and refcell 0) the calculation doesn't converge and eventually crashes. i also tried setting the outlet as zerogradient and the inlet as fixedvalue 0, with the same result.

is there anything i overlooked?

regards,
marcel

vonboett July 2, 2012 10:22

what does it look like when you use a high refvalue?

marcelgt87 July 2, 2012 10:39

quite the same :(

kiddmax December 2, 2013 19:40

Hi Marcel,

Could you please send me a copy of testcase of ERCOFTAC Centrifugal Pump? I did not download it successfully. Thank you so much!

My email address: dlutyezhang@gmail.com or you can use this mail to share it by Dropbox.

Again thanks

Best regards,
Ye

Lisandro Maders July 15, 2014 10:57

Hey guys, did you sort the pressure problem? If so, what was the problem and how do you manage to fix that?


Appreciate a lot your answer!

Lisandro


All times are GMT -4. The time now is 14:20.