MATPOWER 8.0 released

What’s New in MATPOWER 8.0

Below are some of the highlights of the changes since version 7.1 of MATPOWER. See the full release notes and the CHANGES.md file for more details. For release notes for previous versions, see Appendix H of the MATPOWER User’s Manual.

Major Redesign

MATPOWER 8 introduces a major redesign and rewrite of all of the MATPOWER internals in the form of the flexible, all-new MATPOWER object-oriented core architecture (MP-Core) and new two user-level frameworks to access it. (Previously developed under the name MP-Element in a separate repository at https://github.com/MATPOWER/mp-element.)

  • MP-Core — Provides unparalleled flexibility and customization capabilities at all levels. Facilitates new modeling (e.g. unbalanced multiphase elements, FACTS devices, etc.), new controls (e.g. optimization of transformer taps, PAR angles, etc.), new problem formulations, and more.
  • Flexible Framework — Provides new top-level functions for running power flow (PF), continuation power flow (CPF) and optimal power flow (OPF), along with new MATPOWER Extension API for user access to the full customization capability of MP-Core.
  • Legacy Framework — Allows MP-Core modeling to be used internally by legacy functions, facilitating use of legacy test suite.

See the new MATPOWER Developer’s ManualMATPOWER Reference Manual and MATPOWER Technical Note 5 for details of the new architecture. The User’s Manual has not yet been updated for the flexible framework.

New Three-Phase and Hybrid Proof-of-Concept Examples

Prototype examples of PF, CPF, and OPF for:

  • unbalanced three-phase models
  • hybrid transmission (single-phase) / distribution (three-phase) models
  • multiple problem formulations

Note: These are proof-of-concept only, with much work remaining to define a full set of three-phase model elements and their respective parameters and data formats. But they do work!

New Features

  • MIPS 1.5.1 adds to mplinsolve() the ability to save an LU factorization and reuse it to solve for additional right-hand sides.
  • MP-Opt-Model 4.2 adds support for tracing solution curves of general parameterized nonlinear equations (PNE), providing generalized continuation power flow (CPF) capabilities to MP-Core and adds support for Optimization Toolbox 9.5 and later (MATLAB R2023a and later).
  • MOST 1.3 improves speed and memory usage on certain problems, and adds calculation of expected temporal locational marginal price (TLMP), includes transitions into first period in ramping reserves, and more.
  • SimulinkMATPOWER, included in MATPOWER Extras, enables the use of MATPOWER from MATLAB’s Simulink®environment. Thanks to Lukas Ortmann.
  • New options:
    • New AC power flow solver based on fsolve() function, selected by setting 'pf.alg' option to 'FSOLVE'.
    • New Implicit Z-bus Gauss method power flow for distribution systems, selected by setting pf.alg option to 'ZG'.
  • New functions/methods:
    • run_mp – Top-level function for running any task (PF, CPF, OPF) with the new MP-Core and flexible framework.
    • run_pf – Wrapper around run_mp for running PF.
    • run_cpf – Wrapper around run_mp for running CPF.
    • run_opf – Wrapper around run_mp for running OPF.

New Case Files

  • Two new European transmission system cases. Thanks to Florin Capitanescu.
  • Two new Swedish distribution system cases. Thanks to Gabriel Malmer.

New Documentation

Other Improvements

  • New MATPOWER Docker image (named matpower/matpower) is based on the official GNU Octave image (gnuoctave/octave) and is available for multiple MATPOWER and Octave versions.
  • Update versions of included packages:
    • MP-Test 8.0
    • MIPS 1.5.1
    • MP-Opt-Model 4.2
    • MOST 1.3
  • Numerous bug fixes.

Incompatible Changes

  • Remove several deprecated functions, methods and options.

Webinar: What’s New in MATPOWER 8?

Feb 22, 2023 @ 1pm Central Time (US and Canada)
Hosted on Zoom


Register to watch recording on-demand

Learn about the new features and capabilities of MATPOWER 8.

  • Overview of new architecture and features
  • Demo of three-phase and hybrid proof-of-concept examples
  • Opportunity to provide feedback

Register to watch recording on-demand


MATLAB live code file for the demos can be found below.

MATPOWER 8.0b1 released

What’s New in MATPOWER 8.0b1

Below are some of the highlights of the changes since version 7.1 of MATPOWER. See the full release notes and the CHANGES.md file for more details. For release notes for previous versions, see Appendix H of the MATPOWER User’s Manual.

Major Redesign

MATPOWER 8 introduces a major redesign and rewrite of all of the MATPOWER internals in the form of the flexible, all-new MATPOWER object-oriented core architecture (MP-Core) and new two user-level frameworks to access it. (Previously developed under the name MP-Element in a separate repository at https://github.com/MATPOWER/mp-element.)

  • MP-Core — Provides unparalleled flexibility and customization capabilities at all levels. Facilitates new modeling (e.g. unbalanced multiphase elements, FACTS devices, etc.), new controls (e.g. optimization of transformer taps, PAR angles, etc.), new problem formulations, and more.
  • Flexible Framework — Provides new top-level functions for running power flow (PF), continuation power flow (CPF) and optimal power flow (OPF), along with new MATPOWER Extension API for user access to the full customization capability of MP-Core.
  • Legacy Framework — Allows MP-Core modeling to be used internally by legacy functions, facilitating use of legacy test suite.

See the new MATPOWER Developer’s Manual and MATPOWER Technical Note 5 for details of the new architecture. The User’s Manual has not yet been updated for the flexible framework.

New Three-Phase and Hybrid Proof-of-Concept Examples

Prototype examples of PF, CPF, and OPF for:

  • unbalanced three-phase models
  • hybrid transmission (single-phase) / distribution (three-phase) models
  • multiple problem formulations

Note: These are proof-of-concept only, with much work remaining to define a full set of three-phase model elements and their respective parameters and data formats. But they do work!

New Features

  • MIPS 1.5 adds to mplinsolve() the ability to save an LU factorization and reuse it to solve for additional right-hand sides.
  • MP-Opt-Model 4.1 adds support for tracing solution curves of general parameterized nonlinear equations (PNE), providing generalized continuation power flow (CPF) capabilities to MP-Core.
  • MOST 1.2 adds calculation of expected temporal locational marginal price (TLMP), includes transitions into first period in ramping reserves, and more.
  • New options:
    • New AC power flow solver based on fsolve() function, selected by setting 'pf.alg' option to 'FSOLVE'.
    • New Implicit Z-bus Gauss method power flow for distribution systems, selected by setting pf.alg option to 'ZG'.
  • New functions/methods:
    • run_mp – Top-level function for running any task (PF, CPF, OPF) with the new MP-Core and flexible framework.
    • run_pf – Wrapper around run_mp for running PF.
    • run_cpf – Wrapper around run_mp for running CPF.
    • run_opf – Wrapper around run_mp for running OPF.

New Case Files

  • Two new European case files. Thanks to Florin Capitanescu.

New Documentation

Other Improvements

  • New MATPOWER Docker image (named matpower/matpower) is based on the official GNU Octave image (gnuoctave/octave) and is available for multiple MATPOWER and Octave versions.
  • Update versions of included packages:
    • MP-Test 8.0b1.
    • MIPS 1.5.
    • MP-Opt-Model 4.1
    • MOST 1.2.
  • Numerous bug fixes.

Incompatible Changes

  • Remove several deprecated functions, methods and options.

MATPOWER 7.1 released

What’s New in MATPOWER 7.1

Below are some of the highlights of the changes since version 7.0 of MATPOWER. See the full release notes and the CHANGES.md file for more details. For release notes for previous versions, see Appendix H of the MATPOWER User’s Manual.

New Features

  • Core optimization model and solver interfaces released as separate
    package (included), MP-Opt-Model 3.0, bringing many enhancements:
    • Support for new QP solver OSQP for DC OPF
    • New unified interfaces for nonlinear programming and nonlinear equation
      solvers
    • Many new features of the opt_model class, including a solve()
      method that selects and calls the appropriate solver based on the
      automatically detected problem type, and methods for extracting
      specific variables, costs, constraint values and shadow prices, etc.
      from a solved model
    • Performance improvements
  • MP-Test 7.1, with new modular, extensible have_feature() function
    for detecting optional functionality
  • New options and speed improvements for computing shift factors.
  • Numerous new functions and program options.

New Case Files

  • Nineteen new distribution system cases [ref 1ref 2].
    Thanks to Houssem Bouchekara, et. al.

New Documentation

Other Improvements

  • New implementation of Newton power flow for cartesian voltage
    representations.
  • Improved robustness of Newton power flow with hybrid voltage updates.
  • Significant performance improvement for CPLEX on small DC OPF problems.
  • Update versions of included packages:
    • MIPS 1.4.
    • MOST 1.1.
    • MP-Test 7.1.
  • Numerous bug fixes.

Incompatible Changes

  • Update case18case22case69case85 and case141 to more closely
    match data from original papers, thanks in part to case files contributed
    by Houssem Bouchekara, et al. Solutions for updated cases may not match
    exactly. See help text in case files for details.

MATPOWER 7.0 released

What’s New in MATPOWER 7.0

Below are some of the highlights of the changes since version 6.0 of MATPOWER. See the full release notes and the CHANGES.md file for more details. For release notes for previous versions, see Appendix H of the MATPOWER User’s Manual.

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
  • Many new functions and program options.

New Extras

  • SynGrid, 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 case.
  • Six new radial distribution system cases.

New Documentation

  • Two new Tech Notes, TN3 and TN4
  • LaTeX source code for manuals

New Website

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().

MATPOWER 7.0b1 released

What’s New in MATPOWER 7.0b1

Below are some of the highlights of the changes since version 6.0 of MATPOWER. See the full release notes and the CHANGES.md file for more details. For release notes for previous versions, see Appendix H of the MATPOWER User’s Manual.

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 OPF.
  • Three new radial power flow algorithms
  • Major update to OPF soft limit functionality
  • Many new functions and program options.

New Case Files

  • Seven new purely synthetic cases, up to 82,000 buses.
  • New RTS-GMLC case.
  • Six new radial distribution system cases.

New Documentation

  • Two new Tech Notes, TN3 and TN4
  • LaTeX source code for manuals

Other Improvements

  • Update versions of included packages:
    • MIPS 1.3.
    • MOST 1.0.1.
    • MP-Test 7.0b1.
  • 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.