Documente Academic
Documente Profesional
Documente Cultură
5.0
Ray Zimmerman
Carlos E. Murillo-Sanchez
Deqiang (David) Gan
<rz10@cornell.edu>
<carlos_murillo@ieee.org>
<dgan@zju.edu.cn>
results = rundcopf('case118');
final_objective = results.f;
gen6_output
= results.gen(6, PG);
branch51_flow = results.branch(51, PF);
For additional info, see the User's Manual and the on-line help
documentation for the various MATPOWER functions. For example:
help runpf
help runopf
help mpoption
help caseformat
--------------------------WHAT'S NEW IN VERSION 5.0
--------------------------Below is a summary of the changes since version 4.1 of MATPOWER. See the
CHANGES file in the docs directory for all the gory details.
* New features:
- Continuation power flow with tangent predictor and Newton
method corrector, based on code contributed by Shrirang Abhyankar
and Alex Flueck.
- SDP_PF, a set of applications of a semidefinite programming
relaxation of the power flow equations, contributed by
Dan Molzahn (see 'extras/sdp_pf'):
- Globally optimal AC OPF solver (under certain conditions).
- Functions to check sufficient conditions for:
- global optimality of OPF solution
- insolvability of power flow equations
- PSS/E RAW data conversion to MATPOWER case format (experimental)
based on code contributed by Yujia Zhu.
- Brand new extensible MATPOWER options architecture based on options
struct instead of options vector.
- Utility routines to check network connectivity and handle islands
and isolated buses.
- New extension implementing DC OPF branch flow soft limits.
See 'help toggle_softlims' for details.
- New and updated support for 3rd party solvers:
- CPLEX 12.6
- GLPK
- Gurobi 5.x
- Ipopt 3.11.x
- Knitro 9.x.x
- Optimization Toolbox 7.1
- Numerous performance enhancements.
- New functions:
- runcpf() for continuation power flow.
- case_info() for summarizing system information, including network
connectivity.
- extract_islands() to extract a network island into a separate
MATPOWER case.
- find_islands() to detect network islands.
- @opt_model/describe_idx() to identify variable, constraint or
cost row indices to aid in debugging.
- margcost() for computing the marginal cost of generation.
- psse2mpc() to convert PSS/E RAW date into MATPOWER case format.
- get_losses() to compute branch series losses and reactive charging
injections and derivatives as functions of bus voltages.
* Bugs fixed:
- Running a power flow for a case with DC lines but no gencost
no longer causes an error.
- Fixed a bug in runpf() where it was using the wrong initial
voltage magnitude for generator buses marked as PQ buses. Power
flow of solved case was not converging in zero iterations as
expected.
- Fixed fatal bug in MIPS for unconstrained, scalar problems.
Thanks to Han Na Gwon.
- Fixed a bug in int2ext() where converting a case to internal
ordering before calling runpf() or runopf() could result in
a fatal error due to mismatched number of columns in internal
and external versions of data matrices. Thanks to Nasiruzzaman
and Shiyang Li for reporting and detailing the issue.
- DC OPF now correctly sets voltage magnitudes to 1 p.u.
in results.
- Fixed a bug in MIPS where a near-singular matrix could produce
an extremely large Newton step, resulting in incorrectly satisfying
the relative feasibility criterion for successful termination.
- Improved the starting point created for Ipopt, Knitro and MIPS
for variables that are only bounded on one side.
- Fixed bug in savecase() where the function name mistakenly
included the path when the FNAME input included a path.
- Fixed bugs in runpf() related to enforcing generator reactive
power limits when all generators violate limits or when
the slack bus is converted to PQ.
- Fixed crash when using Knitro to solve cases with all
lines unconstrained.
- Fixed memory issue resulting from nested om fields when
repeatedly running an OPF using the results of a previous
OPF as input. Thanks to Carlos Murillo-Sanchez.
- Fixed fatal error when uopf() shuts down all gens
attempting to satisfy Pmin limits.
- Reactive power output of multiple generators at a PQ bus
no longer get re-allocated when running a power flow.
- Fixed a bug in savecase() where a gencost matrix with extra
columns of zeros resulted in a corrupted MATPOWER case file.
- CPLEX
zer/.
- GLPK
- GUROBI
ex.
- IPOPT
https://projects.coin-or.org/Ipopt/.
- KNITRO
- MINOPF
- MOSEK
- TSPOPF
These packages are distributed separately since each has it's own
license agreement and terms of use.
-------------MAILING LIST
-------------An e-mail list <MATPOWER-L@cornell.edu> has been set up to facilitate
discussion of MATPOWER. Only list subscribers are permitted to post to
the list.
Feel free to use this list to discuss anything related to MATPOWER, to
ask questions about MATPOWER, or to provide feedback to the developers
of MATPOWER, such as bug reports, patches or ideas for improvements
(though we make no guarantees about if/when they might be included).
Also, if you have any of your own MATLAB power systems code that you
would like to contribute, feel free to contact us via this list about
making it available on the MATPOWER web site.
Joining the list
---------------To join the MATPOWER mailing list, send an e-mail to
<MATPOWER-L-request@cornell.edu> with a single line with the word "join"
in the body of the message. You must send the request from the e-mail
address where you want to receive the list's messages. And be sure it is
a plain text e-mail, that is, with no formatting, font styles or HTML
code.
Sending mail to the list
-----------------------To send an e-mail to all of the subscribers of the MATPOWER mailing
list, simply address your e-mail to <MATPOWER-L@cornell.edu>. Only
subscribers are permitted to send e-mail to the list.
Leaving the list
---------------You can unsubscribe from the list at any time by sending an e-mail to
<MATPOWER-L-request@cornell.edu> with a single line with the word