Data format¶
OATS uses a spreadsheet format for specifying network, demand and generation data.
OATS also has a test case library where a number of standard IEEE and some real-world test cases are provided. The test case library is available on the OATS GitHub page.
Description of sheets in the OATS data format¶
Following tables provide information about each sheet of the OATS dataformat.
The parameters required to describe a network in OATS are outlined below. Optional parameters are highlighted by (^);
bus¶
name | bus name. string (can contain letters and/or numbers) |
baseKV | base voltage (kV) |
zone^ | zone (positive integer) [1] |
VM | Voltage Magnitude (p.u.) |
VA | Voltage angle |
VNLB | Normal minimum voltage magnitude (p.u.) |
VNUB | Normal maximum voltage magnitude (p.u.) |
VELB | Extreme minimum voltage magnitude (p.u.) [2] |
VEUB | Extreme minimum voltage magnitude (p.u.) |
Notes
[1] | Zone is used in unit commitment problem to define inter zonal transfer constraints |
[2] | Extreme values columns are provided as an option for security constrained optimal power flow when relaxed post-fault voltage bounds are desired |
demand¶
name | Demand name (string) |
busname | Bus name [3] |
real | real power demand (MW) |
reactive | reactive power demand (MVAr) |
stat | Status (1- connected, 2-disconnected) |
VOLL | Value of Lost Load (£/MW) |
Notes
[3] | Must match a bus name from the bus sheet |
branch¶
name | branch name (string) |
from_busname | from bus name [4] |
to_busname | to bus name [4] |
stat | Status (1-connected, 0-disconnected) |
r | resistance (p.u.) |
x | reactance (p.u.) |
b | total line charging susceptance (p.u.) |
ShortTermRating | MVA rating (short term rating), set to 0 for unlimited [5] |
ContinuousRating | MVA rating (continuous rating), set to 0 for unlimited |
angLB | minimum angle difference (degrees) [6] |
angUB | maximum angle difference (degrees) [6] |
contingency^ | 1-include in SCOPF contingencies, 0- don’t include |
failure_rate^ | failure rate over user specified time horizon |
Notes
[4] | (1, 2) Must match a bus name from the bus sheet |
[5] | The short term rating is used in post fault calculation in SCOPF |
[6] | (1, 2) The voltage angle difference is taken to be unbounded below if angLB < -360 and unbounded above if angUB > 360. If both parameters are zero, it is unconstrained. |
transformer¶
name | transformer name (string) |
from_busname | from bus name [7] |
to_busname | to bus name [7] |
stat | Status (1-connected, 0-disconnected) |
type^ | 1- 2-winding transformer with fixed tap ratios 2- tap-changing transformer |
r | resistance (p.u.) |
x | reactance (p.u.) |
ShortTermRating | MVA rating (short term rating), set to 0 for unlimited [8] |
ContinuousRating | MVA rating (continuous rating), set to 0 for unlimited |
angLB | minimum angle difference (degrees) [9] |
angUB | minimum angle difference (degrees) [9] |
PhaseShift^ | transformer phase shift angle (degrees), positive => delay |
TapRatio^ | Transformer turns ratio |
TapLB | Transformer minimum turns ratio |
TapUB | Transformer maximum turns ratio |
contingency^ | 1-include in SCOPF contingencies, 2- don’t include |
failure_rate^ | failure rate over user specified time horizon |
Notes
[7] | (1, 2) Must match a bus name from the bus sheet |
[8] | The short term rating is used in post fault calculation in SCOPF |
[9] | (1, 2) The voltage angle difference is taken to be unbounded below if angLB < -360 and unbounded above if angUB > 360. If both parameters are zero, it is unconstrained. |
wind¶
The wind sheet is included to separate variable generation from fixed capacity
busname | Bus name [10] |
name | Wind farm name |
stat | Status (1-connected, 0-disconnected) |
type | 1-PQ Bus, 2- Distributed Slack Bus, 3 - Slack Bus |
PG | Real power output (MW) |
QG | Reactive power output (MVAr) |
PGLB | Minimum real power output (MW) |
PGUB | Maximum power output (MW) |
QGLB | Minimum Reactive power output (MW) |
QGUB | Maximum reactive power output (MVAr) |
VS | Voltage magnitude setpoint (p.u.) |
contingency^ | 1-include in SCOPF contingencies, 0- don’t include |
failure_rate^ | failure rate over user specified time horizon |
Notes
[10] | Must match a bus name from the bus sheet |
shunt¶
busname | Bus name [11] |
name | Shunt name (string) |
GL | Shunt conductance (MW demanded at V = 1.0 p.u.) |
BL | Shunt susceptance (MVAr injected at V = 1.0 p.u.) |
stat | Status (1- connected, 0-disconnected) |
Notes
[11] | Must match a bus name from the bus sheet |
zone¶
interconnection_ID | ID for interconnector between zones |
from_zone | from zone [12] |
to_zone | to zone [12] |
TransferCapacity(MW) | Transfer capacity between ‘from_zone’ and ‘to_zone’ |
Notes
[12] | (1, 2) Must match a zone name from the bus sheet |
generators¶
busname | Bus name [13] |
name | Generator name (string) |
stat | Status (1-connected, 0-disconnected) |
PG | Real power output (MW) |
QG | Reactive power output (MVAr) |
PGLB | Minimum real power output (MW) |
PGUB | Maximum power output (MW) |
QGLB | Minimum Reactive power output (MW) |
QGUB | Maximum reactive power output (MVAr) |
VS | Voltage magnitude setpoint (p.u.) |
RampDown (MW/hr)^ | Ramp down rate (MW/hr) [14] |
RampUp (MW/hr)^ | Ramp up rate (MW/hr) [14] |
MinDownTime(hr)^ | Minimum down time (hr) [15] |
MinupTime(hr)^ | Minimum up time (hr) [15] |
FuelType^ | Coal, Nuke - nuclear, CCGT, OCGT, Unknown |
contingency | 1-include in SCOPF contingencies, 0- don’t include |
startup^ | Start up cost (£) [15] |
shutdown^ | Shut down cost (£) [15] |
costc2 | Quadratic cost coefficient |
costc1 | Linear cost coefficient |
costc0 | Constant cost coefficient |
bid^ | Bid in balancing mechanism to reduce generation [16] |
offer^ | Offer in balancing mechanism to increase generation [16] |
Notes
[13] | Must match a bus name from the bus sheet |
[14] | (1, 2) Ramp rates required for security constrained OPF or unit commitment problems |
[15] | (1, 2, 3, 4) Minimum up/down times, startup and shutdown costs are required in the unit commitment models |
[16] | (1, 2) These parameters are part of the balancing market extension model that is available as an extension to OATS |
storage¶
name | Name for the storage device |
zone | Name of the zone |
stat | Status |
Minoperatingcapacity(MW) | Min operating capacity |
capacity(MW) | Total capacity of the storage |
chargingrate(MW/hr) | charging rate |
dischargingrate(MW/hr) | discharging rate |
ChargingEfficieny(%) | charging efficiency |
DischargingEfficieny(%) | discharging efficiency |
InitialStoredPower(MW) | Initial stored energy |
FinalStoredPower(MW) | Final stored energy at the end of the planning horizon |
Filter Matpower2Oats¶
A Python script is provided that can be used to convert Matpower test-cases into equivalent OATS test-cases. This script is available on the OATS GitHub page.