Job execution was aborted, possibly due to a numerical instability

So while the mesh completed the simulation gave me an error:

“The job execution was aborted, possibly due to a numerical instability. Review the log to identify reasons: nonphysically large field values, extremely small time step size, etc. Modifying numerical settings and time step size could resolve the issue.”

Here is the log

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time
Create mesh for time = 0
Reading field p
Reading field U
Reading/calculating face flux field phi
Selecting incompressible transport model Newtonian
Selecting RAS turbulence model kOmegaSST
kOmegaSSTCoeffs
{
alphaK1 0.85;
alphaK2 1;
alphaOmega1 0.5;
alphaOmega2 0.856;
gamma1 0.555555555556;
gamma2 0.44;
beta1 0.075;
beta2 0.0828;
betaStar 0.09;
a1 0.31;
b1 1;
c1 10;
F3 false;
}
Creating finite volume options from “system/fvOptions”
SIMPLE: convergence criteria
field k tolerance 1e-05
field U tolerance 1e-05
field “p.*” tolerance 1e-05
field omega tolerance 1e-05
Starting time loop
faceSource faceSource201:
total faces = 3348
total area = 0.002164806518
specific scale factors =
{
p 997.33;
p_rgh 997.33;
}
→ FOAM Warning :
From function writeOldTimesOnSignalFunctionObject::writeOldTimesOnSignalFunctionObject
in file misc/writeOldTimesOnSignal/writeOldTimesOnSignal.C at line 84
‘writeCurrent’ was set. This may lead to uncaught segmentation faults
→ FOAM Warning :
From function writeOldTimesOnSignalFunctionObject::writeOldTimesOnSignalFunctionObject
in file misc/writeOldTimesOnSignal/writeOldTimesOnSignal.C at line 105
sigTERM unset. Setting it to true so that signal is propagated to other processors
If this is undesired explicitly set ‘sigTERM false;’ in “system/controlDict.functions.sigHandler”
[0] Set SIGFPE(8) signal handler
To switch this off set ‘sigFPE false;’
[0] Set SIGSEGV(11) signal handler
To switch this off set ‘sigSEGV false;’
To catch Ctrl-C set ‘sigINT true;’
[0] Set SIGTERM(15) signal handler
[0] Set SIGQUIT(3) signal handler
To catch the USR1-signal set ‘sigUSR1 true;’
To catch the USR2-signal set ‘sigUSR2 true;’
4 signal handlers installed
[1] Set SIGFPE(8) signal handler
[1] Set SIGSEGV(11) signal handler
[1] Set SIGTERM(15) signal handler
[1] Set SIGQUIT(3) signal handler
[3] Set SIGFPE(8) signal handler
[3] Set SIGSEGV(11) signal handler
[3] Set SIGTERM(15) signal handler
[3] Set SIGQUIT(3) signal handler
[2] Set SIGFPE(8) signal handler
[2] Set SIGSEGV(11) signal handler
[2] Set SIGTERM(15) signal handler
[2] Set SIGQUIT(3) signal handler
faceSource faceSource200:
total faces = 3292
total area = 0.00216410415835
specific scale factors =
{
p 997.33;
p_rgh 997.33;
}
Time = 1
[1] Signal 8 encountered
[1] Going to reraise SIGTERM after writting
[1] Resetting old handlers (just in case)
[1] Unset SIGFPE(8) signal handler
[1] Unset SIGSEGV(11) signal handler
[1] Unset SIGQUIT(3) signal handler
[1] Writing old times:
[1] 1 times to write
[1] Writing current time 1
[1] Printstack:
[1]
[1] #0 Foam::error::printStack(Foam::Ostream&) at ??:?
[1] #1 Foam::writeOldTimesOnSignalFunctionObject::sigHandler(int) at ??:?
[1] #2 in "
[1] #3 in "
[1] #4 pow in "
[1] #5 Foam::pow(Foam::Field&, Foam::UList const&, Foam::UList const&) at ??:?
[1] #6 Foam::pow(Foam::UList const&, Foam::UList const&) at ??:?
[1] #7 parserPatch::PatchValueExpressionParser::parse() at ??:?
[1] #8 Foam::PatchValueExpressionDriver::parseInternal(int) at ??:?
[1] #9 Foam::CommonValueExpressionDriver::parse(Foam::exprString const&, Foam::word const&) at ??:?
[1] #10 Foam::tmp > > Foam::CommonValueExpressionDriver::evaluate >(Foam::exprString const&, bool) at ??:?
[1] #11 Foam::groovyBCFvPatchField >::updateCoeffs() at ??:?
[1] #12 Foam::GeometricField, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::updateCoeffs() at ??:?
[1] #13 Foam::fvMatrix >::fvMatrix(Foam::GeometricField, Foam::fvPatchField, Foam::volMesh> const&, Foam::dimensionSet const&) at ??:?
[1] #14
[1] at ??:?
[1] #15
[1] at ??:?
[1] #16 __libc_start_main in "
[1] #17
[1]
[1] at ??:?
[1]
[1] Raising SIGTERM so that other processes will dump too
[1] Signal 15 encountered
[1] Resetting old handlers (just in case)
[1] Unset SIGTERM(15) signal handler
[1] Other handler dumped already. Exiting
[1] Sleeping 60 before reraising SIGTERM to allow other processes to write
[1] Reraising original signal
[2] Signal 15 encountered
[2] Resetting old handlers (just in case)
[2] Unset SIGFPE(8) signal handler
[2] Unset SIGSEGV(11) signal handler
[2] Unset SIGTERM(15) signal handler
[2] Unset SIGQUIT(3) signal handler
[2] Writing old times:
[2] 1 times to write
[2] Writing current time 1
[2] Reraising original signal
[3] Signal 15 encountered
[3] Resetting old handlers (just in case)
[3] Unset SIGFPE(8) signal handler
[3] Unset SIGSEGV(11) signal handler
[3] Unset SIGTERM(15) signal handler
[3] Unset SIGQUIT(3) signal handler
[3] Writing old times:
[3] 1 times to write
[3] Writing current time 1
[3] Reraising original signal
[0] Signal 15 encountered
[0] Resetting old handlers (just in case)
[0] Unset SIGFPE(8) signal handler
[0] Unset SIGSEGV(11) signal handler
[0] Unset SIGTERM(15) signal handler
[0] Unset SIGQUIT(3) signal handler
[0] Writing old times:
[0] 1 times to write
[0] Writing current time 1
→ FOAM Warning :
From function writeOldTimesOnSignalFunctionObject::sigHandler(int sig)
in file misc/writeOldTimesOnSignal/writeOldTimesOnSignal.C at line 162
This action may end in a segmentation fault
Set ‘writeCurrent false;’ to avoid this
[0] Reraising original signal

mpirun noticed that process rank 1 with on node 8a5ab995cd3e exited on signal 15 (Terminated).

Hi @mas985,

Could you provide the link to your project; there is likely an issue with your simulation set-up. Let’s have a look.

Thanks,
Anna

Sorry. I think I found the issue. because I resolved the first cell down to y+ < 1 the velocity function I used became undefined at this edge location. I just needed to modify the function slightly to get it to work.

Thanks anyway.

1 Like

@mas985, glad you got it figured out!

Cheers,
Anna