diff --git a/CHANGES.md b/CHANGES.md index 77820d88..0f0d6cce 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -9,8 +9,15 @@ For change history for [MIPS][2], see [mips/CHANGES.md](mips/CHANGES.md). For change history for [MOST][3], see [most/CHANGES.md](most/CHANGES.md). -Since last release ------------------- +Version 7.0 - *Jun 20, 2019* +---------------------------- + +#### 6/20/19 + - Release 7.0. + - Add `CITATION` file. + - Other miscellaneous documentation updates, e.g. MATPOWER website + links updated to https://matpower.org, separate references for + MATPOWER software and User's Manual, with DOIs. #### 6/5/19 - **INCOMPATIBLE CHANGE:** Fix [issue #60][20] by adding missing @@ -91,7 +98,7 @@ Since last release *Thanks to Amin Gholami.* #### 1/16/19 - - Add option for `install_matpower()` (non-interactively) uninstall + - Add option for `install_matpower()` to (non-interactively) uninstall MATPOWER, i.e. remove MATPOWER directories from MATLAB/Octave path. #### 1/14/19 @@ -106,6 +113,7 @@ Since last release #### 11/26/18 - Fix [bug #53][13] where certain OPF cases (e.g. `case33bw`) resulted in a fatal error under versions of MATLAB prior to R2016b (v9.1). + *Thanks to Jane Cheung.* #### 11/9/18 - Add support for IPOPT solver under Octave, including in the diff --git a/CITATION b/CITATION index 2f05a1c8..48e9c0aa 100644 --- a/CITATION +++ b/CITATION @@ -40,11 +40,11 @@ corresponding case files. For the sake of reproducibility of research results, it is best to cite the specific version of the software used with the version-specfic DOI. -For example, for version 6.0 of MATPOWER, use: +For example, for version 7.0 of MATPOWER, use: - R. D. Zimmerman, C. E. Murillo-Sanchez (2016). MATPOWER (Version 6.0) + R. D. Zimmerman, C. E. Murillo-Sanchez (2019). MATPOWER (Version 7.0) [Software]. Available: https://matpower.org - doi: 10.5281/zenodo.3237810 + doi: 10.5281/zenodo.3251119 To cite the MATPOWER software generally, without reference to a specific version, use the following citation and DOI, with replaced by the @@ -62,13 +62,13 @@ found via the general DOI at https://doi.org/10.5281/zenodo.3236535. The MATPOWER, MIPS and MOST User's Manuals should also be cited explicitly in work that refers to or is derived from their content. As with the software, the citation and DOI can be version-specific or -general, as appropriate. For version 6.0 of the MATPOWER User's Manual, +general, as appropriate. For version 7.0 of the MATPOWER User's Manual, use: R. D. Zimmerman, C. E. Murillo-Sanchez. MATPOWER User's Manual, - Version 6.0. 2016. [Online]. - Available: https://matpower.org/docs/MATPOWER-manual-6.0.pdf - doi: 10.5281/zenodo.3236526 + Version 7.0. 2019. [Online]. + Available: https://matpower.org/docs/MATPOWER-manual-7.0.pdf + doi: 10.5281/zenodo.3251118 For a version non-specific citation, use the following citation and DOI, with replaced by the year of the most recent release: diff --git a/README.md b/README.md index ed7d4478..565746b6 100644 --- a/README.md +++ b/README.md @@ -320,11 +320,11 @@ corresponding case files. For the sake of reproducibility of research results, it is best to cite the specific version of the software used, with the version-specfic DOI. -For example, for version 6.0 of MATPOWER, use: +For example, for version 7.0 of MATPOWER, use: -> R. D. Zimmerman, C. E. Murillo-Sanchez (2016). *MATPOWER (Version 6.0)* +> R. D. Zimmerman, C. E. Murillo-Sanchez (2019). *MATPOWER (Version 7.0)* [Software]. Available: https://matpower.org - doi: [10.5281/zenodo.3237810](https://doi.org/10.5281/zenodo.3237810) + doi: [10.5281/zenodo.3251119](https://doi.org/10.5281/zenodo.3251119) To cite the MATPOWER software generally, without reference to a specific version, use the following citation and DOI, with *\* replaced by the @@ -342,13 +342,13 @@ found via the general DOI at https://doi.org/10.5281/zenodo.3236535. The MATPOWER, MIPS and MOST User's Manuals should also be cited explicitly in work that refers to or is derived from their content. As with the software, the citation and DOI can be version-specific or -general, as appropriate. For version 6.0 of the [MATPOWER User's Manual][8], +general, as appropriate. For version 7.0 of the [MATPOWER User's Manual][8], use: > R. D. Zimmerman, C. E. Murillo-Sanchez. *MATPOWER User's Manual, - Version 6.0.* 2016. - [Online]. Available: https://matpower.org/docs/MATPOWER-manual-6.0.pdf - doi: [10.5281/zenodo.3236526](https://doi.org/10.5281/zenodo.3236526) + Version 7.0.* 2019. + [Online]. Available: https://matpower.org/docs/MATPOWER-manual-7.0.pdf + doi: [10.5281/zenodo.3251118](https://doi.org/10.5281/zenodo.3251118) For a version non-specific citation, use the following citation and DOI, with *\* replaced by the year of the most recent release: diff --git a/docs/MATPOWER-manual.pdf b/docs/MATPOWER-manual.pdf index 40d996cc..6d279216 100644 Binary files a/docs/MATPOWER-manual.pdf and b/docs/MATPOWER-manual.pdf differ diff --git a/docs/relnotes/MATPOWER-Announce-7.0.md b/docs/relnotes/MATPOWER-Announce-7.0.md new file mode 100644 index 00000000..742680cb --- /dev/null +++ b/docs/relnotes/MATPOWER-Announce-7.0.md @@ -0,0 +1,71 @@ +What's New in MATPOWER 7.0 +-------------------------- + +#### Released Jun 20, 2019 + +Below are some of the highlights of the changes since version 6.0 of +MATPOWER. See the [full release notes][1] and the [`CHANGES.md`][2] +file for more details. For release notes for previous versions, see +Appendix H of the [MATPOWER User's Manual][3]. + +#### New Features: +- New MATPOWER installer script `install_matpower()` +- User-defined general nonlinear constraints and costs in AC OPF +- PSS/E RAW export +- Cartesian coordinate voltage and current mismatch formulations of AC power flow + and OPF. +- Three new radial power flow algorithms +- Major update to OPF soft limit functionality +- [MATPOWER Docker image][8] +- Many new functions and program options. + +#### New Extras: +- [SynGrid][7], a new tool for sythetic grid creation for MATPOWER. + +#### New Case Files: +- Seven new purely synthetic cases, up to 82,000 buses. +- New [RTS-GMLC][4] case. +- Six new radial distribution system cases. + +#### New Documentation: +- Two new Tech Notes, [TN3][5] and [TN4][6] +- LaTeX source code for manuals + +#### New Website +- MATPOWER has a new website at https://matpower.org. Please discontinue + use of the old http://www.pserc.cornell.edu/matpower/ address. + +#### Other Improvements: +- Update versions of included packages: + - MIPS 1.3.1. + - MOST 1.0.2. + - MP-Test 7.0. +- Continuous integration testing via GitHub and Travis-CI integration. +- Support for IPOPT solver under Octave. +- Support in core optimization model for: + - general nonlinear constraints + - general nonlinear costs + - quadratic costs +- Refactor OPF code to take advantage of new `opt_model` capabilities + for nonlinear constraints and quadratic and nonlinear costs. +- Support for polar and cartesian voltages in derivative functions. +- Improved performance (up to 2x speedup) for Newton power flow. +- Handling of generator types, fuel types and bus names. +- Numerous bug fixes. + +#### Incompatible Changes: +- Move included MATPOWER case files to new `data` subdirectory. +- Default soft limit behavior relaxes all constraints. +- Minor corrections to data for Polish system cases. +- Add `mpopt` to input args for some OPF callbacks. +- Eliminate unnecessary reordering of on-line generators by `ext2int()`. + + +[1]: https://github.com/MATPOWER/matpower/blob/master/docs/relnotes/MATPOWER-Release-Notes-7.0.md +[2]: https://github.com/MATPOWER/matpower/blob/master/CHANGES.md +[3]: https://github.com/MATPOWER/matpower/blob/master/docs/MATPOWER-manual.pdf +[4]: https://github.com/GridMod/RTS-GMLC +[5]: https://matpower.org/docs/TN3-More-OPF-Derivatives.pdf +[6]: https://matpower.org/docs/TN4-OPF-Derivatives-Cartesian.pdf +[7]: https://github.com/MATPOWER/mx-syngrid +[8]: https://github.com/MATPOWER/matpower/blob/master/docker/MATPOWER-Docker.md diff --git a/docs/relnotes/MATPOWER-Release-Notes-7.0.md b/docs/relnotes/MATPOWER-Release-Notes-7.0.md index 9c1c22d9..ac2a9b8c 100644 --- a/docs/relnotes/MATPOWER-Release-Notes-7.0.md +++ b/docs/relnotes/MATPOWER-Release-Notes-7.0.md @@ -1,7 +1,7 @@ -What's New in MATPOWER 7.0b1 ----------------------------- +What's New in MATPOWER 7.0 +-------------------------- -#### Released Oct 31, 2018 +#### Released Jun 20, 2019 Below is a summary of the changes since version 6.0 of MATPOWER. See the [`CHANGES.md`][1] file for all the gory details. For release notes for @@ -14,6 +14,11 @@ previous versions, see Appendix H of the [MATPOWER User's Manual][2]. - Support for additional user-defined general nonlinear constraints and costs in AC OPF. - Support for exporting MATPOWER case to PSS/E RAW data format. +- Three new variants of the standard Newton AC power flow, for a total + of four, including both nodal power and current balance constraints + and both polar and cartesian representations of voltage. See the new + `pf.current_balance` and `pf.v_cartesian` options. + *Thanks to Baljinnyam Sereeter.* - Three new variants of the standard AC OPF formulation, for a total of four, including both nodal power and current balance constraints and both polar and cartesian representations of voltage. See the new @@ -25,11 +30,16 @@ previous versions, see Appendix H of the [MATPOWER User's Manual][2]. `pf.radial.max_it` and `pf.radial.vcorr`. See Section 4.3 on "Distribution Power Flow" in the [MATPOWER User's Manual][2] for details. *Thanks to Mirko Todorovski.* -- Major update to OPF soft limit functionality, supporting soft limits +- Major upgrade to OPF soft limit functionality, supporting soft limits on all AC and DC OPF inequality constraints, including branch flow constraints, bus voltage bounds, generator active and reactive bounds, branch flow and branch angle difference limits. *Thanks to Eran Schweitzer.* +- Docker image tagged [`matpower/matpower-desktop`][10], providing a + pre-packaged Ubuntu desktop environment with Octave, MATPOWER, and + the [MATPOWER Extras][11] all pre-installed. See the + [`docker/MATPOWER-Docker.md`][12] page for more details. + *Thanks to Richard Lincoln.* - New options: - `pf.nr.lin_solver` controls the linear solver used to compute the Newton update step in the Newton-Raphson power flow. @@ -40,6 +50,8 @@ previous versions, see Appendix H of the [MATPOWER User's Manual][2]. continuation power flow and `cpf.flow_lims_tol` and `cpf.v_lims_tol` control the respective detection tolerances. *Thanks to Ahmad Sadiq Abubakar and Shrirang Abhyankar.* + - `pf.current_balance` and `pf.v_cartesian` control formulation used + for Newton AC power flow. *Thanks to Baljinnyam Sereeter.* - `opf.current_balance` and `opf.v_cartesian` control formulation used for AC OPF. *Thanks to Baljinnyam Sereeter.* - `opf.softlims.default` determines whether or not to include soft @@ -143,11 +155,15 @@ previous versions, see Appendix H of the [MATPOWER User's Manual][2]. `docs/src`, for [MIPS User's Manual][8] in `mips/docs/src` and for [MOST User's Manual][9] in `most/docs/src`. +#### New Website +- MATPOWER has a new website at https://matpower.org. Please discontinue + use of the old http://www.pserc.cornell.edu/matpower/ address. + #### Other Improvements: - Update versions of included packages: - - MIPS 1.3. - - MOST 1.0.1. - - MP-Test 7.0b1. + - MIPS 1.3.1. + - MOST 1.0.2. + - MP-Test 7.0. - Continuous integration testing via GitHub and Travis-CI integration. - Support added in core optimization model `opt_model` for: - general nonlinear constraints @@ -180,6 +196,11 @@ previous versions, see Appendix H of the [MATPOWER User's Manual][2]. - Add support for IPOPT solver under Octave, including in the Travis-CI testing. *Thanks to Richard Lincoln.* +- Add support for YALMIP, SeDuMi and SDPT3 to be recognized under Octave. + *Thanks to Richard Lincoln.* +- Add `'clear_cache'` options to `have_fcn()` (see #65) to facilitate + re-checking for optional functionality after changes to the MATLAB/Octave + path. - Deprecated functions: - `d2AIbr_dV2()` -- use `dA2br_dV2()` instead. - `d2ASbr_dV2()` -- use `dA2br_dV2()` instead. @@ -227,6 +248,29 @@ previous versions, see Appendix H of the [MATPOWER User's Manual][2]. *Thanks to Elis Nycander and Shrirang Abhyankar.* - Fix `runpf` handling of case where individual power flow fails during Q limit enforcement. +- Fix #53 where certain OPF cases (e.g. `case33bw`) resulted in a fatal + error under versions of MATLAB prior to R2016b (v9.1). + *Thanks to Jane Cheung.* +- Fix #56 where `save2psse` was missing entries for two transformer + columns, namely, `VMA1` and `VMI1`. + *Thanks to Amin Gholami.* +- Fix #57 where `save2psse` always used 1 for the `CKT` number, even for + parallel branches or transformers. + *Thanks to Amin Gholami.* +- Fix bug in `have_fcn()` where it would incorrectly mark Gurobi as + available even if it had an expired license or failed for some other + reason. +- Fix #60 by adding missing generator at slack bus in RTE cases. Affects + the following cases: + - `case1888rte` + - `case1951rte` + - `case2848rte` + - `case2868rte` + - `case6468rte` + - `case6470rte` + - `case6495rte` + - `case6515rte` + *Thanks to Jean Maeght.* #### Incompatible Changes: - Move included MATPOWER case files to new `data` subdirectory. @@ -255,6 +299,11 @@ previous versions, see Appendix H of the [MATPOWER User's Manual][2]. - Modify order of default output arguments of `opt_model/get_idx()`. - Add `mpopt` to input args for OPF `'ext2int'`, `'formulation'`, and `'int2ext'` callbacks. +- Eliminate unnecessary reordering of on-line generators (sorted by + increasing bus index) from `ext2int()`. The order is now left + unmodified by `ext2int()`. This change should only affect user code + that explicitly depends on the order of generators with internal + numbering (hopefully quite rare). [1]: https://github.com/MATPOWER/matpower/blob/master/CHANGES.md @@ -263,6 +312,9 @@ previous versions, see Appendix H of the [MATPOWER User's Manual][2]. [4]: https://matpower.org [5]: https://matpower.org/docs/TN3-More-OPF-Derivatives.pdf [6]: https://matpower.org/docs/TN4-OPF-Derivatives-Cartesian.pdf -[7]: https://matpower.org/docs/MATPOWER-manual-7.0b1.pdf +[7]: https://matpower.org/docs/MATPOWER-manual-7.0.pdf [8]: https://matpower.org/docs/MIPS-manual-1.3.pdf [9]: https://matpower.org/docs/MOST-manual-1.0.1.pdf +[10]: https://hub.docker.com/r/matpower/matpower-desktop +[11]: https://github.com/MATPOWER/matpower-extras +[12]: https://github.com/MATPOWER/matpower/blob/master/docker/MATPOWER-Docker.md diff --git a/docs/relnotes/MATPOWER-Release-Notes-7.0b1-7.0.md b/docs/relnotes/MATPOWER-Release-Notes-7.0b1-7.0.md new file mode 100644 index 00000000..697f2f8f --- /dev/null +++ b/docs/relnotes/MATPOWER-Release-Notes-7.0b1-7.0.md @@ -0,0 +1,88 @@ +What's New in MATPOWER 7.0 +-------------------------- + +#### Released Jun 20, 2019 + +Below is a summary of the changes since version 7.0b1 of MATPOWER. See the +[`CHANGES.md`][1] file for all the gory details. For release notes for +previous versions, see Appendix H of the [MATPOWER User's Manual][2]. + +#### New Features: +- Three new variants of the standard Newton AC power flow, for a total + of four, including both nodal power and current balance constraints + and both polar and cartesian representations of voltage. See the new + `pf.current_balance` and `pf.v_cartesian` options. + *Thanks to Baljinnyam Sereeter.* +- Docker image tagged [`matpower/matpower-desktop`][10], providing a + pre-packaged Ubuntu desktop environment with Octave, MATPOWER, and + the [MATPOWER Extras][11] all pre-installed. See the + [`docker/MATPOWER-Docker.md`][12] page for more details. + *Thanks to Richard Lincoln.* +- New options: + - `pf.current_balance` and `pf.v_cartesian` control formulation used + for Newton AC power flow. *Thanks to Baljinnyam Sereeter.* + +#### New Website +- MATPOWER has a new website at https://matpower.org. Please discontinue + use of the old http://www.pserc.cornell.edu/matpower/ address. + +#### Other Improvements: +- Update versions of included packages: + - MIPS 1.3.1. + - MOST 1.0.2. + - MP-Test 7.0. +- Improve performance of `makeYbus()`. *Thanks to Binbin Chen.* +- Add support for IPOPT solver under Octave, including in the Travis-CI + testing. + *Thanks to Richard Lincoln.* +- Add support for YALMIP, SeDuMi and SDPT3 to be recognized under Octave. + *Thanks to Richard Lincoln.* +- Add `'clear_cache'` options to `have_fcn()` (see #65) to facilitate + re-checking for optional functionality after changes to the MATLAB/Octave + path. + +#### Bugs Fixed: +- Fix #53 where certain OPF cases (e.g. `case33bw`) resulted in a fatal + error under versions of MATLAB prior to R2016b (v9.1). + *Thanks to Jane Cheung.* +- Fix #56 where `save2psse` was missing entries for two transformer + columns, namely, `VMA1` and `VMI1`. + *Thanks to Amin Gholami.* +- Fix #57 where `save2psse` always used 1 for the `CKT` number, even for + parallel branches or transformers. + *Thanks to Amin Gholami.* +- Fix bug in `have_fcn()` where it would incorrectly mark Gurobi as + available even if it had an expired license or failed for some other + reason. +- Fix #60 by adding missing generator at slack bus in RTE cases. Affects + the following cases: + - `case1888rte` + - `case1951rte` + - `case2848rte` + - `case2868rte` + - `case6468rte` + - `case6470rte` + - `case6495rte` + - `case6515rte` + *Thanks to Jean Maeght.* + +#### Incompatible Changes: +- Eliminate unnecessary reordering of on-line generators (sorted by + increasing bus index) from `ext2int()`. The order is now left + unmodified by `ext2int()`. This change should only affect user code + that explicitly depends on the order of generators with internal + numbering (hopefully quite rare). + + +[1]: https://github.com/MATPOWER/matpower/blob/master/CHANGES.md +[2]: https://github.com/MATPOWER/matpower/blob/master/docs/MATPOWER-manual.pdf +[3]: https://github.com/GridMod/RTS-GMLC +[4]: https://matpower.org +[5]: https://matpower.org/docs/TN3-More-OPF-Derivatives.pdf +[6]: https://matpower.org/docs/TN4-OPF-Derivatives-Cartesian.pdf +[7]: https://matpower.org/docs/MATPOWER-manual-7.0.pdf +[8]: https://matpower.org/docs/MIPS-manual-1.3.pdf +[9]: https://matpower.org/docs/MOST-manual-1.0.1.pdf +[10]: https://hub.docker.com/r/matpower/matpower-desktop +[11]: https://github.com/MATPOWER/matpower-extras +[12]: https://github.com/MATPOWER/matpower/blob/master/docker/MATPOWER-Docker.md diff --git a/docs/src/MATPOWER-manual/MATPOWER-manual.tex b/docs/src/MATPOWER-manual/MATPOWER-manual.tex index 915ca963..b7ebff9d 100644 --- a/docs/src/MATPOWER-manual/MATPOWER-manual.tex +++ b/docs/src/MATPOWER-manual/MATPOWER-manual.tex @@ -140,7 +140,7 @@ %\hyphenation{matpower} -\newcommand{\mpver}[0]{7.0b1} +\newcommand{\mpver}[0]{7.0} %\newcommand{\matlab}[0]{{Matlab}} %\newcommand{\matlab}[0]{{\sc Matlab}\textsuperscript{\tiny \textregistered}} \newcommand{\matlab}[0]{{\sc Matlab}} @@ -158,15 +158,15 @@ \newcommand{\mipsurl}[0]{https://github.com/MATPOWER/mips} \newcommand{\mipslink}[0]{\href{\mipsurl}{\mips{}}} \newcommand{\mipsname}[0]{{{\bf M}{\sc atpower} \textbf{I}nterior \textbf{P}oint \textbf{S}olver}} -\newcommand{\mipsver}[0]{1.3} +\newcommand{\mipsver}[0]{1.3.1} \newcommand{\most}[0]{{MOST}} \newcommand{\mostname}[0]{{{\bf M}{\sc atpower} \textbf{O}ptimal \textbf{S}cheduling \textbf{T}ool}} \newcommand{\mosturl}[0]{https://github.com/MATPOWER/most} \newcommand{\mostlink}[0]{\href{\mosturl}{\most{}}} -\newcommand{\mostver}[0]{1.0.1} +\newcommand{\mostver}[0]{1.0.2} \newcommand{\md}[0]{{\most{} Data struct}} \newcommand{\syngrid}[0]{{SynGrid}} -\newcommand{\syngridver}[0]{1.0} +\newcommand{\syngridver}[0]{1.0.1} \newcommand{\syngridurl}[0]{https://github.com/MATPOWER/mx-syngrid} \newcommand{\syngridlink}[0]{\href{\syngridurl}{\syngrid{}}} \newcommand{\powerweb}[0]{{\sc PowerWeb}} @@ -182,7 +182,7 @@ \newcommand{\ot}[0]{{Optimization Toolbox}} \newcommand{\pardiso}[0]{{PARDISO}} \newcommand{\sdppf}[0]{\texttt{SDP\_PF}} -\newcommand{\sdppfver}[0]{1.0} +\newcommand{\sdppfver}[0]{1.0.1} \newcommand{\sdpopf}[0]{SDPOPF} \newcommand{\code}[1]{{\relsize{-0.5}{\tt{{#1}}}}} % requires package relsize % Note: to get straight single quotes in \code you have to use one of the @@ -249,7 +249,7 @@ %\title{\hl{--- DRAFT ---}\\\hl{\em do not distribute}\\~\\\matpower{} \mpver{}\\User's Manual} \title{User's Manual} \author{Ray~D.~Zimmerman \and Carlos~E.~Murillo-S\'anchez} -%\date{October 31, 2018} % comment this line to display the current date +\date{June 20, 2019} % comment this line to display the current date %\date{December 14, 2011\thanks{Second revision. First revision was December 13, 2011}} % comment this line to display the current date %%% BEGIN DOCUMENT @@ -273,7 +273,7 @@ {\large \@date \par}% \vfill {\scriptsize -\copyright~2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018~\PSERC\\ +\copyright~2010--2019~\PSERC\\ All Rights Reserved} \end{center} \end{titlepage} @@ -405,13 +405,13 @@ \subsubsection*{Software} For the sake of reproducibility of research results, it is best to cite the specific version of the software used, with the version-specfic DOI. -For example, for version 6.0 of \matpower{}: +For example, for version 7.0 of \matpower{}: \begin{quote} \footnotesize -R.~D. Zimmerman, C.~E. Murillo-S{\'a}nchez (2016). \matpower{} (Version 6.0)\\~ +R.~D. Zimmerman, C.~E. Murillo-S{\'a}nchez (2019). \matpower{} (Version 7.0)\\~ [Software]. Available: \url{https://matpower.org}\\ -\doi{10.5281/zenodo.3237810} +\doi{10.5281/zenodo.3251119} \end{quote} To cite the \matpower{} software generally, without reference to a specific @@ -433,13 +433,13 @@ \subsubsection*{User's Manuals} The \matpower{}, \mips{} and \most{} User's Manuals should also be cited explicitly in work that refers to or is derived from their content.\footnote{For information on citing the \mips{} or \most{} User's Manuals, please see the \code{mips/CITATION} and \code{most/CITATION} files, respectively.} As with the software, the citation and DOI can be version-specific or -general, as appropriate. For version 6.0 of the \mum{}, use: +general, as appropriate. For version 7.0 of the \mum{}, use: \begin{quote} \footnotesize -R.~D. Zimmerman, C.~E. Murillo-S{\'a}nchez. \matpower{} User's Manual, Version 6.0. 2016. -[Online]. Available: \url{https://matpower.org/docs/MATPOWER-manual-6.0.pdf}\\ -\doi{10.5281/zenodo.3236526} +R.~D. Zimmerman, C.~E. Murillo-S{\'a}nchez. \matpower{} User's Manual, Version 7.0. 2019. +[Online]. Available: \url{https://matpower.org/docs/MATPOWER-manual-7.0.pdf}\\ +\doi{10.5281/zenodo.3251118} \end{quote} For a version non-specific citation, use the following citation and DOI, @@ -621,8 +621,8 @@ \subsection{Installation} % UPDATE BEFORE RELEASE \begin{Code} >> test_matpower -t_test_fcns.............ok t_nested_struct_copy....ok +t_have_fcn..............ok t_feval_w_path..........ok t_mpoption..............ok t_loadcase..............ok @@ -665,8 +665,8 @@ \subsection{Installation} t_off2case..............ok t_auction_mips..........ok t_runmarket.............ok -All tests successful (7961 passed, 872 skipped of 8833) -Elapsed time 29.39 seconds. +All tests successful (8242 passed, 872 skipped of 9114) +Elapsed time 40.35 seconds. \end{Code} \end{enumerate} @@ -2005,7 +2005,7 @@ \subsubsection{CPF Example} \end{Code} This should result in something like the following output to the screen. \begin{Code} -MATPOWER Version 7.0b1, 31-Oct-2018 -- AC Continuation Power Flow +MATPOWER Version 7.0, 20-Jun-2019 -- AC Continuation Power Flow step 0 : lambda = 0.000, 4 Newton steps step 1 : stepsize = 0.2 lambda = 0.181 2 corrector Newton steps step 2 : stepsize = 0.2 lambda = 0.359 2 corrector Newton steps @@ -4530,7 +4530,7 @@ \subsection{Example 2} \end{Code} \begin{Code} >> example2 -MATPOWER Interior Point Solver -- MIPS, Version 1.3, 30-Oct-2018 +MATPOWER Interior Point Solver -- MIPS, Version 1.3.1, 20-Jun-2019 (using built-in linear solver) it objective step size feascond gradcond compcond costcond ---- ------------ --------- ------------ ------------ ------------ ------------ @@ -8078,10 +8078,10 @@ \subsubsection*{Incompatible Changes} \clearpage -\subsection{Version 7.0 -- beta 1 released Oct 31, 2018} +\subsection{Version 7.0 -- released Jun 20, 2019} \label{app:v70} -The \href{https://matpower.org/docs/MATPOWER-manual-7.0b1.pdf}{\matpower{} 7.0b1 User's Manual} is available online.\footnote{\url{https://matpower.org/docs/MATPOWER-manual-7.0b1.pdf}} +The \href{https://matpower.org/docs/MATPOWER-manual-7.0.pdf}{\matpower{} 7.0 User's Manual} is available online.\footnote{\url{https://matpower.org/docs/MATPOWER-manual-7.0.pdf}} \subsubsection*{New Features} \begin{itemize} @@ -8091,7 +8091,7 @@ \subsubsection*{New Features} \item Three new variants of the standard Newton AC power flow, for a total of four, including both nodal power and current balance constraints and both polar and cartesian representations of voltage. See the new \code{pf.current\_balance} and \code{pf.v\_cartesian} options. \emph{Thanks to Baljinnyam Sereeter.} \item Three new variants of the standard AC OPF formulation, for a total of four, including both nodal power and current balance constraints and both polar and cartesian representations of voltage. See the new \code{opf.current\_balance} and \code{opf.v\_cartesian} options. \emph{Thanks to Baljinnyam Sereeter.} \item Three new power flow algorithms for radial distribution systems selected via the three new options for \code{pf.alg}, namely \codeq{PQSUM}, \codeq{ISUM}, \codeq{YSUM}. Also includes new \matpower{} options \code{pf.radial.max\_it} and \code{pf.radial.vcorr}. See Section~\ref{sec:pfdist} on ``Distribution Power Flow'' for details. \emph{Thanks to Mirko Todorovski.} -\item Major update to OPF soft limit functionality, supporting soft limits on all AC and DC OPF inequality constraints, including branch flow constraints, bus voltage bounds, generator active and reactive bounds, branch flow and branch angle difference limits. \emph{Thanks to Eran Schweitzer.} +\item Major upgrade to OPF soft limit functionality, supporting soft limits on all AC and DC OPF inequality constraints, including branch flow constraints, bus voltage bounds, generator active and reactive bounds, branch flow and branch angle difference limits. \emph{Thanks to Eran Schweitzer.} \item Docker image tagged \href{https://hub.docker.com/r/matpower/matpower-desktop}{\code{matpower/matpower-desktop}}, providing a pre-packaged Ubuntu desktop environment with Octave, \matpower{}, and the \href{\matpowerextrasgithuburl}{\matpower{} Extras} all pre-installed. See the \href{\matpowerdockerpage}{\code{docker/MATPOWER-Docker.md}} page for more details. \emph{Thanks to Richard Lincoln.} @@ -8195,13 +8195,20 @@ \subsubsection*{New Documentation} \item \LaTeX{} source code for \mum{} included in \code{docs/src}, for \mipsman{} in \code{mips/docs/src} and for \mostman{} in \code{most/docs/src}. \end{itemize} +\subsubsection*{New Website} +\begin{itemize} + \item \matpower{} has a new website at \url{https://matpower.org}. Please + discontinue use of the old + \url{http://www.pserc.cornell.edu/matpower/} address. +\end{itemize} + \subsubsection*{Other Improvements} \begin{itemize} \item Update versions of included packages: \begin{itemize} - \item MIPS 1.3. - \item MOST 1.0.1. - \item MP-Test 7.0b1. + \item MIPS 1.3.1. + \item MOST 1.0.2. + \item MP-Test 7.0. \end{itemize} \item Continuous integration testing via GitHub and Travis-CI integration. \item Support added in core optimization model \code{opt\_model} for: @@ -8222,6 +8229,10 @@ \subsubsection*{Other Improvements} \item Add support for \code{bus\_name} field of \matpower{} case struct to \code{extract\_islands}, \code{ext2int} and \code{int2ext}. \item Add support for \ipopt{} solver under Octave, including in the Travis-CI testing. \emph{Thanks to Richard Lincoln.} \item Add support for YALMIP, SeDuMi and SDPT3 to be recognized under Octave. +\emph{Thanks to Richard Lincoln.} +\item Add \codeq{clear\_cache} options to \code{have\_fcn()} (see issue \#65) +to facilitate re-checking for optional functionality after changes to the +MATLAB/Octave path. \item Deprecated functions: \begin{itemize} \item \code{d2AIbr\_dV2()} -- use \code{dA2br\_dV2()} instead. @@ -8234,7 +8245,7 @@ \subsubsection*{Other Improvements} \end{itemize} \end{itemize} -\clearpage +% \clearpage \subsubsection*{Bugs Fixed} \begin{itemize} \item Fix bug in conversion of older versions of \matpower{} options. @@ -8248,8 +8259,12 @@ \subsubsection*{Bugs Fixed} \item Fix bug \#23 where the continuation power flow could switch directions unexpectedly when the operating point switched from stable to unstable manifold or vice-versa after hitting a limit. \emph{Thanks to Elis Nycander and Shrirang Abhyankar.} \item Fix bug \#26 where, in a continuation power flow, a reactive limit at a bus could be detected in error if multiple generators at the bus had reactive ranges of very different sizes. \emph{Thanks to Elis Nycander and Shrirang Abhyankar.} \item Fix \code{runpf} handling of case where individual power flow fails during Q limit enforcement. -\item Fix bug \#56 where \code{save2psse} was missing entries for two transformer columns, namely, \code{VMA1} and \code{VMI1}). \emph{Thanks to Amin Gholami.} +\item Fix bug \#53 where certain OPF cases (e.g. \code{case33bw}) resulted in +a fatal error under versions of \matlab{} prior to R2016b (v9.1). \emph{Thanks to Jane Cheung.} +\item Fix bug \#56 where \code{save2psse} was missing entries for two transformer columns, namely, \code{VMA1} and \code{VMI1}. \emph{Thanks to Amin Gholami.} \item Fix bug \#57 where \code{save2psse} always used 1 for the \code{CKT} number, even for parallel branches or transformers. \emph{Thanks to Amin Gholami.} +\item Fix bug in \code{have\_fcn()} where it would incorrectly mark Gurobi as +available even if it had an expired license or failed for some other reason. \item Fix issue \#60 by adding missing generator at slack bus in RTE cases. Affects the following cases: \begin{itemize} \item \code{case1888rte} diff --git a/docs/src/MATPOWER-manual/MOST-manual.aux b/docs/src/MATPOWER-manual/MOST-manual.aux index 2562d867..6d1b1f23 100644 --- a/docs/src/MATPOWER-manual/MOST-manual.aux +++ b/docs/src/MATPOWER-manual/MOST-manual.aux @@ -16,23 +16,25 @@ \gdef\HyperFirstAtBeginDocument#1{#1} \providecommand\HyField@AuxAddToFields[1]{} \providecommand\HyField@AuxAddToCoFields[2]{} -\citation{zimmerman2011} +\citation{zimmerman2011,matpower,matpower_manual} \citation{murillo-sanchez2013a,lamadrid2018} \citation{zimmerman2011,zimmerman2009} -\citation{matpower} +\citation{matpower_manual} \citation{bsd} \@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{7}{section.1}} -\@writefile{brf}{\backcite{zimmerman2011}{{7}{1}{section.1}}} +\@writefile{brf}{\backcite{zimmerman2011,matpower,matpower_manual}{{7}{1}{section.1}}} \@writefile{brf}{\backcite{murillo-sanchez2013a,lamadrid2018}{{7}{1}{section.1}}} \@writefile{brf}{\backcite{zimmerman2011, zimmerman2009}{{7}{1}{section.1}}} -\@writefile{brf}{\backcite{matpower}{{7}{1}{section.1}}} +\@writefile{brf}{\backcite{matpower_manual}{{7}{1}{section.1}}} \@writefile{toc}{\contentsline {subsection}{\numberline {1.1}License and Terms of Use}{7}{subsection.1.1}} \@writefile{brf}{\backcite{bsd}{{7}{1.1}{subsection.1.1}}} \citation{zimmerman2011} \citation{murillo-sanchez2013a} \@writefile{toc}{\contentsline {subsection}{\numberline {1.2}Citing {MOST}{}}{8}{subsection.1.2}} \@writefile{brf}{\backcite{zimmerman2011}{{8}{1.2}{subsection.1.2}}} -\@writefile{brf}{\backcite{murillo-sanchez2013a}{{9}{1.2}{subsection.1.2}}} +\@writefile{brf}{\backcite{murillo-sanchez2013a}{{8}{1.2}{subsection.1.2}}} +\citation{most_manual} +\@writefile{brf}{\backcite{most_manual}{{9}{1.2}{subsection.1.2}}} \@writefile{toc}{\contentsline {subsection}{\numberline {1.3}{MOST}{} Development}{9}{subsection.1.3}} \newlabel{sec:development}{{1.3}{9}{\most {} Development}{subsection.1.3}{}} \@writefile{toc}{\contentsline {section}{\numberline {2}Getting Started}{10}{section.2}} @@ -43,15 +45,15 @@ \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.3.1}Preparing Input Data}{12}{subsubsection.2.3.1}} \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.3.2}Solving the Case}{13}{subsubsection.2.3.2}} \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.3.3}Accessing the Results}{14}{subsubsection.2.3.3}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.3.4}Setting Options}{15}{subsubsection.2.3.4}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.4}Documentation}{15}{subsection.2.4}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.3.4}Setting Options}{14}{subsubsection.2.3.4}} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.4}Documentation}{14}{subsection.2.4}} \citation{superopf2008,murillo-sanchez2013} \citation{murillo-sanchez2013a} -\citation{matpower} +\citation{matpower_manual} \@writefile{toc}{\contentsline {section}{\numberline {3}Background and Overview}{16}{section.3}} \@writefile{brf}{\backcite{superopf2008,murillo-sanchez2013}{{16}{3}{section.3}}} \@writefile{brf}{\backcite{murillo-sanchez2013a}{{16}{3}{section.3}}} -\@writefile{brf}{\backcite{matpower}{{16}{3}{section.3}}} +\@writefile{brf}{\backcite{matpower_manual}{{16}{3}{section.3}}} \@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Continuous Single Period Problems}{16}{subsection.3.1}} \@writefile{lof}{\contentsline {figure}{\numberline {3\unhbox \voidb@x \hbox {-}1}{\ignorespaces MOST Continuous Single-Period Problems}}{17}{figure.3.1}} \newlabel{fig:most_single_period}{{3\unhbox \voidb@x \hbox {-}1}{17}{MOST Continuous Single-Period Problems}{figure.3.1}{}} @@ -322,12 +324,16 @@ \newlabel{app:v10}{{B.1}{111}{Version 1.0 -- released Dec 16, 2016}{subsection.1.B.1}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2}Version 1.0.1 -- released Oct 30, 2018}{111}{subsection.1.B.2}} \newlabel{app:v101}{{B.2}{111}{Version 1.0.1 -- released Oct 30, 2018}{subsection.1.B.2}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {B.3}Version 1.0.2 -- released Jun 20, 2019}{112}{subsection.1.B.3}} +\newlabel{app:v102}{{B.3}{112}{Version 1.0.2 -- released Jun 20, 2019}{subsection.1.B.3}{}} \bibcite{zimmerman2011}{1} -\bibcite{murillo-sanchez2013a}{2} -\bibcite{lamadrid2018}{3} -\bibcite{zimmerman2009}{4} -\bibcite{matpower}{5} -\bibcite{bsd}{6} -\bibcite{superopf2008}{7} -\bibcite{murillo-sanchez2013}{8} -\@writefile{toc}{\contentsline {section}{References}{113}{section*.29}} +\bibcite{matpower}{2} +\bibcite{matpower_manual}{3} +\bibcite{murillo-sanchez2013a}{4} +\bibcite{lamadrid2018}{5} +\bibcite{zimmerman2009}{6} +\bibcite{bsd}{7} +\bibcite{most_manual}{8} +\bibcite{superopf2008}{9} +\@writefile{toc}{\contentsline {section}{References}{113}{section*.31}} +\bibcite{murillo-sanchez2013}{10} diff --git a/lib/Contents.m b/lib/Contents.m index e790eb70..48158ba8 100644 --- a/lib/Contents.m +++ b/lib/Contents.m @@ -1,5 +1,5 @@ % MATPOWER -% Version 7.0b1 31-Oct-2018 +% Version 7.0 20-Jun-2019 % % MATPOWER is a package of M-files for solving power flow, % continuation power flow and optimal power flow problems using @@ -21,7 +21,7 @@ % MATPOWER is covered by the 3-clause BSD License (see LICENSE for details). % MATPOWER -% Copyright (c) 2004-2018, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2004-2019, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/mpver.m b/lib/mpver.m index 41be6f63..7ccbd67a 100644 --- a/lib/mpver.m +++ b/lib/mpver.m @@ -8,7 +8,7 @@ % MIPS and any optional MATPOWER packages. % MATPOWER -% Copyright (c) 2005-2018, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2005-2019, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. @@ -26,9 +26,9 @@ % v{1} = ver(p); v{1} = struct( 'Name', 'MATPOWER', ... - 'Version', '7.0b1+', ... + 'Version', '7.0', ... 'Release', '', ... - 'Date', '21-Feb-2019' ); + 'Date', '20-Jun-2019' ); if nargout > 0 if nargin > 0 rv = v{1};