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/)
-   -   Negative alpha1 using interDyMFoam (http://www.cfd-online.com/Forums/openfoam-solving/113536-negative-alpha1-using-interdymfoam.html)

jrrygg February 21, 2013 11:06

Negative alpha1 using interDyMFoam
 
Hi,

I am currently trying to do a simulation with a high speed water jet acting on rotating Pelton buckets.

Unfortunately, the simulation crashes before giving me any results. The alpha1 minimum volume fractions are negative, and I wonder if this is what is making the simulation crash? I am not sure about the setup of fvSolution and fvSchemes, so my guess is that these cause the negative alphas.

The log output of some early timesteps:
Code:

Interface Courant Number mean: 1.624315938e-07 max: 0.1091097517
Courant Number mean: 0.000375590931 max: 0.1091097517
deltaT = 3.491717999e-07
Time = 1.533552435e-06

solidBodyMotionFunctions::rotatingMotion::transformation(): Time = 1.533552435e-06 transformation: ((0 0 0) (0.9999999987 (0 5.078761069e-05 0)))
AMI: Creating addressing and weights between 14964 source faces and 14964 target faces
AMI: Patch source weights min/max/average = 0.9950716382, 1.394205984, 1.000575435
AMI: Patch target weights min/max/average = 0.9950442673, 1.365096275, 1.000564816
Execution time for mesh.update() = 1.58 s
MULES: Solving for alpha1
Phase-1 volume fraction = 5.44966545e-07  Min(alpha1) = -1.791466825e-20  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 5.823644789e-07  Min(alpha1) = -1.038904174e-20  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 6.197624128e-07  Min(alpha1) = -7.825973141e-20  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 6.571603467e-07  Min(alpha1) = -4.473487596e-20  Max(alpha1) = 1
GAMG:  Solving for p_rgh, Initial residual = 0.01655311958, Final residual = 6.810976661e-09, No Iterations 15
time step continuity errors : sum local = 1.769268728e-15, global = 1.368834199e-17, cumulative = -4.282017598e-08
GAMG:  Solving for p_rgh, Initial residual = 0.003952141467, Final residual = 6.617702388e-09, No Iterations 11
time step continuity errors : sum local = 1.400029147e-15, global = -1.456483218e-16, cumulative = -4.282017612e-08
GAMG:  Solving for p_rgh, Initial residual = 0.001011700049, Final residual = 3.845282687e-09, No Iterations 10
time step continuity errors : sum local = 8.217598588e-16, global = -5.254782802e-17, cumulative = -4.282017618e-08
GAMG:  Solving for p_rgh, Initial residual = 0.000554491584, Final residual = 6.972409284e-09, No Iterations 9
time step continuity errors : sum local = 1.490644691e-15, global = -1.291619314e-16, cumulative = -4.282017631e-08
GAMG:  Solving for p_rgh, Initial residual = 0.0003465827588, Final residual = 5.393514794e-09, No Iterations 9
time step continuity errors : sum local = 1.153062298e-15, global = 1.070930183e-16, cumulative = -4.28201762e-08
GAMGPCG:  Solving for p_rgh, Initial residual = 0.0002396514594, Final residual = 2.174711367e-10, No Iterations 5
time step continuity errors : sum local = 4.64927874e-17, global = -3.972436362e-19, cumulative = -4.28201762e-08
ExecutionTime = 223.19 s  ClockTime = 233 s

Interface Courant Number mean: 1.916717685e-07 max: 0.1287661148
Courant Number mean: 0.0004432945119 max: 0.1287661148
deltaT = 4.019038676e-07
Time = 1.935456303e-06

solidBodyMotionFunctions::rotatingMotion::transformation(): Time = 1.935456303e-06 transformation: ((0 0 0) (0.9999999979 (0 6.409771126e-05 0)))
AMI: Creating addressing and weights between 14964 source faces and 14964 target faces
AMI: Patch source weights min/max/average = 0.9932927434, 1.400417156, 1.000607698
AMI: Patch target weights min/max/average = 0.9925058446, 1.363865653, 1.000594273
Execution time for mesh.update() = 1.59 s
MULES: Solving for alpha1
Phase-1 volume fraction = 7.002037891e-07  Min(alpha1) = -3.274013142e-20  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 7.432472314e-07  Min(alpha1) = -6.563983597e-20  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 7.862906737e-07  Min(alpha1) = -1.433173356e-20  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 8.293341161e-07  Min(alpha1) = -1.93310652e-20  Max(alpha1) = 1
GAMG:  Solving for p_rgh, Initial residual = 0.01412494318, Final residual = 5.132243665e-09, No Iterations 15
time step continuity errors : sum local = 1.437750713e-15, global = 1.507869969e-17, cumulative = -4.282017618e-08
GAMG:  Solving for p_rgh, Initial residual = 0.003289228668, Final residual = 8.303451587e-09, No Iterations 11
time step continuity errors : sum local = 2.021746186e-15, global = -1.823752452e-16, cumulative = -4.282017637e-08
GAMG:  Solving for p_rgh, Initial residual = 0.0009262395848, Final residual = 9.932632803e-09, No Iterations 9
time step continuity errors : sum local = 2.455684309e-15, global = -3.964969215e-16, cumulative = -4.282017676e-08
GAMG:  Solving for p_rgh, Initial residual = 0.0004916397871, Final residual = 6.729308374e-09, No Iterations 9
time step continuity errors : sum local = 1.664547207e-15, global = -1.628362513e-16, cumulative = -4.282017693e-08
GAMG:  Solving for p_rgh, Initial residual = 0.000302596381, Final residual = 4.941746421e-09, No Iterations 9
time step continuity errors : sum local = 1.222443575e-15, global = 1.240361068e-16, cumulative = -4.28201768e-08
GAMGPCG:  Solving for p_rgh, Initial residual = 0.0002065366047, Final residual = 1.986903846e-10, No Iterations 5
time step continuity errors : sum local = 4.914866401e-17, global = -3.566772216e-19, cumulative = -4.28201768e-08
ExecutionTime = 252.05 s  ClockTime = 263 s

My fvSolution:
Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.1.1                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version    2.0;
    format      ascii;
    class      dictionary;
    location    "system";
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    pcorr
    {
        solver          PCG;
        preconditioner
        {
            preconditioner  GAMG;
            tolerance      1e-05;
            relTol          0;
            smoother        DICGaussSeidel;
            nPreSweeps      0;
            nPostSweeps    2;
            nFinestSweeps  2;
            cacheAgglomeration false;
            nCellsInCoarsestLevel 10;
            agglomerator    faceAreaPair;
            mergeLevels    1;
        }

        tolerance      1e-05;
        relTol          0;
        maxIter        100;
    }

    p_rgh
    {
        solver          GAMG;
        tolerance      1e-08;
        relTol          0;
        smoother        DIC;
        nPreSweeps      0;
        nPostSweeps    2;
        nFinestSweeps  2;
        cacheAgglomeration true;
        nCellsInCoarsestLevel 10;
        agglomerator    faceAreaPair;
        mergeLevels    1;
    }

    p_rghFinal
    {
        solver          PCG;
        preconditioner
        {
            preconditioner  GAMG;
            tolerance      2e-09;
            relTol          0;
            nVcycles        2;
            smoother        DICGaussSeidel;
            nPreSweeps      2;
            nPostSweeps    2;
            nFinestSweeps  2;
            cacheAgglomeration true;
            nCellsInCoarsestLevel 10;
            agglomerator    faceAreaPair;
            mergeLevels    1;
        }

        tolerance      2e-09;
        relTol          0;
        maxIter        20;
    }

    U
    {
        solver          smoothSolver;
        smoother        GaussSeidel;
        tolerance      1e-06;
        relTol          0;
        nSweeps        1;
    }
}

