GlobalMNACircuitSolver
- class pmrf.models.composite.interconnected.circuit.solvers.nodal.GlobalMNACircuitSolver(eps: float = 1e-12, linear_solver: AbstractLinearSolver = AutoLinearSolver(well_posed=None))
Bases:
AbstractMNACircuitSolverGlobal Modified Nodal Analysis (MNA) circuit solver.
Generalizes standard Nodal Analysis to gracefully handle ideal components by augmenting the Y-matrix with auxiliary variables (currents/voltages). Eliminates all internal nodes and auxiliary variables simultaneously to yield the pure external Y-parameters of the reduced network.
- run(y_flattened: Array, b_flattened: Array, c_flattened: Array, d_flattened: Array, topology: MNARepresentation) AdmittanceResult
Executes the Modified Nodal Analysis circuit solving algorithm.
- Parameters:
y_flattened (jnp.ndarray) – A 1D array of flattened Y-block elements.
b_flattened (jnp.ndarray) – A 1D array of flattened B-block elements.
c_flattened (jnp.ndarray) – A 1D array of flattened C-block elements.
d_flattened (jnp.ndarray) – A 1D array of flattened D-block elements.
topology (MNARepresentation) – The static map dictating the MNA assembly and partition logic.
- Returns:
The fully solved external Y-parameter matrix.
- Return type:
- eps: float = 1e-12
Numerical regularization to prevent singular matrices on floating nodes/aux variables.
- linear_solver: AbstractLinearSolver = AutoLinearSolver(well_posed=None)
The lineax solver to use for the global matrix inversion. Defaults to AutoLinearSolver.