Skip to content

Results catalogue

Every result table FlexTool writes, generated from the code. A table is written to output_parquet/<scenario>/<table>.parquet, and with CSV output to output_csv/<scenario>/ under the CSV name of the default output settings. The parquet's top column level is scenario; the levels below it are listed as column levels. Membership sets are flat tables whose first column is scenario, followed by the listed row levels; timeline_breaks is a flat (period, time) table. Units are the default convention of FlexTool (MW, MWh, CUR); see Model outputs for what the results mean and how they are computed.

Costs

See Costs in Model outputs.

annualized_costs_d_p

Total cost of each period by cost category, scaled to a full year of operation, including the yearly investment, retirement and fixed costs.

  • Files: annualized_costs_d_p.parquet, annualized_costs__d.csv
  • Rows: period; column levels: category
  • every column: M CUR/a, annualized
  • Results database: model entity cost_annualized parameter
  • Counterpart at the other time resolution: costs_dt_p

costs_discounted_d_p

Cost of each period by cost category, discounted and multiplied by the years the period represents (the net present value the objective counts).

  • Files: costs_discounted_d_p.parquet, costs_discounted__d.csv
  • Rows: period; column levels: category
  • every column: M CUR, discounted
  • Results database: model entity cost_discounted_solve parameter

costs_discounted_p_

Discounted cost by cost category, totalled over all periods of the run.

  • Files: costs_discounted_p_.parquet, costs_discounted.csv
  • Rows: category; column levels: none
  • every column: M CUR, discounted
  • Results database: model entity cost_discounted_total parameter

costs_dt_p

Operational and penalty costs incurred in each time step by cost category, in currency (not millions), with the step duration and timestep weight applied and not scaled to a year.

  • Files: costs_dt_p.parquet, costs__dt.csv
  • Rows: period, time; column levels: category
  • every column: CUR, per_step
  • Results database: model entity cost_t parameter
  • Counterpart at the other time resolution: annualized_costs_d_p

period_share_of_year__d

Share of a year that each realised period covers; the per-period tables are divided by it to give values per year.

  • Files: period_share_of_year__d.parquet, period_share_of_year__d.csv
  • Rows: period; column levels: param
  • every column: dimensionless, ratio
  • Results database: not written there

years_represented__d

Number of years each period represents.

  • Files: years_represented__d.parquet, years_represented__d.csv
  • Rows: period; column levels: param
  • every column: a, count
  • Results database: not written there

Cost by entity

See Cost by entity in Model outputs.

cost_connection_annualized_d_ec

Annualized cost of each connection and period by cost category.

  • Files: cost_connection_annualized_d_ec.parquet, cost_connection_annualized__d.csv
  • Rows: period, connection; column levels: category
  • every column: M CUR/a, annualized
  • Results database: connection entity cost_annualized parameter

cost_connection_discounted_d_ec

Discounted cost of each connection and period by cost category.

  • Files: cost_connection_discounted_d_ec.parquet, cost_connection_discounted__d.csv
  • Rows: period, connection; column levels: category
  • every column: M CUR, discounted
  • Results database: connection entity cost_discounted parameter

cost_node_annualized_d_ec

Annualized cost of each node and period by cost category (storage investment and retirement, fixed costs, balance slack penalties).

  • Files: cost_node_annualized_d_ec.parquet, cost_node_annualized__d.csv
  • Rows: period, node; column levels: category
  • every column: M CUR/a, annualized
  • Results database: node entity cost_annualized parameter

cost_node_discounted_d_ec

Discounted cost of each node and period by cost category.

  • Files: cost_node_discounted_d_ec.parquet, cost_node_discounted__d.csv
  • Rows: period, node; column levels: category
  • every column: M CUR, discounted
  • Results database: node entity cost_discounted parameter

cost_unit_annualized_d_ec

Annualized cost of each unit and period by cost category; summed over units, connections and nodes it gives the system annualized costs.

  • Files: cost_unit_annualized_d_ec.parquet, cost_unit_annualized__d.csv
  • Rows: period, unit; column levels: category
  • every column: M CUR/a, annualized
  • Results database: unit entity cost_annualized parameter

cost_unit_discounted_d_ec

Discounted cost of each unit and period by cost category; summed over units, connections and nodes it gives the system discounted costs.

  • Files: cost_unit_discounted_d_ec.parquet, cost_unit_discounted__d.csv
  • Rows: period, unit; column levels: category
  • every column: M CUR, discounted
  • Results database: unit entity cost_discounted parameter

Prices

See Prices in Model outputs.

co2_price_period_d_g

Shadow price of the per-period CO2 cap of each group, in the currency of the period (positive when the cap binds).

  • Files: co2_price_period_d_g.parquet, group_CO2_price_period__d.csv
  • Rows: period; column levels: group
  • every column: CUR/t, price
  • Results database: not written there

co2_price_total_d_g

Shadow price of the cumulative CO2 cap of each group, in discounted currency per tonne, the same in every period.

  • Files: co2_price_total_d_g.parquet, group_CO2_price_total__d.csv
  • Rows: period; column levels: group
  • every column: CUR/t, price
  • Results database: not written there