PIMPLE
{
    momentumPredictor no;
    nCorrectors    6;
    nNonOrthogonalCorrectors 0;
    nAlphaCorr      1;
    nAlphaSubCycles 4;
    cAlpha          1.5;
    correctPhi      no;

}

relaxationFactors
{
    fields
    {
    }
    equations
    {
        "U.*"          1;
    }
}


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

My fvSchemes:
Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.1.1                                |
|  \\  /    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
{
    div(rho*phi,U)  Gauss upwind;
    div(phi,alpha)  Gauss vanLeer;
    div(phirb,alpha) Gauss interfaceCompression;
}

laplacianSchemes
{
    default        Gauss linear corrected;
}

interpolationSchemes
{
    default        linear;
}

snGradSchemes
{
    default        corrected;
}

fluxRequired
{
    default        no;
    p_rgh;
    pcorr;
    alpha;
}


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


akidess February 21, 2013 12:43

I don't think so. The values are so small that they shouldn't be causing any problems.

jrrygg February 22, 2013 05:58

Hi,

Thank you for your response!

In that case there must be another reason for the simulation to crash. I get the error message:

Code:

[1] #0  Foam::error::printStack(Foam::Ostream&) in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
[1] #1  Foam::sigFpe::sigHandler(int) in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
[1] #2  in "/lib/x86_64-linux-gnu/libc.so.6"
[1] #3  Foam::divide(Foam::Field<double>&, double const&, Foam::UList<double> const&) in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
[1] #4 
[1]  in "/opt/openfoam211/platforms/linux64GccDPOpt/bin/interDyMFoam"
[1] #5  __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
[1] #6 
[1]  in "/opt/openfoam211/platforms/linux64GccDPOpt/bin/interDyMFoam"
[IEPT0938:10436] *** Process received signal ***
[IEPT0938:10436] Signal: Floating point exception (8)
[IEPT0938:10436] Signal code:  (-6)
[IEPT0938:10436] Failing at address: 0x3e9000028c4
[IEPT0938:10436] [ 0] /lib/x86_64-linux-gnu/libc.so.6(+0x364a0) [0x7f5d484a84a0]
[IEPT0938:10436] [ 1] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x35) [0x7f5d484a8425]
[IEPT0938:10436] [ 2] /lib/x86_64-linux-gnu/libc.so.6(+0x364a0) [0x7f5d484a84a0]
[IEPT0938:10436] [ 3] /opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so(_ZN4Foam6divideERNS_5FieldIdEERKdRKNS_5UListIdEE+0x24) [0x7f5d495e3754]
[IEPT0938:10436] [ 4] interDyMFoam() [0x427714]
[IEPT0938:10436] [ 5] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7f5d4849376d]
[IEPT0938:10436] [ 6] interDyMFoam() [0x42f14d]
[IEPT0938:10436] *** End of error message ***
--------------------------------------------------------------------------
mpirun noticed that process rank 1 with PID 10436 on node IEPT0938 exited on signal 8 (Floating point exception).
--------------------------------------------------------------------------

