01_stjn_matdyn
TRANSCRIPT
© K.U.Leuven – ESAT/Electa
MatDyn, A New Matlab Based Toolbox
for Power System Dynamic Simulation
Stijn Cole, Ronnie Belmans
Presented by Dirk Van Hertem
© K.U.Leuven – ESAT/Electa
• Introduction
• Why MatDyn?
• Implementation
• Validation
• Applications
• Conclusions
2
© K.U.Leuven – ESAT/Electa
Introduction
o Commercial Software
• Fully-featured
• Steep learning curve
• Computationally efficient
• Implementation details
and models hidden from
users
• Not always well suited
for education and
research
o Academic Software
• Often open-source
• Can be adapted
• High level programming
language (Matlab,…)
• Easier to use
3
© K.U.Leuven – ESAT/Electa
Why MatDyn?
o MATPOWER
• Only PF and OPF
• Very easy to use
• Easy scripting
• Philosophy:
“It is intended as a simulation tool
for researchers and educators that
is easy to use and modify.
MATPOWER is designed to give
the best performance possible
while keeping the code simple to
understand and modify.”
o PSAT
• Fully-featured: stability,
power flow, OPF,
bifurcation analysis,
GUI,…
• Wide range of features
makes the code involved
• Hard to modify
4
© K.U.Leuven – ESAT/Electa
Why MatDyn?
o MATPOWER • Only PF and OPF
• Very easy to use
• Easy scripting
• Philosophy:
“It is intended as a simulation tool
for researchers and educators that
is easy to use and modify.
MATPOWER is designed to give
the best performance possible
while keeping the code simple to
understand and modify.”
o PSAT
• Fully-featured: stability,
power flow, OPF,
bifurcation analysis,
GUI,…
• Wide range of features
makes the code involved
• Hard to modify
5
MatDyn: extending use of MATPOWER to dynamic analysis, while strictly adhering to its philosophy
© K.U.Leuven – ESAT/Electa
MatDyn Goal
o Seamless integration in MATPOWER
• Uses same case files for PF data
• No MATPOWER files changed
• Uses equivalent scripts and syntax:
• …
o Synergy between OSS projects in line with
objectives of IEEE taskforce
6
© K.U.Leuven – ESAT/Electa
Example
o MATPOWER
> options = mpoption;
> runpf(‘case9’,options);
7
o MatDyn
> options = mdoption;
> rundyn(‘case9’,’case9dyn’,’event’,options);
© K.U.Leuven – ESAT/Electa
Implementation
o Challenge: to keep the
code simple
o Problem: dynamic
simulation inherently
more complicated than
PF/OPF
o Solution: design
criteria and choices on
implementation
o Trade-off between code simplicity and accuracy or features leading to choices on
• Simultaneous vs partitioned scheme
• How to solve algebraic equations
• Disallowing generator transient saliency
• Disallowing non other than constant impedance loads
• …
8
© K.U.Leuven – ESAT/Electa
MatDyn Flow Chart
9
System to solve Call MATPOWER
X = dynamic state variables Y = algebraic state variables
F = differential equations G = algebraic equations
P = parameters
© K.U.Leuven – ESAT/Electa
Trade-off:
Simultaneous vs Partitioned
o Simultaneous
• Solve system
simultaneously
• constructing whole
Jacobian before solving
makes the code intricate
o Partitioned
• Solve G for Y and then
• Solve F for X
• Sequential integration of
equipment: generators,
governors,…
• Code easy to read
10
© K.U.Leuven – ESAT/Electa
Trade-off:
Speed vs Detail o Two conditions are
imposed
• Transient saliency not allowed
• Only constant admittance loads allowed
o Consequence: algebraic equations are linear, can be solved very efficiently in MATLAB by LU factorization of Ybus
o Remark
• Would not be acceptable
for commercial program
• For software geared
towards education and
research, such an
approach is deemed
acceptable
11
© K.U.Leuven – ESAT/Electa
Validation: Anderson & Fouad
12
MatDyn
Anderson & Fouad
© K.U.Leuven – ESAT/Electa
Validation: Stagg & El-Abiad
13
© K.U.Leuven – ESAT/Electa
Solvers
14
© K.U.Leuven – ESAT/Electa
Applications
Education
15
o Used in power system course
o Example: implement fossil-fueled single reheat
tandem-compound turbine with governor
© K.U.Leuven – ESAT/Electa
Applications
Research
16
o Research on
multi-terminal
VSC HVDC
o Example:
dynamic
simulation of line
outage in six-
terminal VSC
HVDC system
© K.U.Leuven – ESAT/Electa
MatDyn: Status
o http://www.esat.kuleuven.be/electa/teaching/matdyn/
o Used in Belgium, China, India, UK, Brazil, …
o Python port underway (Pylon, by Richard Lincoln)
o Support: minimal (author not at university anymore)
17
© K.U.Leuven – ESAT/Electa
Developing MatDyn:
Lessons learned
o There is a looooong way from having working
software that you can use to releasing software
that everyone can use
o Validation is necessary: all software has bugs,
including/especially software that you write
yourself
o Writing power system software is a sure way to get
a deep understanding of power systems
o More people are interested in your software than
you think
18
© K.U.Leuven – ESAT/Electa
Conclusion
o Easy-to-use power
system dynamic
simulation tool
o Synergy with
MATPOWER
o Applications in
research and
education
o We hope MatDyn can
be of use to the power
system community
o The software including
source code and full
documentation are
available for free
download
19
http://www.esat.kuleuven.be/electa/teaching/matdyn/ Comments welcome: [email protected]