node_prices_dt_e

Price of energy at each balanced node and time step: the cost of one more unit of demand there (the dual of the node balance), in the price base of the cost inputs.

  • Files: node_prices_dt_e.parquet, node_prices__dt.csv
  • Rows: solve, period, time; column levels: node
  • every column: CUR/MWh, price
  • Results database: node entity price_t parameter

reserve_prices_dt_ppg

Price of each reserve, direction and group in each time step: the cost of one more MW of every requirement of the group held for the step.

  • Files: reserve_prices_dt_ppg.parquet, reserve_price__upDown__group__dt.csv
  • Rows: solve, period, time; column levels: reserve, updown, node_group
  • every column: CUR/MW, price
  • Results database: not written there

Energy flows

See Energy flows in Model outputs.

connection_d_eee

Net flow through each connection summed over the period and scaled to a full year, positive from the first to the second node.

  • Files: connection_d_eee.parquet, connection__d.csv
  • Rows: period; column levels: process
  • every column: MWh/a, annualized
  • Results database: connection__node__node entity flow_annualized parameter
  • Counterpart at the other time resolution: connection_dt_eee

connection_dt_eee

Net flow through each connection in each time step, positive from the first to the second node.

  • Files: connection_dt_eee.parquet, connection__dt.csv
  • Rows: period, time; column levels: process
  • every column: MW, instantaneous
  • Results database: connection__node__node entity flow_t parameter
  • Counterpart at the other time resolution: connection_d_eee

connection_leftward_d_eee

Net flow of each connection into its first node summed over the period and scaled to a full year.

  • Files: connection_leftward_d_eee.parquet, connection_leftward__d.csv
  • Rows: period; column levels: process, node
  • every column: MWh/a, annualized
  • Results database: connection__node__node entity flow_to_first_node_annualized parameter
  • Counterpart at the other time resolution: connection_leftward_dt_eee

connection_leftward_dt_eee

Net flow of each connection into its first node in each time step.

  • Files: connection_leftward_dt_eee.parquet, connection_leftward__dt.csv
  • Rows: period, time; column levels: process, node
  • every column: MW, instantaneous
  • Results database: connection__node__node entity flow_to_first_node_t parameter
  • Counterpart at the other time resolution: connection_leftward_d_eee

connection_losses_d_eee

Losses of each connection summed over the period and scaled to a full year, negative when energy is lost.

  • Files: connection_losses_d_eee.parquet, connection_losses__d.csv
  • Rows: period; column levels: process
  • every column: MWh/a, annualized
  • Results database: not written there
  • Counterpart at the other time resolution: connection_losses_dt_eee

connection_losses_dt_eee

Losses of each connection in each time step: the flow out minus the flow in, negative when energy is lost.

  • Files: connection_losses_dt_eee.parquet, connection__dt_losses.csv
  • Rows: period, time; column levels: process
  • every column: MW, instantaneous
  • Results database: not written there
  • Counterpart at the other time resolution: connection_losses_d_eee

connection_rightward_d_eee

Net flow of each connection into its second node summed over the period and scaled to a full year.

  • Files: connection_rightward_d_eee.parquet, connection_rightward__d.csv
  • Rows: period; column levels: process, node
  • every column: MWh/a, annualized
  • Results database: connection__node__node entity flow_to_second_node_annualized parameter
  • Counterpart at the other time resolution: connection_rightward_dt_eee

connection_rightward_dt_eee

Net flow of each connection into its second node in each time step.

  • Files: connection_rightward_dt_eee.parquet, connection_rightward__dt.csv
  • Rows: period, time; column levels: process, node
  • every column: MW, instantaneous
  • Results database: connection__node__node entity flow_to_second_node_t parameter
  • Counterpart at the other time resolution: connection_rightward_d_eee

unit_inputNode_d_ee

Flow from each input node into each unit summed over the period and scaled to a full year, as a negative value.

  • Files: unit_inputNode_d_ee.parquet, unit__inputNode__d.csv
  • Rows: period; column levels: unit, node
  • every column: MWh/a, annualized
  • Results database: unit__node entity flow_annualized parameter
  • Counterpart at the other time resolution: unit_inputNode_dt_ee

unit_inputNode_dt_ee

Flow from each input node into each unit in each time step, as a negative value.

  • Files: unit_inputNode_dt_ee.parquet, unit__inputNode__dt.csv
  • Rows: period, time; column levels: unit, node
  • every column: MW, instantaneous
  • Results database: unit__node entity flow_t parameter
  • Counterpart at the other time resolution: unit_inputNode_d_ee

unit_outputNode_d_ee

Flow from each unit to each of its output nodes summed over the period and scaled to a full year.

  • Files: unit_outputNode_d_ee.parquet, unit__outputNode__d.csv
  • Rows: period; column levels: unit, node
  • every column: MWh/a, annualized
  • Results database: unit__node entity flow_annualized parameter
  • Counterpart at the other time resolution: unit_outputNode_dt_ee

unit_outputNode_dt_ee

