设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 9351|回复: 12

[讨论] matpower3.1b2

[复制链接]
  • TA的每日心情
    愤怒
    2016-4-4 09:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
    发表于 2007-3-6 12:43:58 | 显示全部楼层 |阅读模式

    马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

    您需要 登录 才可以下载或查看,没有账号?立即加入

    ×
    -----------------------------6 S& ?) I" U. }. y6 G$ t
    Change history for MATPOWER1 g- t  z" k1 _' ?* [( K' ?
    -----------------------------
    1 h* w1 c( }5 bVersion:    3.1b26 [( L5 t; v' H3 K, p$ f( b. X4 W. b
    maintained by Ray Zimmerman <rz10@cornell.edu>: u5 f- C" W8 A" N4 Y2 R
    MATPOWER/ P1 }: F% {. V$ }! ^+ m
    $Id: CHANGES.txt,v 1.27 2006/09/14 18:20:40 ray Exp $
    5 V  {6 C: q  M+ a2 v8 l# mCopyright (c) 1996-2006 by Power System Engineering Research Center (PSERC)
    0 `: l" f6 K4 _' d, jSee http://www.pserc.cornell.edu/matpower/ for more info.' Y- B( a6 y- b8 \# L7 }
    , D/ }6 N, W  n
    Changes since 3.1b1
    : I4 z# J/ [7 u! H-------------------
    6 Q! ~$ V/ X) l/ j" \; d9/15/06
    2 T3 l4 M' H# N4 U    - Released version 3.1b2.
    8 F& `7 ^& V/ k, z9 H4 j; u9/12/062 b1 G7 A$ T8 \- W9 Q7 r
        - Added makePDFT.m which builds the DC PTDF matrix for a specified2 r) L+ I8 b# ~7 ]8 x) D
          slack distribution.! W; ?! X8 o4 A" H/ _5 I, G4 H* x
    8/16/067 P8 Q" ]1 H& m6 W
        - Added optional outputs xr, pimul to fmincopf and opf.m to make them
    8 Z" Y4 o4 E8 A      fully interchangeable with mopf.m.
    0 S: c5 l9 C) n$ O7 H8/15/06" N5 M/ M  ^* {1 D. z3 X" w! z
        - Added branch angle difference constraints to general OPF formulation- i9 z; I( p) \- u
          in fmincopf.m (and mopf.m)." J% j" M. E+ @" o6 r2 n# Y
        - Fixed (invisible) bug with multipliers of lower bounded linear' R9 ?+ E1 y/ G: P
          constraints in fmincopf.m.$ a% C8 O# E- s# U8 ]

    5 E, N6 Y, u9 z- A/ r$ h- {5 ]( h, J# @Changes since 3.0.05 w$ M! T+ i% q* V, `
    -------------------* q4 Z- E' A$ {; U+ y# Y* y
    8/1/06
    - |! d  t7 `9 D& b4 u) ?    - Released version 3.1b1.. n9 s. [9 J9 @+ n. }
    4/28/06
    + J! D  y* q6 r$ A. r: F; @4 Y: x    - Fixed mpver.m so it will properly handle case where the Optimization: d0 I: O1 L) O, `
          Toolbox is not installed.
    + A- e4 f+ _, Q9 O3/15/06' J4 G4 _: G+ S; m0 k/ j
        - INCOMPATIBLE CHANGE: Updated opf.m, fmincopf.m, costfmin.m, consfmin.m to3 m: M: g  Y/ m9 ?: O
          be able to be compatible with latest MINOPF. User supplied A matrix for2 r0 J3 O* [7 c
          general linear constraints no longer includes columns for y variables
    ; E( K; z, ~2 D3 h, `      (helper vars for piecewise linear gen costs), and now requires columns% O  r% Q% {' l8 O0 |9 C
          for all x (OPF) variables. Added generalized cost model and generator PQ3 d1 Y/ @* }- D
          capability curves.
    / Y+ a- `- }& q    - Modified savecase.m to always save MAT files with -V6 under newer MATLAB" O; E% R8 N( z- G& @8 f' P
          versions.8 o7 L, o5 `1 F- R4 u* s* H
        - Added a number of tests to t_opf.m for MINOPF and fmincopf for generalized
    * e. c% w# C/ U& o) N      costs and additional linear constraints. Added test for fmincopf for" x. ^0 E/ r6 D
          generator PQ capability curves.7 o0 a/ G. C9 N; ?5 l- W6 q8 N
    3/10/06
    . }% `; Y  e( V& Z, ]    - Added baseKV data to case118.m from PSAP file 4 B' Z  M, o; r( J4 g% g
          <http://www.ee.washington.edu/research/pstca/pf118/ieee118psp.txt>.# \  i- y; \4 b8 S
    3/8/06. I& u$ \, @" @6 q) p& h
       - Renamed col 5 of gencost from N to NCOST everywhere.
    $ K! D. B* y0 M: i/ e/ H10/14/05( o; y* [: c# j4 t
        - Updated version 2 case file format to modify generator PQ capability  [% V: ^4 z# q2 C
          curve specifications.
    . P1 ^9 B) r7 V/ H8 M    - Added hasPQcap.m and test for gen PQ capability curve in OPF.$ E# f: @6 C# q* r% ~
    8/22/05( v* E6 W+ A, n
        - Added OPF_IGNORE_ANG_LIM option to mpoption.m.
    4 Z3 A8 S7 Y9 ~8/5/05
    4 `/ T/ c; Z3 q3 B* W    - Modified identification of binding constraints in printpf.m. A5 L+ ^- s0 R( S" W9 P9 ~
          constraint is now considered to be binding if the tolerance is less
      e$ K3 `9 A" i8 c( ^0 A      than or equal to OPF_VIOLATION tolerance -OR- if the corresponding
    7 G! ~0 u; |3 L5 {      Kuhn-Tucker multiplier is non-zero. This allows binding generator- V; `( M* C/ A9 J( ?( {* l
          capability curves to be reported via multipliers on Pg and Qg limits.8 n: Y0 }9 W7 o$ B( T& i" D
    7/8/051 A6 d) C3 M) s* \, M
        - Updated loadcase.m, savecase.m, idx_bus.m, idx_gen.m, caseformat.m
    8 n! j3 S. z4 r9 D4 S4 r      and tests for version 2 case file format, which includes piece-wise1 ?) U* _( \% I# H) {- ~
          linear generator capability curves, generator ramp rates and branch
    % h+ O" d9 o( O( M8 n6 D3 ~      angle difference limits.
    * z' ?- ?  z3 |( ?* l8 j5 \0 g   
    . D6 Y, H" M& SChanges since 3.0b4
    9 ]3 b9 S: }4 d( I* P$ `! a( F-------------------
    8 l) W7 y- Y8 X/ {- y  |1 S4 |2/14/05' M( l; \+ K9 b/ T- O: A$ g
        - Released version 3.0.0.0 e4 o0 S/ L% Z0 r
    2/3/05" N7 Q" a: o9 I  G1 b
        - In mp_lp.m and mp_qp.m, on Windows it now makes sure BPMPD_MEX is not9 X. e, _& A; j7 P2 @) `# w
          called in verbose mode which causes a Matlab crash.- z. N4 S8 F+ l+ r% w3 y6 y
    ) T7 F/ E( S  z- w
    Changes since 3.0b3
    , b' w; \/ E$ X* w-------------------  o; p5 P/ g: j; W
    1/28/05
    1 }; L! P$ t2 n: {. m- p    - Released version 3.0b4.
    & r# k7 ~' s% x1/27/05
    - u* X) M: X4 \2 [& X  ?9 v+ h    - Added case6ww.m and case4gs.m.
    1 E/ y- [. S5 S- e8 t1 V    - Minor modifications to printpf.m to handle larger bus numbers.
    6 {2 i* B* y" u. U8 j$ y2 f1/26/05
    # T1 C+ `  t. v4 D! Q4 ]& _, u    - Minor changes to uopf.m to make sure it plays nicely with dispatchable% c) g) P7 x4 C# r1 i
          loads.
    7 [1 J  I9 k) c" W$ N1/25/05( G, Y0 j2 D  h
        - Major updates to user manual.6 o# p% L+ A2 Q& _
    1/24/05
    , _$ ^0 v+ I1 o- ?    - Switched to using the new isload() to check for dispatchable load.4 f6 ?( ^! t+ G$ R" t
        - For dispatchable loads, switched from using PG and QG to PMIN and either' G8 l% g  S3 s1 x
          QMIN (for inductive loads) or QMAX (for capacitive loads) to define the7 k$ u9 n7 v7 K( F# T; q
          constant power factor constraint. This prevents the power factor
    / |, b% O$ m; m, u; }' Z      information from being lost when it is dispatched to zero. If the initial
      k) }' h4 ^. Z* y      values of PG and QG are not consistent with the ratio defined by PMIN
    ' I' K3 c" f& U: x9 p& m" f      and the appropriate Q limit it gives an error. This is to prevent a user5 _. f0 o; s. k2 V7 c
          from unknowingly using a case file which would have defined a different
    $ ~& m: g# C1 f9 l7 c) w6 N      power factor constraint under previous versions of MATPOWER.* M- ?" c9 W4 e5 H7 \
          If both QMIN and QMAX are zero, it no longer includes the redundant
    0 T: Q  P: x) R      unity power factor constraint.
    3 T. `- r0 _4 {7 f1/20/059 p9 v: u2 C( `) H' z6 K
        - Updated printpf.m to display dispatchable loads and generators
      @. k1 C. a' m9 X% a# T! Y+ |0 b      separately. Reorganized the area summary section and corrected the net
    0 m# B" k" a( E" ?1 k      exports value (subtracted half of tie-line loss) to make the numbers
    4 p( Q% Z2 v- y, ^( i      add up correctly.+ ?5 e1 O0 f4 ]
    1/18/05
    ' ^0 t% F+ _" e. P. Y  }. |6 o    - Added to runpf.m the ability to enforce generator reactive power limits
    . H# W  t2 _9 X$ E5 l      by allowing the voltage to deviate from the set-point. This option is0 `2 b! x: E0 r& k# q. P. K
          controlled by the new ENFORCE_Q_LIMS option, which is off by default.
    2 ?9 c# _* n' g& z; g% p- K; h          (Thanks to Mu Lin of Lincoln University, New Zealand
    8 J* G' |% c- U. N8 H3 W+ f           whose contributions inspired this feature).
    + P# O7 n( d. u1 \5 s: u    - Modified pfsoln.m to divide reactive power dispatch between multiple
    - N) ~; L  U& I; c      generators at a bus in proportion to each gen's reactive power range,
    0 w9 j0 ~4 S7 i; J) P      as opposed to equally. This means that all generators at a bus will$ N1 M. ~* b/ P( L/ N) [
          reach their upper (or lower) limits simultaneously.
    0 i2 m) S' m6 m    - Added generator status column to generator section of printpf.m output.1 `; g# F/ K: ~, U
          Fixed bugs where non-zero output of decommitted generators was displayed
    # x% e' |  j3 U; d) f      and included in generation totals in generator and bus sections.: J: q4 |. g  V2 [& d4 I3 M" z6 K+ R
    1/14/05
    & s) b, r( s: G0 e3 g3 s/ Y4 t    - Moved some setting of MNS_* default options from opf.m to mopf.m.
    : T8 h% L% F" E- {) g, x% F    - Eliminated unused output args in dcopf.m.
    + x  I9 t, @  e- l- j2 X    - Modified printpf.m to zero out reactive generator output for DC cases
    ; {4 a* B' T& m: \* ^# Z, q: w3 e      and to use OPF_VIOLATION tolerance to detect binding constraints, as
    1 j: y- Z- a% s      opposed to non-zero Kuhn-Tucker multipliers.
      Q5 O: V. U( V% W9 i1 }+ d9 X1/12/05
    . C, R3 N- l/ S7 X4 k    - Modified bpmpd portion of mp_qp.m and mp_lp.m to use default value for
    ) U" W" e# \" C1 @$ b; J' O      TFEAS2 and eliminate variable limits which appear to be artificial
    4 V, b; N7 L7 f* z- C- C% }0 b      large values used to indicate free variables.( v' A2 V" j& U( {1 X
    1/4/05
    ' W, H) ?% o1 j9 [3 w2 V: |    - Fixed potential bug in dimensions of Yf and Yt created in makeYbus.m.9 s3 z# z+ q, Z8 P  ^7 ^! z
    12/17/04
    9 q+ y3 m3 E% P3 }; V    - Added feasibility check to mp_lp.m and mp_qp.m to work around a1 G1 r! q: Y  q( z5 o& l
          recently discovered bug in BPMPD_MEX 2.21 where it sometimes returns an+ ?1 ]3 g7 [: O8 h& Q: [
          incorrect (infeasible) solution for a DC OPF problem. This bug has yet
    0 z: B! x1 r* ^      to be encountered in any other context.
    , G- a# i6 `9 q" b/ J4 `8 i12/13/043 \7 N- t, N9 z' n( ~! a/ ?
        - Added mpver.m to print version information.. q# V- ?3 n2 \# M
    9/23/04
    * {& T8 X# J$ Z. H    - Fixed bugs in cdf2matp.m which prevented it from working at all
    0 a5 R% t7 l5 E8 s# k6 F      when not specifying both input parameters and caused it to+ E- O7 Y9 m2 e/ s3 A! w
          sometimes not add the warnings at the end of the file.: r7 D- P2 z/ M& g% [) k5 E
        - Fixed typo in name of lower bound input argument in opf.m. Only; P+ ?/ t4 Y7 d  N
          affected those calling opf directly with extra linear constraints.1 F5 o: z$ {# l. {+ X' h% e
    2 C& ?/ R1 P4 r1 Y, `+ K4 V
    Changes since 3.0b2
    . U* G% s; E& X4 V$ J-------------------1 O: I0 j" D+ Y; [* V( I  V
    9/20/048 [; A" v% {+ ~! v9 X( l$ ?
        - Released version 3.0b3.# ~/ l$ @- D' h4 K9 D
        - Generated clean versions of all included case files using latest7 s' D. f: e7 F! |
          cdf2matp and savecase. Added documentation for source of data5 j. B9 M. J4 S$ _8 A+ e
          for case files.
    ! }7 }/ ^- T& w' B* b" W; }1 q6 B6 t1 W    - More enhancements to cdf2matp.m. Adds comments at beginning, appends$ n5 z  {% j. M+ Y& n$ Y! d* p
          conversion warnings as comments at end of file. Uses savecase.m to
    ; e. {4 F- b! i* A, G/ `      save the data.
    2 [- f. J$ O2 _+ G" X    - Updated savecase.m to use %g instead of %f many places, correctly
    . n5 B/ z* k- W0 M      handle multi-line comments, include headers for extra columns for) Y7 g4 b8 }' i% T  Z% I3 H/ B
          solved cases. Optionally returns filename with extension.8 ?" R8 `; O/ q  H% R# c
    9/17/04
    ( _6 _: {4 o$ f: h2 T) n6 {    - Fixed bug in grad_std.m, introduced in 3.0b2, which prevented constr$ Y" o7 z4 M% y7 H: k: o
          and LP-based OPF solvers from working for polynomial cost functions.6 K! L3 m) ]2 A
    9/15/04
    : m0 p7 }' r8 [, S& N% C    - In cdf2matp.m, added input args, updated docs, switched to named
    ' n, o6 s7 c# [% j1 [      indexing of data matrices, new method for creating gen costs.  }: ^- T( Y. h2 V
        - Documentation fixes and additions from Pan Wei.0 G! v, N% J% O

    * K# M# R3 _3 h( v5 E, EChanges since 3.0b16 X$ u4 k: ]" S
    -------------------
    % w' D$ l3 n+ T" d8 \  y9/7/041 [; _1 ^  {( b
        - Released version 3.0b2.
    3 q2 C  Y# x1 V" }' f* ~2 J$ `    - Added OPF_P_LINE_LIM option to mpoptions to use active power
    # H* L9 J; p* x& ^" g; I& I      instead of apparent power for line limits (thanks to Pan Wei
    ; Y! \5 D; \* L3 S6 [; h      for the suggestion and some code).
    , m3 j5 S" `  A. y. {7 _* L8 B9/1/040 |9 G6 A& J* y3 F* n" ?5 h8 A7 T
        - Fixed bug in savecase.m introduced when making areas and gencost0 w/ I( A: {& U# s# |$ Z
          optional." S. I- h. q3 I/ Q6 a8 v* E
        - Updated opf_slvr.m with options for MINOS and fmincon.4 @0 }) v/ c: H8 {) v. P+ E
        - Removed option 15 OPF_NEQ from docs (not a user option). Removed option2 y1 w- b; @  G% m' t; X
          52 VAR_LOAD_PF (unused, always behaves as if this option were 1).0 T: J' `8 k1 }+ `8 q  s
          Changed semantics and default value for option 51 SPARSE_QP. By default5 _& b' N; ]5 H
          (value = 1) it will use sparse matrices if a sparse QP/LP solver is
    / M+ v  L, u, ], Q2 g2 y( ^, @      available and full matrices otherwise. Setting the value to 0: L: T! R$ B  q$ Q: r
          will force it to use full matrices even with a sparse-capable solver.
    ; M' v- L& T! F' a    - Cleaned up checking for optional functionality, and fixed a bug  k4 n6 f( f: ~: p6 D+ T2 I
          that would miss MEX files if there was an identically named directory
    ; v) y( C8 ?; `      by adding have_fcn.m.; [/ }/ ]$ _4 w2 b8 m! c
          ' D* h' F+ e3 m- U
    Changes since 2.0; G5 t* }' s$ @- C4 Y
    -----------------8 Y2 b0 b8 b! F* r, g3 b8 R
    8/25/04- R9 H+ z- O$ ^- g. X' M1 V: k
        - Released version 3.0b1.( l+ d/ E% ?/ f4 l2 S+ |
    8/24/04
    0 v+ i! V4 @, O/ r# }) w    - Made mpoption() throw an error if passed an invalid option name./ Z  n2 L) }. t( x; T7 E) F$ `
    8/23/049 K- a, N/ z6 f/ V6 I& p
        - Added an fmincon based OPF solver for the generalized formulation
    * Z  d2 U0 }# b; d      previously used by mopf (Carlos).
    4 G5 n! P: L9 `1 H# @8 F* m    - Restructured opf.m so all OPF solvers have a similar API based/ x% ~- J4 `* \3 v
          on the one from mopf.m (Carlos).
    % u  n# o2 W: j  E1 N' j    - Added some quick tests for runpf and runopf for each algorithm.) n$ G& Z( D& k8 m  Z# O) E8 I
    8/13/04
    * Q0 G, x: r( E9 l  H+ a7 k5 k  v    - Renamed 'area' variable to 'areas' to avoid masking the built-in  x$ Y; N1 Z: t' l
          function of the same name.2 I& U1 |: d# f2 _1 ~# d) }
        - Made OPF data matrices 'areas' and 'gencost' optional for running
    4 n, K. j( r5 Z; w% B+ A      simple power flow.
    3 z% i9 a) m' S7/15/04) n! \: _% v* o  |: |
        - The loadcase function (and therefore all of the run* functions
    ; D3 v/ y* f0 x% b# o      now optionally accept a struct with the data matrices as fields7 E9 d& m8 Y+ }7 C9 h
          in place of the case file name.% f& J7 K0 U6 @
        - Added t subdirectory with various tests and testing tools.
    + w/ P0 I' }3 [3 G# N% F7/8/04$ a+ {1 S+ B/ ?7 \7 v: Y
        - Updated mp_lp.m and mp_qp.m to try linprog() and quadprog()
    ) F: U6 I( x" l9 }1 n      after trying bp, since lp() and qp() are no longer included* @+ Y3 U7 f1 ?& R$ G  R
          in the Optimization Toolbox as of version 3.1 x0 r- x. Z% w5 o2 _' N: n
    7/7/049 N4 h. x! H3 r  F- s/ J# z
        - Removed case.m, added caseformat.m, made case9.m the default
    0 ^# H: C+ A7 Q8 A+ G& m      case and fixed function names in other case files to avoid
    ' l' Y0 v* \/ u$ Z      use of reserved word 'case'.
    * i( W6 Y$ j9 @. L. U    - Fixed bugs in runcomp.m., @9 N" d# C3 H
    6/23/04( {$ K: |* ]# |$ M; I+ j+ R. x% V
        - Fixed bug in newtonpf.m which caused algorithm to diverge when2 X# E# @$ q2 W0 p3 R% s4 h
          the Newton step resulted in a negative voltage magnitude.
    $ G; \' V6 F, O3 N, X4/17/03
    3 u+ @% N* s: ~( f3 d4 M7 k    - Changed uopf.m to use a dynamic programming approach. More
    7 v' v& ~( b4 v3 ?' x% H/ }      computationally expensive, but should find significanly better
    ' f3 r% C9 f5 k+ f4 D7 n$ R      results when there are many gens to shut down.; i% J2 W7 g, Q
        - Added mp_lp.m and mp_qp.m, equivalents to lp.m and qp.m,. G1 V/ s: H8 k8 \
          respectively that call bpmpd if available. Modified LPrelax.m,# x! J) O' \1 l1 g4 j
          LPsetup.m and dcopf.m to call these new functions.
    5 H4 z! x) p* p( \- x# z- p& z4/14/039 i  f! A% ]+ u* z
        - Fixed a bug in pfsoln.m which for cases with a single generator.8 U- M* B& f: j2 ]6 e5 [
    10/23/02
    ' F1 h4 v0 I7 @/ Y- T    - Fixed bus numbering bug in System Summary section of printpf.m.
    ! y0 h, r6 c; G) J6/20/00
    # s- a8 a) I9 |2 O# ?4 Q5 |    - Fixed a bug in printpf.m in the generator section, where
    2 o# U$ J$ s& V0 m7 g$ J7 [9 b8 M      the generator was assumed to be off if it's real power2 @' H$ Q) D* ^/ J8 b( P0 a# a" I
          output was zero, even if the reactive output was non-zero.! |, D/ O8 }2 [; u
        - Modified printpf.m to print out lambdas in generation section$ V5 G' h& Q0 G$ _, d9 P
          for generators that are shut down.
    - u1 S; M1 S5 O( c1 d5 _/ N+ q6/8/006 R! v, u( j4 s) l% D/ {/ O' J
        - Modified cdf2matp.m so that Pd also includes any generation at5 V- |4 ]9 s1 ~* B
          buses specified as PQ buses. Also modified identification of
    - q3 z% a+ c* L0 E      generator buses to include only PV or reference buses. (Thanks4 u" \0 O& x* G( n) s
          to Venkat)
    6 i# C5 m" O+ o2 i7 n    - Modified cdf2matp.m so that it always treats the input values
    , X) r$ v; ?7 ?) l- l      for Gs and Bs as per unit values and converts them to actual
    " y+ i3 m9 U, c" O3 d      values expected by MATPOWER (Thanks to D. Devaraj)
    $ d5 F* t1 ^: n+ vversion 2.5b3* m! U7 {1 h/ q8 g3 N
    11/9/99# r" S. U2 e1 v& S
    9/22/99; y5 C& S% h# Q; ]  W1 F& x
        - Modified grad_*.m to return sparse matrices, unless using3 |( w: l. @! `& x$ b2 g
          constr.m or an LP/QP solver that doesn't handle sparse
    : C/ z! ^6 c0 b; w* C1 s% q  H      matrices. Cleaned up sparse<->full conversions in LPconstr.m,
    0 ?: v) Z8 N0 }( s      LPrelax.m, and LPsetup.m.3 x: ^" A- }, l: |
    9/21/995 z$ R& f0 u2 x6 F7 X; a
        - Undid a "bug fix" from 3/6/98 in makeYbus.m which zeros out
    7 f/ r" y0 S( ?' i. A/ E      charging capacitance for transformers. Apparently some5 p+ T) H. B' e
          transformer models actually have a non-zero charging parameter3 ^0 S1 V& y. v& G, ?
          when using the model used by MATPOWER (ideal transformer in
    # N& d4 s. N0 D2 h2 J1 q      series with a PI model).
    2 Y  j5 V5 {* I* v! `( V3 N    - Added loadcase.m which loads a MATPOWER case from an M-file
    : _3 Q, [1 I" V: }      or from a MAT-file. Changed all of the run*.m files to use this
    8 ?  y4 n, g! Z. V1 g      as the default way to load case files.0 R5 e+ n8 y0 q; {! W3 C
        - Renamed print2mp.m to savecase.m and added the ability to
    2 }4 u  ?. ?3 B      save a case as a MAT-file as well as an M-file.8 x% g! m& c' B; k' S% j- S3 O
    9/15/99
    / ^% h( C' s3 h* d# r    - Fixed opf.m so that it correctly uses the termination& R/ I0 l( K- z6 j  q
          tolerances in the MATPOWER options vector for constr.m.
    / \! {. z: F- h: @$ g' p8 q    - In previous versions, Pmin/Pmax constraints are relaxed by
    * G  @: j2 C. c; r8 H9 t' C. |      10 * OPF_VIOLATION in opf.m to avoid falsely reporting a8 j7 y8 R4 k% F6 ?3 n9 v
          binding Pmin/Pmax constraint in a case where a piece-wise linear
    " M! o% I5 l7 x: G7 d      cost function has a corner point exactly at the limit. This! a6 o. O6 `: c( V! p9 k7 ^
          code was moved out of opf.m (and the standard MATPOWER
    ( ~. o' m5 D1 E      distribution) to smartmkt.m and the value was changed to
    * }( k/ j7 f# h# E1 g      100 * OPF_VIOLATION.3 g# x! e0 ]/ t# |+ H4 h
        - Modified opf.m so the MINOS-based solver uses OPF_VIOLATION- {2 k* n! U# B! i0 j
          to set the value of MNS_FEASTOL and MNS_ROWTOL if they are
    0 }; h4 i6 L; a+ p" d      set to zero.6 w( t2 A  a0 R7 V0 l
    9/9/991 F; n3 i% q4 X  \+ g0 s
        - Included MINOS-based OPF with all of its options as* @2 U. f7 P  l  ]  v) O
          algorithm 500. (involved including 'area' in calls to opf.m% C) \  V. `6 v
          and uopf.m): n7 [0 v" R$ R7 u/ e
        - Removed some unused lines from fun_ccv.m and grad_ccv.m.
    4 \# ~# Q0 @& n1 t5 _. c8/5/99
    + r$ Z) _9 o; T# R    - Fixed a bug in the pfsoln.m in the distribution of Q among
    : K+ L3 y' K  _! C4 W3 D3 n      generators at the same bus. Initially attempted to distribute
    # p0 y, ?9 h0 \/ [2 |! ]      Q to generators proportional to each generators' Q "capacity".
    ) U9 a: m. I" d, z. Y$ E      To do this correctly requires special cases for generators, L1 u! [' Y$ S: E) Y
          with QMIN equal to QMAX. For the sake of simplicity, we now6 U% J# p  e5 s& N, D% I4 U# h
          distribute Q equally among all generators at the bus.8 _1 t1 T2 o& s; }
          Note: As before, the simple power flow does NO feasibility
    ' O  l0 v( A% K      checking.! t0 G2 b" V8 g! z2 N( W" t
    7/19/99
    / Y4 o* b" s# i* D& Y& G    - Modified runuopf.m and uopf.m to handle DC opf. Added the
    / p  m( O1 s6 a) D7 e6 |/ y1 H      function runduopf.m which calls runuopf.m with the PF_DC flag
    % }" E+ g. J% y, l+ C& k' n4 T      set to 1.0 b& l7 f  c0 ^5 P) w, N  L" v8 }
        - Fixed size of 2nd order (all zero) coefficient of objective8 o! `6 D- G8 S( K$ \7 [
          for piecewise linear cost case in dcopf.m.
    - H' x4 A6 J9 m3 M3 n8 n( I; z7/16/99. o9 M# G0 ?- a' C
        - Added the flag QP_SPARSE to mpoption.m to indicate whether the. [1 [: e2 Y! m2 h5 g! E9 V
          QP solver being used can accept sparse matrices. Also modified
    2 J$ a3 D. |) Y4 B      dcopf.m to use this flag.
    / a' b' X, e: n    - Fixed handling of VERBOSE option in dcopf.m
    . c& O2 _7 O4 Z    - Added the flag PF_DC to mpoption.m to indicate whether the% i/ V. V. V# [6 k8 r
          power flow formulation to be used for power flow and optimal
    ; Q- l2 m! k1 X* U/ y& ^      power flow is a DC approximation or full AC representation.  U4 }( ^. Y$ n' I7 n+ C8 o
          Merged rundcpf.m with runpf.m and rundcopf.m with runopf.m0 Y9 e9 [9 ^# N& E. D, Z$ @. i6 i% v
          so that the appropriate solver will be used based on the/ `' o; W# E4 k8 i' l! z
          value of the PF_DC flag in the options. The functions rundcpf.m( \* {# _+ s! w* h0 Y7 }
          and rundcopf.m were modified to simply call runpf.m and0 L2 Z) f8 G9 u0 f2 I% ~# D
          runopf.m, respectively, with the PF_DC flag set to 1.
    5 q. G3 W. z9 E3 Y' `7 B7/15/99/ ^) k; j% R! z
        - Changed the sign of the phase shifters in printpf.m to be
    5 q6 x" w5 A4 U  k4 b& h! o' w% M0 ]      consistent with the bug fix to makeYbus.m made on 3/6/98.: p  n; J; P2 ]' F7 Y+ f) n8 J
    7/14/99
    / h% W6 B7 F7 O1 ?$ B2 G    - Included four new m-files (makeBdc.m, dcopf.m, rundcpf.m,
    2 u4 }  {; \9 ?+ A8 _! e/ M      and rundcopf.m) which implement a DC power flow and DC1 G2 u7 i( l3 [* k) i8 n
          optimal power flow algorithms.4 R* R" G/ e$ e/ b- A. u
    7/13/99' h4 L, r2 |# c. e) `
        - Cleaned up variable names in makeYbus to avoid confusion.
    9 u! Z* q* i% G' b. @8 D8 [* k% u6/10/99
    2 V8 Y9 z3 |6 B1 T" p- U7 u2 z9 j9 n& }9 B    - Changed UOFP to UOPF in print statements uopf.m.
    ' i/ e7 c( J* Y/ p6/3/992 `8 m2 [+ ]6 |
        - Modified print2mp.m overwrite instead of append to an& H$ G- _+ C1 G
          existing file.
    6 y4 f! e2 f8 H1 `' [: Q    - Fixed bug in cdf2matp.m to make it always correctly write
    2 F# n- z( X: x) o% y7 z7 @, h      a text file output.
    + T) s$ z" t; ?6 S' Kversion 2.5b2
    " c4 a: M, z+ x# g6 V" S$ }6/2/99
    ; H" Z2 q- m+ L$ W5 r& j4 y7 Z    - Modified print2mp.m to include line flows and Lagrange1 X+ l& L% ]2 K! p9 W1 W( ?
          and Kuhn-Tucker multipliers in output if available.6 j+ q* r2 l0 [/ z  l
    4/29/99
    . U2 S5 P/ A6 B. N- c5 l4 k0 j    - Included a Gauss-Seidel power flow solver gausspf.m, and, [& \  }: T  A9 h8 R! j
          made corresponding changes to runpf.m and mpoption.m./ \# q  E4 ^  P- `: G- u
          Code contributed by Alberto Borghetti.
    6 T2 q4 ~! k' Y3 Y8 U2 K, L+ {4/28/999 h; n. H0 m, ^( m+ |
        - Modified newtonpf.m to handle cases with no PQ buses or no
      J% H' V; e8 a' O+ y      PV buses under newer versions of Matlab.6 g4 {. }6 E# M  x! E* a: N
    2/25/99
    ! F$ S0 k% @% M* e    - Fixed a bug in uopf.m which occurs when two (or more)
    : z/ M2 L0 F! \: y" Y! Q, v      generators have positive decommitment indices but shutting0 y3 v5 a1 F, X0 d
          them down one at a time always results in increased system/ N: j2 r. R: `0 S0 W5 w
          cost. In this scenario, it would go into an infinite loop. O- d; f. u- `0 W, o
          of attempting to shut them down one by one.
    ( R! h- i. z, a+ w8 L2/24/99" L0 x  o% H$ ]/ w2 _" ~9 k
        - Modified uopf.m to be able to handle the case where the
    & V5 @' r+ D1 Q' B6 V      sum of the Pmin's is greater than the load. It shuts down) Y; m7 N/ Z1 G% l( p. v6 y
          generators in order of decreasing average cost at Pmin
    # j& x4 z/ K+ f7 L" _" z      (breaking ties randomly) until this infeasibility is gone.
    ) L; g8 y8 T& ]$ w, N2 b7 {% t# M2/16/99
    . h) k- T7 k. H0 D, ~    - Fixed bug in pfsoln.m which caused crashes in Matlab 5  r" j/ |5 X: L  ]; i3 y% \4 v$ x
          for systems with no capacitors.9 U& W6 e2 s1 q! C+ f0 `
        - Added print2mp.m, which can print out a MATPOWER case file* C0 y! f4 x/ o4 ^: {/ L' ?: y
          from the data matrices.
    9 R. G; \7 X' N( n* U    - Added to run*pf.m ability to save solved case.9 H7 ?" {7 t0 f1 H' k
    2/10/994 j# i7 i7 \+ Q5 y. v7 S
        - Modified ext2int.m to allow for area matrix to be empty.
    1 q6 b  A, X" n, k8 R( V12/3/98: ^, R! w9 w& _
        - Changed pfsoln.m so that there is only one slack generator.
    + y+ p& t2 a- ?+ ?3 k8 Q9 l; y8 h      Instead of dividing the P between multiple gens at the
    ( }9 f% ]4 z+ |      slack bus in proportion to capacity (this caused problems
    : R: H7 G, ^7 O0 S2 T) r- f      for the LPconstr versions of the OPF), it now treats the+ i5 l. O9 ]* Y* s6 J2 E4 X; L
          first generator at the slack bus as the only slack generator,! E" s2 S( X, R; X
          leaving the dispatch of the other gens at the bus unchanged.
    4 d! _  r  I  Z) S    - Added generator number to generation constraint printout and
    8 g* g6 q3 ]& g      branch number to branch data and branch flow limit printouts.
    ( U2 E+ A2 [5 P6 s  g12/2/98
    " o. }# a  g( P7 T. F7 b  _    - Changed printpf.m to print elapsed time and objective fcn
    * h  H8 x- V. _0 K      value even when OUT_SYS_SUM is turned off.8 b' b9 r5 @; ~5 f  R% w
        - Added code to LPconstr.m to explicitly zero out lambdas for* l8 C1 }5 e  Z( P3 o9 r
          non-binding constraints.
    5 ^  @9 h: G; O" z, q1 A12/1/98
    : T# y) R) r4 _- x    - Made modifications to ...
      Y% U4 C- T% Y4 S& X        bustypes.m
    2 o, x3 `$ ]( l' ~, k        fun_ccv.m) t1 T$ k0 F6 b
            fun_std.m" w- k' T) E9 A; H
            grad_ccv.m
    7 Z2 J" G6 Z  d2 ~$ ~        grad_std.m
    # R2 c0 A, a; L6 v) d        LPeqslvr.m
    # s' X  t0 Q  }- ]) U        makeSbus.m
    0 B( s$ x1 Q, \( S' m! ^        opf.m
    & G- D+ F- {1 O6 i3 K. S        opfsoln.m
    1 g6 E6 c- l! D) c  c" |        pfsoln.m" ^7 h; b" r- x$ ^1 g* L; u3 n) n
            printpf.m    ; ]# p* E# U5 |# l# K. D. Y- `
            runpf.m5 t" U# f, C6 [6 o  a& P' ?
          ... to allow for multiple generators at each bus. For simple
    ! ]) R6 U: T7 I0 G6 P      power flow, the Q dispatch is divided between multiple gens( d" f5 s/ v4 o8 S/ l7 u4 k
          at a bus in proportion to each gen's Q capacity. Likewise
    % S9 C7 I5 ~2 e8 a      with P for multiple gens at the slack bus.
    1 W" ^* G( s) ~' s) s" ]- V10/29/98
    : a+ U* _2 |6 S' }9 g    - Fixed bug in uopf.m which caused it to crash when attempting& t9 |2 |. S* w, F' r
          to restart a generator after more than 2 had been shut down.
    0 r# m0 E1 W7 m% j3 [10/19/987 ~2 N! @: D9 I5 C$ d: H
        - Generalized definition of GEN_STATUS column of gen matrix. R4 W- X4 U( A
          to allow for distinctions in the status of out-of-service' @' o7 Z7 v  ^8 H- a' T
          generators. The default values of 0 => out-of-service and% l9 q& |$ b* I* Q0 O* e
          1 => in-service still work, but the logic has been changed
    0 _7 m. w3 X5 D/ v# [0 R      so that GEN_STATUS > 0 is now in-service and
    " E" G: G- _$ X( `7 J8 w      GEN_STATUS <= 0 is now out-of-service, as opposed to
    3 d, M7 K8 S  k+ K      GEN_STATUS ~= 0 and GEN_STATUS == 0, respectively, which
    % X& }' _5 j1 |( Q      was used previously. This allows for a GEN_STATUS of -1,
    ; y6 Q/ X& N) o2 o      for example, to indicate a generator which is off-line2 V& w. n: K, G. e
          but could be brought on in case of an emergency.% L! f' F% T* R7 }
    9/2/98/ M# }7 m% A! v! K5 \, w
        - Fixed bug in printpf.m which caused area exports to be! \% c) |% T" ?9 Q
          off slightly., P$ L; x2 Y" M
    9/1/98
      s5 o# [5 Y( b$ w9 h+ o    - Fixed bug in printpf.m. Total intertie flow was double the
    ; q2 @) R* J: I& l      correct value.# M" ]$ P7 I1 S1 ~, i$ u; {  E3 o
    8/31/98
    . u9 E6 m" D( M: C% m$ _5 E# }" ]    - Fixed bug which included line flow limits for out-of-service
    * t. c/ \* q) q, w. ~      lines in OPF.
    9 r" e0 Y3 e* ^; I" T& s* F8 D    - Modified pfsoln.m, opfsoln.m, printpf.m to zero out flow on
    - r4 f9 p) Z' Q. @      lines which are out-of-service (found by Ramazan Caglar).7 ~  ]5 ?- |+ M5 e2 v9 l# U
    7/28/98
    & D5 l2 y; {- d5 C+ g9 j, z6 P    - Changed VAR and MVAR to VAr and MVAr everywhere in output.
    ( p/ ]# i; `) V4 \7 R% n0 F: g* L3/13/98
    8 {% Q, y9 V! w: e# N    - Decreased the default value of LPC_TOL_X option to increase' b3 r. h  S! j: W  c
          solution quality.& P4 p1 y, G% k. M  {
        - Modified fix of 2/10/98 to use a value based on the value of
    8 A5 R2 |  E( z. j3 ]      the OPF_VIOLATION option.
    8 W6 V1 K7 N; S3/6/98
    : a% u4 y1 P2 W$ i    - Fixed 2 bugs in makeYbus.m. Phase shifters now shift the phase the! v5 F6 h! @' D' P% ]2 J/ }7 w
          right direction, the line charging susceptance parameter is now
    $ g4 B1 O: a) S2 @8 y8 \      correctly ignored for transformer and phase shifters.
    8 s" H- O. n( a5 x( ~! c0 F3/3/98
    , R+ @( P$ @/ o& f5 O    - Fixed a bug fun_std.m which caused it to always compute 2nd order$ h$ ^- w) P8 M3 k
          derivatives. Now it only computes them when requested.
    + h- x; E  o% M8 j2/10/98
    " k% ?0 \5 n/ h    - In previous versions, Pmin/Pmax constraints are relaxed by 1.0e-6
    7 ?* f3 P) Z: x6 M1 e, ]      in opf.m to avoid falsely reporting a binding Pmin/Pmax constraint
    , W/ j' p2 l2 m0 o9 h, j      in a case where a piece-wise linear cost function has a corner9 i7 P6 F( A/ [9 C5 |4 v
          point exactly at the limit. Changed the amount of relaxation to2 t* }8 d$ A7 {& c: w
          1.0e-4 since the problem still occurred at times.
    1 I1 k' R$ i7 P5 y1 o1/29/98
    # d( c9 |! x/ V5 `. Q1 y    - Changed the value of LPC_MAX_IT from 1000 to 400 to allow for
    ( P/ H, H4 r5 l9 G      earlier detection of infeasible OPF.
    9 x! X3 D9 l6 e- Y* d5 OChanges since 1.0.1
    & U  m5 M$ D2 u; h-------------------
    1 ?5 w4 S& e8 M" P; W12/24/97# @& N/ E, l3 p
        - Released version 2.0.$ k  T% \. J4 M) ^/ }
    12/19/97( N% T1 r3 m: u! ]9 y
        - Fixed ambiguity in case file data and comments regarding lines
    6 G6 L0 Y9 q- F2 {; X. S! Q2 w0 I      vs. transformers. Now a tap ratio of zero means that it's a line
    - Z; K0 Q# Z! h" I# C      and a non-zero tap ratio means that it's a transformer.
    2 t% z0 Y: _( e    - Optimized formation of Ybus (and hence B matrices).0 ^" a( l: _2 k9 E3 h
    12/18/97& j" z. R" v5 h8 k: S
        - Implemented fast decoupled load flow./ f# J  G- l2 t: J0 w2 C4 p# Y7 t
    12/17/97- Q# b' v  u0 i; K
        - Optimized formation of Jacobian matrix in newtonpf.m (significant
    7 h1 T! e- `  P& Y% ]7 `      improvement for large systems under Matlab 5).
    : M# Y8 n% i# f" Y    . k9 V4 Y8 r! h
    12/16/97
    # D. N9 C  P5 r/ |    - Fixed another bug in calculation of losses. Previous versions
    ) d9 E( h2 h+ K6 [      did not take into account off-nominal taps for transformers.
    - \; `6 T* h! D- C! W6 R7 G    - Fixed a bug in calculation of losses. Previous versions3 u# N8 s% }2 j/ [- m
          included line charging injection in reactive line losses.7 G0 r6 u0 R+ y# {! Z
        - Added ability to optionally return solution data from
    ! {4 y7 E0 V: J1 g: a& n      run*.m functions.) u: L+ z7 X) q8 O
        - Added ability to optionally print results to a file.
    ( ?3 a, n- v8 z4 i- G7 [* R7 u- l    - Added system and area summaries to printpf and modified to" b: \/ K) F1 P' \
          handle the new printing options.
    ) q, G2 i5 I2 h7 S; w12/12/97$ R$ q+ |8 ?; v7 s
        - Consolidated printing into printpf.m, eliminated printopf.m.
    + p8 ?  R' W/ A0 _  D" r7 Z& x    - Removed QCCV method (standard formulation solves same problem,: G7 k* d4 h5 w
          but more efficiently).% u' e. n4 }% c- r7 q1 T7 C
        - Removed OPF algorithms which use fixed generator voltages- M$ r: f0 s9 P! L8 H' g
          (this can still be done by changing voltage limits in the8 B* W+ F7 d$ @4 ?% q1 J
          case file), renumbered OPF algorithms, removed CCV.m and/ p7 t" ?  C9 M" S5 T  A2 p& V
          varVg.m.7 k9 U/ c5 B4 i8 r/ g9 r2 g
    12/11/97) U3 i6 l% W6 K) h1 J4 l
        - Added 2 more levels of control of verbose output.& a6 {( l% @" Y# z  b" f( }  _
        - Put all MATPOWER options into an options vector defined in$ s" I7 h- m$ Z$ i( l/ c) H( L( ?" |" R: u
          mpoption.m.
    6 B2 {# f! r$ R6 F" V" R% A12/10/970 S$ E; n; ^0 A! _- ^" X
        - Incorporated new LP-based OPF routines and updated alg codes./ H* s; G3 X/ r+ F' h8 q
        - Fixed a bug in the documentation in the case files regarding; N5 A! A1 O! g; `, _
          the 4th column of gencost. For piece-wise linear cost functions# D" K. \, q6 r; o8 X1 S. v, F8 `; }
          this value is the number of data points, not the number of
      H/ b7 Q  s* l      parameters (x and y for each point).
    - q& h/ d' P( d& K, ?9 }% M* y    - Removed some m-files that are not used (usesOT.m, usesLP.m).
    * T5 h7 d5 x* P5 L    - Renamed some m-files (OTfungra.m to fg_names.m, OTSfun.m to
    ) j2 l+ h5 N- C! b$ t- H      fun_std.m, OTgra.m to grad_std.m, OTCCVfun.m to fun_ccv.m,
      L: Q6 c/ @4 e" B( E. J      OTCCVgra.m to grad_ccv.m).
    : g" g6 U' e7 _& x7 C12/8/97
    : ^4 |( B( |; [7 `, r    - Rewrote uopf.m to use a smarter decommitment strategy (see the
    , I# y) Z+ c. R      docs for the details of the new method). Removed ref, pv, pq4 b5 E& g. |, n+ @4 o* }
          from the list of parameters passed in, since they were not used.1 O9 j+ v" N# p3 `
    11/19/97
    5 S8 S1 Q" ^' F" x' d7 M    - Fixed a bug in previous versions of uopf.m which returned
    " |( w! D6 b. s* x% G  s$ L5 v      incorrect values for Pmin.2 f% \" @# ?* J3 s
    10/28/97
    : J# P9 y0 E% }2 x' ^6 [) R$ t4 k# j    - Increased maximum number of iterations for constr-based OPF.
    & a5 s' ?( w) o* o2 a! m- E10/24/97
    . t1 z$ T3 C$ b5 k, O6 i; C    - Fixed a bug in previous versions which may result in incorrectly
    9 _2 F% N; u% k6 Z' q0 k      reporting Pmin or Pmax limits to be binding, possibly with large9 h0 S. ?3 Z5 j2 A
          multipliers, if the piece-wise linear cost function has a corner. {3 g/ V6 e6 ?6 p% \% m
          point exactly at Pmin or Pmax.
    2 _$ I1 h, n& W10/22/97
    9 ^/ R. y: @, R4 `& `    - Added to OTSgra.m (renamed to grad_std.m in 2.0) the ability
    / f% u. A9 A, @- H8 [  a. U+ B2 t      to return the second derivatives of the objective function.7 Z+ g! e* y8 s; x; F- b
    9/24/97& x& ?3 Q) o+ A: V2 J/ s& F! A# m
        - Fixed a bug in previous versions of runuopf.m which prevented it  m$ o8 `# b8 E7 G: Q
          from printing out the raw data needed for our Perl DB interface.
    8 r8 r  l$ N& v; `9/23/978 s% K/ P" @9 k7 l; ?
        - Fixed a bug in 1.1b1 in OTCCVgra.m (renamed to grad_ccv.m in 2.0)5 ?2 e( ~( ^" h+ `
          which caused printing of warning message "Concatenation involves# D, A. l$ e; w; \/ E# N/ J) Z, P
          an incommensurate empty array" under Matlab 5.
    3 Q5 V. j+ C' j1 H; s5 ~6 H( c0 H9/22/97
    - ^, b6 U7 X7 p4 s- C    - Fixed a bug in 1.1b1 which prevented runuopf.m from running at all.3 @# l2 f& o0 p5 a. Y) J$ G
          Wrong number of parameters to call opf.m.
    $ r! T8 h4 _8 _& I. Z" y9/20/97! L5 B- s1 Q' i
        - Released version 1.1b1.
    & x1 k. x6 r/ W9/19/97
    $ _% o- X0 e9 Z* s5 W7 o    - Modified the formulation of the OT-based OPF. The objective
    : `/ J  C# i0 z" v9 A; c      function may now include costs for reactive power as well as2 L: a' _  ]- D5 {1 w- R/ r# u
          active power. In previous versions the reactive power variables3 K6 n  r% x' i+ X
          and reactive power balance equations for generator buses were; w( c- r, I$ o7 d2 p, s0 H8 ~+ |
          not included explicitly in the optimization as variables and
    " n. {4 b: }5 ?: K( `/ {) ]) R      equality constraints. Generator reactive powers were computed
    . C9 m) u7 M3 M& x8 @. r7 ~      directly. Now they are included explicitly in the optimization.1 c! J$ V  X7 u' S$ D( ~8 w0 n
          Costs for Qg are specified in extra rows int gencost.9 a& \) F4 v5 t

    3 x4 ~( z* r$ Y; d, k( P, |Changes since 1.0
    9 v* D& ~% s  t6 Y-----------------
    5 H2 r) O$ G, q+ E$ ?9/20/97
    / J. k3 P+ Z4 ~5 _    - Released version 1.0.1.. D) M$ L% ^) y) h, ?
    9/19/97
    ( t9 L/ q- W! e' F9 H7 Y1 X/ H    - Fixed a bug in 1.0 OTSgra.m and OTCCVgra.m (renamed to, V' ]% |' f/ u' i
          grad_std and grad_ccv.m, respectively, in 2.0).m which used
    8 U& p% f+ ]) P& C/ i      incorrect coefficients to compute cost if specified as
    - Y$ R/ E( r6 W      polynomials of different degrees.
    ( U/ w# Z7 f$ b) P6 B+ P9/18/97  J) m. r7 N, i5 I7 L9 A6 g
        - Fixed a bug in 1.0 in OTopf.m which caused the last equality3 W: [$ W0 r* I* z+ \" m0 ~+ A7 U
          constraint (Q mismatch for last pq bus) to be treated as an! W5 G+ f  K7 x2 m& \. Z
          inequality constraint. It appears that this constraint was
    1 `& I  L+ N. }2 Z. @8 ~      normally binding (unless Qd was negative) in which case the; ]7 W- F/ g6 D* K$ w) h$ t* M2 z+ z
          solution was still correct.
    - X. ]; P# c' X" ?    - Fixed a bug in 1.0 in runpf.m, initial voltage for generators
    - Y8 X( Z: E/ k" k2 H      which were shut down were taken from gen(:, VG) rather1 l& \/ p9 s8 R6 W* @7 e; K
          than bus(:, VM).
    2 e2 h& E, a& u5 n+ ^' U) l; |% M# z    - Fixed a bug in 1.0 in varVg.m which caused Kuhn-Tucker+ i, B. j+ x6 `' e- q
          multipliers to print out in the wrong place for LP-based OPF.
    " n/ x! @6 l' ?: n" f$ O
    + _' A  ?6 e7 m) b+ Q0 B* WChanges since 6/25/97 Version+ J# F( w: D  ?" C
    -----------------------------" M' T! v# |6 B, t: ~
    9/17/97* j; v* o( P1 E. C
        - Released version 1.0 (first widely publicized release).
    + ~* s% Y3 B2 M/ s0 D, }    - added placeholders for LP-solvers that we can't re-distribute1 c3 \  g+ x+ q" i# Q: y5 J
        - updated documentation+ s9 _9 `/ h4 @. x0 T1 I. _
    9/12/972 A% X& I# f0 G9 `  o: B; p; s3 a
        - added ability to do pretty & ugly printing at the same time0 V1 h2 f# P; N% f4 |7 f
          also documented that ugly printing is for talking to our
    . e& |8 v  }1 X- r      our Perl database interface code+ |% B% l; x: Q& Y# U+ f
        - included Deqiang (David) Gan's LP IEEE -> matpower data/ r2 h4 s0 U" O. l9 j
          conversion code
    $ m, n; H, W( C. L    - included Deqiang (David) Gan's LP based opf code* z4 D/ ?# F* a# `( i6 o- y
        - fixed LAM_Q bug, now computes correctly for generator buses! {2 D2 A  K  T3 |; R
        - fixed some bugs in totcost.m4 M( N8 a% g3 {" l% f( u. K4 s: N8 l
    9/9/97
    & _) q" U8 q5 g    - removed PRICE from idx_gen' o8 u- T8 v* ]7 R* V0 [& V
    9/4/97
    & e% l! ]. f0 u2 t1 O) [8 F    - added code to convert from (possibly non-consecutive) external
    ( N7 }* x1 ^$ Q9 n      bus numbering to consecutive internal bus numbering before
    & f3 u- B, v. h1 F      solving, and back to external before printing results; Y: {8 m% `/ d& M3 O9 s+ a
        - replaced test*pf with run*pf which are now functions
    $ B5 Y0 u% W, g6 }, S) L      taking the casefile name as a parameter (among other params)) x9 q1 b- n' X$ ~  @$ K
        - made changes necessary to handle new format of case file. E1 R2 R% j" r* ]% v. [/ T
          (generator costs moved to gencost variable)  F" C6 k8 ^9 k$ ]; Q; t! d

    ' D8 t2 \7 Y5 pChanges since I started keeping track0 d& w) V/ L: r. Y8 E5 z# z
    -------------------------------------
    + T# @3 t% x- g* W6/25/97; |3 y4 p" X  r* T
        - made first public release (not widely publicized)
    8 z% ?3 S0 h9 D: v) R$ x    - documentation updates; t, Y/ e; t1 I; Q+ X7 |' k+ V
        - changed names of m-files to fit DOS 8.3 limitation7 W7 t( A9 R9 k, p3 ?# \( {* n
            buildsbus.m     =>  makeSbus.m
    $ E0 b& R& I, R6 I1 q2 X! K        buildybus.m     =>  makeYbus.m( k. r6 V3 s- H& K
            idx_branch.m    =>  idx_brch.m
    ' W. j1 l: g) P2 g2 z        dSbranch_dV.m   =>  dSbr_dV.m( ^8 N2 @% r+ [
            dAbranch_dV.m   =>  dAbr_dV.m
    9 ^  X0 d- p$ E) e3 m        ucopfsoln.m     =>  uopfsoln.m
    6 p& B; a7 [; T8 J) C        testucopf.m     =>  testuopf.m% y5 ~8 D; |) [! r
            ucopf.m         =>  uopf.m  (for naming consistency)
    0 v5 X/ A, V7 G  H! ]0 n+ R    - changed copyright notice& S) ?1 i" h) T8 d
    6/18/97  O& x; b3 Q4 K5 p5 q8 ]$ h  f3 P
        - modified ucopf.m to allow a generator to be turned back on if
    + [, T; e% o1 A- G" n$ z% I1 c      shutting it off results in an infeasible (or at least" d. N" ]1 a$ X' y- I6 P
          non-convergent) OPF, also changed the order of shutting down
    ; X1 c3 \" }5 f8 f6 L' X& C      generators which are dispatched at zero, now chooses one with# N9 f$ `; Q% ~5 U9 q  l& m$ [
          largest mu_Pmin     $ o) M3 D# v8 \6 M6 v5 }
    6/12/97
    " Y2 K: V" W! A! H& Y    - fixed bug in printpf.m so it doesn't print PG & QG for gens that9 i$ b& D" q3 s. j4 e: T; W
          have been shut down
    8 G/ f  `0 R2 v! E1 A  r; S    - fixed bug in pfsoln.m to correctly compute the reference bus power
      M9 X" d# h9 ]6 m1 q! q! I0 ^      injection when generators have been shut down
    & ~! S: u. }! V5 c' l; n6/10/97
    , M! I0 ]  W8 ]4 |' ]2 X    - fixed Vg initialization bug in testpf.m (not just testopf, etc)
    : v. |) Z" A8 f3 v+ f6/9/97) ]2 Z* d. z5 W7 h
        - fixed bug in PLCCV versions which set the initial values of the
    8 s/ H$ V6 \5 g      cost variables wrong (used p.u. Pg instead of actual)& b! C: p% T/ ]6 D* w" u# _& m
        - made opfsoln.m copy generator voltages back to gen(:, VG)
    ( n( P" g" l' r$ r) |; P4 x    - fixed bug in code which initializes generator voltages, it was
    # R3 L! M8 y0 H: C      always setting the angle to zero, now it uses the value from the+ L0 T; W1 z9 D
          case file7 R  |! ~: q2 ]. m  R
    6/3/97; x' _# ]- x2 \% S
        - included opf variations which use cost variables constrained- {. n8 E9 ^8 I$ _+ u
          by a piece-wise linear cost function (PLCCV = piece-wise linearly
    9 j% V+ z, ?  t9 z$ g      constrained cost variables)  [( O" c9 z1 e0 y) c1 T4 w7 D
    6/2/974 S$ w) K! s7 C4 A. e9 E$ J" l
        - included opf variations which use cost variables constrained& |6 y4 }% A! s+ e3 |: z* q/ v
          by a quadratic cost function (QCCV = quadratically constrained
    " x5 y; ^8 Y! B4 r1 v* u      cost variables)/ l4 x. [' @! F. v! t( v# `
        - included opf variation which allows generator voltage  s* X5 W* P% I( [/ L
          magnitudes to vary% P- e7 J; A6 I9 n4 j
        - fixed line in test*pf.m scripts which initializes V0 (I'd missed3 O+ s8 Z- \6 ?8 n% b4 ]
          the sqrt(-1) before7 f' ^- z1 M- F4 z3 D
    4/16/97
    5 L+ H! G: [# B$ `5 Q; t5 t1 s8 X    - changed line 59 of ucopf.m from "return" to "break" to ensure7 I8 l6 b  ?( U
          return values are correct
    " I0 d6 D- a& j( Z4 u4/14/97# Z/ a0 T# b$ G( f9 m: s, u; B
        - added some print statements to ucopf.m
    " D$ y6 ~5 n( h* y* }0 L" m4/12/97
    ( I* t( o$ u3 ^+ i% u; e5 i: v# s$ @" ]    - reduced max iterations to 100 for constr in opf.m$ d4 L7 c' G* }8 {% @' z% s
    4/8/973 ]$ ]5 Z! n, ~; Q) ?/ X
        - modified opf.m, ucopf.m, testopf.m, testucopf.m to include
    # v6 P; }4 v! p# z- w! E      "success", a variable which indicates whether opf was solved
    * w  J  c' _2 h9 T/ u& N$ n/ _1 h3 f3 K' `      successfully or not8 T. I. r) @; c* w; [2 J/ ^
    4/7/97% x( K! x" n/ h8 p5 W- R0 l
        - fixed bug in ucopf.m, assumed all generators are initially2 E7 n! l; c7 Q
          available

    matpower3.1b2.zip

    1.74 MB, 下载次数: 26, 下载积分: 威望 -2 点, 学分 -5 点

    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    楼主热帖
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2007-3-20 16:33:32 | 显示全部楼层
    我也有一个
    5 ]" e$ ?  `" K" h3 Q不过版本好像没有楼主这么新4 d7 a8 j% m7 N8 w& T% ~2 p
    支持一下
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2007-3-20 18:42:21 | 显示全部楼层
    好东东啊。
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2007-5-5 22:49:08 | 显示全部楼层
    请大侠帮个忙
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2007-5-7 15:55:15 | 显示全部楼层
    请大侠帮个忙请大侠帮个忙
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    愤怒
    2016-4-4 09:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    累计签到:1 天
    连续签到:1 天
     楼主| 发表于 2007-5-16 18:53:01 | 显示全部楼层
    ??????
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    开心
    2018-9-24 01:05
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    累计签到:4 天
    连续签到:1 天
    发表于 2007-5-22 20:20:26 | 显示全部楼层
    还是不知道这是个什么东西,但相信很有用.
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2007-6-6 22:22:22 | 显示全部楼层
    顶!!!!!!!!!!!!!
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2010-5-12 10:57:08 | 显示全部楼层
    应该很有用
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2010-6-15 15:36:20 | 显示全部楼层
    回复 1# cumthk
      K( x0 x4 k0 n3 e, @, w" a& T! W; m8 w9 H4 k$ ^

    9 S$ @7 P+ L- U6 E2 q$ n; B6 k: O    下载试试,呵呵
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

    小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

    GMT+8, 2024-6-6 08:30

    Powered by Discuz! X3.5 Licensed

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表