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

Instabilites with flux limiters rhoCentralFoam

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 31, 2020, 03:46
Default Instabilites with flux limiters rhoCentralFoam
  #1
Senior Member
 
Join Date: Dec 2019
Posts: 215
Rep Power: 7
shock77 is on a distinguished road
Hi,


I have currently modelling a hypersonic free stream. I have issues using flux limiters. Whenever I use sth. besides upwind, the simulation crashes:


Code:
at ??:?
[276] #1  Foam::sigFpe::sigHandler(int) at ??:?
[276] #2  ? in "/lib64/libc.so.6"
[276] #3  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::sutherlandTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::calculate() at ??:?
[276] #4  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::sutherlandTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::correct() at ??:?
[276] #5  ? at ??:?
[276] #6  __libc_start_main in "/lib64/libc.so.6"
[276] #7  ? at ??:?
[bcn1602:16130] *** Process received signal ***
[bcn1602:16130] Signal: Floating point exception (8)
[bcn1602:16130] Signal code:  (-6)
[bcn1602:16130] Failing at address: 0x769600003f02
[bcn1602:16130] [ 0] /lib64/libc.so.6(+0x36400)[0x2aaaafe06400]
[bcn1602:16130] [ 1] /lib64/libc.so.6(gsignal+0x37)[0x2aaaafe06387]
[bcn1602:16130] [ 2] /lib64/libc.so.6(+0x36400)[0x2aaaafe06400]
[bcn1602:16130] [ 3] /sw/eng/OpenFOAM/4/skl/gcc/OpenFOAM-4.1/platforms/linux64GccDPInt32Opt/lib/libfluidThermophysicalModels.so(_ZN4Foam11hePsiThermoINS_9psiThermoENS_11pureMixtureINS_19sutherlandTransportINS_7species6thermoINS_12hConstThermoINS_10perfectGasINS_6specieEEEEENS_22sensibleInternalEnergyEEEEEEEE9calculateEv+0x2c1)[0x2aaaaccfeb01]
[bcn1602:16130] [ 4] /sw/eng/OpenFOAM/4/skl/gcc/OpenFOAM-4.1/platforms/linux64GccDPInt32Opt/lib/libfluidThermophysicalModels.so(_ZN4Foam11hePsiThermoINS_9psiThermoENS_11pureMixtureINS_19sutherlandTransportINS_7species6thermoINS_12hConstThermoINS_10perfectGasINS_6specieEEEEENS_22sensibleInternalEnergyEEEEEEEE7correctEv+0x2a)[0x2aaaacd2186a]
[bcn1602:16130] [ 5] rhoCentralFoam[0x43328e]
[bcn1602:16130] [ 6] /lib64/libc.so.6(__libc_start_main+0xf5)[0x2aaaafdf2555]
[bcn1602:16130] [ 7] rhoCentralFoam[0x435aba]
[bcn1602:16130] *** End of error message ***
--------------------------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun noticed that process rank 276 with PID 16130 on node bcn1602 exited on signal 8 (Floating point exception).
--------------------------------------------------------------------------
My Inlet-BCs are totalPressure, totalTemperature and pressureInletOutletVelocity. I use a CFL of 0.3, tried also 0.2. I have tried, minmond, vanLeer and vanAlbada.


Here are my schemes and solution dicts:


Code:
fluxScheme      Kurganov;

ddtSchemes
{
    default         Euler;
}

gradSchemes
{
    default         Gauss linear;
}

divSchemes
{
    default         Gauss linear
    div(tauMC)      Gauss linear;
}

laplacianSchemes
{
    default         Gauss linear corrected;
}

interpolationSchemes
{
    default         linear;
    reconstruct(rho) vanAlbada;
    reconstruct(U)   vanAlbadaV;
    reconstruct(T)   vanAlbada;
}

snGradSchemes
{
    default         corrected;
}
Code:
solvers
{
    "rho.*"
    {
        solver          diagonal;
    }

    "U.*"
    {
        solver          smoothSolver;
        smoother        GaussSeidel;
        nSweeps         2;
        tolerance       1e-9;
        relTol          0.0;
    }

    e
    {
        $U;
        tolerance       1e-10;
        relTol          0.0;
    }
}