The last two time steps:
Code:

Interface Courant Number mean: 2.578325543e-06 max: 0.1973915059
Courant Number mean: 0.001834300267 max: 0.5267375298
deltaT = 1.428571429e-06
Time = 0.0003242857143

solidBodyMotionFunctions::rotatingMotion::transformation(): Time = 0.0003242857143 transformation: ((0 0 0) (0.9999423314 (0 0.01073936544 0)))
AMI: Creating addressing and weights between 14964 source faces and 14964 target faces
AMI: Patch source weights min/max/average = 0.1315257649, 1.892722733, 1.003533756
AMI: Patch target weights min/max/average = 0.07925273668, 1.723012618, 1.002725914
Execution time for mesh.update() = 1.77 s
MULES: Solving for alpha1
Phase-1 volume fraction = 0.0001384376939  Min(alpha1) = -1.218465399e-20  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 0.000138641559  Min(alpha1) = -3.245414137e-20  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 0.0001388454241  Min(alpha1) = -3.091100792e-19  Max(alpha1) = 1
GAMG:  Solving for p_rgh, Initial residual = 0.0002908184194, Final residual = 1.591419563e-06, No Iterations 4
time step continuity errors : sum local = 1.816358047e-11, global = 1.740532506e-12, cumulative = -4.267707731e-07
GAMGPCG:  Solving for p_rgh, Initial residual = 6.862589785e-05, Final residual = 4.269590466e-10, No Iterations 5
time step continuity errors : sum local = 4.889981776e-15, global = 1.051027885e-16, cumulative = -4.26770773e-07
ExecutionTime = 3892.75 s  ClockTime = 4152 s

Interface Courant Number mean: 2.588344877e-06 max: 0.1973759562
Courant Number mean: 0.001834365716 max: 0.5267375298
deltaT = 1.428571429e-06
Time = 0.0003257142857

solidBodyMotionFunctions::rotatingMotion::transformation(): Time = 0.0003257142857 transformation: ((0 0 0) (0.9999418221 (0 0.01078667359 0)))
AMI: Creating addressing and weights between 14964 source faces and 14964 target faces
AMI: Patch source weights min/max/average = 4.265623869e-06, 1.919686291, 1.003500292
AMI: Patch target weights min/max/average = 0, 1.724940936, 1.00242754
Execution time for mesh.update() = 2.1 s
MULES: Solving for alpha1
Phase-1 volume fraction = 0.0001390492891  Min(alpha1) = -1.396734536e-20  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 0.0001392531541  Min(alpha1) = -7.3958564e-21  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 0.0001394570191  Min(alpha1) = -2.633820368e-20  Max(alpha1) = 1

I used a bit different fvSolutions and fvSchemes now, it seems these are better settings for my simulation.

fvSolution:
Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.1.1                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version    2.0;
    format      ascii;
    class      dictionary;
    location    "system";
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    pcorr
    {
        solver          PCG;
        preconditioner
        {
            preconditioner  GAMG;
            tolerance      1e-05;
            relTol          0;
            smoother        DICGaussSeidel;
            nPreSweeps      0;
            nPostSweeps    2;
            nFinestSweeps  2;
            cacheAgglomeration false;
            nCellsInCoarsestLevel 10;
            agglomerator    faceAreaPair;
            mergeLevels    1;
        }

        tolerance      1e-05;
        relTol          0;
        maxIter        100;
    }

    p_rgh
    {
        solver          GAMG;
        tolerance      1e-08;
        relTol          0.01;
        smoother        DIC;
        nPreSweeps      0;
        nPostSweeps    2;
        nFinestSweeps  2;
        cacheAgglomeration true;
        nCellsInCoarsestLevel 10;
        agglomerator    faceAreaPair;
        mergeLevels    1;
    }

    p_rghFinal
    {
        solver          PCG;
        preconditioner
        {
            preconditioner  GAMG;
            tolerance      2e-09;
            relTol          0;
            nVcycles        2;
            smoother        DICGaussSeidel;
            nPreSweeps      2;
            nPostSweeps    2;
            nFinestSweeps  2;
            cacheAgglomeration true;
            nCellsInCoarsestLevel 10;
            agglomerator    faceAreaPair;
            mergeLevels    1;
        }

        tolerance      2e-09;
        relTol          0;
        maxIter        20;
    }

    U
    {
        solver          smoothSolver;
        smoother        GaussSeidel;
        tolerance      1e-06;
        relTol          0;
        nSweeps        1;
    }
}

PIMPLE
{
    momentumPredictor no;
    nCorrectors    2;
    nNonOrthogonalCorrectors 0;
    nAlphaCorr      1;
    nAlphaSubCycles 3;
    cAlpha          1.5;
    correctPhi      no;

    pRefPoint      (0.0013 0.0017 0.0017);
    pRefValue      1e5;
}

relaxationFactors
{
    fields
    {
    }
    equations
    {
        "U.*"          1;
    }
}


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

fvSchemes:
Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.1.1                                |
|  \\  /    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
{
    div(rho*phi,U)  Gauss vanLeerV;
    div(phi,alpha)  Gauss vanLeer;
    div(phirb,alpha) Gauss vanLeer;
}

laplacianSchemes
{
    default        Gauss linear corrected;
}

interpolationSchemes
{
    default        linear;
}

snGradSchemes
{
    default        corrected;
}

fluxRequired
{
    default        no;
    p_rgh;
    pcorr;
    alpha;
}


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

I can't figure out why it crashes, there does not seem to be an issue with the Courant number.

akidess February 22, 2013 06:08

