CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

multiphaseEulerFoam convergence problems

Register Blogs Community New Posts Updated Threads Search

 
 
LinkBack Thread Tools Search this Thread Display Modes
Prev Previous Post   Next Post Next
Old   August 26, 2019, 02:16
Default multiphaseEulerFoam convergence problems
  #1
Member
 
Stefanie Wolf
Join Date: Nov 2018
Location: Aachen
Posts: 32
Rep Power: 7
Stefanie.S.W. is on a distinguished road
Hello,

i am running a case with multiphaseEulerFoam (V6), where oil and water mixed with a surfactant collapse together in a cylinder at time 0. (based on the dam break tutorial)
It runs super stable, but when oil and the water solution are seperated again they start oscillating in a wave motion. As if a force from outside is applied. This is not the case, nothing is mooving, the only driving force is gravity.

I got the tip that the therms for pressure and velocity might not converge, so I tried to improve fvScheme and fvSolution. I got help from this great presentation: http://www.wolfdynamics.com/wiki/fvm_crash_intro.pdf
But now unfortunately my simulation crashes within 0.15 sek.

(all simulations run decomposed, 6 cores, simple decomposition)


Do you know which settings in fvSchemes and fvSolutions are wrong?

Can you recommend 2nd Order schemes to me?
Do you have additional tips for me?

(dicts are following)

Thank you a lot for your help!! Unfortunately I can not share the whole geometry (46926 cells, no errors). I hope that it is enough information! Please let me know if I forgot anything.

fvScheme: default settings are in the comments
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "system";
    object      fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
    default   Euler;
}

gradSchemes
{
   default     cellLimited Gauss linear 1;
   grad(U)     cellLimited Gauss linear 1;//default         Gauss linear;
}

divSchemes
{
    "div\(phi,alpha.*\)"    Gauss linear;//vanLeer;
    "div\(phir,alpha.*,alpha.*\)"   Gauss linear;//vanLeer;

    "div\(alphaPhi.*,U.*\)" Gauss limitedLinearV 1;
    div(Rc)                 Gauss linear;
    "div\(phi.*,U.*\)"      Gauss limitedLinearV 1;
    //div(alphaPhi.water,U.water)
}

laplacianSchemes
{
    default         Gauss linear limited 1;//corrected;
}

interpolationSchemes
{
    default         linear;
}

snGradSchemes
{
    default         limited 1;//corrected;
}

//fluxRequired (ALWAYS DEACTIVATED)
//{
//    default         no;
//    p;
//    pcorr;
//}
// ************************************************************************* //
fvSolutions
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "system";
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    "alpha.*"
    {
        nAlphaSubCycles 3; 
    }

    p_rgh
    {
        solver          GAMG;
        tolerance       1e-7;
        relTol          0.01; // 0.05;
        smoother       GaussSeidel;
    }

    p_rghFinal
    {
        solver          PCG;
        preconditioner
        {
            preconditioner  GAMG;
            tolerance       1e-7;
            relTol          0;
            nVcycles        2;
            smoother        GaussSeidel;
        }
        tolerance       1e-7;
        relTol          0;
        maxIter         20;
    }

    "pcorr.*"
    {
        $p_rghFinal;
        tolerance       1e-5;
        relTol          0;
    }

    U
    {
        solver          smoothSolver;
        smoother        GaussSeidel;
        tolerance       1e-8;
        relTol          0;//0.1;
        nSweeps         1;
    }
    
    "U.*" //22.09.2019
    {
        solver          smoothSolver;
        smoother        GaussSeidel;
        tolerance       1e-8;
        relTol          0;//0.1;
        nSweeps         1;
    }

    UFinal
    {
        $U;
        tolerance       1e-7;
        relTol          0;
    }
}

PIMPLE
{
    nCorrectors              3;
    nNonOrthogonalCorrectors 0;
}

relaxationFactors
{
    "U.*"           1;
}

 // ************************************************************************* //
Transport Properties:
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      transportProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