Any suggestions?




Kind regards,
shock77
shock77 is offline   Reply With Quote

Old   July 31, 2020, 09:03
Default
  #2
Senior Member
 
Domenico Lahaye
Join Date: Dec 2013
Posts: 770
Blog Entries: 1
Rep Power: 17
dlahaye is on a distinguished road
Run with upwind, inspect residual fields, refine mesh in regions of large residuals, and rerun with other schemes for the convective terms?
dlahaye is offline   Reply With Quote

Old   July 31, 2020, 09:39
Default
  #3
Senior Member
 
Join Date: Dec 2019
Posts: 215
Rep Power: 7
shock77 is on a distinguished road
The residuals are very small (order of 1e-15) and I also varried the mesh resolution from 1 mm to 0.2 mm and it had no effect.
shock77 is offline   Reply With Quote

Old   July 31, 2020, 14:22
Default
  #4
Senior Member
 
Domenico Lahaye
Join Date: Dec 2013
Posts: 770
Blog Entries: 1
Rep Power: 17
dlahaye is on a distinguished road
Residual norm (as in real number) or residual fields (as in something with spatial distribution)?

D.
dlahaye is offline   Reply With Quote

Old   August 3, 2020, 03:33
Default
  #5
Senior Member
 
Join Date: Dec 2019
Posts: 215
Rep Power: 7
shock77 is on a distinguished road
Hi,


the normal residuals you get while computing.
shock77 is offline   Reply With Quote

Old   August 3, 2020, 13:00
Default
  #6
Senior Member
 
Domenico Lahaye
Join Date: Dec 2013
Posts: 770
Blog Entries: 1
Rep Power: 17
dlahaye is on a distinguished road
Possibly you gain more information by looking into the spatial distribution of the residual using

1.1/ In system-folder/controlDict-file


writeInterval 10;


functions
{
#includeFunc residualFieldDict
}

1.2/ In system-folder/residualFieldDict-file

type solverInfo; // specific for version-1906
libs ("libutilityFunctionObjects.so");

writeControl runTime; // timeStep;
writeInterval 10; // make sure this to be equal as the writeInterval specified in the controlDict file

writeResidualFields yes;
dlahaye is offline   Reply With Quote

Old   August 4, 2020, 03:53
Default
  #7
Senior Member
 
Join Date: Dec 2019
Posts: 215
Rep Power: 7
shock77 is on a distinguished road
Hi,


I think I have those instabilites because of the strong expansion of the gas.
The simulation crashes while solving the energy equation, although in the previous timestep the residuals are ok.


So I think the solution is to optimize the schemes.


I am trying this now as stable solution:


Code:
fluxScheme      Kurganov;

ddtSchemes
{
    default         Euler;
}

gradSchemes
{
    default         faceLimited Gauss linear 1;
}

divSchemes
{
    default         none;
    div(tauMC)      Gauss linear;
    div(phi,U)     Gauss linearUpwindV grad(U);
}

laplacianSchemes
{
    default         Gauss linear uncorrected;
}

interpolationSchemes
{
    default         linear;
    reconstruct(rho) Minmod;
    reconstruct(U)   MinmodV;
    reconstruct(T)   Minmod;
}

snGradSchemes
{
    default         uncorrected;
}

wallDist
{
    method meshWave;
}
Any other suggestions to make it more stable?
shock77 is offline   Reply With Quote

Reply


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
Radiation in semi-transparent media with surface-to-surface model? mpeppels CFX 11 August 22, 2019 07:30
Central Upwind Flux (rhoCentralFoam) in Implicit LUSGS Solver ChrisA OpenFOAM Programming & Development 7 April 23, 2019 05:10
Doubt regarding MUSCL scheme implementation and associated limiters SangeethCFD Main CFD Forum 0 October 7, 2017 09:00
CFL dependent flux limiters in OpenFOAM jimteb OpenFOAM Programming & Development 0 January 2, 2017 09:00
Udf for moving heat flux in 2D cylindrical geometry devia21 Fluent UDF and Scheme Programming 0 April 20, 2015 00:27


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