Flow from each unit to each of its output nodes in each time step.

  • Files: unit_outputNode_dt_ee.parquet, unit__outputNode__dt.csv
  • Rows: period, time; column levels: unit, node
  • every column: MW, instantaneous
  • Results database: unit__node entity flow_t parameter
  • Counterpart at the other time resolution: unit_outputNode_d_ee

Capacity factors

See Capacity factors in Model outputs.

connection_cf_d_e

Capacity factor of each connection in each period: the absolute flow in either direction divided by the connection capacity and the period's hours.

  • Files: connection_cf_d_e.parquet, connection_cf__d.csv
  • Rows: period; column levels: connection
  • every column: dimensionless, ratio
  • Results database: connection__node__node entity cf parameter

unit_inputs_cf_d_ee

Capacity factor of each unit's input flow in each period: the period's flow divided by the unit capacity and the period's hours.

  • Files: unit_inputs_cf_d_ee.parquet, unit_cf__inputNode__d.csv
  • Rows: period; column levels: unit, source
  • every column: dimensionless, ratio
  • Results database: unit__node entity cf parameter

unit_outputs_cf_d_ee

Capacity factor of each unit's output flow in each period: the period's flow divided by the unit capacity and the period's hours.

  • Files: unit_outputs_cf_d_ee.parquet, unit_cf__outputNode__d.csv
  • Rows: period; column levels: unit, sink
  • every column: dimensionless, ratio
  • Results database: unit__node entity cf parameter

Energy balance in nodes

See Energy balance in nodes in Model outputs.

node_d_ep

Energy balance of each node by category, summed over the period and scaled to a full year.

  • Files: node_d_ep.parquet, node__d.csv
  • Rows: period; column levels: node, category
  • every column: MWh/a, annualized
  • Results database: node entity balance parameter
  • Counterpart at the other time resolution: node_dt_ep

node_dt_ep

Energy balance of each node in each time step by category: flows from and to units and connections, self-discharge, loss of load, excess load and inflow.

  • Files: node_dt_ep.parquet, node__dt.csv
  • Rows: period, time; column levels: node, category
  • every column: MW, instantaneous
  • Results database: node entity balance_t parameter
  • Counterpart at the other time resolution: node_d_ep

node_state_dt_e

Stored energy of each storage node at each time step.

  • Files: node_state_dt_e.parquet, node_state__dt.csv
  • Rows: period, time; column levels: node
  • every column: MWh, level
  • Results database: node entity state_t parameter

Unit online and startup

See Unit online and startup in Model outputs.

unit_online_average_d_e

Average number of units online of each unit with online variables over the period, weighted by step duration.

  • Files: unit_online_average_d_e.parquet, unit_online__d_average.csv
  • Rows: period; column levels: process
  • every column: units, average
  • Results database: unit entity online_average parameter
  • Counterpart at the other time resolution: unit_online_dt_e

unit_online_dt_e

Number of units online of each unit with online variables, in each time step.

  • Files: unit_online_dt_e.parquet, unit_online__dt.csv
  • Rows: period, time; column levels: process
  • every column: units, level
  • Results database: unit entity online_t parameter
  • Counterpart at the other time resolution: unit_online_average_d_e

unit_startup_d_e

Startups of each unit with online variables in the period, scaled to a full year.

  • Files: unit_startup_d_e.parquet, unit_startup__d.csv
  • Rows: period; column levels: process
  • every column: units/a, count
  • Results database: unit entity startup_cumulative parameter

unit_startup_energy_d_ee

Energy that the start-ups of each unit take from each of its start-up input nodes, summed over the period and scaled to a full year.

  • Files: unit_startup_energy_d_ee.parquet, unit_startup_energy__d.csv
  • Rows: period; column levels: unit, node
  • every column: MWh/a, annualized
  • Results database: unit__node entity startup_energy_annualized parameter
  • Counterpart at the other time resolution: unit_startup_energy_dt_ee

unit_startup_energy_dt_ee

Energy that the start-ups of each unit take from each of its start-up input nodes (startup_input_method) in each time step: startup_energy times the MW started. Also in the unit's input from the node, the commodity cost and CO2.

  • Files: unit_startup_energy_dt_ee.parquet, unit_startup_energy__dt.csv
  • Rows: period, time; column levels: unit, node
  • every column: MWh, per_step
  • Results database: unit__node entity startup_energy_t parameter
  • Counterpart at the other time resolution: unit_startup_energy_d_ee

Connection online and startup

See Connection online and startup in Model outputs.

connection_online_average_d_e

Average number of units online of each connection with a startup method over the period, weighted by step duration.

  • Files: connection_online_average_d_e.parquet, connection_online__d_average.csv
  • Rows: period; column levels: process
  • every column: units, average
  • Results database: connection entity online_average parameter
  • Counterpart at the other time resolution: connection_online_dt_e

connection_online_dt_e

Number of units online of each connection with a startup method, in each time step.

  • Files: connection_online_dt_e.parquet, connection_online__dt.csv
  • Rows: period, time; column levels: process
  • every column: units, level
  • Results database: connection entity online_t parameter
  • Counterpart at the other time resolution: connection_online_average_d_e

connection_startup_d_e

