hystrath / hyStrath

Hypersonic / Rarefied gas dynamics code developments (GPL-3.0)
https://hystrath.github.io/
GNU General Public License v3.0
225 stars 109 forks source link

Tutorial case crash #1

Closed onurpaca closed 7 years ago

onurpaca commented 7 years ago

Hi Vincent,

The "cylinderReactingMach20" case crashes at Time = 1.0961947261e-06. I tried to run it with 4 processors with the commands below:

$ decomposePar
$ mpirun -np 4 hy2Foam -parallel > log.run

I didn't alter any major settings in system folder (e. g. Courant Number adaptation, scheme etc.). I only made the following changes in system/controlDict:

- purgeWrite       0;                //15;
- timeFormat       scientific;       //general;

Do you have any idea about this issue?

Thanks,

Onur Paça

P.S. The other tutorial cases ran just fine.

Edit: I attached the end of the log file below. I have no idea why those strange characters appear (could be a Windows thing?)

Mean and max Courant Numbers = 0.00044824 0.0999993
deltaT = 2.95131e-10
^[[1;33mTime = 1.0958995952e-06^[[0m

diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
^[[1;32mcorrectSpeciesDiffusion 0.03 s^[[0m
^[[1;32mcorrectReactions        0.09 s^[[0m
DILUPBiCG:  Solving for N2, Initial residual = 0.0161543, Final residual = 3.32762e-13, No Iterations 2
DILUPBiCG:  Solving for N, Initial residual = 0.00137431, Final residual = 5.7077e-16, No Iterations 2
^[[1;32mcorrectTransport        0.08 s^[[0m
^[[1;34mYEqn time       0.29 s^[[0m
diagonal:  Solving for rhoUx, Initial residual = 0, Final residual = 0, No Iterations 0
diagonal:  Solving for rhoUy, Initial residual = 0, Final residual = 0, No Iterations 0
smoothSolver:  Solving for Ux, Initial residual = 3.0357e-06, Final residual = 2.01573e-08, No Iterations 4
smoothSolver:  Solving for Uy, Initial residual = 4.84973e-06, Final residual = 3.73157e-08, No Iterations 6
diagonal:  Solving for rhoE, Initial residual = 0, Final residual = 0, No Iterations 0
smoothSolver:  Solving for e, Initial residual = 1.20158e-06, Final residual = 1.08299e-09, No Iterations 12
^[[1;32mcorrectThermo   0.01 s^[[0m
^[[1;33mPhase no 1.0  ExecutionTime = 2537.92 s  ClockTime = 2742 s  Iteration no 3706 (0.63 s)^[[0m

Mean and max Courant Numbers = 0.000448242 0.0999993
deltaT = 2.95131e-10
^[[1;33mTime = 1.0961947261e-06^[[0m

diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
^[[1;32mcorrectSpeciesDiffusion 0.02 s^[[0m
^[[1;32mcorrectReactions        0.09 s^[[0m
--------------------------------------------------------------------------
mpirun noticed that process rank 2 with PID 27448 on node brego exited on signal 8 (Floating point exception).
--------------------------------------------------------------------------
2 total processes killed (some possibly by mpirun during cleanup)
vincentcasseau commented 7 years ago

Hi Onur,

The ambiguity I see is that I called the Mach 20 cylinder case a 'tutorial'. This is not an issue but more a case of common CFD practice for the high-speed regime.

When convergence is difficult (e.g., due to steep gradients, chemistry, etc), then you can opt for different strategies to get to the desired result (Mach ramp at the inlet, inviscid vs viscous flow, non-reacting vs reacting, no diffusion vs species diffusion, no-slip boundaries vs slip and jump boundaries, degree of rarefaction, different levels of mesh refinement as the simulation progresses, etc).

This is usually done in OF and it motivated the implementation of run-time editable dictionaries for simulations to be run on a supercomputer.

What I uploaded was the final stage of this case scenario. I may add soon a read-me file into that folder describing one possible strategy but I basically gave an answer above.

Thanks,

Vincent

PS: what your log file is showing is a problem with chemical reactions. Please try at first to get a converged flow-field without flow chemistry. PPS: These characters are colouring text in the terminal. I might remove that in the future.

onurpaca commented 7 years ago

Hi Vincent,

Thanks for the reply. I have created my own cylinder case with a different geometry & mesh and trying different strategies for convergence. If I can come up with a fully successful strategy I can share it if you want to.

By the way, thank you for the code and quick replies .

Thanks, Onur