![]() |
deltaFlow
|
Abstraction over power-flow solvers (Open/Closed Principle). More...
#include <Eigen/Dense>#include <utility>#include <vector>

Go to the source code of this file.
Classes | |
| struct | SolverContext |
| Shared input/output parameters for power-flow solvers. More... | |
| class | ISolverObserver |
| Sink for solver progress/diagnostics (Dependency Inversion / SRP). More... | |
| class | ISolver |
| Common interface for power-flow solvers. More... | |
Abstraction over power-flow solvers (Open/Closed Principle).
GaussSeidel and NewtonRaphson take different raw parameter lists (GaussSeidel works directly with the complex Y_bus and a relaxation coefficient; NewtonRaphson works with separate G/B matrices and PQ bus indices). Rather than forcing a single signature on both algorithms (which would require either changing their existing free-function signatures - breaking tests that call them directly - or silently dropping solver-specific parameters), ISolver exposes a shared SolverContext that carries every parameter either solver might need. Each concrete solver class reads only the fields it needs and forwards them, unchanged, to the existing free function.
Definition in file ISolver.H.