reactingFoam crashes mysteriously
hi forum,
I am experiencing lots of instability with the solver reactionFoam with parallelization and they are not the janafthermo sort :( My domain has around 260 000 elements and was divided in 32 domains for parallelization  divided as (16 2 1) to minimize proc borders. Im using the chemkin reader to read a single step combustion of CH4 oxidation in a GT combustor (diffusion flames). Inlet velocities are between 20 and 50 m/s. I started fixing Courant No to 0.1. Everything looks good for about thousands of iterations but suddenly it crashes with a floating point exception. I say suddendly because I dont see a change in timestep or even the problematic janafThermo error message. Also, it never crashes at the same timestep: if I simply restart the solver with the same parameters (no CourantNo change or any other) it will crash in a different timeStep. It just goes!... as you can see in the following output after decreasing CourantNo to 0.035 (it still crashes!). I also attached a txt with the complete error message. Bellow the output i also posted the fvSolution and fvSchemes so you can take and criticize. Thank you José [...] DILUPBiCG: Solving for epsilon, Initial residual = 4.32044e06, Final residual = 9.94436e09, No Iterations 1 DILUPBiCG: Solving for k, Initial residual = 1.74131e06, Final residual = 3.09184e09, No Iterations 1 ExecutionTime = 161537 s ClockTime = 164174 s Courant Number mean: 0.00125684 max: 0.0349221 deltaT = 3.80307e07 Time = 0.3549768 Solving chemistry diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 DILUPBiCG: Solving for Ux, Initial residual = 1.19096e05, Final residual = 6.46123e09, No Iterations 1 [24] #0 Foam::error::printStack(Foam::Ostream&)[25] #0 Foam::error::printStack(Foam::Ostream&)[26] #0 Foam::error::printStack(Foam::Ostream&)[27] #0 [...] fvSolution solvers { rho { solver PCG; preconditioner DIC; tolerance 1e06; relTol 0; } p { solver PCG; preconditioner DIC; tolerance 1e6; relTol 0.0; } pFinal { solver PCG; preconditioner DIC; tolerance 1e6; relTol 0.0; } "(UYihskepsilon)" { solver PBiCG; preconditioner DILU; tolerance 1e06; relTol 0; } } PISO { nCorrectors 3; nNonOrthogonalCorrectors 6; } relaxationFactors { rho 0.6; U 0.6; pFinal 0.4; p 0.4; k 0.6; epsilon 0.6; hs 0.6; T 0.6; } fvSchemes ddtSchemes { default Euler; //CrankNicholson 1; //Euler; } gradSchemes { default Gauss linear; grad(p) Gauss linear; } divSchemes { default none; div(phi,U) Gauss limitedLinearV 1; div(phi,Yi_h) Gauss limitedLinear01 1; div(phi,hs) Gauss limitedLinear 1; div(phiU,p) Gauss limitedLinear 1; div(phid,p) Gauss limitedLinear 1; div(phi,epsilon) Gauss limitedLinear 1; div(phi,k) Gauss limitedLinear 1; div((muEff*dev2(grad(U).T()))) Gauss linear; } laplacianSchemes { default Gauss linear uncorrected; laplacian(muEff,U) Gauss linear uncorrected; laplacian(mut,U) Gauss linear uncorrected; laplacian(DkEff,k) Gauss linear uncorrected; laplacian(DepsilonEff,epsilon) Gauss linear uncorrected; laplacian((rho*(1A(U))),p) Gauss linear uncorrected; laplacian(alphaEff,hs) Gauss linear uncorrected; } interpolationSchemes { default linear; } snGradSchemes { default uncorrected; } fluxRequired { default no; p; } 
error log
1 Attachment(s)
sorry, forgot the attachment

Hi,
does it always crash on the same equation, namely Uy? I have a similar problem with another solver, if I use PBiCG solvers with DILU preconditioner. You might want to try with another type of linear solver for that equation to verify if it still happens. Best, 
Hi alberto,
No, it crashes pretty randomly. Actually, my simulation crashes in two ways: a) mpi sends a message of "floating point exception" error (signal 8); b) mpi sends a message of "Hang Up" (signal 1) Are these 2 types of error related? A workmate told me that openFoam sometimes hangs on opensuse (i am using 11.4): do you think this might be the problem? 
Quote:
Out of curiosity, do you use the system OpenMPI, the one in ThirdParty or a different version? Best, 
hi,
I am using openMPI 1.4.1 from the Third Party package. I've compiled OpenFOAM myself. regards jose 
OK, we are using exactly the same configuration then. I am going to test a different MPI implementation to see if it might depend on that, and I'll let you know.
Maybe you should report it as a bug however. I reported mine, but we believed it was specific to the solver. You just confirmed it is not. Best, 
Ok, I ll report my problem ASAP.
One more thing, I d like you to take a look in my other post. It is not related to this one but is also turning my head around. Here is the link http://www.cfdonline.com/Forums/ope...daryface.html Regards 
hello reactingFoamers :),
i am new to reactingFoam solver. I am first interested in mixing of gases(without reaction). Some threads suggested reactingFoam (with chemistry switched off). I ran the solver and it crashed after 16 milliseconds. Here is my setup  chemistry properties file // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // psiChemistryModel ODEChemistryModel<gasThermoPhysics>; chemistry off; // switch off chemistry chemistrySolver ode; initialChemicalTimeStep 1e07; sequentialCoeffs { cTauChem 0.001; } EulerImplicitCoeffs { cTauChem 0.05; equilibriumRateLimiter off; } odeCoeffs { solver SIBS; eps 0.05; scale 1; } // ************************************************** *********************** // Combustion properties file // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // combustionModel PaSR<psiChemistryCombustionModel>; active false; //combustion switched off infinitelyFastChemistryCoeffs { C 10.0; } PaSRCoeffs { Cmix Cmix [ 0 0 0 0 0 0 0 ] 0.1; turbulentReaction off; //switched off } // ************************************************** *********************** // reactions file  species ( O2 H2O CH4 CO2 N2 ); reactions { methaneReaction { type irreversibleArrheniusReaction; reaction "CH4 + 2O2 = CO2 + 2H2O"; A 5.2e16; beta 0; Ta 14906; } }  Thermophysical properties file  thermoType hsPsiMixtureThermo<reactingMixture<gasThermoPhysic s>>; inertSpecie N2; chemistryReader foamChemistryReader; foamChemistryFile "$FOAM_CASE/constant/reactions"; foamChemistryThermoFile "$FOAM_CASE/constant/thermo.compressibleGas";  i am using SST turbulence model. Below are the boundary conditions:  mut and alphat internalField uniform 0; boundaryField { INLET { type fixedValue; value uniform 0; } OUTLET { type zeroGradient; } mut for walls type mutUSpaldingWallFunction; value uniform 0; alphat for walls type alphatWallFunction; Prt 0.85; value uniform 0;  T: internalField uniform 550; boundaryField { INLET_FUEL { type fixedValue; value uniform 293; } INLET_AIR { type fixedValue; value uniform 550; } OUTLET { type zeroGradient; } WALL { type zeroGradient; }  I don't think there could be problems with boundary conditions of U,CH4,N2,O2,k,omega and Ydefault and i won't write them here as it will lengthen the post. There error message seems to do something with mut wall function and happens because its divergingTempearure is going out of range. But the Courant number is below 1. Probably, i have to improve my fvSchemes and fvSolution :  fvSchemes ddtSchemes { default backward; } gradSchemes { default Gauss linear; } divSchemes { default none; div(phi,U) Gauss linearUpwindV grad(U); div(phi,Yi_h) Gauss limitedLinear01 1; div(phi,h) Gauss limitedLinear 1; div(phi,K) Gauss limitedLinear 1; div(phid,p) Gauss limitedLinear 1; div(phi,omega) Gauss limitedLinear 1; div(phi,k) Gauss limitedLinear 1; div((muEff*dev2(T(grad(U))))) Gauss linear; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } fluxRequired { default no; p; }  fvSolution solvers { rho { solver PCG; preconditioner DIC; tolerance 1e06; relTol 0.05; } rhoFinal { $rho; tolerance 1e06; relTol 0; } p { solver PCG; preconditioner DIC; tolerance 1e6; relTol 0.05; } pFinal { $p; tolerance 1e6; relTol 0.0; } "(Uhskomega)" { solver PBiCG; preconditioner DILU; tolerance 1e06; relTol 0.05; } "(Uhskomega)Final" { solver PBiCG; preconditioner DILU; tolerance 1e06; relTol 0; } Yi { $hsFinal; } } PIMPLE { momentumPredictor no; nOuterCorrectors 1; nCorrectors 2; nNonOrthogonalCorrectors 1; }  I kindly request OpeFOAM experts to help me. I have spent lot of time on this problem. I didn't find many tutorials about reacting foam and i am not able to proceed with my simulation. Regards, Achinta 
Quote:
I saw in your case, fvSolution, you used PISO algorithm. But when I don't define PIMPLE in the fvSolution, there will be an error message. Do you think the PIMPLE keyword is required necessarily? Thank you Bes Regard Litchy 
All times are GMT 4. The time now is 13:12. 