If you're still having problems, try the following:
Test maxAlphaCo=0.1. Keep the momentum predictor enabled. Try relTol=0 on p_rgh, and finally try running GAMG with pure GaussSeidel instead of using DIC.

jrrygg February 22, 2013 06:27

Thank you very much for your quick reply! I will try that and let you know if it works or not.

jrrygg February 22, 2013 09:08

Crashed again unfortunately, at the same time as before. Does the error message make any sense?

Code:

[1] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[1] #1  Foam::sigFpe::sigHandler(int) at ??:?
[1] #2  in "/lib/x86_64-linux-gnu/libc.so.6"
[1] #3  at symmTensorField.C:?
[1] #4 
[1]  at ??:?
[1] #5 
[1]  at ??:?
[1] #6 
[1]  at ??:?
[1] #7  __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
[1] #8 
[1]  at ??:?
[IEPT0955:30806] *** Process received signal ***
[IEPT0955:30806] Signal: Floating point exception (8)
[IEPT0955:30806] Signal code:  (-6)
[IEPT0955:30806] Failing at address: 0x3e900007856
[IEPT0955:30806] [ 0] /lib/x86_64-linux-gnu/libc.so.6(+0x364a0) [0x7ff907d934a0]
[IEPT0955:30806] [ 1] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x35) [0x7ff907d93425]
[IEPT0955:30806] [ 2] /lib/x86_64-linux-gnu/libc.so.6(+0x364a0) [0x7ff907d934a0]
[IEPT0955:30806] [ 3] /opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so(+0x3ac9c4) [0x7ff908ee19c4]
[IEPT0955:30806] [ 4] interDyMFoam() [0x4782e2]
[IEPT0955:30806] [ 5] interDyMFoam() [0x478844]
[IEPT0955:30806] [ 6] interDyMFoam() [0x42a9e0]
[IEPT0955:30806] [ 7] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7ff907d7e76d]
[IEPT0955:30806] [ 8] interDyMFoam() [0x42f14d]
[IEPT0955:30806] *** End of error message ***
--------------------------------------------------------------------------
mpirun noticed that process rank 1 with PID 30806 on node IEPT0955 exited on signal 8 (Floating point exception).
--------------------------------------------------------------------------
jonerivr@IEPT0955:~/OpenFOAM/jonerivr-2.1.1/run/donut-mesh13$

I have two more ideas about what can be wrong, other than the fv-files:

1. I am simulating with turbulenceProperties set to laminar, while a turbulence model should in reality be applied.
2. I have a symmetryplane along the jet and have heard that this BC sometimes causes instabilities with multiphase-simulations.

Does this sound reasonable?

I will try to run some more simulations during the weekend. For k and epsilon i will use:
k=2.45504; //k=(2/3)(Uref*Ti), Ti=0,05 turb intensity (Versteeg, 2007)
epsilon=255.38893; //epsilon=0,0845^(3/4)*(k^(3/2))/(0,07L) L=Diameter of jet=0,04

olivierG February 22, 2013 09:57

Hello,

You are using interDyMFoam with AMI i guess. On your last iteration befor crash, you get :
Quote:

AMI: Patch target weights min/max/average = 0.0792527 ...
This mean that there is some trouble at the interface. (value should be close to 1).
Solution: either improve your mesh, or lower your time stepping a bit may help.

regards,
olivier

jrrygg February 22, 2013 10:06

Quote:

Originally Posted by olivierG (Post 409517)
This mean that there is some trouble at the interface. (value should be close to 1).
Solution: either improve your mesh, or lower your time stepping a bit may help.

Thank you Olivier!

As you can see in the screenshot below, the AMI-patches are not perfectly circular (AMI1 and AMI2 showing). I guess that might be what is causing it to crash?

I guess I should go back to snappyHexMesh then, and refine the AMI-interface further.

https://dl.dropbox.com/u/2820596/donut-mesh13-AMI.png

olivierG February 22, 2013 10:17

hello,

Finer interface doesn't help here (and this may even be worst !).
What's matter is your mesh should not overlap or create hole: try a different "matchTolerance" in your boundary file, and check your geometry (interface should be circular).
And if you want good result with AMI, try to use an more uniform mesh at interface, i.e not a fine on one side, and coarse on the other.