Startups of each connection with a startup method in the period, scaled to a full year.

  • Files: connection_startup_d_e.parquet, connection_startup__d.csv
  • Rows: period; column levels: process
  • every column: units/a, count
  • Results database: connection entity startup_cumulative parameter

Unit curtailment and VRE potential

See Unit curtailment and VRE potential in Model outputs.

unit_VRE_potential_outputNode_d_ee

Potential output of each VRE unit to each output node in the period, summed with the timestep weights and scaled to a full year (MWh/a).

  • Files: unit_VRE_potential_outputNode_d_ee.parquet, unit_outputNode_VRE_potential__d.csv
  • Rows: period; column levels: unit, sink
  • every column: MWh/a, annualized
  • Results database: not written there
  • Counterpart at the other time resolution: unit_VRE_potential_outputNode_dt_ee

unit_VRE_potential_outputNode_dt_ee

Potential output of each VRE unit to each output node in each time step: capacity times the upper-limit profile.

  • Files: unit_VRE_potential_outputNode_dt_ee.parquet, unit_outputNode_VRE_potential__dt.csv
  • Rows: period, time; column levels: unit, sink
  • every column: MW, instantaneous
  • Results database: not written there
  • Counterpart at the other time resolution: unit_VRE_potential_outputNode_d_ee

unit_curtailment_outputNode_d_ee

Curtailment of each VRE unit at each output node in the period, summed with the timestep weights and scaled to a full year (MWh/a).

  • Files: unit_curtailment_outputNode_d_ee.parquet, unit_curtailment__outputNode__d.csv
  • Rows: period; column levels: unit, sink
  • every column: MWh/a, annualized
  • Results database: not written there
  • Counterpart at the other time resolution: unit_curtailment_outputNode_dt_ee

unit_curtailment_outputNode_dt_ee

Curtailment of each VRE unit at each output node in each time step: the potential minus the actual output.

  • Files: unit_curtailment_outputNode_dt_ee.parquet, unit_curtailment__outputNode__dt.csv
  • Rows: period, time; column levels: unit, sink
  • every column: MW, instantaneous
  • Results database: unit__node entity curtailment_t parameter
  • Counterpart at the other time resolution: unit_curtailment_outputNode_d_ee

unit_curtailment_share_outputNode_d_ee

Curtailment of each VRE unit as a share of its potential output over the period.

  • Files: unit_curtailment_share_outputNode_d_ee.parquet, unit_outputNode_VRE_curtailment_share__d.csv
  • Rows: period; column levels: unit, sink
  • every column: dimensionless, ratio
  • Results database: unit__node entity curtailment_share parameter
  • Counterpart at the other time resolution: unit_curtailment_share_outputNode_dt_ee

unit_curtailment_share_outputNode_dt_ee

Curtailment of each VRE unit as a share of its potential output in each time step.

  • Files: unit_curtailment_share_outputNode_dt_ee.parquet, unit_outputNode_VRE_curtailment_share__dt.csv
  • Rows: period, time; column levels: unit, sink
  • every column: dimensionless, ratio
  • Results database: not written there
  • Counterpart at the other time resolution: unit_curtailment_share_outputNode_d_ee

Node group results

See Node group results in Model outputs.

nodeGroup_VRE_share_d_g

Share of the period's inflow (demand) of each indicator group covered by VRE units: the VRE energy over the inflow, both summed with the timestep weights.

  • Files: nodeGroup_VRE_share_d_g.parquet, group_node_VRE_share__d.csv
  • Rows: period; column levels: group
  • every column: dimensionless, ratio
  • Results database: not written there
  • Counterpart at the other time resolution: nodeGroup_VRE_share_dt_g

nodeGroup_VRE_share_dt_g

Share of the inflow (demand) of each indicator group covered by VRE units in each time step.

  • Files: nodeGroup_VRE_share_dt_g.parquet, group_node_VRE_share__dt.csv
  • Rows: period, time; column levels: group
  • every column: dimensionless, ratio
  • Results database: group entity VRE_share_t parameter
  • Counterpart at the other time resolution: nodeGroup_VRE_share_d_g

nodeGroup_VRE_share_g

Share of the inflow (demand) of each indicator group covered by VRE units over the whole horizon: the total VRE energy over the total inflow (each period scaled to a year and times its years represented).

  • Files: nodeGroup_VRE_share_g.parquet, group_node_VRE_share__horizon.csv
  • Rows: horizon; column levels: group
  • every column: dimensionless, ratio
  • Results database: not written there

nodeGroup_flows_d_g

Inflow summed over the member nodes of each indicator group, summed over the period and scaled to a full year.

  • Files: nodeGroup_flows_d_g.parquet, group_total_inflow__d.csv
  • Rows: period; column levels: group
  • every column: MWh/a, annualized
  • Results database: group entity flow_annualized parameter
  • Counterpart at the other time resolution: nodeGroup_flows_dt_g

nodeGroup_flows_d_gpe

Energy into and out of each dispatch group by type and item, summed over the period and scaled to a full year.

  • Files: nodeGroup_flows_d_gpe.parquet, group_flows__d.csv
  • Rows: period; column levels: group, type, item
  • every column: MWh/a, annualized
  • Results database: group entity sum_flow_annualized parameter
  • Counterpart at the other time resolution: nodeGroup_flows_dt_gpe

