diff --git a/docs/sphinx/source/ref-manual/introduction.rst b/docs/sphinx/source/ref-manual/introduction.rst index ca924dce..367542f9 100644 --- a/docs/sphinx/source/ref-manual/introduction.rst +++ b/docs/sphinx/source/ref-manual/introduction.rst @@ -7,4 +7,4 @@ This documentation is automatically generated from the corresponding help text i The GitHub icon in the upper right of each reference page links to the corresponding source file in the master branch on GitHub. -Currently, this manual includes *only* classes and functions that make up the new **MP-Core** and the **flexible** |MATPOWER| framework, but not the **legacy** |MATPOWER| framework or the other packages such as |MPOM>|, |MIPS>|, |MPTEST>|, or |MOST>|. \ No newline at end of file +Currently, this manual includes *only* classes and functions that make up the new **MP-Core** and the **flexible** and **legacy** |MATPOWER| frameworks, but not the other legacy |MATPOWER| functions or the included packages |MPOM>|, |MIPS>|, |MPTEST>|, or |MOST>|. \ No newline at end of file diff --git a/lib/+mp/data_model_cpf.m b/lib/+mp/data_model_cpf.m index ba0d30ed..fb3b4d1a 100644 --- a/lib/+mp/data_model_cpf.m +++ b/lib/+mp/data_model_cpf.m @@ -1,13 +1,18 @@ classdef data_model_cpf < mp.data_model % mp.data_model_cpf - |MATPOWER| **data model** for CPF tasks. % +% The purpose of this class is to include CPF-specific subclasses for the +% load and shunt elements, which need to be able to provide versions of +% their model parameters that are parameterized by the continuation +% parameter :math:`\lambda`. +% % data_model_cpf Methods: % * data_model_cpf - constructor, assign default data model element classes % % See also mp.data_model. % MATPOWER -% Copyright (c) 2020-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/data_model_opf.m b/lib/+mp/data_model_opf.m index 9266e228..9276d207 100644 --- a/lib/+mp/data_model_opf.m +++ b/lib/+mp/data_model_opf.m @@ -1,6 +1,9 @@ classdef data_model_opf < mp.data_model % mp.data_model_opf - |MATPOWER| **data model** for OPF tasks. % +% The purpose of this class is to include OPF-specific subclasses for its +% elements and to handle pretty-printing output for **lim** sections. +% % mp.data_model_opf Methods: % * data_model_opf - constructor, assign default data model element classes % * pp_flags - add flags for **lim** sections @@ -10,7 +13,7 @@ % See also mp.data_model. % MATPOWER -% Copyright (c) 2020-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_branch.m b/lib/+mp/dme_branch.m index 4fc545f4..a29f3878 100644 --- a/lib/+mp/dme_branch.m +++ b/lib/+mp/dme_branch.m @@ -1,7 +1,11 @@ classdef dme_branch < mp.dm_element % mp.dme_branch - Data model element for branch. % -% Adds the following columns in the main data table: +% Implements the data element model for branch elements, including +% transmission lines and transformers. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % =========== ========= ======================================== % Name Type Description diff --git a/lib/+mp/dme_branch_opf.m b/lib/+mp/dme_branch_opf.m index e18cb9e4..e4d4b32a 100644 --- a/lib/+mp/dme_branch_opf.m +++ b/lib/+mp/dme_branch_opf.m @@ -1,7 +1,11 @@ classdef dme_branch_opf < mp.dme_branch & mp.dme_shared_opf % mp.dme_branch_opf - Data model element for branch for OPF. % -% Adds the following columns in the main data table: +% To parent class :class:`mp.dme_branch`, adds shadow prices on flow and +% angle difference limits, and pretty-printing for **lim** sections. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ================= ======== =================================== % Name Type Description diff --git a/lib/+mp/dme_bus.m b/lib/+mp/dme_bus.m index e5d1b96d..5005ebb1 100644 --- a/lib/+mp/dme_bus.m +++ b/lib/+mp/dme_bus.m @@ -1,7 +1,10 @@ classdef dme_bus < mp.dm_element % mp.dme_bus - Data model element for bus. % -% Adds the following columns in the main data table: +% Implements the data element model for bus elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % =========== ========= ======================================== % Name Type Description diff --git a/lib/+mp/dme_bus3p.m b/lib/+mp/dme_bus3p.m index d996a393..393f8e09 100644 --- a/lib/+mp/dme_bus3p.m +++ b/lib/+mp/dme_bus3p.m @@ -1,7 +1,10 @@ classdef dme_bus3p < mp.dm_element % mp.dme_bus3p - Data model element for 3-phase bus. % -% Adds the following columns in the main data table: +% Implements the data element model for 3-phase bus elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % =========== ========= ======================================== % Name Type Description diff --git a/lib/+mp/dme_bus3p_opf.m b/lib/+mp/dme_bus3p_opf.m index 86798653..f052a5df 100644 --- a/lib/+mp/dme_bus3p_opf.m +++ b/lib/+mp/dme_bus3p_opf.m @@ -1,8 +1,11 @@ classdef dme_bus3p_opf < mp.dme_bus3p & mp.dme_shared_opf % mp.dme_bus3p_opf - Data model element for 3-phase bus for OPF. +% +% To parent class :class:`mp.dme_bus3p`, adds pretty-printing for **lim** +% sections. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_bus_opf.m b/lib/+mp/dme_bus_opf.m index 894b9ca7..c10c2626 100644 --- a/lib/+mp/dme_bus_opf.m +++ b/lib/+mp/dme_bus_opf.m @@ -1,7 +1,11 @@ classdef dme_bus_opf < mp.dme_bus & mp.dme_shared_opf % mp.dme_bus_opf - Data model element for bus for OPF. % -% Adds the following columns in the main data table: +% To parent class :class:`mp.dme_bus`, adds shadow prices on power balance +% and voltage magnitude limits, and pretty-printing for **lim** sections. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ============ ======== ============================================== % Name Type Description diff --git a/lib/+mp/dme_buslink.m b/lib/+mp/dme_buslink.m index f7b000b4..b2bfd548 100644 --- a/lib/+mp/dme_buslink.m +++ b/lib/+mp/dme_buslink.m @@ -1,7 +1,10 @@ classdef dme_buslink < mp.dm_element % mp.dme_buslink - Data model element for 1-to-3-phase buslink. % -% Adds the following columns in the main data table: +% Implements the data element model for 1-to-3-phase buslink elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % =========== ========= ======================================== % Name Type Description diff --git a/lib/+mp/dme_buslink_opf.m b/lib/+mp/dme_buslink_opf.m index a5162c77..ccd0253e 100644 --- a/lib/+mp/dme_buslink_opf.m +++ b/lib/+mp/dme_buslink_opf.m @@ -1,8 +1,11 @@ classdef dme_buslink_opf < mp.dme_buslink & mp.dme_shared_opf % mp.dme_buslink_opf - Data model element for 1-to-3-phase buslink for OPF. +% +% To parent class :class:`mp.dme_buslink`, adds pretty-printing for **lim** +% sections. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_gen.m b/lib/+mp/dme_gen.m index d6c185fa..145dd40d 100644 --- a/lib/+mp/dme_gen.m +++ b/lib/+mp/dme_gen.m @@ -1,7 +1,10 @@ classdef dme_gen < mp.dm_element % mp.dme_gen - Data model element for generator. % -% Adds the following columns in the main data table: +% Implements the data element model for generator elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ===================== ========= ===================================== % Name Type Description diff --git a/lib/+mp/dme_gen3p.m b/lib/+mp/dme_gen3p.m index 0f09dfce..16ce17c0 100644 --- a/lib/+mp/dme_gen3p.m +++ b/lib/+mp/dme_gen3p.m @@ -1,7 +1,10 @@ classdef dme_gen3p < mp.dm_element % mp.dme_gen3p - Data model element for 3-phase generator. % -% Adds the following columns in the main data table: +% Implements the data element model for 3-phase generator elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ================ ========= ===================================== % Name Type Description diff --git a/lib/+mp/dme_gen3p_opf.m b/lib/+mp/dme_gen3p_opf.m index 9e5de916..9263d999 100644 --- a/lib/+mp/dme_gen3p_opf.m +++ b/lib/+mp/dme_gen3p_opf.m @@ -1,8 +1,11 @@ classdef dme_gen3p_opf < mp.dme_gen3p & mp.dme_shared_opf % mp.dme_gen3p_opf - Data model element for 3-phase generator for OPF. +% +% To parent class :class:`mp.dme_gen3p`, adds pretty-printing for **lim** +% sections. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_gen_opf.m b/lib/+mp/dme_gen_opf.m index f2668af8..f0b8d747 100644 --- a/lib/+mp/dme_gen_opf.m +++ b/lib/+mp/dme_gen_opf.m @@ -1,7 +1,11 @@ classdef dme_gen_opf < mp.dme_gen & mp.dme_shared_opf % mp.dme_gen_opf - Data model element for generator for OPF. % -% Adds the following columns in the main data table: +% To parent class :class:`mp.dme_gen`, adds costs, shadow prices on active +% and reactive generation limits, and pretty-printing for **lim** sections. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ============ =============== ===================================== % Name Type Description diff --git a/lib/+mp/dme_line3p.m b/lib/+mp/dme_line3p.m index 7bcf517f..ed26d568 100644 --- a/lib/+mp/dme_line3p.m +++ b/lib/+mp/dme_line3p.m @@ -1,7 +1,10 @@ classdef dme_line3p < mp.dm_element % mp.dme_line3p - Data model element for 3-phase line. % -% Adds the following columns in the main data table: +% Implements the data element model for 3-phase distribution line elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % =========== ========= ============================================= % Name Type Description @@ -24,7 +27,7 @@ % ``ql3_to`` *double* phase 3 reactive power injection at "to" end *(kVAr)* % =========== ========= ============================================= % -% The line construction table in the :attr:`lc` property is defined as a +% The line construction table in the :attr:`lc_tab` property is defined as a % table with the following columns: % % ====== ========= ================================================== @@ -52,7 +55,7 @@ fbus % bus index vector for "from" bus (all lines) tbus % bus index vector for "to" bus (all lines) freq % system frequency, in Hz - lc % index into lc_tab for lines that are on + lc % index into :attr:`lc_tab` for lines that are on len % length for lines that are on lc_tab % line construction table ys % cell array of 3x3 series admittance matrices for lc rows diff --git a/lib/+mp/dme_line3p_opf.m b/lib/+mp/dme_line3p_opf.m index aa63e6d9..11700143 100644 --- a/lib/+mp/dme_line3p_opf.m +++ b/lib/+mp/dme_line3p_opf.m @@ -1,8 +1,11 @@ classdef dme_line3p_opf < mp.dme_line3p & mp.dme_shared_opf % mp.dme_line3p_opf - Data model element for 3-phase line for OPF. +% +% To parent class :class:`mp.dme_line3p`, adds pretty-printing for **lim** +% sections. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_load.m b/lib/+mp/dme_load.m index 46459392..bfe1b2ee 100644 --- a/lib/+mp/dme_load.m +++ b/lib/+mp/dme_load.m @@ -1,7 +1,11 @@ classdef dme_load < mp.dm_element % mp.dme_load - Data model element for load. % -% Adds the following columns in the main data table: +% Implements the data element model for load elements, using a ZIP load +% model. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ======== ========= ===================================== % Name Type Description diff --git a/lib/+mp/dme_load3p.m b/lib/+mp/dme_load3p.m index b5e585c0..84fc73ab 100644 --- a/lib/+mp/dme_load3p.m +++ b/lib/+mp/dme_load3p.m @@ -1,7 +1,10 @@ classdef dme_load3p < mp.dm_element % mp.dme_load3p - Data model element for 3-phase load. % -% Adds the following columns in the main data table: +% Implements the data element model for 3-phase load elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ================ ========= ===================================== % Name Type Description diff --git a/lib/+mp/dme_load3p_opf.m b/lib/+mp/dme_load3p_opf.m index 5584b111..ab47e26a 100644 --- a/lib/+mp/dme_load3p_opf.m +++ b/lib/+mp/dme_load3p_opf.m @@ -1,8 +1,11 @@ classdef dme_load3p_opf < mp.dme_load3p & mp.dme_shared_opf % mp.dme_load3p_opf - Data model element for 3-phase load for OPF. +% +% To parent class :class:`mp.dme_load3p`, adds pretty-printing for **lim** +% sections. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_load_cpf.m b/lib/+mp/dme_load_cpf.m index a028a317..f8d7904d 100644 --- a/lib/+mp/dme_load_cpf.m +++ b/lib/+mp/dme_load_cpf.m @@ -1,8 +1,12 @@ classdef dme_load_cpf < mp.dme_load % mp.dme_load_cpf - Data model element for load for CPF. +% +% To parent class :class:`mp.dme_load`, adds method for adjusting model +% parameters based on value of continuation parameter :math:`\lambda`, and +% overrides export_vars to export these updated parameter values. % MATPOWER -% Copyright (c) 2020-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_load_opf.m b/lib/+mp/dme_load_opf.m index 794a237f..faee124f 100644 --- a/lib/+mp/dme_load_opf.m +++ b/lib/+mp/dme_load_opf.m @@ -1,8 +1,11 @@ classdef dme_load_opf < mp.dme_load & mp.dme_shared_opf % mp.dme_load_opf - Data model element for load for OPF. +% +% To parent class :class:`mp.dme_load`, adds pretty-printing for **lim** +% sections. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_reserve_gen.m b/lib/+mp/dme_reserve_gen.m index 13d59c70..9770635b 100644 --- a/lib/+mp/dme_reserve_gen.m +++ b/lib/+mp/dme_reserve_gen.m @@ -1,7 +1,10 @@ classdef dme_reserve_gen < mp.dm_element & mp.dme_shared_opf % mp.dme_reserve_gen - Data model element for reserve generator. % -% Adds the following columns in the main data table: +% Implements the data element model for reserve generator elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ============== ========= ===================================== % Name Type Description diff --git a/lib/+mp/dme_reserve_zone.m b/lib/+mp/dme_reserve_zone.m index ae297ce9..d01118ec 100644 --- a/lib/+mp/dme_reserve_zone.m +++ b/lib/+mp/dme_reserve_zone.m @@ -1,7 +1,10 @@ classdef dme_reserve_zone < mp.dm_element & mp.dme_shared_opf % mp.dme_reserve_zone - Data model element for reserve zone. % -% Adds the following columns in the main data table: +% Implements the data element model for reserve zone elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ========= ========= ================================================== % Name Type Description diff --git a/lib/+mp/dme_shared_opf.m b/lib/+mp/dme_shared_opf.m index fd5bd03f..755e7300 100644 --- a/lib/+mp/dme_shared_opf.m +++ b/lib/+mp/dme_shared_opf.m @@ -1,10 +1,11 @@ classdef (Abstract) dme_shared_opf < handle % mp.dme_shared_opf - Mixin class for OPF **data model element** objects. % -% For all elements of mp.data_model_opf. +% For all elements of mp.data_model_opf, adds shared functionality for +% pretty-printing of **lim** sections. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_shunt.m b/lib/+mp/dme_shunt.m index baee84f3..4ba741a5 100644 --- a/lib/+mp/dme_shunt.m +++ b/lib/+mp/dme_shunt.m @@ -1,7 +1,10 @@ classdef dme_shunt < mp.dm_element % mp.dme_shunt - Data model element for shunt. % -% Adds the following columns in the main data table: +% Implements the data element model for shunt elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ======== ========= ===================================== % Name Type Description diff --git a/lib/+mp/dme_shunt_cpf.m b/lib/+mp/dme_shunt_cpf.m index 0975f646..a17d1d6c 100644 --- a/lib/+mp/dme_shunt_cpf.m +++ b/lib/+mp/dme_shunt_cpf.m @@ -1,8 +1,12 @@ classdef dme_shunt_cpf < mp.dme_shunt % mp.dme_shunt_cpf - Data model element for shunt for CPF. +% +% To parent class :class:`mp.dme_shunt`, adds method for adjusting model +% parameters based on value of continuation parameter :math:`\lambda`, and +% overrides export_vars() to export these updated parameter values. % MATPOWER -% Copyright (c) 2020-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_shunt_opf.m b/lib/+mp/dme_shunt_opf.m index 480d02de..5e18f2ad 100644 --- a/lib/+mp/dme_shunt_opf.m +++ b/lib/+mp/dme_shunt_opf.m @@ -1,8 +1,11 @@ classdef dme_shunt_opf < mp.dme_shunt & mp.dme_shared_opf % mp.dme_shunt_opf - Data model element for shunt for OPF. +% +% To parent class :class:`mp.dme_shunt`, adds pretty-printing for **lim** +% sections. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/dme_xfmr3p.m b/lib/+mp/dme_xfmr3p.m index 2d07dfcf..499e6a1b 100644 --- a/lib/+mp/dme_xfmr3p.m +++ b/lib/+mp/dme_xfmr3p.m @@ -1,7 +1,10 @@ classdef dme_xfmr3p < mp.dm_element % mp.dme_xfmr3p - Data model element for 3-phase transformer. % -% Adds the following columns in the main data table: +% Implements the data element model for 3-phase transformer elements. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: % % ============ ========= ============================================= % Name Type Description diff --git a/lib/+mp/dme_xfmr3p_opf.m b/lib/+mp/dme_xfmr3p_opf.m index 8bb7642f..234bc6ff 100644 --- a/lib/+mp/dme_xfmr3p_opf.m +++ b/lib/+mp/dme_xfmr3p_opf.m @@ -1,8 +1,11 @@ classdef dme_xfmr3p_opf < mp.dme_xfmr3p & mp.dme_shared_opf % mp.dme_xfmr3p_opf - Data model element for 3-phase transformer for OPF. +% +% To parent class :class:`mp.dme_xfmr3p`, adds pretty-printing for **lim** +% sections. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_cpf_acc.m b/lib/+mp/math_model_cpf_acc.m index 0a53a7f6..a02288e7 100644 --- a/lib/+mp/math_model_cpf_acc.m +++ b/lib/+mp/math_model_cpf_acc.m @@ -1,8 +1,7 @@ classdef (Abstract) math_model_cpf_acc < mp.math_model_cpf -% mp.math_model_cpf_acc - Abstract base class for AC-cartesian CPF **math model** objects. +% mp.math_model_cpf_acc - Abstract base class for AC cartesian CPF **math model** objects. % -% math_model_cpf_acc Methods: -% * math_model_cpf_acc - constructor, assign default math model element classes +% Provides formulation-specific and CPF-specific subclasses for elements. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/math_model_cpf_acci.m b/lib/+mp/math_model_cpf_acci.m index d9babb27..9098bf38 100644 --- a/lib/+mp/math_model_cpf_acci.m +++ b/lib/+mp/math_model_cpf_acci.m @@ -1,8 +1,10 @@ classdef math_model_cpf_acci < mp.math_model_cpf_acc & mp.mm_shared_pfcpf_acci % mp.math_model_cpf_acci - CPF **math model** for AC-cartesian-current formulation. +% +% Implements formulation-specific and CPF-specific node balance constraint. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_cpf_accs.m b/lib/+mp/math_model_cpf_accs.m index daa7d24d..d4b032a5 100644 --- a/lib/+mp/math_model_cpf_accs.m +++ b/lib/+mp/math_model_cpf_accs.m @@ -1,8 +1,10 @@ classdef math_model_cpf_accs < mp.math_model_cpf_acc & mp.mm_shared_pfcpf_accs % mp.math_model_cpf_accs - CPF **math model** for AC-cartesian-power formulation. +% +% Implements formulation-specific and CPF-specific node balance constraint. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_cpf_acp.m b/lib/+mp/math_model_cpf_acp.m index 50b7c103..b6aa94fb 100644 --- a/lib/+mp/math_model_cpf_acp.m +++ b/lib/+mp/math_model_cpf_acp.m @@ -1,5 +1,9 @@ classdef (Abstract) math_model_cpf_acp < mp.math_model_cpf -% mp.math_model_cpf_acp - Abstract base class for AC-polar CPF **math model** objects. +% mp.math_model_cpf_acp - Abstract base class for AC polar CPF **math model** objects. +% +% Provides formulation-specific and CPF-specific subclasses for elements +% and implementations of event and callback functions for handling voltage +% limits. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) @@ -15,7 +19,10 @@ methods %% constructor function obj = math_model_cpf_acp() + % Constructor, assign default network model element classes. + % :: % + % mm = math_model_cpf_acp() obj@mp.math_model_cpf(); obj.element_classes = { @mp.mme_bus_pf_ac, @mp.mme_gen_pf_ac, ... diff --git a/lib/+mp/math_model_cpf_acpi.m b/lib/+mp/math_model_cpf_acpi.m index 9e4f386e..a4478a5c 100644 --- a/lib/+mp/math_model_cpf_acpi.m +++ b/lib/+mp/math_model_cpf_acpi.m @@ -1,8 +1,10 @@ classdef math_model_cpf_acpi < mp.math_model_cpf_acp & mp.mm_shared_pfcpf_acpi % mp.math_model_cpf_acpi - CPF **math model** for AC-polar-current formulation. +% +% Implements formulation-specific and CPF-specific node balance constraint. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_cpf_acps.m b/lib/+mp/math_model_cpf_acps.m index 1d87fadd..76d96123 100644 --- a/lib/+mp/math_model_cpf_acps.m +++ b/lib/+mp/math_model_cpf_acps.m @@ -1,8 +1,12 @@ classdef math_model_cpf_acps < mp.math_model_cpf_acp & mp.mm_shared_pfcpf_acps % mp.math_model_cpf_acps - CPF **math model** for AC-polar-power formulation. +% +% Implements formulation-specific and CPF-specific node balance constraint. +% +% Provides methods for warm-starting solver with updated data. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf.m b/lib/+mp/math_model_opf.m index f7322f3f..2ea63536 100644 --- a/lib/+mp/math_model_opf.m +++ b/lib/+mp/math_model_opf.m @@ -1,8 +1,11 @@ classdef (Abstract) math_model_opf < mp.math_model % mp.math_model_opf - Abstract base class for optimal power flow (OPF) **math model** objects. +% +% Provide implementations for adding system variables to the mathematical +% model and creating an interior starting point. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_ac.m b/lib/+mp/math_model_opf_ac.m index 69d9d62e..baaa778a 100644 --- a/lib/+mp/math_model_opf_ac.m +++ b/lib/+mp/math_model_opf_ac.m @@ -1,8 +1,11 @@ classdef (Abstract) math_model_opf_ac < mp.math_model_opf % mp.math_model_opf_ac - Abstract base class for AC OPF **math model** objects. +% +% Provide implementation of nodal current and power balance functions +% and their derivatives, and setup of solver options. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_acc.m b/lib/+mp/math_model_opf_acc.m index 35fdff94..89e7daba 100644 --- a/lib/+mp/math_model_opf_acc.m +++ b/lib/+mp/math_model_opf_acc.m @@ -1,8 +1,13 @@ classdef (Abstract) math_model_opf_acc < mp.math_model_opf_ac -% mp.math_model_opf_acc - Abstract base class for AC-cartesian OPF **math model** objects. +% mp.math_model_opf_acc - Abstract base class for AC cartesian OPF **math model** objects. +% +% Provides formulation-specific and OPF-specific subclasses for elements. +% +% Implements convert_x_m2n() to convert from math model state to network +% model state. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_acci.m b/lib/+mp/math_model_opf_acci.m index 3e3a46b6..af58f3e8 100644 --- a/lib/+mp/math_model_opf_acci.m +++ b/lib/+mp/math_model_opf_acci.m @@ -1,8 +1,11 @@ classdef math_model_opf_acci < mp.math_model_opf_acc % mp.math_model_opf_acci - OPF **math model** for AC-cartesian-current formulation. +% +% Implements formulation-specific and OPF-specific node balance constraint +% and node balance price methods. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_acci_legacy.m b/lib/+mp/math_model_opf_acci_legacy.m index 0a9fccd7..47f50b7b 100644 --- a/lib/+mp/math_model_opf_acci_legacy.m +++ b/lib/+mp/math_model_opf_acci_legacy.m @@ -1,8 +1,11 @@ classdef math_model_opf_acci_legacy < mp.math_model_opf_acci & mp.mm_shared_opf_legacy % mp.math_model_opf_acci_legacy - OPF **math model** for AC-cartesian-current formulation w/legacy extensions. +% +% Provides formluation-specific methods for handling legacy user +% customization of OPF problem. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_accs.m b/lib/+mp/math_model_opf_accs.m index a7e6b29c..ab70e006 100644 --- a/lib/+mp/math_model_opf_accs.m +++ b/lib/+mp/math_model_opf_accs.m @@ -1,8 +1,11 @@ classdef math_model_opf_accs < mp.math_model_opf_acc % mp.math_model_opf_accs - OPF **math model** for AC-cartesian-power formulation. +% +% Implements formulation-specific and OPF-specific node balance constraint +% and node balance price methods. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_accs_legacy.m b/lib/+mp/math_model_opf_accs_legacy.m index 5da8033d..48909c5e 100644 --- a/lib/+mp/math_model_opf_accs_legacy.m +++ b/lib/+mp/math_model_opf_accs_legacy.m @@ -1,8 +1,11 @@ classdef math_model_opf_accs_legacy < mp.math_model_opf_accs & mp.mm_shared_opf_legacy % mp.math_model_opf_accs_legacy - OPF **math model** for AC-cartesian-power formulation w/legacy extensions. +% +% Provides formluation-specific methods for handling legacy user +% customization of OPF problem. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_acp.m b/lib/+mp/math_model_opf_acp.m index e5d36dbb..e0c0040e 100644 --- a/lib/+mp/math_model_opf_acp.m +++ b/lib/+mp/math_model_opf_acp.m @@ -1,8 +1,13 @@ classdef (Abstract) math_model_opf_acp < mp.math_model_opf_ac -% mp.math_model_opf_acp - Abstract base class for AC-polar OPF **math model** objects. +% mp.math_model_opf_acp - Abstract base class for AC polar OPF **math model** objects. +% +% Provides formulation-specific and OPF-specific subclasses for elements. +% +% Implements convert_x_m2n() to convert from math model state to network +% model state. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_acpi.m b/lib/+mp/math_model_opf_acpi.m index d68968a2..45400ef5 100644 --- a/lib/+mp/math_model_opf_acpi.m +++ b/lib/+mp/math_model_opf_acpi.m @@ -1,8 +1,11 @@ classdef math_model_opf_acpi < mp.math_model_opf_acp % mp.math_model_opf_acpi - OPF **math model** for AC-polar-current formulation. +% +% Implements formulation-specific and OPF-specific node balance constraint +% and node balance price methods. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_acpi_legacy.m b/lib/+mp/math_model_opf_acpi_legacy.m index d1903ae6..8260dda7 100644 --- a/lib/+mp/math_model_opf_acpi_legacy.m +++ b/lib/+mp/math_model_opf_acpi_legacy.m @@ -1,8 +1,11 @@ classdef math_model_opf_acpi_legacy < mp.math_model_opf_acpi & mp.mm_shared_opf_legacy % mp.math_model_opf_acpi_legacy - OPF **math model** for AC-polar-current formulation w/legacy extensions. +% +% Provides formluation-specific methods for handling legacy user +% customization of OPF problem. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_acps.m b/lib/+mp/math_model_opf_acps.m index cbab218f..2d65b996 100644 --- a/lib/+mp/math_model_opf_acps.m +++ b/lib/+mp/math_model_opf_acps.m @@ -1,8 +1,11 @@ classdef math_model_opf_acps < mp.math_model_opf_acp % mp.math_model_opf_acps - OPF **math model** for AC-polar-power formulation. +% +% Implements formulation-specific and OPF-specific node balance constraint +% and node balance price methods. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_acps_legacy.m b/lib/+mp/math_model_opf_acps_legacy.m index 57cadf16..8e194f1e 100644 --- a/lib/+mp/math_model_opf_acps_legacy.m +++ b/lib/+mp/math_model_opf_acps_legacy.m @@ -1,8 +1,11 @@ classdef math_model_opf_acps_legacy < mp.math_model_opf_acps & mp.mm_shared_opf_legacy % mp.math_model_opf_acps_legacy - OPF **math model** for AC-polar-power formulation w/legacy extensions. +% +% Provides formluation-specific methods for handling legacy user +% customization of OPF problem. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_dc.m b/lib/+mp/math_model_opf_dc.m index e3edd059..a4db47ba 100644 --- a/lib/+mp/math_model_opf_dc.m +++ b/lib/+mp/math_model_opf_dc.m @@ -1,8 +1,16 @@ classdef math_model_opf_dc < mp.math_model_opf % mp.math_model_opf_dc - Optimal Power flow (OPF) **math model** for DC formulation. +% +% Provides formulation-specific and OPF-specific subclasses for elements. +% +% Provides implementation of nodal balance constraint method and setup +% of solver options. +% +% Implements convert_x_m2n() to convert from math model state to network +% model state. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_opf_dc_legacy.m b/lib/+mp/math_model_opf_dc_legacy.m index 949c05f5..6927c60e 100644 --- a/lib/+mp/math_model_opf_dc_legacy.m +++ b/lib/+mp/math_model_opf_dc_legacy.m @@ -1,8 +1,11 @@ classdef math_model_opf_dc_legacy < mp.math_model_opf_dc & mp.mm_shared_opf_legacy % mp.math_model_opf_dc - OPF **math model** for DC formulation w/legacy extensions. +% +% Provides formluation-specific methods for handling legacy user +% customization of OPF problem. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_pf.m b/lib/+mp/math_model_pf.m index 6b264d48..b578e66f 100644 --- a/lib/+mp/math_model_pf.m +++ b/lib/+mp/math_model_pf.m @@ -1,8 +1,10 @@ classdef (Abstract) math_model_pf < mp.math_model % mp.math_model_pf - Abstract base class for power flow (PF) **math model** objects. +% +% Implements setting up of solver options from |MATPOWER| options struct. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/math_model_pf_acci.m b/lib/+mp/math_model_pf_acci.m index d2122190..6a18defa 100644 --- a/lib/+mp/math_model_pf_acci.m +++ b/lib/+mp/math_model_pf_acci.m @@ -1,5 +1,8 @@ classdef math_model_pf_acci < mp.math_model_pf_ac & mp.mm_shared_pfcpf_acci % mp.math_model_pf_acci - Power flow (PF) **math model** for AC-cartesian-current formulation. +% +% Implements formulation-specific node balance constraints and inherits +% from formulation-specific class for shared PF/CPF code. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/math_model_pf_accs.m b/lib/+mp/math_model_pf_accs.m index 07683963..71a19a97 100644 --- a/lib/+mp/math_model_pf_accs.m +++ b/lib/+mp/math_model_pf_accs.m @@ -1,5 +1,8 @@ classdef math_model_pf_accs < mp.math_model_pf_ac & mp.mm_shared_pfcpf_accs % mp.math_model_pf_accs - Power flow (PF) **math model** for AC-cartesian-power formulation. +% +% Implements formulation-specific node balance constraints and inherits +% from formulation-specific class for shared PF/CPF code. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/math_model_pf_acpi.m b/lib/+mp/math_model_pf_acpi.m index 4fafbcf4..25f86529 100644 --- a/lib/+mp/math_model_pf_acpi.m +++ b/lib/+mp/math_model_pf_acpi.m @@ -1,5 +1,8 @@ classdef math_model_pf_acpi < mp.math_model_pf_ac & mp.mm_shared_pfcpf_acpi % mp.math_model_pf_acpi - Power flow (PF) **math model** for AC-polar-current formulation. +% +% Implements formulation-specific node balance constraints and inherits +% from formulation-specific class for shared PF/CPF code. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/math_model_pf_acps.m b/lib/+mp/math_model_pf_acps.m index d3c7b408..decd1de4 100644 --- a/lib/+mp/math_model_pf_acps.m +++ b/lib/+mp/math_model_pf_acps.m @@ -1,5 +1,11 @@ classdef math_model_pf_acps < mp.math_model_pf_ac & mp.mm_shared_pfcpf_acps % mp.math_model_pf_acps - Power flow (PF) **math model** for AC-polar-power formulation. +% +% Implements formulation-specific node balance constraints and inherits +% from formulation-specific class for shared PF/CPF code. +% +% Also includes implementations of methods specific to fast-decoupled +% power flow. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/math_model_pf_dc.m b/lib/+mp/math_model_pf_dc.m index ab6a4e8f..9802d56e 100644 --- a/lib/+mp/math_model_pf_dc.m +++ b/lib/+mp/math_model_pf_dc.m @@ -1,8 +1,13 @@ classdef math_model_pf_dc < mp.math_model_pf & mp.mm_shared_pfcpf_dc % mp.math_model_pf_dc - Power flow (PF) **math model** for DC formulation. +% +% Provides formulation-specific and PF-specific subclasses for elements +% and implements formulation-specific node balance constraints. +% +% Overrides the default solve_opts() method. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mm_shared_pfcpf_acc.m b/lib/+mp/mm_shared_pfcpf_acc.m index 301ae3cf..bd425043 100644 --- a/lib/+mp/mm_shared_pfcpf_acc.m +++ b/lib/+mp/mm_shared_pfcpf_acc.m @@ -1,12 +1,12 @@ classdef (Abstract) mm_shared_pfcpf_acc < mp.mm_shared_pfcpf_ac -% mp.mm_shared_pfcpf_acc - Mixin class for AC-cartesian PF/CPF **math model** objects. +% mp.mm_shared_pfcpf_acc - Mixin class for AC cartesian PF/CPF **math model** objects. % % An abstract mixin class inherited by all AC power flow (PF) and continuation % power flow (CPF) **math model** objects that use a cartesian voltage % formuation. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mm_shared_pfcpf_acp.m b/lib/+mp/mm_shared_pfcpf_acp.m index 4e3251a4..143f22f7 100644 --- a/lib/+mp/mm_shared_pfcpf_acp.m +++ b/lib/+mp/mm_shared_pfcpf_acp.m @@ -1,12 +1,12 @@ classdef (Abstract) mm_shared_pfcpf_acp < mp.mm_shared_pfcpf_ac -% mp.mm_shared_pfcpf_acp - Mixin class for AC-polar PF/CPF **math model** objects. +% mp.mm_shared_pfcpf_acp - Mixin class for AC polar PF/CPF **math model** objects. % % An abstract mixin class inherited by all AC power flow (PF) and continuation % power flow (CPF) **math model** objects that use a polar voltage % formuation. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_branch.m b/lib/+mp/mme_branch.m index 2a9f6a2f..1730f744 100644 --- a/lib/+mp/mme_branch.m +++ b/lib/+mp/mme_branch.m @@ -1,5 +1,8 @@ classdef (Abstract) mme_branch < mp.mm_element % mp.mme_branch - Math model element abstract base class for branch. +% +% Abstract math model element base class for branch elements, including +% transmission lines and transformers. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_branch_opf.m b/lib/+mp/mme_branch_opf.m index 34020941..370f65c8 100644 --- a/lib/+mp/mme_branch_opf.m +++ b/lib/+mp/mme_branch_opf.m @@ -1,5 +1,12 @@ classdef (Abstract) mme_branch_opf < mp.mme_branch % mp.mme_branch_opf - Math model element abstract base class for branch for OPF. +% +% Math model element abstract base class for branch elements, including +% transmission lines and transformers, for OPF problems. +% +% Implements methods to prepare data required for angle difference limit +% constraints and to extract shadow prices for these constraints from +% the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_branch_opf_ac.m b/lib/+mp/mme_branch_opf_ac.m index 36295da9..038a8984 100644 --- a/lib/+mp/mme_branch_opf_ac.m +++ b/lib/+mp/mme_branch_opf_ac.m @@ -1,5 +1,12 @@ classdef (Abstract) mme_branch_opf_ac < mp.mme_branch_opf % mp.mme_branch_opf_ac - Math model element abstract base class for branch for AC OPF. +% +% Math model element abstract base class for branch elements, including +% transmission lines and transformers, for AC OPF problems. +% +% Implements methods for adding of branch flow constraints and for updating +% the output data in the corresponding data model element for in-service +% branches from the math model solution. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_branch_opf_acc.m b/lib/+mp/mme_branch_opf_acc.m index 8b0dc1a4..f043bd3e 100644 --- a/lib/+mp/mme_branch_opf_acc.m +++ b/lib/+mp/mme_branch_opf_acc.m @@ -1,8 +1,15 @@ classdef mme_branch_opf_acc < mp.mme_branch_opf_ac % mp.mme_branch_opf_acc - Math model element for branch for AC cartesian voltage OPF. +% +% Math model element class for branch elements, including transmission lines +% and transformers, for AC cartesian voltage OPF problems. +% +% Implements method for adding branch angle difference constraints and +% overrides method to extract shadow prices for these constraints from +% the math model solution. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % and Baljinnyam Sereeter, Delft University of Technology % diff --git a/lib/+mp/mme_branch_opf_acp.m b/lib/+mp/mme_branch_opf_acp.m index 256c5e41..999616f8 100644 --- a/lib/+mp/mme_branch_opf_acp.m +++ b/lib/+mp/mme_branch_opf_acp.m @@ -1,8 +1,13 @@ classdef mme_branch_opf_acp < mp.mme_branch_opf_ac % mp.mme_branch_opf_acp - Math model element for branch for AC polar voltage OPF. +% +% Math model element class for branch elements, including transmission lines +% and transformers, for AC polar voltage OPF problems. +% +% Implements method for adding branch angle difference constraints. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_branch_opf_dc.m b/lib/+mp/mme_branch_opf_dc.m index 9134e02c..4e4a3337 100644 --- a/lib/+mp/mme_branch_opf_dc.m +++ b/lib/+mp/mme_branch_opf_dc.m @@ -1,5 +1,12 @@ classdef mme_branch_opf_dc < mp.mme_branch_opf % mp.mme_branch_opf_dc - Math model element for branch for DC OPF. +% +% Math model element class for branch elements, including transmission lines +% and transformers, for DC OPF problems. +% +% Implements methods for adding of branch flow and angle difference +% constraints and for updating the output data in the corresponding data +% model element for in-service branches from the math model solution. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_branch_pf_ac.m b/lib/+mp/mme_branch_pf_ac.m index e01d6339..0830054a 100644 --- a/lib/+mp/mme_branch_pf_ac.m +++ b/lib/+mp/mme_branch_pf_ac.m @@ -1,5 +1,11 @@ classdef mme_branch_pf_ac < mp.mme_branch % mp.mme_branch_pf_ac - Math model element for branch for AC power flow. +% +% Math model element class for branch elements, including transmission lines +% and transformers, for AC power flow problems. +% +% Implements updating the output data in the corresponding data model +% element for in-service branches from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_branch_pf_dc.m b/lib/+mp/mme_branch_pf_dc.m index f027db68..98876e08 100644 --- a/lib/+mp/mme_branch_pf_dc.m +++ b/lib/+mp/mme_branch_pf_dc.m @@ -1,5 +1,11 @@ classdef mme_branch_pf_dc < mp.mme_branch % mp.mme_branch_pf_dc - Math model element for branch for DC power flow. +% +% Math model element class for branch elements, including transmission lines +% and transformers, for DC power flow problems. +% +% Implements updating the output data in the corresponding data model +% element for in-service branches from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_bus.m b/lib/+mp/mme_bus.m index a48ad4db..90daafba 100644 --- a/lib/+mp/mme_bus.m +++ b/lib/+mp/mme_bus.m @@ -1,8 +1,10 @@ classdef (Abstract) mme_bus < mp.mm_element % mp.mme_bus - Math model element abstract base class for bus. +% +% Abstract math model element base class for bus elements. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_bus3p.m b/lib/+mp/mme_bus3p.m index c390dd8a..bf8433aa 100644 --- a/lib/+mp/mme_bus3p.m +++ b/lib/+mp/mme_bus3p.m @@ -1,5 +1,10 @@ classdef mme_bus3p < mp.mm_element % mp.mme_bus3p - Math model element for 3-phase bus. +% +% Math model element base class for 3-phase bus elements. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service 3-phase buses from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_bus3p_opf_acc.m b/lib/+mp/mme_bus3p_opf_acc.m index 8aba0466..b3f26058 100644 --- a/lib/+mp/mme_bus3p_opf_acc.m +++ b/lib/+mp/mme_bus3p_opf_acc.m @@ -1,8 +1,13 @@ classdef mme_bus3p_opf_acc < mp.mme_bus3p % mp.mme_bus3p_opf_acc - Math model element for 3-phase bus for AC cartesian voltage OPF. +% +% Math model element class for 3-phase bus elements for AC cartesian voltage +% OPF problems. +% +% Implements method for forming an interior initial point. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_bus3p_opf_acp.m b/lib/+mp/mme_bus3p_opf_acp.m index 11dfbcd3..15f99703 100644 --- a/lib/+mp/mme_bus3p_opf_acp.m +++ b/lib/+mp/mme_bus3p_opf_acp.m @@ -1,8 +1,13 @@ classdef mme_bus3p_opf_acp < mp.mme_bus3p % mp.mme_bus3p_opf_acp - Math model element for 3-phase bus for AC polar voltage OPF. +% +% Math model element class for 3-phase bus elements for AC polar voltage OPF +% problems. +% +% Implements method for forming an interior initial point. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_bus_opf_ac.m b/lib/+mp/mme_bus_opf_ac.m index 0a52f2f5..217e46e4 100644 --- a/lib/+mp/mme_bus_opf_ac.m +++ b/lib/+mp/mme_bus_opf_ac.m @@ -1,8 +1,13 @@ classdef (Abstract) mme_bus_opf_ac < mp.mme_bus % mp.mme_bus_opf_ac - Math model element abstract base class for bus for AC OPF. +% +% Abstract math model element class for bus elements for AC OPF problems. +% +% Implements method for forming an interior initial point for voltage +% magnitudes. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_bus_opf_acc.m b/lib/+mp/mme_bus_opf_acc.m index ce98e095..e7454b0e 100644 --- a/lib/+mp/mme_bus_opf_acc.m +++ b/lib/+mp/mme_bus_opf_acc.m @@ -1,5 +1,14 @@ classdef mme_bus_opf_acc < mp.mme_bus_opf_ac % mp.mme_bus_opf_acc - Math model element for bus for AC cartesian voltage OPF. +% +% Math model element class for bus elements for AC cartesian voltage OPF +% problems. +% +% Implements methods for adding constraints for reference voltage angle, +% fixed voltage magnitudes and voltage magnitude limits, for forming an +% interior initial point and for updating the output data in the +% corresponding data model element for in-service buses from the math +% model solution. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_bus_opf_acp.m b/lib/+mp/mme_bus_opf_acp.m index 49206831..4c9baa5a 100644 --- a/lib/+mp/mme_bus_opf_acp.m +++ b/lib/+mp/mme_bus_opf_acp.m @@ -1,5 +1,12 @@ classdef mme_bus_opf_acp < mp.mme_bus_opf_ac % mp.mme_bus_opf_acp - Math model element for bus for AC polar voltage OPF. +% +% Math model element class for bus elements for AC polar voltage OPF +% problems. +% +% Implements methods for forming an interior initial point and for updating +% the output data in the corresponding data model element for in-service +% buses from the math model solution. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_bus_opf_dc.m b/lib/+mp/mme_bus_opf_dc.m index 93d3f90d..adf287cf 100644 --- a/lib/+mp/mme_bus_opf_dc.m +++ b/lib/+mp/mme_bus_opf_dc.m @@ -1,5 +1,11 @@ classdef mme_bus_opf_dc < mp.mme_bus % mp.mme_bus_opf_dc - Math model element for bus for DC OPF. +% +% Math model element class for bus elements for DC OPF problems. +% +% Implements methods for forming an interior initial point and for updating +% the output data in the corresponding data model element for in-service +% buses from the math model solution. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_bus_pf_ac.m b/lib/+mp/mme_bus_pf_ac.m index 23e35d5f..8f0f7be5 100644 --- a/lib/+mp/mme_bus_pf_ac.m +++ b/lib/+mp/mme_bus_pf_ac.m @@ -1,5 +1,10 @@ classdef mme_bus_pf_ac < mp.mme_bus % mp.mme_bus_pf_ac - Math model element for bus for AC power flow. +% +% Math model element class for bus elements for AC power flow problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service buses from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_bus_pf_dc.m b/lib/+mp/mme_bus_pf_dc.m index 37c3e4ef..265c9dc7 100644 --- a/lib/+mp/mme_bus_pf_dc.m +++ b/lib/+mp/mme_bus_pf_dc.m @@ -1,5 +1,10 @@ classdef mme_bus_pf_dc < mp.mme_bus % mp.mme_bus_pf_dc - Math model element for bus for DC power flow. +% +% Math model element class for bus elements for DC power flow problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service buses from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_buslink.m b/lib/+mp/mme_buslink.m index 7900d3c1..50a2c976 100644 --- a/lib/+mp/mme_buslink.m +++ b/lib/+mp/mme_buslink.m @@ -1,8 +1,10 @@ classdef (Abstract) mme_buslink < mp.mm_element % mp.mme_buslink - Math model element abstract base class for 1-to-3-phase buslink. +% +% Abstract math model element base class for 1-to-3-phase buslink elements. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_buslink_opf.m b/lib/+mp/mme_buslink_opf.m index 9c56e1ea..25a0fe0f 100644 --- a/lib/+mp/mme_buslink_opf.m +++ b/lib/+mp/mme_buslink_opf.m @@ -1,8 +1,13 @@ classdef (Abstract) mme_buslink_opf < mp.mme_buslink % mp.mme_buslink_opf - Math model element abstract base class for 1-to-3-phase buslink for OPF. +% +% Abstract math model element base class for 1-to-3-phase buslink elements +% for OPF problems. +% +% Implements (currently empty) method for forming an interior initial point. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_buslink_opf_acc.m b/lib/+mp/mme_buslink_opf_acc.m index 37b90f5d..a7f7decf 100644 --- a/lib/+mp/mme_buslink_opf_acc.m +++ b/lib/+mp/mme_buslink_opf_acc.m @@ -1,8 +1,14 @@ classdef mme_buslink_opf_acc < mp.mme_buslink_opf % mp.mme_buslink_opf_acc - Math model element for 1-to-3-phase buslink for AC cartesian voltage OPF. +% +% Math model element class for 1-to-3-phase buslink elements for AC cartesian +% OPF problems. +% +% Implements methods for adding constraints to match voltages across each +% buslink. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_buslink_opf_acp.m b/lib/+mp/mme_buslink_opf_acp.m index f95536c4..7784bbb1 100644 --- a/lib/+mp/mme_buslink_opf_acp.m +++ b/lib/+mp/mme_buslink_opf_acp.m @@ -1,8 +1,14 @@ classdef mme_buslink_opf_acp < mp.mme_buslink_opf % mp.mme_buslink_opf_acp - Math model element for 1-to-3-phase buslink for AC polar voltage OPF. +% +% Math model element class for 1-to-3-phase buslink elements for AC polar +% OPF problems. +% +% Implements method for adding constraints to match voltages across each +% buslink. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_buslink_pf_ac.m b/lib/+mp/mme_buslink_pf_ac.m index 5fecaead..d387cb2f 100644 --- a/lib/+mp/mme_buslink_pf_ac.m +++ b/lib/+mp/mme_buslink_pf_ac.m @@ -1,8 +1,14 @@ classdef (Abstract) mme_buslink_pf_ac < mp.mme_buslink % mp.mme_buslink_pf_ac - Math model element abstract base class for 1-to-3-phase buslink for AC PF/CPF. +% +% Abstract math model element base class for 1-to-3-phase buslink elements +% for AC power flow and CPF problems. +% +% Implements methods for adding per-phase active and reactive power variables +% and for forming and adding voltage and reactive power constraints. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_buslink_pf_acc.m b/lib/+mp/mme_buslink_pf_acc.m index 74583cd1..c3542bdc 100644 --- a/lib/+mp/mme_buslink_pf_acc.m +++ b/lib/+mp/mme_buslink_pf_acc.m @@ -1,8 +1,14 @@ classdef mme_buslink_pf_acc < mp.mme_buslink_pf_ac % mp.mme_buslink_pf_acc - Math model element for 1-to-3-phase buslink for AC cartesian voltage PF/CPF. +% +% Math model element class for 1-to-3-phase buslink elements for AC cartesian +% power flow and CPF problems. +% +% Implements methods for adding constraints to match voltages across each +% buslink. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_buslink_pf_acp.m b/lib/+mp/mme_buslink_pf_acp.m index 09494569..ec0e8dd6 100644 --- a/lib/+mp/mme_buslink_pf_acp.m +++ b/lib/+mp/mme_buslink_pf_acp.m @@ -1,8 +1,14 @@ classdef mme_buslink_pf_acp < mp.mme_buslink_pf_ac % mp.mme_buslink_pf_acp - Math model element for 1-to-3-phase buslink for AC polar voltage PF/CPF. +% +% Math model element class for 1-to-3-phase buslink elements for AC polar +% power flow and CPF problems. +% +% Implements method for adding constraints to match voltages across each +% buslink. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_gen.m b/lib/+mp/mme_gen.m index b6255d0b..3cac5a59 100644 --- a/lib/+mp/mme_gen.m +++ b/lib/+mp/mme_gen.m @@ -1,8 +1,10 @@ classdef (Abstract) mme_gen < mp.mm_element % mp.mme_gen - Math model element abstract base class for generator. +% +% Abstract math model element base class for generator elements. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_gen3p.m b/lib/+mp/mme_gen3p.m index 20cae010..9871f11c 100644 --- a/lib/+mp/mme_gen3p.m +++ b/lib/+mp/mme_gen3p.m @@ -1,5 +1,10 @@ classdef mme_gen3p < mp.mm_element % mp.mme_gen3p - Math model element for 3-phase generator. +% +% Math model element base class for 3-phase generator elements. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service 3-phase generators from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_gen3p_opf.m b/lib/+mp/mme_gen3p_opf.m index 7c165012..8a44365f 100644 --- a/lib/+mp/mme_gen3p_opf.m +++ b/lib/+mp/mme_gen3p_opf.m @@ -1,8 +1,12 @@ classdef mme_gen3p_opf < mp.mme_gen3p % mp.mme_gen3p_opf - Math model element for 3-phase generator for OPF. +% +% Math model element class for 1-to-3-phase generator elements for OPF problems. +% +% Implements (currently empty) method for forming an interior initial point. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_gen_opf.m b/lib/+mp/mme_gen_opf.m index 588bd661..8b6e841c 100644 --- a/lib/+mp/mme_gen_opf.m +++ b/lib/+mp/mme_gen_opf.m @@ -1,5 +1,11 @@ classdef (Abstract) mme_gen_opf < mp.mme_gen % mp.mme_gen_opf - Math model element abstract base class for generator for OPF. +% +% Math model element abstract base class for generator elements for OPF +% problems. +% +% Implements methods to add costs, including piecewise linear cost variables, +% and to form an interior initial point for cost variables. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_gen_opf_ac.m b/lib/+mp/mme_gen_opf_ac.m index 75647c6b..35ecda42 100644 --- a/lib/+mp/mme_gen_opf_ac.m +++ b/lib/+mp/mme_gen_opf_ac.m @@ -1,5 +1,12 @@ classdef mme_gen_opf_ac < mp.mme_gen_opf % mp.mme_gen_opf_ac - Math model element for generator for AC OPF. +% +% Math model element class for generator elements for AC OPF problems. +% +% Implements methods for buliding and adding PQ capability constraints, +% dispatchable load power factor constraints, polynomial costs, and for +% updating the output data in the corresponding data model element for +% in-service generators from the math model solution. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_gen_opf_dc.m b/lib/+mp/mme_gen_opf_dc.m index 34754d31..4d3f0a14 100644 --- a/lib/+mp/mme_gen_opf_dc.m +++ b/lib/+mp/mme_gen_opf_dc.m @@ -1,5 +1,11 @@ classdef mme_gen_opf_dc < mp.mme_gen_opf % mp.mme_gen_opf_dc - Math model element for generator for DC OPF. +% +% Math model element class for generator elements for DC OPF problems. +% +% Implements methods for buliding cost parameters, adding piecewise linear +% cost constraints, and for updating the output data in the corresponding +% data model element for in-service generators from the math model solution. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_gen_pf_ac.m b/lib/+mp/mme_gen_pf_ac.m index a7c9552d..964f08c1 100644 --- a/lib/+mp/mme_gen_pf_ac.m +++ b/lib/+mp/mme_gen_pf_ac.m @@ -1,5 +1,10 @@ classdef mme_gen_pf_ac < mp.mme_gen % mp.mme_gen_pf_ac - Math model element for generator for AC power flow. +% +% Math model element class for generator elements for AC power flow problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service generators from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_gen_pf_dc.m b/lib/+mp/mme_gen_pf_dc.m index e4756387..d45fee53 100644 --- a/lib/+mp/mme_gen_pf_dc.m +++ b/lib/+mp/mme_gen_pf_dc.m @@ -1,5 +1,10 @@ classdef mme_gen_pf_dc < mp.mme_gen % mp.mme_gen_pf_dc - Math model element for generator for DC power flow. +% +% Math model element class for generator elements for DC power flow problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service generators from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_line3p.m b/lib/+mp/mme_line3p.m index f5f2bed6..7bdfd6ad 100644 --- a/lib/+mp/mme_line3p.m +++ b/lib/+mp/mme_line3p.m @@ -1,5 +1,10 @@ classdef mme_line3p < mp.mm_element % mp.mme_line3p - Math model element for 3-phase line. +% +% Math model element base class for 3-phase line elements. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service 3-phase lines from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_line3p_opf.m b/lib/+mp/mme_line3p_opf.m index 3a6ce265..3e8b2407 100644 --- a/lib/+mp/mme_line3p_opf.m +++ b/lib/+mp/mme_line3p_opf.m @@ -1,8 +1,12 @@ classdef mme_line3p_opf < mp.mme_line3p % mp.mme_line3p_opf - Math model element for 3-phase line for OPF. +% +% Math model element class for 3-phase line elements for OPF problems. +% +% Implements (currently empty) method for forming an interior initial point. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_load.m b/lib/+mp/mme_load.m index 804447d7..fbf18a3f 100644 --- a/lib/+mp/mme_load.m +++ b/lib/+mp/mme_load.m @@ -1,8 +1,10 @@ classdef (Abstract) mme_load < mp.mm_element % mp.mme_load - Math model element abstract base class for load. +% +% Abstract math model element base class for load elements. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_load_cpf.m b/lib/+mp/mme_load_cpf.m index 262f1c75..6d8f0ca8 100644 --- a/lib/+mp/mme_load_cpf.m +++ b/lib/+mp/mme_load_cpf.m @@ -1,5 +1,10 @@ classdef mme_load_cpf < mp.mme_load_pf_ac % mp.mme_load_cpf - Math model element for load for CPF. +% +% Math model element class for load elements for AC CPF problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service loads from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_load_pf_ac.m b/lib/+mp/mme_load_pf_ac.m index 85992fb0..0b8c0d5e 100644 --- a/lib/+mp/mme_load_pf_ac.m +++ b/lib/+mp/mme_load_pf_ac.m @@ -1,5 +1,10 @@ classdef mme_load_pf_ac < mp.mme_load % mp.mme_load_pf_ac - Math model element for load for AC power flow. +% +% Math model element class for load elements for AC power flow problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service loads from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_load_pf_dc.m b/lib/+mp/mme_load_pf_dc.m index cb1b7a0a..9c5f2f1f 100644 --- a/lib/+mp/mme_load_pf_dc.m +++ b/lib/+mp/mme_load_pf_dc.m @@ -1,5 +1,10 @@ classdef mme_load_pf_dc < mp.mme_load % mp.mme_load_pf_dc - Math model element for load for DC power flow. +% +% Math model element class for load elements for DC power flow problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service loads from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_reserve_gen.m b/lib/+mp/mme_reserve_gen.m index 2b13f801..28a8d680 100644 --- a/lib/+mp/mme_reserve_gen.m +++ b/lib/+mp/mme_reserve_gen.m @@ -1,5 +1,12 @@ classdef mme_reserve_gen < mp.mm_element % mp.mme_reserve_gen - Mathematical model element for reserve generator. +% +% Math model element class for reserve generator elements. +% +% Implements methods for adding reserve variables, costs, and per-generator +% reserve constraints, and for updating the output data in the corresponding +% data model element for in-service reserve generators from the math model +% solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_reserve_zone.m b/lib/+mp/mme_reserve_zone.m index 93d996dd..87cfe5cb 100644 --- a/lib/+mp/mme_reserve_zone.m +++ b/lib/+mp/mme_reserve_zone.m @@ -1,5 +1,11 @@ classdef mme_reserve_zone < mp.mm_element % mp.mme_reserve_zone - Mathematical model element for reserve zone. +% +% Math model element class for reserve zone elements. +% +% Implements methods for adding reserve zone constraints, and for updating +% the output data in the corresponding data model element for in-service +% reserve zones from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_shunt.m b/lib/+mp/mme_shunt.m index 3eeae5c9..d8fbeb04 100644 --- a/lib/+mp/mme_shunt.m +++ b/lib/+mp/mme_shunt.m @@ -1,8 +1,10 @@ classdef (Abstract) mme_shunt < mp.mm_element % mp.mme_shunt - Math model element abstract base class for shunt. +% +% Abstract math model element base class for shunt elements. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/mme_shunt_cpf.m b/lib/+mp/mme_shunt_cpf.m index 85d86998..96a4b916 100644 --- a/lib/+mp/mme_shunt_cpf.m +++ b/lib/+mp/mme_shunt_cpf.m @@ -1,5 +1,10 @@ classdef mme_shunt_cpf < mp.mme_shunt_pf_ac % mp.mme_shunt_cpf - Math model element for shunt for CPF. +% +% Math model element class for shunt elements for AC CPF problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service shunts from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_shunt_pf_ac.m b/lib/+mp/mme_shunt_pf_ac.m index 1c8216d1..08d5aebe 100644 --- a/lib/+mp/mme_shunt_pf_ac.m +++ b/lib/+mp/mme_shunt_pf_ac.m @@ -1,5 +1,10 @@ classdef mme_shunt_pf_ac < mp.mme_shunt % mp.mme_shunt_pf_ac - Math model element for shunt for AC power flow. +% +% Math model element class for shunt elements for AC power flow problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service shunts from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_shunt_pf_dc.m b/lib/+mp/mme_shunt_pf_dc.m index 1edc4533..f3057d86 100644 --- a/lib/+mp/mme_shunt_pf_dc.m +++ b/lib/+mp/mme_shunt_pf_dc.m @@ -1,5 +1,10 @@ classdef mme_shunt_pf_dc < mp.mme_shunt % mp.mme_shunt_pf_dc - Math model element for shunt for DC power flow. +% +% Math model element class for shunt elements for DC power flow problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service shunts from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_xfmr3p.m b/lib/+mp/mme_xfmr3p.m index d9b92452..6b37332e 100644 --- a/lib/+mp/mme_xfmr3p.m +++ b/lib/+mp/mme_xfmr3p.m @@ -1,5 +1,11 @@ classdef mme_xfmr3p < mp.mm_element % mp.mme_xfmr3p - Math model element for 3-phase transformer. +% +% Math model element base class for 3-phase transformer elements. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service 3-phase transformers from the math model +% solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/+mp/mme_xfmr3p_opf.m b/lib/+mp/mme_xfmr3p_opf.m index c5e67ee2..356f0a8c 100644 --- a/lib/+mp/mme_xfmr3p_opf.m +++ b/lib/+mp/mme_xfmr3p_opf.m @@ -1,8 +1,12 @@ classdef mme_xfmr3p_opf < mp.mme_xfmr3p % mp.mme_xfmr3p_opf - Math model element for 3-phase transformer for OPF. +% +% Math model element class for 3-phase transformer elements for OPF problems. +% +% Implements (currently empty) method for forming an interior initial point. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/net_model_acc.m b/lib/+mp/net_model_acc.m index 358a926a..60ecf2df 100644 --- a/lib/+mp/net_model_acc.m +++ b/lib/+mp/net_model_acc.m @@ -1,5 +1,5 @@ classdef net_model_acc < mp.net_model_ac & mp.form_acc -% mp.net_model_acc - Concrete class for |MATPOWER| AC-cartesian **network model** objects. +% mp.net_model_acc - Concrete class for |MATPOWER| AC cartesian **network model** objects. % % This network model class and all of its network model element classes are % specific to the AC cartesian formulation and therefore inherit from @@ -18,7 +18,7 @@ % mp.nm_element. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/net_model_acp.m b/lib/+mp/net_model_acp.m index e94ea2c8..ed494a4e 100644 --- a/lib/+mp/net_model_acp.m +++ b/lib/+mp/net_model_acp.m @@ -1,5 +1,5 @@ classdef net_model_acp < mp.net_model_ac & mp.form_acp -% mp.net_model_acp - Concrete class for |MATPOWER| AC-polar **network model** objects. +% mp.net_model_acp - Concrete class for |MATPOWER| AC polar **network model** objects. % % This network model class and all of its network model element classes are % specific to the AC polar formulation and therefore inherit from mp.form_acp. @@ -17,7 +17,7 @@ % mp.nm_element. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_branch.m b/lib/+mp/nme_branch.m index b8412c55..a078b82f 100644 --- a/lib/+mp/nme_branch.m +++ b/lib/+mp/nme_branch.m @@ -1,8 +1,11 @@ classdef (Abstract) nme_branch < mp.nm_element % mp.nme_branch - Network model element abstract base class for branch. +% +% Implements the network model element for branch elements, including +% transmission lines and transformers, with 2 ports per branch. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_branch_ac.m b/lib/+mp/nme_branch_ac.m index 209885ba..93dcace6 100644 --- a/lib/+mp/nme_branch_ac.m +++ b/lib/+mp/nme_branch_ac.m @@ -1,8 +1,10 @@ classdef (Abstract) nme_branch_ac < mp.nme_branch% & mp.form_ac % mp.nme_branch_ac - Network model element abstract base class for branch for AC formulations. +% +% Implements building of the admittance parameter :math:`\YY` for branches. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. @@ -14,7 +16,8 @@ methods function obj = build_params(obj, nm, dm) - % + % Builds the admittance parameter :math:`\YY` for branches. + build_params@mp.nme_branch(obj, nm, dm); %% call parent dme = obj.data_model_element(dm); diff --git a/lib/+mp/nme_branch_acc.m b/lib/+mp/nme_branch_acc.m index 774bb841..aedd1859 100644 --- a/lib/+mp/nme_branch_acc.m +++ b/lib/+mp/nme_branch_acc.m @@ -1,8 +1,11 @@ classdef nme_branch_acc < mp.nme_branch_ac & mp.form_acc % mp.nme_branch_acc - Network model element for branch for AC cartesian voltage formulations. +% +% Implements functions for the voltage angle difference limits and their +% derivatives and inherits from mp.form_acc. % MATPOWER -% Copyright (c) 2018-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2018-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % and Baljinnyam Sereeter, Delft University of Technology % diff --git a/lib/+mp/nme_branch_acp.m b/lib/+mp/nme_branch_acp.m index 316771e8..92c471a1 100644 --- a/lib/+mp/nme_branch_acp.m +++ b/lib/+mp/nme_branch_acp.m @@ -1,8 +1,10 @@ classdef nme_branch_acp < mp.nme_branch_ac & mp.form_acp % mp.nme_branch_acp - Network model element for branch for AC polar voltage formulations. +% +% Inherits from mp.form_acp. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_branch_dc.m b/lib/+mp/nme_branch_dc.m index 56c27a9d..25638ebd 100644 --- a/lib/+mp/nme_branch_dc.m +++ b/lib/+mp/nme_branch_dc.m @@ -1,8 +1,11 @@ classdef nme_branch_dc < mp.nme_branch & mp.form_dc % mp.nme_branch_dc - Network model element for branch for DC formulations. +% +% Implements building of the branch parameters :math:`\BB` and +% :math:`\pv`, and inherits from :class:`mp.form_dc`. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_bus.m b/lib/+mp/nme_bus.m index 53af6477..93d2e7ec 100644 --- a/lib/+mp/nme_bus.m +++ b/lib/+mp/nme_bus.m @@ -1,8 +1,12 @@ classdef (Abstract) nme_bus < mp.nm_element % mp.nme_bus - Network model element abstract base class for bus. +% +% Implements the network model element for bus elements, with 1 node per bus. +% +% Implements node type methods. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_bus3p.m b/lib/+mp/nme_bus3p.m index be40b3d7..0cb3b94f 100644 --- a/lib/+mp/nme_bus3p.m +++ b/lib/+mp/nme_bus3p.m @@ -1,8 +1,13 @@ classdef (Abstract) nme_bus3p < mp.nm_element % mp.nme_bus3p - Network model element abstract base class for 3-phase bus. +% +% Implements the network model element for 3-phase bus elements, with 3 nodes +% per 3-phase bus. +% +% Implements node_types() method. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_bus3p_acc.m b/lib/+mp/nme_bus3p_acc.m index 9c7d779e..69068a8d 100644 --- a/lib/+mp/nme_bus3p_acc.m +++ b/lib/+mp/nme_bus3p_acc.m @@ -1,8 +1,11 @@ classdef nme_bus3p_acc < mp.nme_bus3p & mp.form_acc % mp.nme_bus3p_acc - Network model element for 3-phase bus, AC cartesian voltage formulation. +% +% Adds voltage variables ``Vr3`` and ``Vi3`` to the network model and inherits +% from mp.form_acc. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_bus3p_acp.m b/lib/+mp/nme_bus3p_acp.m index 29f3244e..15318050 100644 --- a/lib/+mp/nme_bus3p_acp.m +++ b/lib/+mp/nme_bus3p_acp.m @@ -1,8 +1,11 @@ classdef nme_bus3p_acp < mp.nme_bus3p & mp.form_acp % mp.nme_bus3p_acp - Network model element for 3-phase bus, AC polar voltage formulation. +% +% Adds voltage variables ``Va3`` and ``Vm3`` to the network model and inherits +% from mp.form_acp. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_bus_acc.m b/lib/+mp/nme_bus_acc.m index 6ee35edc..3a9f3bb6 100644 --- a/lib/+mp/nme_bus_acc.m +++ b/lib/+mp/nme_bus_acc.m @@ -1,8 +1,11 @@ classdef nme_bus_acc < mp.nme_bus & mp.form_acc % mp.nme_bus_acc - Network model element for bus for AC cartesian voltage formulations. +% +% Adds voltage variables ``Vr`` and ``Vi`` to the network model and inherits +% from mp.form_acc. % MATPOWER -% Copyright (c) 2018-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2018-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % and Baljinnyam Sereeter, Delft University of Technology % diff --git a/lib/+mp/nme_bus_acp.m b/lib/+mp/nme_bus_acp.m index 82ba9657..7633b7ea 100644 --- a/lib/+mp/nme_bus_acp.m +++ b/lib/+mp/nme_bus_acp.m @@ -1,8 +1,11 @@ classdef nme_bus_acp < mp.nme_bus & mp.form_acp % mp.nme_bus_acp - Network model element for bus for AC cartesian polar formulations. +% +% Adds voltage variables ``Va`` and ``Vm`` to the network model and inherits +% from mp.form_acp. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_bus_dc.m b/lib/+mp/nme_bus_dc.m index 1ec16678..f31e4f11 100644 --- a/lib/+mp/nme_bus_dc.m +++ b/lib/+mp/nme_bus_dc.m @@ -1,8 +1,11 @@ classdef nme_bus_dc < mp.nme_bus & mp.form_dc % mp.nme_bus_dc - Network model element for bus for DC formulations. +% +% Adds voltage variable ``Va`` to the network model and inherits from +% mp.form_dc. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_buslink.m b/lib/+mp/nme_buslink.m index 0beb6bf3..ca7949c0 100644 --- a/lib/+mp/nme_buslink.m +++ b/lib/+mp/nme_buslink.m @@ -1,8 +1,14 @@ classdef (Abstract) nme_buslink < mp.nm_element %& mp.form_ac % mp.nme_buslink - Network model element abstract base class for 1-to-3-phase buslink. +% +% Implements the network model element for 1-to-3-phase buslink elements, +% with 4 ports and 3 non-voltage states per buslink. +% +% Adds non-voltage state variables ``Plink`` and ``Qlink`` to the network +% model, builds the parameter :math:`\NN`, and constructs voltage constraints. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_buslink_acc.m b/lib/+mp/nme_buslink_acc.m index 4d890551..45113aa5 100644 --- a/lib/+mp/nme_buslink_acc.m +++ b/lib/+mp/nme_buslink_acc.m @@ -1,8 +1,10 @@ classdef nme_buslink_acc < mp.nme_buslink & mp.form_acc % mp.nme_buslink_acc - Network model element for 1-to-3-phase buslink, AC cartesian voltage formulation. +% +% Inherits from mp.form_acc. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_buslink_acp.m b/lib/+mp/nme_buslink_acp.m index f15229a6..ac61f651 100644 --- a/lib/+mp/nme_buslink_acp.m +++ b/lib/+mp/nme_buslink_acp.m @@ -1,8 +1,10 @@ classdef nme_buslink_acp < mp.nme_buslink & mp.form_acp % mp.nme_buslink_acp - Network model element for 1-to-3-phase buslink, AC polar voltage formulation. +% +% Inherits from mp.form_acp. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_gen.m b/lib/+mp/nme_gen.m index 2978bce3..c8223f5f 100644 --- a/lib/+mp/nme_gen.m +++ b/lib/+mp/nme_gen.m @@ -1,8 +1,11 @@ classdef (Abstract) nme_gen < mp.nm_element % mp.nme_gen - Network model element abstract base class for generator. +% +% Implements the network model element for generator elements, with 1 port +% and 1 non-voltage state per generator. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_gen3p.m b/lib/+mp/nme_gen3p.m index 918c71bb..220174b4 100644 --- a/lib/+mp/nme_gen3p.m +++ b/lib/+mp/nme_gen3p.m @@ -1,8 +1,14 @@ classdef (Abstract) nme_gen3p < mp.nm_element % & mp.form_ac % mp.nme_gen3p - Network model element abstract base class for 3-phase generator. +% +% Implements the network model element for 3-phase generator elements, with +% 3 ports and 3 non-voltage states per 3-phase generator. +% +% Adds non-voltage state variables ``Pg3`` and ``Qg3`` to the network model +% and builds the parameter :math:`\NN`. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_gen3p_acc.m b/lib/+mp/nme_gen3p_acc.m index eedb1733..baeebce0 100644 --- a/lib/+mp/nme_gen3p_acc.m +++ b/lib/+mp/nme_gen3p_acc.m @@ -1,8 +1,10 @@ classdef nme_gen3p_acc < mp.nme_gen3p & mp.form_acc % mp.nme_gen3p_acc - Network model element for 3-phase generator, AC cartesian voltage formulation. +% +% Inherits from mp.form_acc. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_gen3p_acp.m b/lib/+mp/nme_gen3p_acp.m index b9a0f5c3..dc4f4e41 100644 --- a/lib/+mp/nme_gen3p_acp.m +++ b/lib/+mp/nme_gen3p_acp.m @@ -1,8 +1,10 @@ classdef nme_gen3p_acp < mp.nme_gen3p & mp.form_acp % mp.nme_gen3p_acp - Network model element for 3-phase generator, AC polar voltage formulation. +% +% Inherits from mp.form_acp. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_gen_ac.m b/lib/+mp/nme_gen_ac.m index faea0e59..eeb3202a 100644 --- a/lib/+mp/nme_gen_ac.m +++ b/lib/+mp/nme_gen_ac.m @@ -1,8 +1,11 @@ classdef (Abstract) nme_gen_ac < mp.nme_gen% & mp.form_ac % mp.nme_gen_ac - Network model element abstract base class for generator for AC formulations. +% +% Adds non-voltage state variables ``Pg`` and ``Qg`` to the network model +% and builds the parameter :math:`\NN`. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_gen_acc.m b/lib/+mp/nme_gen_acc.m index a0844a2e..7b600166 100644 --- a/lib/+mp/nme_gen_acc.m +++ b/lib/+mp/nme_gen_acc.m @@ -1,8 +1,10 @@ classdef nme_gen_acc < mp.nme_gen_ac & mp.form_acc % mp.nme_gen_acc - Network model element for generator for AC cartesian voltage formulations. +% +% Inherits from mp.form_acc. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_gen_acp.m b/lib/+mp/nme_gen_acp.m index 3096e959..9a27f2f2 100644 --- a/lib/+mp/nme_gen_acp.m +++ b/lib/+mp/nme_gen_acp.m @@ -1,8 +1,10 @@ classdef nme_gen_acp < mp.nme_gen_ac & mp.form_acp % mp.nme_gen_acp - Network model element for generator for AC polar voltage formulations. +% +% Inherits from mp.form_acp. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_gen_dc.m b/lib/+mp/nme_gen_dc.m index 73bd7cb8..639a3071 100644 --- a/lib/+mp/nme_gen_dc.m +++ b/lib/+mp/nme_gen_dc.m @@ -1,8 +1,11 @@ classdef nme_gen_dc < mp.nme_gen & mp.form_dc % mp.nme_gen_dc - Network model element for generator for DC formulations. +% +% Adds non-voltage state variable ``Pg`` to the network model, builds the +% parameter :math:`\KK`, and inherits from mp.form_dc. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_line3p.m b/lib/+mp/nme_line3p.m index f8e25d63..1e73c0ff 100644 --- a/lib/+mp/nme_line3p.m +++ b/lib/+mp/nme_line3p.m @@ -1,8 +1,14 @@ classdef nme_line3p < mp.nm_element & mp.form_acp % mp.nme_line3p - Network model element for 3-phase line. +% +% Implements the network model element for 3-phase line elements, with +% 6 ports per 3-phase line. +% +% Implements building of the admittance parameter :math:`\YY` for 3-phase +% lines and inherits from mp.form_acp. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_load.m b/lib/+mp/nme_load.m index ebd808a0..bb304236 100644 --- a/lib/+mp/nme_load.m +++ b/lib/+mp/nme_load.m @@ -1,8 +1,10 @@ classdef (Abstract) nme_load < mp.nm_element % mp.nme_load - Network model element abstract base class for load. +% +% Implements the network model element for load elements, with 1 port per load. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_load3p.m b/lib/+mp/nme_load3p.m index cbdeaf59..1e6fcd3d 100644 --- a/lib/+mp/nme_load3p.m +++ b/lib/+mp/nme_load3p.m @@ -1,8 +1,13 @@ classdef nme_load3p < mp.nm_element & mp.form_acp % mp.nme_load3p - Network model element for 3-phase load. +% +% Implements the network model element for 3-phase load elements, with +% 3 ports per 3-phase load. +% +% Builds the parameter :math:`\sv` and inherits from mp.form_acp. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_load_ac.m b/lib/+mp/nme_load_ac.m index 2e270599..ed2d9e17 100644 --- a/lib/+mp/nme_load_ac.m +++ b/lib/+mp/nme_load_ac.m @@ -1,8 +1,11 @@ classdef (Abstract) nme_load_ac < mp.nme_load% & mp.form_ac % mp.nme_load_ac - Network model element abstract base class for load for AC formulations. +% +% Builds the parameters :math:`\sv` and :math:`\YY` and nonlinear functions +% :math:`\Snln(\X)` and :math:`\Inln(\X)`. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_load_acc.m b/lib/+mp/nme_load_acc.m index bbae6ed2..e1d24f40 100644 --- a/lib/+mp/nme_load_acc.m +++ b/lib/+mp/nme_load_acc.m @@ -1,8 +1,10 @@ classdef nme_load_acc < mp.nme_load_ac & mp.form_acc % mp.nme_load_acc - Network model element for load for AC cartesian voltage formulations. +% +% Inherits from mp.form_acc. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_load_acp.m b/lib/+mp/nme_load_acp.m index fcf62915..3e09f64a 100644 --- a/lib/+mp/nme_load_acp.m +++ b/lib/+mp/nme_load_acp.m @@ -1,8 +1,10 @@ classdef nme_load_acp < mp.nme_load_ac & mp.form_acp % mp.nme_load_acp - Network model element for load for AC polar voltage formulations. +% +% Inherits from mp.form_acp. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_load_dc.m b/lib/+mp/nme_load_dc.m index 25c5e218..704a769a 100644 --- a/lib/+mp/nme_load_dc.m +++ b/lib/+mp/nme_load_dc.m @@ -1,8 +1,10 @@ classdef nme_load_dc < mp.nme_load & mp.form_dc % mp.nme_load_dc - Network model element for load for DC formulations. +% +% Builds the parameter :math:`\pv` and inherits from mp.form_dc. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_shunt.m b/lib/+mp/nme_shunt.m index a9af9995..b290d712 100644 --- a/lib/+mp/nme_shunt.m +++ b/lib/+mp/nme_shunt.m @@ -1,8 +1,11 @@ classdef (Abstract) nme_shunt < mp.nm_element % mp.nme_shunt - Network model element abstract base class for shunt. +% +% Implements the network model element for shunt elements, with 1 port per +% shunt. % MATPOWER -% Copyright (c) 2019-2022, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_shunt_ac.m b/lib/+mp/nme_shunt_ac.m index 4056a2ae..aa54daa6 100644 --- a/lib/+mp/nme_shunt_ac.m +++ b/lib/+mp/nme_shunt_ac.m @@ -1,8 +1,10 @@ classdef (Abstract) nme_shunt_ac < mp.nme_shunt% & mp.form_ac % mp.nme_shunt_ac - Network model element abstract base class for shunt for AC formulations. +% +% Builds the parameter :math:`\YY`. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_shunt_acc.m b/lib/+mp/nme_shunt_acc.m index 7720484d..68adce60 100644 --- a/lib/+mp/nme_shunt_acc.m +++ b/lib/+mp/nme_shunt_acc.m @@ -1,8 +1,10 @@ classdef nme_shunt_acc < mp.nme_shunt_ac & mp.form_acc % mp.nme_shunt_acc - Network model element for shunt for AC cartesian voltage formulations. +% +% Inherits from mp.form_acc. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_shunt_acp.m b/lib/+mp/nme_shunt_acp.m index 5b85f855..179fca7b 100644 --- a/lib/+mp/nme_shunt_acp.m +++ b/lib/+mp/nme_shunt_acp.m @@ -1,8 +1,10 @@ classdef nme_shunt_acp < mp.nme_shunt_ac & mp.form_acp % mp.nme_shunt_acp - Network model element for shunt for AC polar voltage formulations. +% +% Inherits from mp.form_acp. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_shunt_dc.m b/lib/+mp/nme_shunt_dc.m index 0d75ee70..0ef2b6b7 100644 --- a/lib/+mp/nme_shunt_dc.m +++ b/lib/+mp/nme_shunt_dc.m @@ -1,8 +1,10 @@ classdef nme_shunt_dc < mp.nme_shunt & mp.form_dc % mp.nme_shunt_dc - Network model element for shunt for DC formulations. +% +% Builds the parameter :math:`\pv` and inherits from mp.form_dc. % MATPOWER -% Copyright (c) 2019-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/nme_xfmr3p.m b/lib/+mp/nme_xfmr3p.m index fa9a6a12..37b480be 100644 --- a/lib/+mp/nme_xfmr3p.m +++ b/lib/+mp/nme_xfmr3p.m @@ -1,8 +1,14 @@ classdef nme_xfmr3p < mp.nm_element & mp.form_acp % mp.nme_xfmr3p - Network model element for 3-phase transformer. +% +% Implements the network model element for 3-phase transformer elements, +% with 6 ports per transformer. +% +% Implements building of the admittance parameter :math:`\YY` for 3-phase +% transformers and inherits from mp.form_acp. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/task.m b/lib/+mp/task.m index d6932c91..0efecb2d 100644 --- a/lib/+mp/task.m +++ b/lib/+mp/task.m @@ -9,6 +9,10 @@ % optimal power flow, etc.). In particular, it coordinates all % interactions between the 3 (data, network, mathematical) model layers. % +% The model objects, and indirectly their elements, as well as the solution +% success flag and messages from the mathematical model solver, are available +% in the properties of the task object. +% % mp.task Properties: % * tag - task tag - e.g. 'PF', 'CPF', 'OPF' % * name - task name - e.g. 'Power Flow', etc. @@ -63,7 +67,7 @@ % See also mp.data_model, mp.net_model, mp.math_model, mp.dm_converter. % MATPOWER -% Copyright (c) 2020-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. @@ -94,8 +98,8 @@ % Execute the task. % :: % - % obj.run(d, mpopt) - % obj.run(d, mpopt, mpx) + % task.run(d, mpopt) + % task.run(d, mpopt, mpx) % % Inputs: % d : data source specification, currently assumed to be a @@ -104,7 +108,7 @@ % mpx (cell array of mp.extension) : |MATPOWER| Extensions % % Output: - % obj (mp.task) : task object containing the solved run + % task (mp.task) : task object containing the solved run % including the data, network, and mathematical model % objects. % @@ -220,7 +224,7 @@ % Controls iterations over mathematical models. % :: % - % [mm, nm, dm] = obj.next_mm(mm, nm, dm, mpoopt, mpx) + % [mm, nm, dm] = task.next_mm(mm, nm, dm, mpoopt, mpx) % % Inputs: % mm (mp.math_model) : mathmatical model object @@ -248,7 +252,7 @@ % Controls iterations over network models. % :: % - % [nm, dm] = obj.next_nm(mm, nm, dm, mpoopt, mpx) + % [nm, dm] = task.next_nm(mm, nm, dm, mpoopt, mpx) % % Inputs: % mm (mp.math_model) : mathmatical model object @@ -275,7 +279,7 @@ % Controls iterations over data models. % :: % - % dm = obj.next_dm(mm, nm, dm, mpoopt, mpx) + % dm = task.next_dm(mm, nm, dm, mpoopt, mpx) % % Inputs: % mm (mp.math_model) : mathmatical model object @@ -301,7 +305,7 @@ % Called at beginning of run() method. % :: % - % [d, mpopt] = obj.run_pre(d, mpopt) + % [d, mpopt] = task.run_pre(d, mpopt) % % Inputs: % d : data source specification, currently assumed to be a @@ -320,7 +324,7 @@ % Called at end of run() method. % :: % - % obj.run_post(mm, nm, dm, mpopt) + % task.run_post(mm, nm, dm, mpopt) % % Inputs: % mm (mp.math_model) : mathmatical model object @@ -329,7 +333,7 @@ % mpopt (struct) : |MATPOWER| options struct % % Output: - % obj (mp.task) : task object + % task (mp.task) : task object % % Subclasses can override this method to do any final % processing after the run is complete. @@ -339,8 +343,8 @@ function print_soln(obj, mpopt, fname) % Display the pretty-printed results. % :: % - % obj.print_soln(mpopt) - % obj.print_soln(mpopt, fname) + % task.print_soln(mpopt) + % task.print_soln(mpopt, fname) % % Inputs: % mpopt (struct) : |MATPOWER| options struct @@ -382,7 +386,7 @@ function print_soln_header(obj, mpopt, fd) % Display solution header information. % :: % - % obj.print_soln_header(mpopt, fd) + % task.print_soln_header(mpopt, fd) % % Inputs: % mpopt (struct) : |MATPOWER| options struct @@ -411,7 +415,7 @@ function save_soln(obj, fname) % Save the solved case to a file. % :: % - % obj.save_soln(fname) + % task.save_soln(fname) % % Input: % fname (char array) : file name for saving solved case @@ -430,7 +434,7 @@ function save_soln(obj, fname) % Get data model converter constructor. % :: % - % dmc_class = obj.dm_converter_class(d, mpopt, mpx) + % dmc_class = task.dm_converter_class(d, mpopt, mpx) % % Inputs: % d : data source specification, currently assumed to be a @@ -477,7 +481,7 @@ function save_soln(obj, fname) % Get default data model converter constructor. % :: % - % dmc_class = obj.dm_converter_class_mpc2_default() + % dmc_class = task.dm_converter_class_mpc2_default() % % Output: % dmc_class (function handel) : handle to default constructor to @@ -494,7 +498,7 @@ function save_soln(obj, fname) % Create data model converter object. % :: % - % dmc = obj.dm_converter_create(d, mpopt, mpx) + % dmc = task.dm_converter_create(d, mpopt, mpx) % % Inputs: % d : data source specification, currently assumed to be a @@ -534,7 +538,7 @@ function save_soln(obj, fname) % Create and build data model converter object. % :: % - % dmc = obj.dm_converter_build(d, mpopt, mpx) + % dmc = task.dm_converter_build(d, mpopt, mpx) % % Inputs: % d : data source specification, currently assumed to be a @@ -576,7 +580,7 @@ function save_soln(obj, fname) % Get data model constructor. % :: % - % dm_class = obj.data_model_class(d, mpopt, mpx) + % dm_class = task.data_model_class(d, mpopt, mpx) % % Inputs: % d : data source specification, currently assumed to be a @@ -611,7 +615,7 @@ function save_soln(obj, fname) % Get default data model constructor. % :: % - % dm_class = obj.data_model_class_default() + % dm_class = task.data_model_class_default() % % Output: % dm_class (function handel) : handle to default constructor to @@ -627,7 +631,7 @@ function save_soln(obj, fname) % Create data model object. % :: % - % dm = obj.data_model_create(d, mpopt, mpx) + % dm = task.data_model_create(d, mpopt, mpx) % % Inputs: % d : data source specification, currently assumed to be a @@ -664,7 +668,7 @@ function save_soln(obj, fname) % Create and build data model object. % :: % - % dm = obj.data_model_create(d, dmc, mpopt, mpx) + % dm = task.data_model_create(d, dmc, mpopt, mpx) % % Inputs: % d : data source specification, currently assumed to be a @@ -694,7 +698,7 @@ function save_soln(obj, fname) % Called at beginning of data_model_build(). % :: % - % [dm, d] = obj.data_model_build_pre(dm, d, dmc, mpopt) + % [dm, d] = task.data_model_build_pre(dm, d, dmc, mpopt) % % Inputs: % dm (mp.data_model) : data model object @@ -716,7 +720,7 @@ function save_soln(obj, fname) % Called at end of data_model_build(). % :: % - % dm = obj.data_model_build_post(dm, dmc, mpopt) + % dm = task.data_model_build_post(dm, dmc, mpopt) % % Inputs: % dm (mp.data_model) : data model object @@ -736,7 +740,7 @@ function save_soln(obj, fname) % Get network model constructor. % :: % - % nm_class = obj.network_model_class(dm, mpopt, mpx) + % nm_class = task.network_model_class(dm, mpopt, mpx) % % Inputs: % dm (mp.data_model) : data model object @@ -770,7 +774,7 @@ function save_soln(obj, fname) % Get default network model constructor. % :: % - % nm_class = obj.network_model_class_default(dm, mpopt) + % nm_class = task.network_model_class_default(dm, mpopt) % % Inputs: % dm (mp.data_model) : data model object @@ -793,7 +797,7 @@ function save_soln(obj, fname) % Create network model object. % :: % - % nm = obj.network_model_create(dm, mpopt, mpx) + % nm = task.network_model_create(dm, mpopt, mpx) % % Inputs: % dm (mp.data_model) : data model object @@ -830,7 +834,7 @@ function save_soln(obj, fname) % Create and build network model object. % :: % - % nm = obj.network_model_build(dm, mpopt, mpx) + % nm = task.network_model_build(dm, mpopt, mpx) % % Inputs: % dm (mp.data_model) : data model object @@ -854,7 +858,7 @@ function save_soln(obj, fname) % Called at beginning of network_model_build(). % :: % - % nm = obj.network_model_build_pre(nm, dm, mpopt) + % nm = task.network_model_build_pre(nm, dm, mpopt) % % Inputs: % nm (mp.net_model) : network model object @@ -873,7 +877,7 @@ function save_soln(obj, fname) % Called at end of network_model_build(). % :: % - % nm = obj.network_model_build_post(nm, dm, mpopt) + % nm = task.network_model_build_post(nm, dm, mpopt) % % Inputs: % nm (mp.net_model) : network model object @@ -892,7 +896,7 @@ function save_soln(obj, fname) % Update network model state from math model solution. % :: % - % nm = obj.network_model_x_soln(mm, nm) + % nm = task.network_model_x_soln(mm, nm) % % Inputs: % mm (mp.math_model) : mathmatical model object @@ -910,7 +914,7 @@ function save_soln(obj, fname) % Update network model state, solution values from math model solution. % :: % - % nm = obj.network_model_update(mm, nm) + % nm = task.network_model_update(mm, nm) % % Inputs: % mm (mp.math_model) : mathmatical model object @@ -933,7 +937,7 @@ function save_soln(obj, fname) % Get mathematical model constructor. % :: % - % mm_class = obj.math_model_class(nm, dm, mpopt, mpx) + % mm_class = task.math_model_class(nm, dm, mpopt, mpx) % % Inputs: % nm (mp.net_model) : network model object @@ -968,7 +972,7 @@ function save_soln(obj, fname) % Get default mathematical model constructor. % :: % - % mm_class = obj.math_model_class_default(nm, dm, mpopt) + % mm_class = task.math_model_class_default(nm, dm, mpopt) % % Inputs: % nm (mp.net_model) : network model object @@ -992,7 +996,7 @@ function save_soln(obj, fname) % Create mathematical model object. % :: % - % mm = obj.math_model_create(nm, dm, mpopt, mpx) + % mm = task.math_model_create(nm, dm, mpopt, mpx) % % Inputs: % nm (mp.net_model) : network model object @@ -1031,7 +1035,7 @@ function save_soln(obj, fname) % Create and build mathematical model object. % :: % - % mm = obj.math_model_build(nm, dm, mpopt, mpx) + % mm = task.math_model_build(nm, dm, mpopt, mpx) % % Inputs: % nm (mp.net_model) : network model object @@ -1065,7 +1069,7 @@ function save_soln(obj, fname) % Get the options struct to pass to ``mm.solve()``. % :: % - % opt = obj.math_model_opt(mm, nm, dm, mpopt) + % opt = task.math_model_opt(mm, nm, dm, mpopt) % % Inputs: % mm (mp.math_model) : mathmatical model object diff --git a/lib/+mp/task_cpf.m b/lib/+mp/task_cpf.m index 39c111cb..e59cfc48 100644 --- a/lib/+mp/task_cpf.m +++ b/lib/+mp/task_cpf.m @@ -3,6 +3,10 @@ % % Provides task implementation for the continuation power flow problem. % +% This includes the iterative solving of the mathematical model (using +% warm restarts) after updating the problem data, e.g. when enforcing +% certain limits. +% % mp.task_cpf Properties: % * warmstart - warm start data % @@ -22,7 +26,7 @@ % See also mp.task, mp.task_pf. % MATPOWER -% Copyright (c) 2020-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/task_cpf_legacy.m b/lib/+mp/task_cpf_legacy.m index ac67a632..07113271 100644 --- a/lib/+mp/task_cpf_legacy.m +++ b/lib/+mp/task_cpf_legacy.m @@ -2,7 +2,8 @@ % mp.task_cpf - |MATPOWER| task for legacy continuation power flow (CPF). % % Adds functionality needed by the *legacy* |/MATPOWER/| *framework* to the -% task implementation for the continuation power flow problem. +% task implementation for the continuation power flow problem. This consists +% of pre-processing some input data and exporting and packaging result data. % % mp.task_pf Methods: % * run_pre - pre-process inputs that are for legacy framework only @@ -25,7 +26,7 @@ % Pre-process inputs that are for *legacy framework* only. % :: % - % [d, mpopt] = obj.run_pre(d, mpopt) + % [d, mpopt] = task.run_pre(d, mpopt) % % Inputs: % d : data source specification, currently assumed to be a @@ -48,7 +49,7 @@ % Export results back to data model source. % :: % - % obj.run_post(mm, nm, dm, mpopt) + % task.run_post(mm, nm, dm, mpopt) % % Inputs: % mm (mp.math_model) : mathmatical model object @@ -57,7 +58,7 @@ % mpopt (struct) : |MATPOWER| options struct % % Output: - % obj (mp.task) : task object + % task (mp.task) : task object % % Calls mp.dm_converter.export and saves the result % in the data model ``source`` property. @@ -72,7 +73,7 @@ % Post-process *legacy framework* outputs. % :: % - % [results, success] = obj.legacy_post_run(mpopt) + % [results, success] = task.legacy_post_run(mpopt) % % Input: % mpopt (struct) : |MATPOWER| options struct diff --git a/lib/+mp/task_opf.m b/lib/+mp/task_opf.m index 4bbd2054..405d7dd6 100644 --- a/lib/+mp/task_opf.m +++ b/lib/+mp/task_opf.m @@ -19,7 +19,7 @@ % See also mp.task. % MATPOWER -% Copyright (c) 2020-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/task_opf_legacy.m b/lib/+mp/task_opf_legacy.m index c7ea5fdd..1c8e5da9 100644 --- a/lib/+mp/task_opf_legacy.m +++ b/lib/+mp/task_opf_legacy.m @@ -2,7 +2,9 @@ % mp.task_opf - |MATPOWER| task for legacy optimal power flow (OPF). % % Adds functionality needed by the *legacy* |/MATPOWER/| *framework* to the -% task implementation for the optimal power flow problem. +% task implementation for the optimal power flow problem. This consists +% of pre-processing some input data and exporting and packaging result data, +% as well as using some legacy specific model sub-classes. % % mp.task_pf Methods: % * run_pre - pre-process inputs that are for legacy framework only @@ -28,7 +30,7 @@ % Pre-process inputs that are for *legacy framework* only. % :: % - % [d, mpopt] = obj.run_pre(d, mpopt) + % [d, mpopt] = task.run_pre(d, mpopt) % % Inputs: % d : data source specification, currently assumed to be a @@ -50,7 +52,7 @@ % Export results back to data model source. % :: % - % obj.run_post(mm, nm, dm, mpopt) + % task.run_post(mm, nm, dm, mpopt) % % Inputs: % mm (mp.math_model) : mathmatical model object @@ -59,7 +61,7 @@ % mpopt (struct) : |MATPOWER| options struct % % Output: - % obj (mp.task) : task object + % task (mp.task) : task object % % Calls mp.dm_converter.export and saves the result % in the data model ``source`` property. @@ -74,7 +76,7 @@ % Set to mp.dm_converter_mpc2_legacy. % :: % - % dmc_class = obj.dm_converter_class_mpc2_default() + % dmc_class = task.dm_converter_class_mpc2_default() dmc_class = @mp.dm_converter_mpc2_legacy; end @@ -126,7 +128,7 @@ % Post-process *legacy framework* outputs. % :: % - % [results, success, raw] = obj.legacy_post_run(mpopt) + % [results, success, raw] = task.legacy_post_run(mpopt) % % Input: % mpopt (struct) : |MATPOWER| options struct diff --git a/lib/+mp/task_pf.m b/lib/+mp/task_pf.m index 0663b246..c8804548 100644 --- a/lib/+mp/task_pf.m +++ b/lib/+mp/task_pf.m @@ -3,6 +3,9 @@ % % Provides task implementation for the power flow problem. % +% This includes the handling of iterative runs to enforce generator +% reactive power limits, if requested. +% % mp.task_pf Properties: % * tag - task tag 'PF' % * name - task name 'Power Flow' @@ -26,7 +29,7 @@ % See also mp.task. % MATPOWER -% Copyright (c) 2020-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/+mp/task_pf_legacy.m b/lib/+mp/task_pf_legacy.m index 3789e12f..e9eb496b 100644 --- a/lib/+mp/task_pf_legacy.m +++ b/lib/+mp/task_pf_legacy.m @@ -2,7 +2,8 @@ % mp.task_pf_legacy - |MATPOWER| task for legacy power flow (PF). % % Adds functionality needed by the *legacy* |/MATPOWER/| *framework* to the -% task implementation for the power flow problem. +% task implementation for the power flow problem. This consists of +% pre-processing some input data and exporting and packaging result data. % % mp.task_pf Methods: % * run_pre - pre-process inputs that are for legacy framework only @@ -25,7 +26,7 @@ % Pre-process inputs that are for *legacy framework* only. % :: % - % [d, mpopt] = obj.run_pre(d, mpopt) + % [d, mpopt] = task.run_pre(d, mpopt) % % Inputs: % d : data source specification, currently assumed to be a @@ -47,7 +48,7 @@ % Export results back to data model source. % :: % - % obj.run_post(mm, nm, dm, mpopt) + % task.run_post(mm, nm, dm, mpopt) % % Inputs: % mm (mp.math_model) : mathmatical model object @@ -56,7 +57,7 @@ % mpopt (struct) : |MATPOWER| options struct % % Output: - % obj (mp.task) : task object + % task (mp.task) : task object % % Calls mp.dm_converter.export and saves the result % in the data model ``source`` property. @@ -71,7 +72,7 @@ % Post-process *legacy framework* outputs. % :: % - % [results, success] = obj.legacy_post_run(mpopt) + % [results, success] = task.legacy_post_run(mpopt) % % Input: % mpopt (struct) : |MATPOWER| options struct diff --git a/lib/+mp/task_shared_legacy.m b/lib/+mp/task_shared_legacy.m index d9f77d70..14b6635f 100644 --- a/lib/+mp/task_shared_legacy.m +++ b/lib/+mp/task_shared_legacy.m @@ -2,7 +2,8 @@ % mp.task_shared_legacy - Shared legacy task functionality. % % Provides legacy task functionality shared across different tasks -% (e.g. PF, CPF, OPF). +% (e.g. PF, CPF, OPF), specifically, the pre-processing of input data +% for the experimental system-wide ZIP load data. % % mp.task_pf Methods: % * run_pre_legacy - handle experimental system-wide ZIP load inputs @@ -22,7 +23,7 @@ % Handle experimental system-wide ZIP load inputs. % :: % - % [d, mpopt] = obj.run_pre_legacy(d, mpopt) + % [d, mpopt] = task.run_pre_legacy(d, mpopt) % % Inputs: % d : data source specification, currently assumed to be a @@ -33,7 +34,7 @@ % d : updated value of corresponding input % mpopt (struct) : updated value of corresponding input % - % Moves the legacy experimental system-wide load data from + % Moves the legacy experimental system-wide ZIP load data from % ``mpopt.exp.sys_wide_zip_loads`` to ``d.sys_wide_zip_loads`` % to make it available to the data model converter % (mp.dmce_load_mpc2). diff --git a/lib/mp_table_class.m b/lib/mp_table_class.m index edd87ab8..dcbb029c 100644 --- a/lib/mp_table_class.m +++ b/lib/mp_table_class.m @@ -2,18 +2,19 @@ % mp_table_class - Returns handle to constructor for :class:`table` or mp_table. % % Returns a handle to :class:`table` constructor, if it is available, -% otherwise to mp_table constructor. -% +% otherwise to mp_table constructor. Useful for table-based code that is +% compatible with both MATLAB (using native tables) and Octave (using mp_table +% or the :class:`table` implementation from Tablicious, if available). % :: % -% % Works in MATLAB or Octave, which does not support table(). +% % Works in MATLAB or Octave, which does not (yet) natively support table(). % table_class = mp_table_class(); % T = table_class(var1, var2, ...); % % See also table, mp_table. % MATPOWER -% Copyright (c) 2022-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/run_cpf.m b/lib/run_cpf.m index 93f7e58c..38a1c44d 100644 --- a/lib/run_cpf.m +++ b/lib/run_cpf.m @@ -6,12 +6,19 @@ % run_cpf(d, mpopt, ...) % task = run_cpf(...) % +% This is the main function used to run continuation power flow (CPF) +% problems via the **flexible** |*MATPOWER*| **framework**. +% +% This function is a simple wrapper around run_mp, calling it +% with the first argument set to ``@mp.task_cpf``. +% % Inputs: -% d : data source specification, currently assumed to be a |MATPOWER| -% case name or case struct (``mpc``) +% d : data source specification, currently assumed to be a cell array +% of two |MATPOWER| case names or case structs (``mpc``), the first +% being the base case, the second the target case % mpopt (struct) : |MATPOWER| options struct % -% Additional optional inputs can be provided as , pairs, +% Additional optional inputs can be provided as *, * pairs, % with the following options: % % - ``'print_fname'`` - file name for saving pretty-printed output @@ -23,13 +30,18 @@ % task (mp.task_cpf) : task object containing the solved run including the % data, network, and mathematical model objects. % -% This function is a simple wrapper around run_mp, calling it -% with the first argument set to ``@mp.task_cpf``. +% Solution results are available in the data model, and its elements, +% contained in the returned task object. For example: +% :: +% +% task = run_cpf({'case9', 'case9target'}); +% vm = task.dm.elements.bus.tab.vm % bus voltage magnitudes +% pg = task.dm.elements.gen.tab.pg % generator active dispatch % % See also run_mp, mp.task_cpf. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/run_mp.m b/lib/run_mp.m index cedfc7ec..eed68742 100644 --- a/lib/run_mp.m +++ b/lib/run_mp.m @@ -6,6 +6,13 @@ % run_mp(task_class, d, mpopt, ...) % task = run_mp(...) % +% This is **the** main function in the **flexible framework** for running +% |MATPOWER|. It creates the task object, applying any specified extensions, +% runs the task, and prints or saves the solution, if desired. +% +% It is typically called from one of the wrapper functions such as run_pf, +% run_cpf, or run_opf. +% % Inputs: % task_class (function handle) : handle to constructor of default task % class for type of task to be run, e.g. mp.task_pf for power @@ -14,7 +21,7 @@ % case name or case struct (``mpc``) % mpopt (struct) : |MATPOWER| options struct % -% Additional optional inputs can be provided as , pairs, +% Additional optional inputs can be provided as *, * pairs, % with the following options: % % - ``'print_fname'`` - file name for saving pretty-printed output @@ -26,10 +33,18 @@ % task (mp.task) : task object containing the solved run including the % data, network, and mathematical model objects. % +% Solution results are available in the data model, and its elements, +% contained in the returned task object. For example: +% :: +% +% task = run_opf('case9'); +% lam_p = task.dm.elements.bus.tab.lam_p % nodal price +% pg = task.dm.elements.gen.tab.pg % generator active dispatch +% % See also run_pf, run_cpf, run_opf, mp.task. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/run_opf.m b/lib/run_opf.m index 5c974876..cef07f9c 100644 --- a/lib/run_opf.m +++ b/lib/run_opf.m @@ -6,12 +6,18 @@ % run_opf(d, mpopt, ...) % task = run_opf(...) % +% This is the main function used to run optimal power flow (OPF) +% problems via the **flexible** |*MATPOWER*| **framework**. +% +% This function is a simple wrapper around run_mp, calling it +% with the first argument set to ``@mp.task_opf``. +% % Inputs: % d : data source specification, currently assumed to be a |MATPOWER| % case name or case struct (``mpc``) % mpopt (struct) : |MATPOWER| options struct % -% Additional optional inputs can be provided as , pairs, +% Additional optional inputs can be provided as *, * pairs, % with the following options: % % - ``'print_fname'`` - file name for saving pretty-printed output @@ -23,13 +29,18 @@ % task (mp.task_opf) : task object containing the solved run including the % data, network, and mathematical model objects. % -% This function is a simple wrapper around run_mp, calling it -% with the first argument set to ``@mp.task_opf``. +% Solution results are available in the data model, and its elements, +% contained in the returned task object. For example: +% :: +% +% task = run_opf('case9'); +% lam_p = task.dm.elements.bus.tab.lam_p % nodal price +% pg = task.dm.elements.gen.tab.pg % generator active dispatch % % See also run_mp, mp.task_opf. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/run_pf.m b/lib/run_pf.m index 0f7e6103..c4784d73 100644 --- a/lib/run_pf.m +++ b/lib/run_pf.m @@ -6,12 +6,18 @@ % run_pf(d, mpopt, ...) % task = run_pf(...) % +% This is the main function used to run power flow (PF) problems via the +% **flexible** |*MATPOWER*| **framework**. +% +% This function is a simple wrapper around run_mp, calling it +% with the first argument set to ``@mp.task_pf``. +% % Inputs: % d : data source specification, currently assumed to be a |MATPOWER| % case name or case struct (``mpc``) % mpopt (struct) : |MATPOWER| options struct % -% Additional optional inputs can be provided as , pairs, +% Additional optional inputs can be provided as *, * pairs, % with the following options: % % - ``'print_fname'`` - file name for saving pretty-printed output @@ -23,13 +29,18 @@ % task (mp.task_pf) : task object containing the solved run including the % data, network, and mathematical model objects. % -% This function is a simple wrapper around run_mp, calling it -% with the first argument set to ``@mp.task_pf``. +% Solution results are available in the data model, and its elements, +% contained in the returned task object. For example: +% :: +% +% task = run_pf('case9'); +% va = task.dm.elements.bus.tab.va % bus voltage angles +% pg = task.dm.elements.gen.tab.pg % generator active dispatch % % See also run_mp, mp.task_pf. % MATPOWER -% Copyright (c) 2021-2023, Power Systems Engineering Research Center (PSERC) +% Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) % by Ray Zimmerman, PSERC Cornell % % This file is part of MATPOWER. diff --git a/lib/t/+mp/dme_legacy_dcline.m b/lib/t/+mp/dme_legacy_dcline.m index 34b5d365..52a888f1 100644 --- a/lib/t/+mp/dme_legacy_dcline.m +++ b/lib/t/+mp/dme_legacy_dcline.m @@ -1,5 +1,34 @@ classdef dme_legacy_dcline < mp.dm_element % mp.dme_legacy_dcline - Data model element for legacy DC line. +% +% Implements the data element model for legacy DC line elements, with linear +% line losses. +% +% :math:`p_\mathrm{loss} = \param{l}_0 + \param{l}_1 p_\mathrm{fr}` +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: +% +% ================== ========= ======================================== +% Name Type Description +% ================== ========= ======================================== +% ``bus_fr`` *integer* bus ID (``uid``) of "from" bus +% ``bus_to`` *integer* bus ID (``uid``) of "to" bus +% ``loss0`` *double* :math:`\param{l}_0`, constant term of loss function (MW) +% ``loss1`` *double* :math:`\param{l}_1`, linear coefficient of loss function (MW/MW) +% ``vm_setpoint_fr`` *double* per unit "from" bus voltage magnitude setpoint +% ``vm_setpoint_to`` *double* per unit "to" bus voltage magnitude setpoint +% ``p_fr_lb`` *double* lower bound on MW flow at "from" port +% ``p_fr_ub`` *double* upper bound on MW flow at "from" port +% ``q_fr_lb`` *double* lower bound on MVAr injection into "from" bus +% ``q_fr_ub`` *double* upper bound on MVAr injection into "from" bus +% ``q_to_lb`` *double* lower bound on MVAr injection into "to" bus +% ``q_to_ub`` *double* upper bound on MVAr injection into "to" bus +% ``p_fr`` *double* MW flow at "from" end ("from" --> "to") +% ``q_fr`` *double* MVAr injection into "from" bus +% ``p_to`` *double* MW flow at "to" end ("from" --> "to") +% ``q_to`` *double* MVAr injection into "to" bus +% ================== ========= ======================================== % MATPOWER % Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/dme_legacy_dcline_opf.m b/lib/t/+mp/dme_legacy_dcline_opf.m index 67eb4dca..dc72453d 100644 --- a/lib/t/+mp/dme_legacy_dcline_opf.m +++ b/lib/t/+mp/dme_legacy_dcline_opf.m @@ -1,5 +1,32 @@ classdef dme_legacy_dcline_opf < mp.dme_legacy_dcline & mp.dme_shared_opf % mp.dme_legacy_dcline_opf - Data model element for legacy DC line for OPF. +% +% To parent class :class:`mp.dme_legacy_dcline`, adds costs, shadow prices +% on active and reactive flow limits, and pretty-printing for **lim** +% sections. +% +% Adds the following columns in the main data table, found in the +% :attr:`tab` property: +% +% ============== =============== =================================== +% Name Type Description +% ============== =============== =================================== +% ``cost_pg`` *mp.cost_table* cost of active power flow *(u/MW)* [#]_ +% ``mu_p_fr_lb`` *double* shadow price on MW flow lower bound at +% "from" end *(u/MW)* [1]_ +% ``mu_p_fr_ub`` *double* shadow price on MW flow upper bound at +% "from" end *(u/MW)* [1]_ +% ``mu_q_fr_lb`` *double* shadow price on lower bound of MVAr +% injection at "from" bus *(u/degree)* [1]_ +% ``mu_q_fr_ub`` *double* shadow price on upper bound of MVAr +% injection at "from" bus *(u/degree)* [1]_ +% ``mu_q_to_lb`` *double* shadow price on lower bound of MVAr +% injection at "to" bus *(u/degree)* [1]_ +% ``mu_q_to_ub`` *double* shadow price on upper bound of MVAr +% injection at "to" bus *(u/degree)* [1]_ +% ============== =============== =================================== +% +% .. [#] Here *u* denotes the units of the objective function, e.g. USD. % MATPOWER % Copyright (c) 2020-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/mme_legacy_dcline.m b/lib/t/+mp/mme_legacy_dcline.m index 8e8949f9..60e2e373 100644 --- a/lib/t/+mp/mme_legacy_dcline.m +++ b/lib/t/+mp/mme_legacy_dcline.m @@ -1,5 +1,7 @@ classdef (Abstract) mme_legacy_dcline < mp.mm_element % mp.mme_legacy_dcline - Math model element abstract base class for legacy DC line. +% +% Abstract math model element base class for legacy DC line elements. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/mme_legacy_dcline_opf.m b/lib/t/+mp/mme_legacy_dcline_opf.m index 20a1566e..f0c8c486 100644 --- a/lib/t/+mp/mme_legacy_dcline_opf.m +++ b/lib/t/+mp/mme_legacy_dcline_opf.m @@ -1,5 +1,11 @@ classdef (Abstract) mme_legacy_dcline_opf < mp.mme_legacy_dcline % mp.mme_legacy_dcline_opf - Math model element abstract base class for legacy DC line for OPF. +% +% Math model element abstract base class for legacy DC line elements for OPF +% problems. +% +% Implements methods to add costs, including piecewise linear cost variables, +% and to form an interior initial point for cost variables. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/mme_legacy_dcline_opf_ac.m b/lib/t/+mp/mme_legacy_dcline_opf_ac.m index 15b9b38c..57aae428 100644 --- a/lib/t/+mp/mme_legacy_dcline_opf_ac.m +++ b/lib/t/+mp/mme_legacy_dcline_opf_ac.m @@ -1,5 +1,10 @@ classdef mme_legacy_dcline_opf_ac < mp.mme_legacy_dcline_opf % mp.mme_legacy_dcline_opf_ac - Math model element for legacy DC line for AC OPF. +% +% Math model element class for legacy DC line elements for AC OPF problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service DC lines from the math model solution. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/mme_legacy_dcline_opf_dc.m b/lib/t/+mp/mme_legacy_dcline_opf_dc.m index 6a09a384..785b25f2 100644 --- a/lib/t/+mp/mme_legacy_dcline_opf_dc.m +++ b/lib/t/+mp/mme_legacy_dcline_opf_dc.m @@ -1,5 +1,10 @@ classdef mme_legacy_dcline_opf_dc < mp.mme_legacy_dcline_opf % mp.mme_legacy_dcline_opf_dc - Math model element for legacy DC line for DC OPF. +% +% Math model element class for legacy DC line elements for DC OPF problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service DC lines from the math model solution. % MATPOWER % Copyright (c) 2021-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/mme_legacy_dcline_pf_ac.m b/lib/t/+mp/mme_legacy_dcline_pf_ac.m index 2ecf4bc6..6d93f874 100644 --- a/lib/t/+mp/mme_legacy_dcline_pf_ac.m +++ b/lib/t/+mp/mme_legacy_dcline_pf_ac.m @@ -1,5 +1,11 @@ classdef mme_legacy_dcline_pf_ac < mp.mme_legacy_dcline % mp.mme_legacy_dcline_pf_ac - Math model element for legacy DC line for AC power flow. +% +% Math model element class for legacy DC line elements for AC power flow +% problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service DC lines from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/mme_legacy_dcline_pf_dc.m b/lib/t/+mp/mme_legacy_dcline_pf_dc.m index b3d2176d..513fe349 100644 --- a/lib/t/+mp/mme_legacy_dcline_pf_dc.m +++ b/lib/t/+mp/mme_legacy_dcline_pf_dc.m @@ -1,5 +1,11 @@ classdef mme_legacy_dcline_pf_dc < mp.mme_legacy_dcline % mp.mme_legacy_dcline_pf_dc - Math model element for legacy DC line for DC power flow. +% +% Math model element class for legacy DC line elements for DC power flow +% problems. +% +% Implements method for updating the output data in the corresponding data +% model element for in-service DC lines from the math model solution. % MATPOWER % Copyright (c) 2022-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/nme_legacy_dcline.m b/lib/t/+mp/nme_legacy_dcline.m index b76163fa..8cc695c2 100644 --- a/lib/t/+mp/nme_legacy_dcline.m +++ b/lib/t/+mp/nme_legacy_dcline.m @@ -1,5 +1,8 @@ classdef (Abstract) nme_legacy_dcline < mp.nm_element % mp.nme_legacy_dcline - Network model element abstract base class for legacy DC line. +% +% Implements the network model element for legacy DC line elements, with +% 2 ports and 2 non-voltage states per DC line. % MATPOWER % Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/nme_legacy_dcline_ac.m b/lib/t/+mp/nme_legacy_dcline_ac.m index 42ce64a6..9e033f9e 100644 --- a/lib/t/+mp/nme_legacy_dcline_ac.m +++ b/lib/t/+mp/nme_legacy_dcline_ac.m @@ -1,5 +1,8 @@ classdef (Abstract) nme_legacy_dcline_ac < mp.nme_legacy_dcline % mp.nme_legacy_dcline_ac - Network model element abstract base class for legacy DC line for AC formulation. +% +% Adds non-voltage state variables ``Pdcf``, ``Qdcf``, ``Pdct``, and ``Qdct`` +% to the network model and builds the parameter :math:`\NN`. % MATPOWER % Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/nme_legacy_dcline_acc.m b/lib/t/+mp/nme_legacy_dcline_acc.m index e660e5f5..a445cc2e 100644 --- a/lib/t/+mp/nme_legacy_dcline_acc.m +++ b/lib/t/+mp/nme_legacy_dcline_acc.m @@ -1,5 +1,7 @@ classdef nme_legacy_dcline_acc < mp.nme_legacy_dcline_ac & mp.form_acc % mp.nme_legacy_dcline_acc - Network model element for legacy DC line for for AC cartesian voltage formulations. +% +% Inherits from mp.form_acc. % MATPOWER % Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/nme_legacy_dcline_acp.m b/lib/t/+mp/nme_legacy_dcline_acp.m index 52d3eab7..2414174b 100644 --- a/lib/t/+mp/nme_legacy_dcline_acp.m +++ b/lib/t/+mp/nme_legacy_dcline_acp.m @@ -1,5 +1,7 @@ classdef nme_legacy_dcline_acp < mp.nme_legacy_dcline_ac & mp.form_acp % mp.nme_legacy_dcline_acp - Network model element for legacy DC line for for AC polar voltage formulations. +% +% Inherits from mp.form_acp. % MATPOWER % Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC) diff --git a/lib/t/+mp/nme_legacy_dcline_dc.m b/lib/t/+mp/nme_legacy_dcline_dc.m index 183c8572..29950247 100644 --- a/lib/t/+mp/nme_legacy_dcline_dc.m +++ b/lib/t/+mp/nme_legacy_dcline_dc.m @@ -1,5 +1,8 @@ classdef nme_legacy_dcline_dc < mp.nme_legacy_dcline & mp.form_dc % mp.nme_legacy_dcline_dc - Network model element for legacy DC line for DC formulation. +% +% Adds non-voltage state variables ``Pdcf`` and ``Pdct`` to the network +% model and builds the parameter :math:`\KK`. % MATPOWER % Copyright (c) 2019-2024, Power Systems Engineering Research Center (PSERC)