Steady State

class pathsim.solvers.steadystate.SteadyState(*solver_args, **solver_kwargs)[source]

Bases: ImplicitSolver

Pseudo-solver for computing the DC operating point (steady state).

Solves \(f(x, u, t) = 0\) by iterating the fixed-point map \(x \leftarrow x + f(x, u, t)\) using the internal optimizer (Newton-Anderson). Not a time-stepping method.

Characteristics

  • Purpose: find \(\dot{x} = 0\)

  • Implicit (uses optimizer)

  • No time integration

Note

Used by Simulation.steady_state() to initialise block diagrams at their equilibrium before a transient run. Particularly useful when dynamic blocks (Integrator, ODE, LTI) have non-trivial equilibria that depend on the surrounding algebraic network.

solve(f, J, dt)[source]

Solve for steady state by finding x where f(x,u,t) = 0 using the fixed point equation x = x + f(x,u,t).

Parameters:
  • f (array_like) – evaluation of function

  • J (array_like) – evaluation of jacobian of function

  • dt (float) – integration timestep

Returns:

err – residual error of the fixed point update equation

Return type:

float