ERROR: Numerical Instability - FDS stopped
If you run an FDS analysis, it may have happened to step into an error similar to the following one:
This error represents a numerical instability: it means that FDS, during the computation of the fluid flow field, obtained some unphysical behaviour such as very high velocity or very low temperature.
The good news is that it’s FDS itself that provides us some good information about understanding the error and finding out ways to fix it.
ERROR: Numerical Instability – Where it happened
The first file to look is the CHID.out, where CHID is substantially the name of your simulation in FDS. This file reports information about the convergence at each time step of the CFD equations solved by FDS for each MESH defined. In the example below we can clearly see that MESH 7 has issue with the CFL number. This represents a sort of stability conditions of the simulation and it is affected by mesh size, time step and velocity. Generally we want the Max CFL number to be lower than 1 but FDS is reporting that on MESH 7 the actual CFL number is 0.18 * 10^309 – so a very high number.
Thanks to this we have already indentified the mesh, and consequently the domain zone, where the error occurred. It is now possible to move to smokeview in order to visualize the situation – if possible.
The Plot3D produced by FDS
In order to see more in details the situation you can now open your SmokeView file. FDS in fact produces an peculiar output file named Plot3D which is able to track the most important fluid-dynamics variable of your simulation. If you open this Plot3D file and move directly to the mesh identified before using the .out file you can check the minimum and maximum ranges for the variables.
In our example it is possible to note the temperature became very negative (-127°C) and velocity very high (94413 m/s). Both these values are not consistent with the physics we are simulating and are due to the numerical instability.
Now getting more complete idea of where the error occurred can be done by using some advanced FDS post-processing. In particular the ISOF command allows the user to write iso-surfaces for specified values of TEMPERATURE and VELOCITY, which in our case were the two variables triggering the problem. The command code is here reported:
&ISOF QUANTITY='TEMPERATURE', VALUE(1)=-100., VALUE(2)=-10., VALUE(3)=0. / &ISOF QUANTITY='VELOCITY', VALUE(1)=100., VALUE(2)=1000., VALUE(3)=5000. /
The smokeview file now allows to visualize these iso-surfaces which are present in the mesh location where the problem rose. This is precisely what is causing the issue to our simulation.
SOLVING the ERROR: Numerical Instability
As a general rule, in order to improve the situation make sure that close to the location where the error occurred and in the whole mesh involved:
- mesh cells that have an aspect ratio larger than 2 to 1
- there is an high speed flow through a small opening
- a sudden change in the heat release rate is happening
- the removal or creation of an obstruction, like the opening or closing of a door
- a high (>100 g/mol) molecular weight fuel molecule that is not in the FDS database. In such cases, reduce the molecular weight but maintain the atom ratios.
- overall flow-rates are balanced in the sense that any in-flow is balanced by a counter out-flow or opening