Skip to content
SHD Sim
Menu
Documentation menu

Draft. This manual is new and still growing. If something here does not match what you see in the software, the software is right — tell us and we will fix the page.

Troubleshooting

Indexed by the message you can see. Somebody stuck pastes the error into a search box, so the heading is the literal string rather than a description of the category it belongs to.

Every message here is a real one from the application or the solver, quoted character for character. If you hit something not listed, support@shd-sim.com.


The pages

This page carries the messages most people meet first. The rest are grouped by where you are looking when you see them.

Page For
The run will not start A refusal before anything runs — the New run dialog, and the Problems entries behind it
The mesh and the geometry Problems entries about mesh quality, imported surfaces and boundary layers
The solver log The Log and Monitors tabs, and what the Problems tab collects from a finished run
Tier limits Cell and node caps, cores, remote execution, and the upgrade notice
Structural, thermal and the other solid families The six non-fluids families, which have their own rules and their own solvers

Three places a problem appears

An entry says which of these it belongs to, because the same fault reads differently in each and looking in the wrong one finds nothing.

  • The Problems tab of the bottom dock. Validation rules, each filed against a step of the case. A run is refused while any of them is an error.
  • The Log tab. What the mesher and the solver printed, plus the application's own account of starting and stopping them.
  • A dialog or a notice inside a pane. The New run dialog, the licence page, and the upgrade notice that appears above a pane when a tier limit is met.

Before the run

The Problems tab in the bottom dock reports these before you start solving. It is the single most useful part of the interface and the easiest to ignore. A red entry blocks the run. An amber or a grey one does not — double-click either and the panel that opens labels it Warning or Note — but several of those describe a run that will start and then stop, or finish and be wrong, so read them rather than counting the reds. With no entries at all, the tab reads "No problems — the case is ready to run."

Not every message below is a Problems entry — a few are log lines or status text, and each says where it appears.

More of them, grouped by where you are looking: the run will not start, the mesh and the geometry, tier limits, the solid families.

"A two-phase case needs gravity"

A free-surface or multiphase case with gravity left at zero has nothing to separate the phases. There is no interface without it — the two fluids simply diffuse into each other.

Set gravity in the case. For a normal orientation that is −9.81 m/s² on the axis pointing up.

"An axisymmetric case needs exactly two wedge patches, one each side of the axis"

Axisymmetric cases in OpenFOAM are a single wedge of small angle, with the two cut faces as wedge patches facing each other across the axis. Two is the only valid number: one is an open domain and three does not describe a wedge.

Set both faces to Wedge (axisymmetric) in Boundary conditions.

"A case cannot be both two-dimensional and axisymmetric"

These are two different ways of reducing a 3-D problem and they use different patch types — 2-D uses empty on the front and back, axisymmetric uses wedge. Choose one.

"A reacting case needs at least a fuel and an oxidiser"

A combustion case with only one species has nothing to react. Add both to the mixture.

"A patch name cannot start with a digit"

An OpenFOAM restriction rather than ours. Rename the patch.

"Starting from an earlier result is not part of the Free tier"

The full message names your tier and continues: "Initialise from the field values instead, or upgrade — the run itself is not limited, only the head start." It fires when the case is set to initialise by mapping a previous result.

This is the free-tier limit you are most likely to meet. It is a workflow gate, not a physics one — the run itself is not capped by it. Set the initial conditions to field values and the case runs.

"<Analysis type> is not part of the <tier> tier"

The rest reads "The case is safe and nothing has been lost - choosing another analysis type, or upgrading, will let it run."

It cannot fire on Free, which carries no analysis-type restriction at all. If you see it, you are on a commercial tier that holds some analysis types back.

"Cell zones and multi-region cases are not part of the <tier> tier"

Same shape, and the same note: this one does not fire on Free either. Cell zones — MRF, AMI, overset, porous media, sources — and multi-region cases, including conjugate heat transfer, are all available without a licence, subject only to the cell cap. See Licensing and activation.

"The mesher is not installed. Install it from Settings."

The solver backends are fetched during installation and anything skipped is downloaded later, so a family whose backend never arrived reports it here rather than failing mid-run. The sibling messages name the solver instead — "The solver is not installed. Install it from Settings.", "Elmer is not installed. Install it from Settings — it is the solver for this family, and there is no other.", and the same for OpenRadioss and SU2. On a fluids case the sidebar badge reads Fluids solver not installed instead of Fluids solver ready.

Go to Settings → Integrations, pick the family, and press Download and install. See Installation.

"'<name>' is named as fuel, oxidiser or inert but is not in the species list"

