Nonlinear Correction, Relaxation and Admissibility
Why this matters. Solving the coupled block linear system does not by itself guarantee a physically admissible nonlinear state. NeuralFlow applies the solved cell correction as one coupled direction and limits that direction when temperature, species or VOF composition constraints would be violated.
Global explicit correction relaxation
Let the linear solve return a cell correction
The current default is
Temperature positivity rate limit
If a proposed negative temperature correction is too large, NeuralFlow scales the complete cell correction block. With current temperature
The cell scale is
The current default is
Species-simplex control
For
For each solved species with negative correction, the candidate scale is bounded by
Let
The dependent-species lower bound requires
Thus, for
The source also guards the lower bound of the solved-fraction sum for negative
VOF fraction-to-boundary update
With
the complete phase composition must remain inside the closed unit simplex. For proposed independent-fraction corrections
Let
NeuralFlow takes
and, when limiting is needed, moves slightly inside the feasible boundary using the fixed fraction-to-boundary factor 0.99:
If roundoff still prevents a valid candidate, the factor is applied again for a bounded number of retries. Crucially, the resulting
Atomic VOF state commit
After correction limiting, the current NeuralFlow formulation constructs a complete candidate VOF state before changing cell-owned data. Candidate velocity, pressure, temperature, independent fractions, reconstructed reference fraction, mixture properties and acoustic data are all checked first. A failed candidate leaves the old cell state intact. This prevents partially updated mixture thermodynamics from becoming visible to later assembly stages.
Absolute primitive limits
The ordinary primitive-commit and VOF primitive-commit paths clamp temperature to the configured interval
and, for compressible flow, explicitly floor pressure:
The current general fluid defaults are
Why NeuralFlow scales the complete block
Suppose the coupled linearization gives
Scaling only one variable after the solve would rotate the correction away from the coupled Newton direction. NeuralFlow instead uses
so admissibility changes step length while preserving the local direction and its pressure-velocity-temperature-species/VOF coupling.