Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Standarizing reserve names; putting in (mostly) a single place #264

Merged
merged 2 commits into from
Jan 26, 2022
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 31 additions & 30 deletions egret/model_library/transmission/tx_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -214,37 +214,38 @@ def load_shed_limit(load, gens, gen_mins):
return max_load_shed

## attributes which are scaled for power flow models
## tuple of supported ancillary services, as named in model data
ancillary_services = (
'reserve',
darrylmelander marked this conversation as resolved.
Show resolved Hide resolved
'spinning_reserve',
'non_spinning_reserve',
'regulation_up',
'regulation_down',
'supplemental_reserve',
'flexible_ramp_up',
'flexible_ramp_down',
)

## tuple of penalty prices (up/down reserves have the same penalty price)
penalty_prices = (
'regulation_penalty_price',
'spinning_reserve_penalty_price',
'non_spinning_reserve_penalty_price',
'supplemental_reserve_penalty_price',
'flexible_ramp_penalty_price',
)

# for ../unit_commitment/services.py -- tuple for safety, name for compatability
ancillary_service_list = ( name+'_requirement' for name in ancillary_services[1:] )
darrylmelander marked this conversation as resolved.
Show resolved Hide resolved
darrylmelander marked this conversation as resolved.
Show resolved Hide resolved

# construct this from the above items
ancillary_service_stack = [
'reserve_requirement',
'spinning_reserve_requirement',
'non_spinning_reserve_requirement',
'regulation_up_requirement',
'regulation_down_requirement',
'flexible_ramp_up_requirement',
'flexible_ramp_down_requirement',
'supplemental_reserve_requirement',
'reserve_shortfall',
'spinning_reserve_shortfall',
'non_spinning_reserve_shortfall',
'regulation_up_shortfall',
'regulation_down_shortfall',
'flexible_ramp_up_shortfall',
'flexible_ramp_down_shortfall',
'supplemental_shortfall',
'reserve_price',
'spinning_reserve_price',
'non_spinning_reserve_price',
'regulation_up_price',
'regulation_down_price',
'flexible_ramp_up_price',
'flexible_ramp_down_price',
'supplemental_price',
'regulation_penalty_price',
'spinning_reserve_penalty_price',
'non_spinning_reserve_penalty_price',
'supplemental_reserve_penalty_price',
'flexible_ramp_penalty_price',
]
*(name+'_requirement' for name in ancillary_services),
*(name+'_shortfall' for name in ancillary_services),
*(name+'_price' for name in ancillary_services),
*penalty_prices,
]


## TODO?: break apart by data that needed to be scaled down (capacity limits, power),
## vs. scaled up (costs, prices, etc)
Expand Down
12 changes: 1 addition & 11 deletions egret/model_library/unit_commitment/services.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,10 @@
from pyomo.environ import *
import math

from egret.model_library.transmission.tx_utils import ancillary_service_list
darrylmelander marked this conversation as resolved.
Show resolved Hide resolved
darrylmelander marked this conversation as resolved.
Show resolved Hide resolved
from .uc_utils import add_model_attr, uc_time_helper, make_penalty_rule
from .status_vars import _is_relaxed

## list of supported ancillary services, as named in model data
ancillary_service_list = (
'spinning_reserve_requirement',
'non_spinning_reserve_requirement',
'regulation_up_requirement',
'regulation_down_requirement',
'supplemental_reserve_requirement',
'flexible_ramp_up_requirement',
'flexible_ramp_down_requirement',
)

