MATLAB: Do Local Restriction blocks cause convergence errors for the Initial Conditions

Simscape Fluids

When I try to simulate my Simscape model, I get the following error message:
Initial conditions solve failed to converge.
When I comment out all of the "Local Restriction" blocks, the model simulates with no errors. What could be causing this?

Best Answer

Depending on how your model is configured, "Local Restriction" blocks may be causing what are referred to as "dry nodes" in hydraulic models. This is particularly likely if there are several "Local Restriction" blocks connected directly to each other, for instance. A "dry node" is essentially a system of nonlinear algebraic equations that make convergence more difficult for a solver. Usually, the recommended solution is to add a chamber to the "dry node" to provide some flexibility for the solver. The chamber can be configured to have a very small volume so it will not have a noticeable effect on the simulation results, but still provide flexibility for the solver.
Depending on the design of your model, it may also make sense to simply remove the "Local Restriction" blocks, or replace them with something similar to a "Flow Resistance" block. This is a design decision that must be made on a case-by-case basis.