phases
(
     water
     {
         nu         1e-06;
         kappa      1e-06;
         Cp         4195;
         rho        1000;

         diameterModel constant;
         constantCoeffs
         {
             d               5e-4; //13.08.2019 1e-3
         }
     }

     oil 
     {
         nu         9.6e-06;
         kappa      1e-06;
         Cp         4195;
         rho        805;

         diameterModel constant;
         constantCoeffs
         {
             d             1e-4;
         }
     }

     air
     {
         nu         1.48e-05;
         kappa      2.63e-2;
         Cp         1007;
         rho        1;

         diameterModel constant;
         constantCoeffs
         {
             d              2.5e-3;
         }
     }
     lm //Soap or Surfactant
     {
         nu         1.5e-05;
         kappa      1e-06;
         Cp         4195;
         rho        1060;

         diameterModel constant;
         constantCoeffs
         {
             d               4e-5; //2nd try: 5e-5
         }
     }
);

sigmas
(
    (air water)     0.07
    (air oil)       0.03
    (air lm)        0.017

);

interfaceCompression
(
    (air water)     1
    (air oil)       1 
    (air lm)        1
    (water oil)     0
    (water lm)      0
    (lm oil)        0
);

virtualMass
(
    (water oil)     0.2 //Change 19.08.2019
    (oil water)     0.2 //Change 19.08.2019
    (air oil)       0.4 //Change 23.08.2019
    (air water)     0.3 //Change 23.08.2019
    (lm water)      0.5
    (lm oil)        0.5
);

drag
(
    (air water)
    {
        type blended;

        air
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        water
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        residualPhaseFraction 1e-3;
        residualSlip 1e-3;
    }

    (air oil)
    {
        type blended;

        air
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        oil
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        residualPhaseFraction 1e-3;
        residualSlip 1e-3;
    }

    (water oil)
    {
        type blended;

        water
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        oil
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        residualPhaseFraction 1e-3;
        residualSlip 1e-3;
    }
    (air lm)
    {
        type blended;

        air
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        lm
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        residualPhaseFraction 1e-3;
        residualSlip 1e-3;
    }

    (lm oil)
    {
        type blended;

        lm
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        oil
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        residualPhaseFraction 1e-3;
        residualSlip 1e-3;
    }
    (lm water)
    {
        type blended;

        lm
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        water
        {
            type SchillerNaumann;
            residualPhaseFraction 0;
            residualSlip 0;
        }

        residualPhaseFraction 1e-3;
        residualSlip 1e-3;
    }

 
);

// This is a dummy to support the Smagorinsky model
transportModel  Newtonian;
nu              nu [ 0 2 -1 0 0 0 0 ] 0;
// ************************************************************************* //
Turbulence Properties: LES
Code:
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      turbulenceProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

simulationType  LES;

LES  
{
LESModel    Smagorinsky;
turbulence  on;
delta      maxDeltaxyz;
maxDeltaxyzCoeffs
{
    deltaCoeff 2;
}
}

// ************************************************************************* //
Exampe for Velocity:

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       volVectorField;
    location    "0";
    object      U.water;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform (0 0 0);

boundaryField
{
   
    wall
    {
        type               fixedValue;
    value           uniform (0 0 0);
    }
    atmosphere
    {
        type               pressureInletOutletVelocity;
        value              $internalField;
        phi                phi.water;
    }
}


// ************************************************************************* //
p_rgh
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       volScalarField;
    object      p_rgh;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 0;

boundaryField
{
    wall
    {
        type            fixedFluxPressure;
        value           uniform 0;
    }

    atmosphere
    {
        type            totalPressure;
        p0              uniform 0;
        U               U.air;
        phi             phi.air;
    }

    defaultFaces
    {
        type            empty;
    }
}

// ************************************************************************* //
nut
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       volScalarField;
    location    "0";
    object      nut;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 0;

boundaryField
{
    wall
    {
        type            nutkWallFunction;
        value           uniform 0;
    }
    atmosphere
    {
        type            calculated;
        value           uniform 0;
    }
   
    defaultFaces
    {
        type            empty;
    }
}


// ************************************************************************* //
Stefanie.S.W. is offline   Reply With Quote

 

Tags
converg condition, multiphase, multiphaseeulerfoam


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Convergence Problems with turbulence kinetic energy Batou FLUENT 0 May 9, 2015 15:44
having problems with performing grid convergence study in SWFS drdet FloEFD, FloWorks & FloTHERM 12 January 22, 2015 04:44
Vorticity creates convergence problems? IngmarVanDijk FLUENT 6 November 12, 2014 10:50
NACA0012 Convergence Problems StudentAndrew CFX 6 November 21, 2005 06:49
Convergence problems Chetan FLUENT 3 April 15, 2004 19:13


All times are GMT -4. The time now is 15:59.