nodeGroup_flows_dt_g

Inflow summed over the member nodes of each indicator group (nodes with an inflow method) in each time step.

  • Files: nodeGroup_flows_dt_g.parquet, group_total_inflow__dt.csv
  • Rows: period, time; column levels: group
  • every column: MWh, per_step
  • Results database: group entity flow_t parameter
  • Counterpart at the other time resolution: nodeGroup_flows_d_g

nodeGroup_flows_dt_gpe

Energy in each time step into and out of each dispatch group by type (slack, units, unit groups, connections, connection groups, inflow, internal losses) and item.

  • Files: nodeGroup_flows_dt_gpe.parquet, group_flows__dt.csv
  • Rows: period, time; column levels: group, type, item
  • every column: MWh, per_step
  • Results database: group entity sum_flow_t parameter
  • Counterpart at the other time resolution: nodeGroup_flows_d_gpe

nodeGroup_g_p

Indicators of each indicator group over the whole horizon: loss of load, excess load and curtailment as shares of demand, the VRE share of demand and the curtailed share of the VRE potential, each a ratio of the energies over all periods (each period scaled to a year and times its years represented), and the inflow over the horizon.

  • Files: nodeGroup_g_p.parquet, group_node__horizon.csv
  • Rows: group; column levels: parameter
  • 1. Loss of load share: dimensionless, ratio
  • 2. VRE share of demand: dimensionless, ratio
  • 3. Excess load share: dimensionless, ratio
  • 4. Curtailed VRE of demand: dimensionless, ratio
  • 5. Inflow (horizon total): MWh, horizon
  • 6. Curtailed VRE of potential VRE: dimensionless, ratio
  • Results database: not written there

nodeGroup_gd_p

Indicators of each indicator group in each period: loss of load, excess load and curtailment as shares of demand, the VRE share of demand and the annualized inflow.

  • Files: nodeGroup_gd_p.parquet, group_node__d.csv
  • Rows: group, period; column levels: parameter
  • 1. Loss of load share: dimensionless, ratio
  • 2. VRE share of demand: dimensionless, ratio
  • 3. Excess load share: dimensionless, ratio
  • 4. Curtailed VRE of demand: dimensionless, ratio
  • 5. Annualized inflow: MWh/a, annualized
  • 6. Curtailed VRE of potential VRE: dimensionless, ratio
  • Results database: group entity indicator parameter
  • Counterpart at the other time resolution: nodeGroup_gdt_p

nodeGroup_gdt_p

Indicator building blocks of each indicator group in each time step: loss of load, VRE generation, excess load, curtailed VRE, inflow and VRE shares.

  • Files: nodeGroup_gdt_p.parquet, group_node__dt.csv
  • Rows: group, period, time; column levels: parameter
  • 1. Loss of load: MWh, per_step
  • 2. VRE generation: MWh, per_step
  • 3. Excess load: MWh, per_step
  • 4. Curtailed VRE: MWh, per_step
  • 5. Timestep inflow: MWh, per_step
  • 6. Curtailed VRE of potential VRE: dimensionless, ratio
  • 7. Annualized inflow: MWh/a, annualized
  • 8. VRE share of demand: dimensionless, ratio
  • Results database: not written there
  • Counterpart at the other time resolution: nodeGroup_gd_p

Flow group results

See Flow group results in Model outputs.

flowGroup_gd_p

Sum of the absolute flows of the member legs of each flow group in the period, summed with the timestep weights and scaled to a full year (cumulative_flow, MWh/a), and its average power (average_flow, MW).

  • Files: flowGroup_gd_p.parquet, group_flow__d.csv
  • Rows: group, period; column levels: parameter
  • cumulative_flow: MWh/a, annualized
  • average_flow: MW, average
  • Results database: not written there
  • Counterpart at the other time resolution: flowGroup_gd_t

flowGroup_gd_t

