![]() |
deltaFlow
|
Gauss-Seidel power flow solver implementation. More...
#include <cmath>#include <complex>#include <iostream>#include <limits>#include "GaussSeidel.H"#include "Logger.H"#include "Progress.H"
Go to the source code of this file.
Functions | |
| bool | GaussSeidel (const Eigen::MatrixXcd &Y, Eigen::VectorXd &Vmag, Eigen::VectorXd &delta, const Eigen::VectorXi &type_bus, const Eigen::VectorXd &P, const Eigen::VectorXd &Q, int N, int maxIter, double tolerance, double omega, std::vector< std::pair< int, double > > *iterHistory) |
| Solves the power flow equations using the Gauss-Seidel iterative method. | |
Gauss-Seidel power flow solver implementation.
Definition in file GaussSeidel.C.
| bool GaussSeidel | ( | const Eigen::MatrixXcd & | Y, |
| Eigen::VectorXd & | V, | ||
| Eigen::VectorXd & | delta, | ||
| const Eigen::VectorXi & | type_bus, | ||
| const Eigen::VectorXd & | P, | ||
| const Eigen::VectorXd & | Q, | ||
| int | N, | ||
| int | maxIter = 1024, |
||
| double | tolerance = 1E-8, |
||
| double | omega = 1.0, |
||
| std::vector< std::pair< int, double > > * | iterHistory = nullptr |
||
| ) |
Solves the power flow equations using the Gauss-Seidel iterative method.
Pure solver: no Q-limit checking (handled by outer loop via checkQlimits). PV buses maintain their scheduled voltage magnitude; PQ buses are fully updated.
| Y | The bus admittance matrix ($$ Y_{bus} $$). |
| V | (in/out) Voltage magnitudes [p.u.]. PV buses maintain scheduled value. |
| delta | (in/out) Voltage angles [rad]. |
| type_bus | Bus type vector (1=Slack, 2=PV, 3=PQ). |
| P | Scheduled net active power injections [p.u.] ($$ P_g - P_l $$). |
| Q | Scheduled net reactive power injections [p.u.] ($$ Q_g - Q_l $$). Used only for PQ buses. |
| N | Total number of buses. |
| maxIter | Maximum number of iterations (default: 1024). |
| tolerance | Convergence tolerance for bus voltage updates (default: $$ 1 \times 10^{-8} $$). |
| omega | Relaxation parameter for the Successive Over-Relaxation (SOR) method (default: 1.0; SOR not applied). |
| iterHistory | Optional pointer to store iteration number and error at each step. |
Definition at line 35 of file GaussSeidel.C.
References LOG_CRITICAL, LOG_DEBUG, LOG_WARN, printConvergenceStatus(), and printIterationProgress().