regards,
olivier

jrrygg February 22, 2013 10:46

Quote:

Originally Posted by olivierG (Post 409524)
Finer interface doesn't help here (and this may even be worst !).
What's matter is your mesh should not overlap or create hole: try a different "matchTolerance" in your boundary file, and check your geometry (interface should be circular).
And if you want good result with AMI, try to use an more uniform mesh at interface, i.e not a fine on one side, and coarse on the other.

Thank you Olivier!

So you mean that if I increase the matchTolerance, e.g. from 0.0001 to 0.001, my simulation might be more stable?

The problem is that the interface is not perfectly circular. I tried to adjust the settings in snappyHexMeshDict, but I couldn't figure out how to resolve it. The mesh in the interface gets affected by the geometries around, resulting in "bumps" several places around the interface. Please see the attached images for explanation.

Any tips and tricks to improve my mesh and simulation are greatly appreciated!


Regards,

Jone

Whole domain, rotating region with buckets and stationary part with water jet:
https://dl.dropbox.com/u/2820596/donut-mesh13.png

"Bump" created in the AMI-interface because of buckets:
https://dl.dropbox.com/u/2820596/donut-mesh13-bump.png

Chris Lucas February 26, 2013 05:13

Hi,

have you tried using

div(phi,alpha) Gauss vanLeer01


this scheme should bound alpha between 0 and 1


Regards,
Christian

jrrygg February 26, 2013 05:39

Quote:

Originally Posted by Chris Lucas (Post 410121)
have you tried using

div(phi,alpha) Gauss vanLeer01


this scheme should bound alpha between 0 and 1

No, I have not tried this, but I will definitely do so. Thanks a lot!

I am currently working on making a better mesh, hope to achieve this today so I can try running the simulation again. It turns out that a circular AMI-interface is difficult to obtain together with the refinements I want, but I think I will manage somehow.

jrrygg February 27, 2013 03:50

I finally got the simulation running, but I discovered some weird behavior of the flow so far.

1. The jet gets cut when meeting the AMI-interface, spreading along the AMI-patches on both sides (picture 1).
2. A hole is created in the isovolume at the jet inlet (picture 2). Still, when I check the value of alpha1 graphically in paraView (see picture 3), it seems that alpha1 has the max value in those cells.

Has anyone seen this type of behavior before?

Regards,

Jone

Picture 1:
https://dl.dropbox.com/u/2820596/mesh14-jetcut-AMI.png

Picture 2:
https://dl.dropbox.com/u/2820596/mesh14-inlethole.png

Picture 3:
https://dl.dropbox.com/u/2820596/mes...-wireframe.png

jrrygg March 1, 2013 07:59

I wonder if anyone has an idea of what is causing these effects?

There seems to be a strong diffusion of the jet. The behavior along the symmetryPlane is very strange, as I would expect the water to have the maximum speed (38.38ms-1) along this.

Problematic effects:
  1. The jet looses its shape quickly
  2. The jet is "cut" and water spreads out along the AMI-patches (left and right of jet)
  3. Strange "crater" at the start of the jet
  4. Jet does not seem to be mirrored along the symmetryPlane

Here is a picture with another mesh. It shows an isovolume with 0.1<alpha1<1:
https://dl.dropbox.com/u/2820596/mes...tdiffusion.png

The same jet with the symmetryPlane facing up:
https://dl.dropbox.com/u/2820596/mes...onsymmetry.png

jrrygg March 2, 2013 11:26

Anyone?

I tried to check the effect of the symmetryPlane by replacing it with zeroGradient for U, p_rgh and alpha1. As you can see from the pictures it looks a lot better (though far from perfect) with the zeroGradient BC. Is there a bug in the symmetryPlane-condition?

symmetryPlane BC applied to patch:
https://dl.dropbox.com/u/2820596/mes...metryplane.png

zeroGradient BC applied to patch:
https://dl.dropbox.com/u/2820596/mes...roGradient.png


All times are GMT -4. The time now is 12:24.