@add_model_attr('storage_service', requires = {'data_loader': None,
})
def storage_services(model):
Expand Down
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"elements": {"bus": {"1": {"matpower_bustype": "ref", "area": 1.0, "vm": 1.0, "va": 0.0, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1, "pl": 110.00000000000001, "lmp": 4.999999999727942}, "2": {"matpower_bustype": "PV", "area": 1.0, "vm": 1.0, "va": -0.990000009840651, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1, "pl": 110.00000000000001, "lmp": 1.199999999960838}, "3": {"matpower_bustype": "PV", "area": 1.0, "vm": 1.0, "va": 0.2789999938204425, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1, "pl": 95.0, "lmp": 4.999999999732397}}, "load": {"load_1": {"in_service": true, "p_load": 110.00000000000001, "q_load": 40.0, "bus": "1"}, "load_2": {"in_service": true, "p_load": 110.00000000000001, "q_load": 40.0, "bus": "2"}, "load_3": {"in_service": true, "p_load": 95.0, "q_load": 50.0, "bus": "3"}}, "generator": {"1": {"bus": "1", "pg": 44.99999790989154, "qg": 0.0, "vg": 1.0, "mbase": 100.0, "in_service": true, "p_min": 0.0, "p_max": 2000.0, "q_min": -1000.0, "q_max": 1000.0, "generator_type": "thermal", "p_cost": {"data_type": "cost_curve", "cost_curve_type": "polynomial", "values": {"0": 0.0, "1": 5.0, "2": 0.0}}, "startup_cost": 0.0, "shutdown_cost": 0.0}, "2": {"bus": "2", "pg": 270.0000020901085, "qg": 0.0, "vg": 1.0, "mbase": 100.0, "in_service": true, "p_min": 0.0, "p_max": 2000.0, "q_min": -1000.0, "q_max": 1000.0, "generator_type": "thermal", "p_cost": {"data_type": "cost_curve", "cost_curve_type": "polynomial", "values": {"0": 0.0, "1": 1.2, "2": 0.0}}, "startup_cost": 0.0, "shutdown_cost": 0.0}}, "branch": {"1": {"from_bus": "1", "to_bus": "3", "resistance": 0.065, "reactance": 0.62, "charging_susceptance": 0.45, "branch_type": "line", "rating_long_term": 9000.0, "rating_short_term": 9000.0, "rating_emergency": 9000.0, "in_service": true, "angle_diff_min": -30.0, "angle_diff_max": 30.0, "pf": 44.999999003297184, "qf": null, "pt": null, "qt": null}, "3": {"from_bus": "1", "to_bus": "2", "resistance": 0.042, "reactance": 0.9, "charging_susceptance": 0.3, "branch_type": "line", "rating_long_term": 110.00000000000001, "rating_short_term": 9000.0, "rating_emergency": 9000.0, "in_service": true, "angle_diff_min": -30.0, "angle_diff_max": 30.0, "pf": -110.00000000000001, "qf": null, "pt": null, "qt": null}}, "dc_branch": {"2": {"from_bus": "3", "to_bus": "2", "rating_long_term": 50.0, "rating_short_term": 50.0, "rating_emergency": 50.0, "in_service": true, "loss_factor": 0.1, "pf": -50.0, "pt": 50.0}}}, "system": {"model_name": "hvdc_test_case3", "baseMVA": 100.0, "reference_bus": "1", "reference_bus_angle": 0.0, "total_cost": 548.9999920575879}}
{"elements": {"bus": {"1": {"matpower_bustype": "ref", "area": 1.0, "vm": 1.0, "va": 0.0, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1, "pl": 110.00000000000001, "lmp": 4.999999999727942}, "2": {"matpower_bustype": "PV", "area": 1.0, "vm": 1.0, "va": -0.990000009840651, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1, "pl": 110.00000000000001, "lmp": 1.199999999960838}, "3": {"matpower_bustype": "PV", "area": 1.0, "vm": 1.0, "va": 0.2789999938204425, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1, "pl": 95.0, "lmp": 4.999999999732397}}, "load": {"load_1": {"in_service": true, "p_load": 110.00000000000001, "q_load": 40.0, "bus": "1"}, "load_2": {"in_service": true, "p_load": 110.00000000000001, "q_load": 40.0, "bus": "2"}, "load_3": {"in_service": true, "p_load": 95.0, "q_load": 50.0, "bus": "3"}}, "generator": {"1": {"bus": "1", "pg": 44.99999790989154, "qg": 0.0, "vg": 1.0, "mbase": 100.0, "in_service": true, "p_min": 0.0, "p_max": 2000.0, "q_min": -1000.0, "q_max": 1000.0, "generator_type": "thermal", "p_cost": {"data_type": "cost_curve", "cost_curve_type": "polynomial", "values": {"0": 0.0, "1": 5.0, "2": 0.0}}, "startup_cost": 0.0, "shutdown_cost": 0.0}, "2": {"bus": "2", "pg": 270.0000020901085, "qg": 0.0, "vg": 1.0, "mbase": 100.0, "in_service": true, "p_min": 0.0, "p_max": 2000.0, "q_min": -1000.0, "q_max": 1000.0, "generator_type": "thermal", "p_cost": {"data_type": "cost_curve", "cost_curve_type": "polynomial", "values": {"0": 0.0, "1": 1.2, "2": 0.0}}, "startup_cost": 0.0, "shutdown_cost": 0.0}}, "branch": {"1": {"from_bus": "1", "to_bus": "3", "resistance": 0.065, "reactance": 0.62, "charging_susceptance": 0.45, "branch_type": "line", "rating_long_term": 9000.0, "rating_short_term": 9000.0, "rating_emergency": 9000.0, "in_service": true, "angle_diff_min": -30.0, "angle_diff_max": 30.0, "pf": 44.999999003297184, "qf": null, "pt": null, "qt": null}, "3": {"from_bus": "1", "to_bus": "2", "resistance": 0.042, "reactance": 0.9, "charging_susceptance": 0.3, "branch_type": "line", "rating_long_term": 110.00000000000001, "rating_short_term": 9000.0, "rating_emergency": 9000.0, "in_service": true, "angle_diff_min": -30.0, "angle_diff_max": 30.0, "pf": -110.00000000000001, "qf": null, "pt": null, "qt": null}}, "dc_branch": {"2": {"from_bus": "3", "to_bus": "2", "rating_long_term": 50.0, "rating_short_term": 50.0, "rating_emergency": 50.0, "in_service": true, "loss_factor": 0.1, "pf": -50.0, "pt": 50.0}}}, "system": {"model_name": "hvdc_test_case3", "baseMVA": 100.0, "reference_bus": "1", "reference_bus_angle": 0.0, "total_cost": 548.9999920575879}}
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"elements": {"bus": {"1": {"matpower_bustype": "ref", "area": 1.0, "vm": 1.0, "va": 0.0, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1}, "2": {"matpower_bustype": "PV", "area": 1.0, "vm": 1.0, "va": 0.0, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1}, "3": {"matpower_bustype": "PV", "area": 1.0, "vm": 1.0, "va": 0.0, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1}}, "load": {"load_1": {"in_service": true, "p_load": 110.0, "q_load": 40.0, "bus": "1"}, "load_2": {"in_service": true, "p_load": 110.0, "q_load": 40.0, "bus": "2"}, "load_3": {"in_service": true, "p_load": 95.0, "q_load": 50.0, "bus": "3"}}, "generator": {"1": {"bus": "1", "pg": 1000.0, "qg": 0.0, "vg": 1.0, "mbase": 100.0, "in_service": true, "p_min": 0.0, "p_max": 2000.0, "q_min": -1000.0, "q_max": 1000.0, "generator_type": "thermal", "p_cost": {"data_type": "cost_curve", "cost_curve_type": "polynomial", "values": {"0": 0.0, "1": 5.0, "2": 0.0}}, "startup_cost": 0.0, "shutdown_cost": 0.0}, "2": {"bus": "2", "pg": 1000.0, "qg": 0.0, "vg": 1.0, "mbase": 100.0, "in_service": true, "p_min": 0.0, "p_max": 2000.0, "q_min": -1000.0, "q_max": 1000.0, "generator_type": "thermal", "p_cost": {"data_type": "cost_curve", "cost_curve_type": "polynomial", "values": {"0": 0.0, "1": 1.2, "2": 0.0}}, "startup_cost": 0.0, "shutdown_cost": 0.0}}, "branch": {"1": {"from_bus": "1", "to_bus": "3", "resistance": 0.065, "reactance": 0.62, "charging_susceptance": 0.45, "branch_type": "line", "rating_long_term": 9000.0, "rating_short_term": 9000.0, "rating_emergency": 9000.0, "in_service": true, "angle_diff_min": -30.0, "angle_diff_max": 30.0, "pf": null, "qf": null, "pt": null, "qt": null}, "3": {"from_bus": "1", "to_bus": "2", "resistance": 0.042, "reactance": 0.9, "charging_susceptance": 0.3, "branch_type": "line", "rating_long_term": 110.0, "rating_short_term": 9000.0, "rating_emergency": 9000.0, "in_service": true, "angle_diff_min": -30.0, "angle_diff_max": 30.0, "pf": null, "qf": null, "pt": null, "qt": null}}, "dc_branch": {"2": {"from_bus": "3", "to_bus": "2", "rating_long_term": 50.0, "rating_short_term": 50.0, "rating_emergency": 50.0, "in_service": true, "loss_factor": 0.1}}}, "system": {"model_name": "hvdc_test_case3", "baseMVA": 100.0, "reference_bus": "1", "reference_bus_angle": 0.0}}
{"elements": {"bus": {"1": {"matpower_bustype": "ref", "area": 1.0, "vm": 1.0, "va": 0.0, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1}, "2": {"matpower_bustype": "PV", "area": 1.0, "vm": 1.0, "va": 0.0, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1}, "3": {"matpower_bustype": "PV", "area": 1.0, "vm": 1.0, "va": 0.0, "base_kv": 240.0, "zone": 1.0, "v_min": 0.9, "v_max": 1.1}}, "load": {"load_1": {"in_service": true, "p_load": 110.0, "q_load": 40.0, "bus": "1"}, "load_2": {"in_service": true, "p_load": 110.0, "q_load": 40.0, "bus": "2"}, "load_3": {"in_service": true, "p_load": 95.0, "q_load": 50.0, "bus": "3"}}, "generator": {"1": {"bus": "1", "pg": 1000.0, "qg": 0.0, "vg": 1.0, "mbase": 100.0, "in_service": true, "p_min": 0.0, "p_max": 2000.0, "q_min": -1000.0, "q_max": 1000.0, "generator_type": "thermal", "p_cost": {"data_type": "cost_curve", "cost_curve_type": "polynomial", "values": {"0": 0.0, "1": 5.0, "2": 0.0}}, "startup_cost": 0.0, "shutdown_cost": 0.0}, "2": {"bus": "2", "pg": 1000.0, "qg": 0.0, "vg": 1.0, "mbase": 100.0, "in_service": true, "p_min": 0.0, "p_max": 2000.0, "q_min": -1000.0, "q_max": 1000.0, "generator_type": "thermal", "p_cost": {"data_type": "cost_curve", "cost_curve_type": "polynomial", "values": {"0": 0.0, "1": 1.2, "2": 0.0}}, "startup_cost": 0.0, "shutdown_cost": 0.0}}, "branch": {"1": {"from_bus": "1", "to_bus": "3", "resistance": 0.065, "reactance": 0.62, "charging_susceptance": 0.45, "branch_type": "line", "rating_long_term": 9000.0, "rating_short_term": 9000.0, "rating_emergency": 9000.0, "in_service": true, "angle_diff_min": -30.0, "angle_diff_max": 30.0, "pf": null, "qf": null, "pt": null, "qt": null}, "3": {"from_bus": "1", "to_bus": "2", "resistance": 0.042, "reactance": 0.9, "charging_susceptance": 0.3, "branch_type": "line", "rating_long_term": 110.0, "rating_short_term": 9000.0, "rating_emergency": 9000.0, "in_service": true, "angle_diff_min": -30.0, "angle_diff_max": 30.0, "pf": null, "qf": null, "pt": null, "qt": null}}, "dc_branch": {"2": {"from_bus": "3", "to_bus": "2", "rating_long_term": 50.0, "rating_short_term": 50.0, "rating_emergency": 50.0, "in_service": true, "loss_factor": 0.1}}}, "system": {"model_name": "hvdc_test_case3", "baseMVA": 100.0, "reference_bus": "1", "reference_bus_angle": 0.0}}

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion egret/models/tests/uc_test_instances/test_scuc_masked.json

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion egret/models/tests/uc_test_instances/tiny_uc_12.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"elements": {"load": {}, "bus": {"Arne": {"id": "113", "base_kv": 230.0, "matpower_bustype": "ref", "vm": 1.03943, "va": 0.0, "v_min": 0.95, "v_max": 1.05, "area": "1", "zone": "14.0"}}, "generator": {"gen": {"bus": "Arne", "in_service": true, "mbase": 100.0, "pg": 55.0, "qg": 10.99, "p_min": 22.0, "p_max": 55.0, "q_min": -15.0, "q_max": 19.0, "ramp_q": 3.7, "fuel": "NG", "unit_type": "CT", "area": "3", "zone": "32.0", "generator_type": "thermal", "p_fuel": {"data_type": "fuel_curve", "values": [[22.0, 338.69], [33.0, 434.31], [44.0, 542.93], [55.0, 652.26]]}, "startup_fuel": [[2.2, 14.574]], "non_fuel_startup_cost": 0.0, "shutdown_cost": 0.0, "agc_capable": true, "p_min_agc": 22.0, "p_max_agc": 55.0, "ramp_agc": 3.7, "ramp_up_60min": 222.0, "ramp_down_60min": 222.0, "fuel_cost": 3.88722, "startup_capacity": 22.0, "shutdown_capacity": 22.0, "min_up_time": 2.2, "min_down_time": 2.2, "initial_status": 1, "initial_p_output": 0.0, "initial_q_output": 0.0, "future_status": 0.0, "startup_curve": [], "shutdown_curve": []}}}, "system": {"name": "RTS-GMLC", "baseMVA": 100.0, "reference_bus": "Arne", "reference_bus_angle": 0, "time_period_length_minutes": 60, "time_keys": ["1", "2", "3", "4"]}}
{"elements": {"load": {}, "bus": {"Arne": {"id": "113", "base_kv": 230.0, "matpower_bustype": "ref", "vm": 1.03943, "va": 0.0, "v_min": 0.95, "v_max": 1.05, "area": "1", "zone": "14.0"}}, "generator": {"gen": {"bus": "Arne", "in_service": true, "mbase": 100.0, "pg": 55.0, "qg": 10.99, "p_min": 22.0, "p_max": 55.0, "q_min": -15.0, "q_max": 19.0, "ramp_q": 3.7, "fuel": "NG", "unit_type": "CT", "area": "3", "zone": "32.0", "generator_type": "thermal", "p_fuel": {"data_type": "fuel_curve", "values": [[22.0, 338.69], [33.0, 434.31], [44.0, 542.93], [55.0, 652.26]]}, "startup_fuel": [[2.2, 14.574]], "non_fuel_startup_cost": 0.0, "shutdown_cost": 0.0, "agc_capable": true, "p_min_agc": 22.0, "p_max_agc": 55.0, "ramp_agc": 3.7, "ramp_up_60min": 222.0, "ramp_down_60min": 222.0, "fuel_cost": 3.88722, "startup_capacity": 22.0, "shutdown_capacity": 22.0, "min_up_time": 2.2, "min_down_time": 2.2, "initial_status": 1, "initial_p_output": 0.0, "initial_q_output": 0.0, "future_status": 0.0, "startup_curve": [], "shutdown_curve": []}}}, "system": {"name": "RTS-GMLC", "baseMVA": 100.0, "reference_bus": "Arne", "reference_bus_angle": 0, "time_period_length_minutes": 60, "time_keys": ["1", "2", "3", "4"]}}
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"elements": {"load": {}, "bus": {"Arne": {"id": "113", "base_kv": 230.0, "matpower_bustype": "ref", "vm": 1.03943, "va": {"data_type": "time_series", "values": [-0.0, -0.0, -0.0, -0.0]}, "v_min": 0.95, "v_max": 1.05, "area": "1", "zone": "14.0", "p_balance_violation": {"data_type": "time_series", "values": [-22.0, -22.0, -0.0, -0.0]}, "pl": {"data_type": "time_series", "values": [0.0, 0.0, 0.0, 0.0]}}}, "generator": {"gen": {"bus": "Arne", "in_service": true, "mbase": 100.0, "pg": {"data_type": "time_series", "values": [22.0, 22.0, 0.0, 0.0]}, "qg": 10.99, "p_min": 22.0, "p_max": 55.00000000000001, "q_min": -15.0, "q_max": 19.0, "ramp_q": 3.7000000000000006, "fuel": "NG", "unit_type": "CT", "area": "3", "zone": "32.0", "generator_type": "thermal", "p_fuel": {"data_type": "fuel_curve", "values": [[22.0, 338.69], [33.0, 434.31], [44.0, 542.93], [55.00000000000001, 652.26]]}, "startup_fuel": [[2.2, 14.574]], "non_fuel_startup_cost": 0.0, "shutdown_cost": 0.0, "agc_capable": true, "p_min_agc": 22.0, "p_max_agc": 55.00000000000001, "ramp_agc": 3.7000000000000006, "ramp_up_60min": 222.00000000000003, "ramp_down_60min": 222.00000000000003, "fuel_cost": 3.88722, "startup_capacity": 22.0, "shutdown_capacity": 22.0, "min_up_time": 2.2, "min_down_time": 2.2, "initial_status": 1, "initial_p_output": 0.0, "initial_q_output": 0.0, "future_status": 0.0, "startup_curve": [], "shutdown_curve": [], "commitment": {"data_type": "time_series", "values": [1, 1, 0, 0]}, "commitment_cost": {"data_type": "time_series", "values": [1316.5625418, 1316.5625418, 0.0, 0.0]}, "production_cost": {"data_type": "time_series", "values": [0.0, 0.0, 0.0, 0.0]}, "headroom": {"data_type": "time_series", "values": [33.00000000000001, 0.0, 0.0, 0.0]}}}, "branch": {}, "interface": {}, "storage": {}, "dc_branch": {}, "zone": {}, "area": {}}, "system": {"name": "RTS-GMLC", "baseMVA": 100.0, "reference_bus": "Arne", "reference_bus_angle": 0, "time_period_length_minutes": 60, "time_keys": ["1", "2", "3", "4"], "total_cost": 44002633.1250836}}
{"elements": {"load": {}, "bus": {"Arne": {"id": "113", "base_kv": 230.0, "matpower_bustype": "ref", "vm": 1.03943, "va": {"data_type": "time_series", "values": [-0.0, -0.0, -0.0, -0.0]}, "v_min": 0.95, "v_max": 1.05, "area": "1", "zone": "14.0", "p_balance_violation": {"data_type": "time_series", "values": [-22.0, -22.0, -0.0, -0.0]}, "pl": {"data_type": "time_series", "values": [0.0, 0.0, 0.0, 0.0]}}}, "generator": {"gen": {"bus": "Arne", "in_service": true, "mbase": 100.0, "pg": {"data_type": "time_series", "values": [22.0, 22.0, 0.0, 0.0]}, "qg": 10.99, "p_min": 22.0, "p_max": 55.00000000000001, "q_min": -15.0, "q_max": 19.0, "ramp_q": 3.7000000000000006, "fuel": "NG", "unit_type": "CT", "area": "3", "zone": "32.0", "generator_type": "thermal", "p_fuel": {"data_type": "fuel_curve", "values": [[22.0, 338.69], [33.0, 434.31], [44.0, 542.93], [55.00000000000001, 652.26]]}, "startup_fuel": [[2.2, 14.574]], "non_fuel_startup_cost": 0.0, "shutdown_cost": 0.0, "agc_capable": true, "p_min_agc": 22.0, "p_max_agc": 55.00000000000001, "ramp_agc": 3.7000000000000006, "ramp_up_60min": 222.00000000000003, "ramp_down_60min": 222.00000000000003, "fuel_cost": 3.88722, "startup_capacity": 22.0, "shutdown_capacity": 22.0, "min_up_time": 2.2, "min_down_time": 2.2, "initial_status": 1, "initial_p_output": 0.0, "initial_q_output": 0.0, "future_status": 0.0, "startup_curve": [], "shutdown_curve": [], "commitment": {"data_type": "time_series", "values": [1, 1, 0, 0]}, "commitment_cost": {"data_type": "time_series", "values": [1316.5625418, 1316.5625418, 0.0, 0.0]}, "production_cost": {"data_type": "time_series", "values": [0.0, 0.0, 0.0, 0.0]}, "headroom": {"data_type": "time_series", "values": [33.00000000000001, 0.0, 0.0, 0.0]}}}, "branch": {}, "interface": {}, "storage": {}, "dc_branch": {}, "zone": {}, "area": {}}, "system": {"name": "RTS-GMLC", "baseMVA": 100.0, "reference_bus": "Arne", "reference_bus_angle": 0, "time_period_length_minutes": 60, "time_keys": ["1", "2", "3", "4"], "total_cost": 44002633.1250836}}

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Loading