A species has been nominated for a role in the reaction but is not in the mixture. Add it to the species list, or nominate one that is in it.


Import and geometry

"No converter in this build reads <file>. Choose the source format explicitly."

A Problems entry, and it is about importing a mesh from another tool, not about CAD geometry. The mesher is set to import a mesh and none of the bundled converters — gmshToFoam, vtkUnstructuredToFoam, fluentMeshToFoam, star4ToFoam, ideasUnvToFoam — recognises the file from its name.

Choose the source format explicitly under Mesh, or export from the other tool in one of those formats.

"No converter in this build can read <file>. Choose the format explicitly under Mesh."

The same fault, one step later: this one is a Log line, written when the run tries to convert the mesh. Same remedy.

"Could not read the geometry to split it."

A Log line, not a Problems entry — look in the Log tab of the bottom dock. The file loaded but could not be divided into patches, usually because it is a single unnamed surface with no distinguishable regions, or because it is not watertight.

Check the geometry is closed. A surface with holes cannot be split reliably and will not mesh well either.

"The geometry is a single connected body, so there is nothing to split."

The other outcome of the same split, and not a fault. The import found exactly one body, so splitting into parts has nothing to do. If you expected several, the parts were fused before export.

"DAT aerofoil — a 2-D profile, so it needs a chord and span before it is geometry"

Not an error. It is the geometry import status line, and an aerofoil .dat file really is a 2-D coordinate list rather than a solid. A companion status line reads "DAT aerofoil — set the chord and span, then Convert"; there is no control called Convert. The section you want is Aerofoil extrusion in the Geometry panel — Chord, Span and Angle of attack, then the Extrude to triSurface button.

See also The mesh and the geometry for an imported surface that meshes and then diverges, and for a case that meshes an empty box because no body arrived.


During the run

The residuals rise instead of falling

The run is diverging. It will not recover on its own — stop it. Stop gracefully finishes the current step first; Kill does not, and confirms first with "The solver stops immediately and the time step it is part way through is lost. Results already written to disk are kept." Either way the results already on disk are kept.

In rough order of likelihood:

  1. The time step is too large. Check the Courant number in Simulation control. For most transient cases it wants to stay below 1.
  2. The mesh is poor where the flow is interesting. Check Quality: non-orthogonality above roughly 70 and skewness above roughly 4 are where trouble starts.
  3. A boundary condition is unphysical. A pressure outlet on the inlet side, or a velocity specified into a wall, will not settle.
  4. Relaxation is too aggressive for the case. Numerics.

The residuals go flat, well above convergence

It has stopped improving rather than diverged. Usually the mesh is too coarse to resolve what is happening, or the case is genuinely unsteady and is being solved as steady. A steady solver applied to vortex shedding will sit at a plateau forever, because there is no steady answer to find.

"Unable to set reference cell for field p"

A sealed domain — a cavity, a tank, a closed vessel — has no pressure outlet, so the absolute pressure level is undetermined and the solver needs a reference cell and value to pin it.

This was a real defect in the application, found by building the lid-driven cavity benchmark: every sealed case stopped here because nothing wrote those entries. It is fixed. If you see it on a current build, it is a case setup that the application has not recognised as closed — report it, because that is a rule gap rather than your mistake.

The solver stops immediately with no useful output

Check the log in the bottom dock rather than the summary. Most immediate stops are a missing dictionary entry, and OpenFOAM names the entry it wanted on the last line.

The messages the application itself writes around a failure — "simpleFoam exited with code 1.", "snappyHexMesh crashed." and the rest — are on The solver log, along with the two lines that mean nothing was really solved.


Results

The answer changes a lot when I refine the mesh

Then the first answer was not an answer — it was a property of the mesh.

This is normal and expected, and it is why the Comparison node exists. Keep refining until the quantity you care about stops moving. That point is mesh independence, and until you have found it you do not have a result you can defend.

Two turbulence models give different answers

Also normal. It tells you the result depends on the model, which is a fact about your problem rather than a fault in the software. Report it as a range, or justify the model choice against data.

The forces look wrong by a factor I recognise

Check units and reference values first. Density in the wrong units, or a reference area that is half the model because the case is symmetric, accounts for most factor-of-two and factor-of-ten errors.


Licensing

Cell and node caps, core limits and remote execution have their own page: Tier limits.

The application dropped to the free tier

The licence could not be revalidated within the 14-day offline grace period, or the subscription lapsed. Your cases are untouched — nothing is locked, read-only, or deleted.

Reconnect and sign in, or check the subscription at account.shd-sim.com.

A seat is held by a machine I no longer have

Deactivate it from the Devices screen in your account. You do not need the machine to release its seat.