MatPower

MatPower - solve optimal powerflow using the MatPOWER solver

Synopsis
This module uses the MatPOWER solver to allow simulation of transmission networks and solving optimal power flow. In particular, this module makes it possible to cosimulate transmission and distribution by attaching distribution networks to the transmission buses. In order to handle the increased computational complexity, the distribution networks can be run on a separate system from the transmission simulation. Please see the whitepaper on the MatPOWER website for performance estimates based on the size of the transmission network.

System Requirements
Your system must have either Matlab OR the Matlab Runtime Compiler (MCR) installed in order to use this module. MCR can be downloaded for free from Mathworks.

Compiling MatPOWER Using MCC
This step is not normally necessary. The matpower module includes a precompiled shared object for Linux (32-bit and 64-bit) for the MatPower 4.0 solver. If you would like to use this module on a different system or use a different version of MatPOWER, you can use the Matlab MCC Compiler to generate a new shared object or DLL. You must compile the functions in "opf.m". We have included the matpower4.0 source files which we used to generate our shared objects.

From the /matpower/mcc_out directory, run the following command:

mcc ../matpower40_src/opf.m -B macro_default -W cpplib:libopf -T link:lib

Acknowledgements
The MatPOWER solver was developed by Ray D. Zimmerman, Carlos E. Murillo-Sánchez & Deqiang (David) Gan. See Cornell MatPower website for more information. This module enables co-simulation between MatPower and GridLAB-D and was developed by Kyle Anderson as part of the GridSpice project ([mailto:kyle.anderson@stanford.edu kyle.anderson@stanford.edu])

= Example GLM = object bus { name "Palo Alto Generator"; BUS_TYPE   "REF"; PD         0MW; QD         0MVAr; GS         0MW; BS         0MVAr; BUS_AREA   1; VM         1; VA         0; BASE_KV    345kV; ZONE       1; VMAX       1.1; VMIN       0.9; } object branch { F_BUS_NAME     "Palo Alto Generator"; T_BUS_NAME     "Packard Building"; BR_R       0; BR_X       0.0576; BR_B       0; RATE_A     250; RATE_B     250; RATE_C     250; TAP        0; SHIFT      0; BR_STATUS  1; ANGMIN     -360; ANGMAX     360; } object gen { name "Generator 2"; parent "Stanford Generator"; PG         163MW; QG         0MVAr; QMAX       300MVAr; QMIN       -300MVAr; VG         1; MBASE      100; GEN_STATUS 1; PMAX       300MW; PMIN       10MW; PC1        0MVAr; PC2        0MVAr; QC1MIN     0MVAr; QC1MAX     0MVAr; QC2MIN     0MVAr; QC2MAX     0MVAr; RAMP_AGC   0; RAMP_10    0MW; RAMP_30    0MW; RAMP_Q     0; APF        0; MODEL      2; STARTUP    2000; SHUTDOWN   0; NCOST      3; COST       0.085,1.2,600; }