Signed net flow into the nodes of each flow group in each time step (into the group's nodes positive).

  • Files: flowGroup_gd_t.parquet, group_flow__dt.csv
  • Rows: group, period, time; column levels: parameter
  • every column: MW, instantaneous
  • Results database: not written there
  • Counterpart at the other time resolution: flowGroup_gd_p

Capacity and investment results

See Capacity and investment results in Model outputs.

connection_capacity_ed_p

Capacity of each connection in each period: existing, invested, in construction, divested and the total in service.

  • Files: connection_capacity_ed_p.parquet, connection_capacity__d.csv
  • Rows: connection, period; column levels: parameter
  • every column: MW, level
  • Results database: connection entity capacity parameter

dual_invest_effective_connection_d_e

Marginal value of one more unit of capacity of each investable connection in each period (positive: more capacity would lower the cost).

  • Files: dual_invest_effective_connection_d_e.parquet, connection_invest_marginal__d.csv
  • Rows: period; column levels: entity
  • every column: CUR/kW, price
  • Results database: connection entity invest_marginal parameter

dual_invest_effective_node_d_e

Marginal value of one more unit of storage capacity of each investable storage node in each period (positive: more capacity would lower the cost).

  • Files: dual_invest_effective_node_d_e.parquet, node_invest_marginal__d.csv
  • Rows: period; column levels: entity
  • every column: CUR/kWh, price
  • Results database: node entity invest_marginal parameter

dual_invest_effective_unit_d_e

Marginal value of one more unit of capacity of each investable unit in each period (positive: more capacity would lower the cost).

  • Files: dual_invest_effective_unit_d_e.parquet, unit_invest_marginal__d.csv
  • Rows: period; column levels: entity
  • every column: CUR/kW, price
  • Results database: unit entity invest_marginal parameter

node_capacity_ed_p

Storage capacity of each storage node in each period: existing, invested, in construction, divested and the total in service.

  • Files: node_capacity_ed_p.parquet, node_capacity__d.csv
  • Rows: node, period; column levels: parameter
  • every column: MWh, level
  • Results database: node entity capacity parameter

unit_capacity_ed_p

Capacity of each unit in each period: existing, invested, in construction, divested and the total in service.

  • Files: unit_capacity_ed_p.parquet, unit_capacity__d.csv
  • Rows: unit, period; column levels: parameter
  • every column: MW, level
  • Results database: unit entity capacity parameter

CO2 emissions

See CO2 emissions in Model outputs.

CO2__

CO2 emissions of the whole model totalled over the years the periods represent (one column per scenario path when a stochastic run has several).

  • Files: CO2__.parquet, co2.csv
  • Rows: param_CO2; column levels: scope
  • every column: Mt, horizon
  • Results database: not written there

CO2_d_g

Annual CO2 emissions of each CO2-priced or CO2-capped group, by period.

  • Files: CO2_d_g.parquet, group_CO2__d.csv
  • Rows: period; column levels: group
  • every column: t/a, annualized
  • Results database: group entity CO2_annualized parameter

process_co2_d_eee

Annual CO2 emissions of each unit and connection flow by commodity and node, by period (negative for a removal).

  • Files: process_co2_d_eee.parquet, process__d_co2.csv
  • Rows: period; column levels: type, process, commodity, node
  • every column: t/a, annualized
  • Results database: unit entity CO2_annualized parameter

Reserves

See Reserves in Model outputs.

nodeGroup_reserve_d_eegp

Reserve requirement, provision and shortfall of each reserve, direction and group in each period: time-step-weighted averages and step maxima.

  • Files: nodeGroup_reserve_d_eegp.parquet, reserve__upDown__group__d.csv
  • Rows: period; column levels: reserve, updown, node_group, quantity
  • requirement_avg: MW, average
  • provided_avg: MW, average
  • counted_avg: MW, average
  • shortfall_avg: MW, average
  • requirement_max: MW, level
  • shortfall_max: MW, level
  • Results database: group__reserve__upDown entity requirement parameter
  • Counterpart at the other time resolution: nodeGroup_reserve_dt_eegp

nodeGroup_reserve_dt_eegp

Reserve requirement of each reserve, direction and group in each time step: the need of the binding requirement row and the reserve it counts (for an n-1 row without the failing process's own reserve, so requirement − counted is the shortfall), the need of each method, the reserve provided and the shortfall.

  • Files: nodeGroup_reserve_dt_eegp.parquet, reserve__upDown__group__dt.csv
  • Rows: period, time; column levels: reserve, updown, node_group, quantity
  • every column: MW, level
  • Results database: group__reserve__upDown entity requirement_t parameter
  • Counterpart at the other time resolution: nodeGroup_reserve_d_eegp

nodeGroup_reserve_provider_dt_eegee

Counted reserve (× reliability) of each unit or connection at each node for each reserve, direction and group in each time step, summing to the group's provided reserve.

  • Files: nodeGroup_reserve_provider_dt_eegee.parquet, reserve__group__provider__dt.csv
  • Rows: period, time; column levels: reserve, updown, node_group, process, node
  • every column: MW, level
  • Results database: not written there

process_reserve_average_d_eppe

Reserve held by each unit or connection for each reserve, direction and node, the time-step-weighted average MW over the period's realized steps.

  • Files: process_reserve_average_d_eppe.parquet, process__reserve__upDown__node__d_average.csv
  • Rows: period; column levels: process, reserve, updown, node
  • every column: MW, average
  • Results database: unit__reserve__upDown__node entity reservation_average parameter
  • Counterpart at the other time resolution: process_reserve_upDown_node_dt_eppe

process_reserve_upDown_node_dt_eppe

Reserve held by each unit or connection for each reserve, direction and node in each time step.

  • Files: process_reserve_upDown_node_dt_eppe.parquet, process__reserve__upDown__node__dt.csv
  • Rows: period, time; column levels: process, reserve, updown, node
  • every column: MW, instantaneous
  • Results database: unit__reserve__upDown__node entity reservation_t parameter
  • Counterpart at the other time resolution: process_reserve_average_d_eppe

Inertia and non-synchronous generation

See Inertia and non-synchronous generation in Model outputs.

nodeGroup_inertia_dt_g

Inertia available in each inertia group in each time step.

  • Files: nodeGroup_inertia_dt_g.parquet, group_inertia__dt.csv
  • Rows: period, time; column levels: group
  • every column: MW·s, level
  • Results database: group entity inertia_t parameter

nodeGroup_inertia_largest_flow_dt_g

Largest single flow into the nodes of each inertia group in each time step.

  • Files: nodeGroup_inertia_largest_flow_dt_g.parquet, group_inertia_largest_flow__dt.csv
  • Rows: period, time; column levels: group
  • every column: MW, instantaneous
  • Results database: group entity inertia_largest_flow_t parameter

nodeGroup_unit_node_inertia_dt_gee

Inertia contribution of each unit or connection at each node of each inertia group in each time step.

  • Files: nodeGroup_unit_node_inertia_dt_gee.parquet, group__unit__node_inertia__dt.csv
  • Rows: period, time; column levels: group, process, node
  • every column: MW·s, level
  • Results database: group entity inertia_unit_node_t parameter

DC power flow

See DC power flow in Model outputs.

dc_angle_diff_dt_e

Voltage angle difference between the first and the second node of each DC power-flow connection in each time step.

  • Files: dc_angle_diff_dt_e.parquet, dc_angle_diff_dt_e.csv
  • Rows: period, time; column levels: connection
  • every column: rad, level
  • Results database: not written there

dc_angle_dt_e

Voltage angle of each DC power-flow node in each time step.

  • Files: dc_angle_dt_e.parquet, dc_angle_dt_e.csv
  • Rows: period, time; column levels: node
  • every column: rad, level
  • Results database: not written there

Slack and penalty values

See Slack and penalty values in Model outputs.

nodeGroup_capacity_margin_d_g

Capacity margin of each solve with investment periods, per group and investment period at the step with the largest deficit: the requirement, what firm, VRE, storage, other units, connections and consumption count, the shortfall, its penalty and the shadow price.

  • Files: nodeGroup_capacity_margin_d_g.parquet, capacity_margin__d.csv
  • Rows: solve, period, group, binding_time; column levels: parameter
  • every column: MW, level
  • penalty_cost: M CUR, discounted
  • capacity_price: CUR/kW/a, price
  • Results database: group entity capacity_margin parameter

nodeGroup_capacity_margin_entity_d_g

Contribution of each unit, connection and node to the capacity margin of each group at its binding step, per solve and investment period, summing to the counted capacity.

  • Files: nodeGroup_capacity_margin_entity_d_g.parquet, capacity_margin_entity__d.csv
  • Rows: solve, period, group, binding_time; column levels: class, entity
  • every column: MW, level
  • Results database: group entity capacity_margin_contribution parameter

nodeGroup_slack_capacity_margin_d_g

Capacity margin shortfall of each group in each investment period, not scaled to a year.

  • Files: nodeGroup_slack_capacity_margin_d_g.parquet, slack__capacity_margin__d.csv
  • Rows: period; column levels: group
  • every column: MW, level
  • Results database: group entity slack_capacity_margin parameter

nodeGroup_slack_inertia_dt_g

Inertia shortfall of each inertia group in each time step.

  • Files: nodeGroup_slack_inertia_dt_g.parquet, slack__inertia_group__dt.csv
  • Rows: period, time; column levels: group
  • every column: MW·s, level
  • Results database: group entity slack_inertia_t parameter
  • Counterpart at the other time resolution: nodeGroup_slack_inertia_d_g

nodeGroup_slack_nonsync_dt_g

Non-synchronous generation above the allowed share of each group in each time step.

  • Files: nodeGroup_slack_nonsync_dt_g.parquet, slack__nonsync_group__dt.csv
  • Rows: period, time; column levels: group
  • every column: MW, instantaneous
  • Results database: group entity slack_nonsync_t parameter
  • Counterpart at the other time resolution: nodeGroup_slack_nonsync_d_g

nodeGroup_slack_reserve_dt_eeg

Reserve shortfall of each reserve, direction and group in each time step.

  • Files: nodeGroup_slack_reserve_dt_eeg.parquet, slack__reserve__upDown__group__dt.csv
  • Rows: period, time; column levels: reserve, updown, node_group
  • every column: MW, instantaneous
  • Results database: group__reserve__upDown entity slack_reserve_t parameter
  • Counterpart at the other time resolution: nodeGroup_slack_reserve_d_eeg

Other

connection_dc_power_flow

Set of the connections in a DC power-flow network.

  • Files: connection_dc_power_flow.parquet, connection_dc_power_flow.csv
  • Membership set; its columns: connection
  • Results database: not written there

discountFactors_d_p

Operations and investment discount factors of each period (written only in a debug run).

  • Files: discountFactors_d_p.parquet, discount_factors__d.csv
  • Rows: period; column levels: param
  • every column: dimensionless, ratio
  • Results database: not written there

entity_annuity_d_p

Discounted investment cost per MW of the capacity of each unit, connection and storage node decided in a period (written only in a debug run).

  • Files: entity_annuity_d_p.parquet, entity_annuity.csv
  • Rows: solve, period; column levels: entity
  • every column: CUR/MW, discounted
  • Results database: not written there

flowGroupIndicators

Set of the flow groups with indicator output.

  • Files: flowGroupIndicators.parquet, flowGroupIndicators.csv
  • Membership set; its columns: group
  • Results database: not written there

group_node

Membership set: the nodes of each group.

  • Files: group_node.parquet, group_node.csv
  • Membership set; its columns: group, node
  • Results database: not written there

group_process

Membership set: the units and connections of each group.

  • Files: group_process.parquet, group_process.csv
  • Membership set; its columns: group, process
  • Results database: not written there

group_process_node

Membership set: the (unit or connection, node) flows of each group.

  • Files: group_process_node.parquet, group_process_node.csv
  • Membership set; its columns: group, process, node
  • Results database: not written there

nodeGroupDispatch

Set of the node groups with dispatch output (print_dispatch).

  • Files: nodeGroupDispatch.parquet, nodeGroupDispatch.csv
  • Membership set; its columns: group
  • Results database: not written there

nodeGroupIndicators

Set of the node groups with indicator output (print_indicators).

  • Files: nodeGroupIndicators.parquet, nodeGroupIndicators.csv
  • Membership set; its columns: group
  • Results database: not written there

nodeGroup_slack_inertia_d_g

Inertia shortfall of each inertia group summed over the period and scaled to a full year.

  • Files: nodeGroup_slack_inertia_d_g.parquet, slack__inertia_group__d.csv
  • Rows: period; column levels: group
  • every column: MW·s/a, annualized
  • Results database: not written there
  • Counterpart at the other time resolution: nodeGroup_slack_inertia_dt_g

nodeGroup_slack_nonsync_d_g

Non-synchronous generation above the allowed share of each group summed over the period and scaled to a full year.

  • Files: nodeGroup_slack_nonsync_d_g.parquet, slack__nonsync_group__d.csv
  • Rows: period; column levels: group
  • every column: MWh/a, annualized
  • Results database: not written there
  • Counterpart at the other time resolution: nodeGroup_slack_nonsync_dt_g

nodeGroup_slack_reserve_d_eeg

Reserve shortfall of each reserve, direction and group summed over the period and scaled to a full year.

  • Files: nodeGroup_slack_reserve_d_eeg.parquet, slack__reserve__upDown__group__d.csv
  • Rows: period; column levels: reserve, updown, node_group
  • every column: MWh/a, annualized
  • Results database: not written there
  • Counterpart at the other time resolution: nodeGroup_slack_reserve_dt_eeg

node_dc_power_flow

Set of the nodes in a DC power-flow network.

  • Files: node_dc_power_flow.parquet, node_dc_power_flow.csv
  • Membership set; its columns: node
  • Results database: not written there

node_inflow__dt

Inflow of each node in each time step as given to the model (demand is negative).

  • Files: node_inflow__dt.parquet, node_inflow__dt.csv
  • Rows: period, time; column levels: node
  • every column: MWh, per_step
  • Results database: not written there

node_slack_down_d_e

Downward slack (excess load) of each balanced node summed over the period and scaled to a full year.

  • Files: node_slack_down_d_e.parquet, slack__downward__node_state__d.csv
  • Rows: period; column levels: node
  • every column: MWh/a, annualized
  • Results database: not written there
  • Counterpart at the other time resolution: node_slack_down_dt_e

node_slack_down_dt_e

Downward slack (excess load) of each balanced node in each time step.

  • Files: node_slack_down_dt_e.parquet, slack__downward__node_state__dt.csv
  • Rows: period, time; column levels: node
  • every column: MW, instantaneous
  • Results database: not written there
  • Counterpart at the other time resolution: node_slack_down_d_e

node_slack_up_d_e

Upward slack (loss of load) of each balanced node summed over the period and scaled to a full year.

  • Files: node_slack_up_d_e.parquet, slack__upward__node_state__d.csv
  • Rows: period; column levels: node
  • every column: MWh/a, annualized
  • Results database: not written there
  • Counterpart at the other time resolution: node_slack_up_dt_e

node_slack_up_dt_e

Upward slack (loss of load) of each balanced node in each time step.

  • Files: node_slack_up_dt_e.parquet, slack__upward__node_state__dt.csv
  • Rows: period, time; column levels: node
  • every column: MW, instantaneous
  • Results database: not written there
  • Counterpart at the other time resolution: node_slack_up_d_e

timeline_breaks

Realized time steps at which a time-series plot starts a new line (gaps, representative period starts, periods that do not continue the previous one).

  • Files: timeline_breaks.parquet, timeline_breaks.csv
  • Membership set; its columns: period, time
  • Results database: not written there

unit_ramp_inputs_dt_ee

Change of each unit's input flow from the previous time step.

  • Files: unit_ramp_inputs_dt_ee.parquet, unit_ramp__inputNode__dt.csv
  • Rows: period, time; column levels: unit, source
  • every column: MW, instantaneous
  • Results database: unit__node entity ramp_t parameter

unit_ramp_outputs_dt_ee

Change of each unit's output flow from the previous time step.

  • Files: unit_ramp_outputs_dt_ee.parquet, unit_ramp__outputNode__dt.csv
  • Rows: period, time; column levels: unit, sink
  • every column: MW, instantaneous
  • Results database: unit__node entity ramp_t parameter