deltaFlow
Data.H
Go to the documentation of this file.
1/*
2 * Copyright (c) 2024 Saud Zahir
3 *
4 * This file is part of deltaFlow.
5 *
6 * deltaFlow is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public
8 * License as published by the Free Software Foundation; either
9 * version 3 of the License, or (at your option) any later version.
10 *
11 * deltaFlow is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public
17 * License along with deltaFlow. If not, see
18 * <https://www.gnu.org/licenses/>.
19 */
20
30#ifndef DATA_OBJECT_H
31#define DATA_OBJECT_H
32
33#include <Eigen/Dense>
34#include <string>
35#include <vector>
36
55struct BusData {
56 Eigen::VectorXi ID;
57 std::vector<std::string> Name;
58 Eigen::VectorXi Type;
59
60 Eigen::VectorXd V;
61 Eigen::VectorXd delta;
62 Eigen::VectorXd Pg;
63 Eigen::VectorXd Qg;
64 Eigen::VectorXd Pl;
65 Eigen::VectorXd Ql;
66 Eigen::VectorXd Qgmax;
67 Eigen::VectorXd Qgmin;
68 Eigen::VectorXd Gs;
69 Eigen::VectorXd Bs;
70 };
71
83struct BranchData {
84 Eigen::VectorXi From;
85 Eigen::VectorXi To;
86 Eigen::VectorXd R;
87 Eigen::VectorXd X;
88 Eigen::VectorXd G;
89 Eigen::VectorXd B;
90 Eigen::VectorXd tapRatio;
91};
92
93#endif
Contains all relevant data for each transmission line or transformer branch.
Definition Data.H:83
Eigen::VectorXd tapRatio
Transformer tap ratio ($$ a $$)
Definition Data.H:90
Eigen::VectorXd B
Line susceptance ($$ B $$) [p.u.].
Definition Data.H:89
Eigen::VectorXd X
Reactance ($$ X $$) [p.u.].
Definition Data.H:87
Eigen::VectorXi From
From bus indices.
Definition Data.H:84
Eigen::VectorXd R
Resistance ($$ R $$) [p.u.].
Definition Data.H:86
Eigen::VectorXi To
To bus indices.
Definition Data.H:85
Eigen::VectorXd G
Line conductance ($$ G $$) [p.u.].
Definition Data.H:88
Contains all relevant data for each bus in the power system.
Definition Data.H:55
Eigen::VectorXd Ql
Reactive power load [MVAr or p.u.].
Definition Data.H:65
Eigen::VectorXd Qgmax
Max reactive power generation [MVAr or p.u.].
Definition Data.H:66
Eigen::VectorXi ID
Bus numbers.
Definition Data.H:56
Eigen::VectorXd V
Voltage magnitude [p.u.].
Definition Data.H:60
Eigen::VectorXd Pg
Active power generation [MW or p.u.].
Definition Data.H:62
std::vector< std::string > Name
Bus names.
Definition Data.H:57
Eigen::VectorXd Qgmin
Min reactive power generation [MVAr or p.u.].
Definition Data.H:67
Eigen::VectorXd Gs
Shunt conductance ($$ G_{sh} $$) [p.u.].
Definition Data.H:68
Eigen::VectorXd delta
Voltage angle [rad or deg].
Definition Data.H:61
Eigen::VectorXd Bs
Shunt susceptance ($$ B_{sh} $$) [p.u.].
Definition Data.H:69
Eigen::VectorXd Pl
Active power load [MW or p.u.].
Definition Data.H:64
Eigen::VectorXd Qg
Reactive power generation [MVAr or p.u.].
Definition Data.H:63
Eigen::VectorXi Type
Bus type (1=Slack, 2=PV, 3=PQ)
Definition Data.H:58