📄 changes.txt
字号:
-----------------------------
Change history for MATPOWER
-----------------------------
Version: 3.0b3
maintained by Ray Zimmerman <rz10@cornell.edu>
MATPOWER
$Id: CHANGES.txt,v 1.8 2004/09/21 02:19:27 ray Exp $
Copyright (c) 1996-2004 by Power System Engineering Research Center (PSERC)
See http://www.pserc.cornell.edu/matpower/ for more info.
Changes since 3.0b2
-------------------
9/20/04
- Released version 3.0b3.
- Generated clean versions of all included case files using latest
cdf2matp and savecase. Added documentation for source of data
for case files.
- More enhancements to cdf2matp.m. Adds comments at beginning, appends
conversion warnings as comments at end of file. Uses savecase.m to
save the data.
- Updated savecase.m to use %g instead of %f many places, correctly
handle multi-line comments, include headers for extra columns for
solved cases. Optionally returns filename with extension.
9/17/04
- Fixed bug in grad_std.m, introduced in 3.0b2, which prevented constr
and LP-based OPF solvers from working for polynomial cost functions.
9/15/04
- In cdf2matp.m, added input args, updated docs, switched to named
indexing of data matrices, new method for creating gen costs.
- Documentation fixes and additions from Pan Wei.
Changes since 3.0b1
-------------------
9/7/04
- Released version 3.0b2.
- Added OPF_P_LINE_LIM option to mpoptions to use active power
instead of apparent power for line limits (thanks to Pan Wei
for the suggestion and some code).
9/1/04
- Fixed bug in savecase.m introduced when making areas and gencost
optional.
- Updated opf_slvr.m with options for MINOS and fmincon.
- Removed option 15 OPF_NEQ from docs (not a user option). Removed option
52 VAR_LOAD_PF (unused, always behaves as if this option were 1).
Changed semantics and default value for option 51 SPARSE_QP. By default
(value = 1) it will use sparse matrices if a sparse QP/LP solver is
available and full matrices otherwise. Setting the value to 0
will force it to use full matrices even with a sparse-capable solver.
- Cleaned up checking for optional functionality, and fixed a bug
that would miss MEX files if there was an identically named directory
by adding have_fcn.m.
Changes since 2.0
-----------------
8/25/04
- Released version 3.0b1.
8/24/04
- Made mpoption() throw an error if passed an invalid option name.
8/23/04
- Added an fmincon based OPF solver for the generalized formulation
previously used by mopf (Carlos).
- Restructured opf.m so all OPF solvers have a similar API based
on the one from mopf.m (Carlos).
- Added some quick tests for runpf and runopf for each algorithm.
8/13/04
- Renamed 'area' variable to 'areas' to avoid masking the built-in
function of the same name.
- Made OPF data matrices 'areas' and 'gencost' optional for running
simple power flow.
7/15/04
- The loadcase function (and therefore all of the run* functions
now optionally accept a struct with the data matrices as fields
in place of the case file name.
- Added t subdirectory with various tests and testing tools.
7/8/04
- Updated mp_lp.m and mp_qp.m to try linprog() and quadprog()
after trying bp, since lp() and qp() are no longer included
in the Optimization Toolbox as of version 3.
7/7/04
- Removed case.m, added caseformat.m, made case9.m the default
case and fixed function names in other case files to avoid
use of reserved word 'case'.
- Fixed bugs in runcomp.m.
6/23/04
- Fixed bug in newtonpf.m which caused algorithm to diverge when
the Newton step resulted in a negative voltage magnitude.
4/17/03
- Changed uopf.m to use a dynamic programming approach. More
computationally expensive, but should find significanly better
results when there are many gens to shut down.
- Added mp_lp.m and mp_qp.m, equivalents to lp.m and qp.m,
respectively that call bpmpd if available. Modified LPrelax.m,
LPsetup.m and dcopf.m to call these new functions.
4/14/03
- Fixed a bug in pfsoln.m which for cases with a single generator.
10/23/02
- Fixed bus numbering bug in System Summary section of printpf.m.
6/20/00
- Fixed a bug in printpf.m in the generator section, where
the generator was assumed to be off if it's real power
output was zero, even if the reactive output was non-zero.
- Modified printpf.m to print out lambdas in generation section
for generators that are shut down.
6/8/00
- Modified cdf2matp.m so that Pd also includes any generation at
buses specified as PQ buses. Also modified identification of
generator buses to include only PV or reference buses. (Thanks
to Venkat)
- Modified cdf2matp.m so that it always treats the input values
for Gs and Bs as per unit values and converts them to actual
values expected by MATPOWER (Thanks to D. Devaraj)
version 2.5b3
11/9/99
9/22/99
- Modified grad_*.m to return sparse matrices, unless using
constr.m or an LP/QP solver that doesn't handle sparse
matrices. Cleaned up sparse<->full conversions in LPconstr.m,
LPrelax.m, and LPsetup.m.
9/21/99
- Undid a "bug fix" from 3/6/98 in makeYbus.m which zeros out
charging capacitance for transformers. Apparently some
transformer models actually have a non-zero charging parameter
when using the model used by MATPOWER (ideal transformer in
series with a PI model).
- Added loadcase.m which loads a MATPOWER case from an M-file
or from a MAT-file. Changed all of the run*.m files to use this
as the default way to load case files.
- Renamed print2mp.m to savecase.m and added the ability to
save a case as a MAT-file as well as an M-file.
9/15/99
- Fixed opf.m so that it correctly uses the termination
tolerances in the MATPOWER options vector for constr.m.
- In previous versions, Pmin/Pmax constraints are relaxed by
10 * OPF_VIOLATION in opf.m to avoid falsely reporting a
binding Pmin/Pmax constraint in a case where a piece-wise linear
cost function has a corner point exactly at the limit. This
code was moved out of opf.m (and the standard MATPOWER
distribution) to smartmkt.m and the value was changed to
100 * OPF_VIOLATION.
- Modified opf.m so the MINOS-based solver uses OPF_VIOLATION
to set the value of MNS_FEASTOL and MNS_ROWTOL if they are
set to zero.
9/9/99
- Included MINOS-based OPF with all of its options as
algorithm 500. (involved including 'area' in calls to opf.m
and uopf.m)
- Removed some unused lines from fun_ccv.m and grad_ccv.m.
8/5/99
- Fixed a bug in the pfsoln.m in the distribution of Q among
generators at the same bus. Initially attempted to distribute
Q to generators proportional to each generators' Q "capacity".
To do this correctly requires special cases for generators
with QMIN equal to QMAX. For the sake of simplicity, we now
distribute Q equally among all generators at the bus.
Note: As before, the simple power flow does NO feasibility
checking.
7/19/99
- Modified runuopf.m and uopf.m to handle DC opf. Added the
function runduopf.m which calls runuopf.m with the PF_DC flag
set to 1.
- Fixed size of 2nd order (all zero) coefficient of objective
for piecewise linear cost case in dcopf.m.
7/16/99
- Added the flag QP_SPARSE to mpoption.m to indicate whether the
QP solver being used can accept sparse matrices. Also modified
dcopf.m to use this flag.
- Fixed handling of VERBOSE option in dcopf.m
- Added the flag PF_DC to mpoption.m to indicate whether the
power flow formulation to be used for power flow and optimal
power flow is a DC approximation or full AC representation.
Merged rundcpf.m with runpf.m and rundcopf.m with runopf.m
so that the appropriate solver will be used based on the
value of the PF_DC flag in the options. The functions rundcpf.m
and rundcopf.m were modified to simply call runpf.m and
runopf.m, respectively, with the PF_DC flag set to 1.
7/15/99
- Changed the sign of the phase shifters in printpf.m to be
consistent with the bug fix to makeYbus.m made on 3/6/98.
7/14/99
- Included four new m-files (makeBdc.m, dcopf.m, rundcpf.m,
and rundcopf.m) which implement a DC power flow and DC
optimal power flow algorithms.
7/13/99
- Cleaned up variable names in makeYbus to avoid confusion.
6/10/99
- Changed UOFP to UOPF in print statements uopf.m.
6/3/99
- Modified print2mp.m overwrite instead of append to an
existing file.
- Fixed bug in cdf2matp.m to make it always correctly write
a text file output.
version 2.5b2
6/2/99
- Modified print2mp.m to include line flows and Lagrange
and Kuhn-Tucker multipliers in output if available.
4/29/99
- Included a Gauss-Seidel power flow solver gausspf.m, and
made corresponding changes to runpf.m and mpoption.m.
Code contributed by Alberto Borghetti.
4/28/99
- Modified newtonpf.m to handle cases with no PQ buses or no
PV buses under newer versions of Matlab.
2/25/99
- Fixed a bug in uopf.m which occurs when two (or more)
generators have positive decommitment indices but shutting
them down one at a time always results in increased system
cost. In this scenario, it would go into an infinite loop
of attempting to shut them down one by one.
2/24/99
- Modified uopf.m to be able to handle the case where the
sum of the Pmin's is greater than the load. It shuts down
generators in order of decreasing average cost at Pmin
(breaking ties randomly) until this infeasibility is gone.
2/16/99
- Fixed bug in pfsoln.m which caused crashes in Matlab 5
for systems with no capacitors.
- Added print2mp.m, which can print out a MATPOWER case file
from the data matrices.
- Added to run*pf.m ability to save solved case.
2/10/99
- Modified ext2int.m to allow for area matrix to be empty.
12/3/98
- Changed pfsoln.m so that there is only one slack generator.
Instead of dividing the P between multiple gens at the
slack bus in proportion to capacity (this caused problems
for the LPconstr versions of the OPF), it now treats the
first generator at the slack bus as the only slack generator,
leaving the dispatch of the other gens at the bus unchanged.
- Added generator number to generation constraint printout and
branch number to branch data and branch flow limit printouts.
12/2/98
- Changed printpf.m to print elapsed time and objective fcn
value even when OUT_SYS_SUM is turned off.
- Added code to LPconstr.m to explicitly zero out lambdas for
non-binding constraints.
12/1/98
- Made modifications to ...
bustypes.m
fun_ccv.m
fun_std.m
grad_ccv.m
grad_std.m
LPeqslvr.m
makeSbus.m
opf.m
opfsoln.m
pfsoln.m
printpf.m
runpf.m
... to allow for multiple generators at each bus. For simple
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -