DataInput

Input

Input datasets can be grouped into categories according to the following image.

Input data categories
Figure 0: Input data categories

The input data can be changed in the according interfaces. The configuration of the technical setup of the simulation procedure can be changed in the project configuration. The project configurations are equal for all scenarios belonging to the same project except the simulation start and end date. The simulation start and end date is used from the scenario configuration.

Input file overview

Maon uses the following input files by default formatted in comma-separated values (CSV):

filetypedescription
10_demands_spot.csvtimeseriesDemands at spot markets without price elasticity
11_demands_fcr.csvtimeseriesDemands at symmetric Frequency Containment Reserve markets without price elasticity
12_demands_afrr_positive.csvtimeseriesDemands at positive automatic Frequency Restoration Reserve markets without price elasticity
13_demands_afrr_negative.csvtimeseriesDemands at negative automatic Frequency Restoration Reserve markets without price elasticity
14_demands_mfrr_positive.csvtimeseriesDemands at positive manual Frequency Restoration Reserve markets without price elasticity
15_demands_mfrr_negative.csvtimeseriesDemands at negative manual Frequency Restoration Reserve markets without price elasticity
20_dsr_consumers.csvcomponentDemand-Side Responses defined by name, technology, power, maximum shift time and cost
21_dsr_potentials.csvfrom-until-timeseriesDemand-Side Response spot and reserve power potentials, maximum shift times and costs
22_dsr_mustruns_outages_revisions.csvfrom-until-timeseriesDemand-Side Response mustruns, outages, and revisions
23_dsr_restrictions_work.csvfrom-until-timeseriesDemand-Side Response time-coupled work restrictions
24_dsr_availabilities.csvfrom-until-timeseriesDemand-Side Response total power availabilities
30_battery_storages.csvcomponentBattery storages defined by name, technology, power, capacity and cost
31_battery_mustruns_outages_revisions.csvfrom-until-timeseriesBattery mustruns, outages, and revisions
32_battery_states_of_charge.csvfrom-until-timeseriesBattery states of charge restrictions
33_battery_availabilities.csvfrom-until-timeseriesBattery total power availabilities
40_bioenergy_power_plants.csvtimeseriesBioenergy power plant feed-ins per bidding zone without price elasticity
50_solar_power_plants.csvtimeseriesSolar power plant feed-ins per bidding zone without price elasticity
60_wind_onshore_power_plants.csvtimeseriesWind onshore power plant feed-ins per bidding zone without price elasticity
61_wind_offshore_power_plants.csvtimeseriesWind offshore power plant feed-ins per bidding zone without price elasticity
70_hydro_power_plants.csvcomponentHydro turbines and pumps defined by name, technology, power, connected reservoirs and cost
71_hydro_mustruns_outages_revisions.csvfrom-until-timeseriesHydro turbine and pump mustruns, outages, and revisions
72_hydro_reservoirs.csvcomponentHydro reservoirs defined by name and storage volume
73_hydro_reservoir_inflows.csvfrom-until-timeseriesHydro reservoir inflows
74_hydro_reservoir_filling_levels.csvfrom-until-timeseriesHydro reservoir filling level restrictions
75_hydro_availabilities.csvfrom-until-timeseriesHydro turbine and pump total power availabilities
79_hydro_run_of_river_power_plants.csvtimeseriesRun-of-river hydro power plant feed-ins per bidding zone without price elasticity
80_thermal_power_plants.csvcomponentThermal power plants defined by name, technology, fuel, power, minimum times and cost
81_thermal_prices_fuel.csvfrom-until-timeseriesThermal power plant fuel costs and emission intensities
82_thermal_prices_emission.csvfrom-until-timeseriesThermal power plant emission allowance costs
83_thermal_mustruns_outages_revisions.csvfrom-until-timeseriesThermal power plant mustruns, outages, and revisions
84_thermal_restrictions_fuel.csvfrom-until-timeseriesThermal power plant time-coupled fuel restrictions
85_thermal_restrictions_emission.csvfrom-until-timeseriesThermal power plant time-coupled emission restrictions
86_thermal_availabilities.csvfrom-until-timeseriesThermal power plant total power availabilities
89_thermal_cogeneration_plants.csvtimeseriesCogeneration power plant feed-ins per bidding zone without price elasticity
90_grid_bidding_zones.csvcomponentBidding zones defined by name, connected component types and aggregations
91_grid_ntcs.csvfrom-until-timeseriesExchange capacities through net transfer capacities
92_grid_cntcs.csvfrom-until-timeseriesExchange capacities through coordinated net transfer capacities
93_grid_fbmc_cnecs.csvfrom-until-timeseriesExchange capacities through flow-based market couplings as critical elements and contingencies
94_grid_fbmc_ahcs.csvfrom-until-timeseriesExchange capacities through flow-based market couplings as advanced hybrid couplings
95_grid_reserve_exchanges.csvfrom-until-timeseriesExchange capacities for frequency reserves
96_grid_mustruns_outages_revisions.csvfrom-until-timeseriesExchange mustruns, outages, and revisions
97_grid_availabilities.csvfrom-until-timeseriesExchange total power availabilities
98_grid_external_exports.csvtimeseriesPer bidding zone aggregated commercial export at system border as outgoing exchange
99_grid_external_imports.csvtimeseriesPer bidding zone aggregated commercial import at system border as ingoing exchange

Files of type timeseries contain hourly value series for each bidding zone. Files of type component specify individual components by their names and characteristics. The from-until-timeseries type defines segmented timeseries based on specified start and end intervals.

Key words

The header of input files must be defined in the first row with specifiers. Other rows and columns can be set in any order. Timeseries have the key word hour and bidding zone names as a header. Component and combined files include header specifiers that can be labeled with following keywords.

keyworddescriptionexample
no keywordNon-optional model pamameterbidding_zone
_optOptional model parameterscost_opt(EUR/MWh)
_auxData storing parametersyear_commission_aux
_metaMetadataeic_meta

Entries for _opt can be left out completely or can be given only for selected components (others blank). If such parameters are not set, default values are used (data enrichment with best guess, see enrichment). Header specifiers labeled with the keyword _aux are ignored by the simulation core, but used by the data storing during processings and visualizations like decommission year, component validity or geographical coordinates. Header specifiers labeled with the keyword _meta are ignored, but saved for additional information like uniquely assigned Energy Identification Code (EIC) or voltage level (see metadata). Units in brackets inside header specifiers cannot be changed or omitted.

Time stamps can be given either as hour numbers (1, 2, 3, …) or with from and until time stamps (DDMMYY@HH:MM). From and until time stamps can cover multiple time intervals so that corresponding definitions can be summarized into one entry. Hour numbers relate to the hour number in the time range of the according scenario. If for example the scenario from time stamp lies at 010118@00:00, the hour number 1 relates to the time interval between 010118@00:00 and 010118@01:00, the hour number 2 relates to the time interval between 010118@01:00 and 010118@02:00 and so on.

All input file names can be customized in the project configuration.

Configurations

The configuration comprises parameters in the file 00_configurations.txt (key-value-file). In this configuration file the column delimiter is =. By leaving configuration parameters default values are used. Configurations can be exported and imported via the text file or edited in the project configuration front-end. The parameters define loaded files, preprocessings, simulation procedures, postprocessings and written out files. Configuration parameters customize folder names, file names, descriptor names, default assumptions, checks, procedure steps, optimizer configurations, model configurations, model variations, procedure variations and read-out configurations. Every configuration parameter and the total configuration combination are checked for validity and consistency. In case of missing validity or consistency the user receives a problem description and a solution proposal in the data check. Default values, possible values, the current setup and explanations for every parameter can be looked up at the project configuration in the front-end.

The minimum configuration file includes the simulation start time stamp and the simulation end time stamp. Maon writes both parameters automatically in the file based on the selected scenario. For example:

procedure_interval_start = 010118@00:00
procedure_interval_end = 311218@24:00

If there were no start and end time stamps set manually during the scenario creation, then the application sets such dates automatically according to the scenario year. The used configuration parameters are written out in the subfolder output/reference. In addition, the complete considered input data model is written out. This reference dataset includes input parameters provided by the user and it includes all enriched input parameters provided by Maon. This documentation refers to default configurations, names and formats. Apart from the the overall configuration, build-in aggregations can be enabled in 90_grid_bidding_zones.csv. Then components are aggregated during the preprocessing (see preprocessing).

Input taxonomy

In this section the taxonomy of every input file is explained. The taxonomy includes the definition for each single statement.

Demand

Spot demands

10_demands_spot.csv defines the price-inelastic spot market demand per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. For example:

hourALATBA
188466861318
274964291261
362961671201

FCR demands

11_demands_fcr.csv defines the price-inelastic symmetric Frequency Containment Reserve (FCR) market demand per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand. It defines the spot market demand as a constant value during the hour per bidding zone.

Positive aFRR demands

12_demands_afrr_positive.csv defines the price-inelastic positive automatic Frequency Restoration Reserve (aFRR) market demand per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Negative aFRR demands

13_demands_afrr_negative.csv defines the price-inelastic negative automatic Frequency Restoration Reserve (aFRR) market demand per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Positive mFRR demands

14_demands_mfrr_positive.csv defines the price-inelastic positive manual Frequency Restoration Reserve (mFRR) market demand per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Negative mFRR demands

15_demands_mfrr_negative.csv defines the price-inelastic negative manual Frequency Restoration Reserve (mFRR) market demand per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

DSR

DSR consumers

20_dsr_consumers.csv defines the price-dependent demand-side response consumers with the following schema:

bidding_zoneconsumertech(EC/EH/EL/EV/IC/OT)
ALIndustry_twowayIC
ALIndustry_shift_1_hourIC
ALIndustry_shift_3_hoursIC

The parameter tech(EC/EH/EL/EV/IC/OT) sets the technology to one of the following categories used for enrichment of missing optional values and grouping components in the output.

AbbreviationDemand technology category
ECElectric Cooler
EHElectric Heater
ELElectrolyzer
EVElectric Vehicle
ICIndustrial Consumer
OTOther

Additionally, 20_dsr_consumers.csv can define the following optional spot parameters:

p_max_load_increase_opt(MW)p_max_load_decrease_opt(MW)max_shift_opt(h)efficiency_shift_opt(%)cost_opt(EUR/MWh)
10100950
1001950
053950

The exogenous initial load (before DSR load-shift or load-adjustment) is defined in the spot demand file 10_demands_spot.csv.

During the time frame between time_stamp_from and time_stamp_until the consumer in bidding_zone can increase the load up to p_max_up_opt(MW) and decrease the load up to p_max_down_opt(MW) via load-shifts in time up to max_shift_opt(h). The parameter efficiency_shift_opt(%) sets the efficiency for a load-shift into this time frame resulting in a load-increase. The parameter cost_opt(EUR/MWh) sets the work cost (also called activation price).

Additionally, 20_dsr_consumers.csv can define the following optional reserve parameters:

p_max_fcr_opt(MW)p_max_afrr_pos_opt(MW)p_max_afrr_neg_opt(MW)p_max_mfrr_pos_opt(MW)p_max_mfrr_neg_opt(MW)
25555

p_max_fcr_opt(MW) defines the maximum symmetric Frequency Containment Reserve (FCR) provision of the flexible demand component. p_max_afrr_pos_opt(MW) and p_max_afrr_neg_opt(MW) set the maximum positive and negative automatic Frequency Restoration Reserve (aFRR) provision. p_max_mfrr_pos_opt(MW) and p_max_mfrr_neg_opt(MW) set the maximum positive and negative manual Frequency Restoration Reserve (mFRR) provision. Reserve product signs are in line with the generator reference-arrow system, so positive reserve provisions require downward load potentials and negative reserve provisions require upward load potentials. Due to the flexible reserve activation, reserve provision potentials cannot be assigned to load-shifts, but to load-increase, load-decrease and twoway load adjustments. To simulate more than one reserve per direction (e.g., more than one positive and one negative quality) or to simulate the FCR, the detailed reserve module must be activated in the configuration via parameter demand_reserves_high_resolution.

DSR potentials

21_dsr_potentials.csv defines time-depebndend demand-side response potentials with the following schema:

bidding_zoneconsumertime_stamp_fromtime_stamp_until
ALIndustry_twoway13
ALIndustry_twoway424

Additionally, for every rime range, the following optional potentials can be set.

p_max_load_increase_opt(MW)p_max_load_decrease_opt(MW)p_max_fcr_opt(MW)p_max_afrr_pos_opt(MW)p_max_afrr_neg_opt(MW)p_max_mfrr_pos_opt(MW)p_max_mfrr_neg_opt(MW)max_shift_opt(h)efficiency_shift_opt(%)cost_opt(EUR/MWh)
55
7510

DSR mustruns, outages and revisions

22_dsr_mustruns_outages_revisions.csv defines optional exogenous mustruns, outages, and revisions of DSR consumers with the following schema:

bidding_zoneconsumertype_availability(mustrun/outage/revision)time_stamp_fromtime_stamp_until
ALIndustry_twowayoutage510
ALIndustry_twowayrevision555

Additionally, 22_dsr_mustruns_outages_revisions.csv can specify for every event following optional parameters:

p_max_load_increase_opt(MW)p_min_load_increase_opt(MW)p_max_load_decrease_opt(MW)p_min_load_decrease_opt(MW)
10000
55000

For the time frame between time_stamp_from and time_stamp_until the maximum load-increase is restricted to the valus p_max_load_increase_opt(MW) and the maximum load-decrease power to p_max_load_decrease_opt(MW).

DSR work restrictions

23_dsr_restrictions_work.csv defines the time-dependent work restrictions of demand-side response consumers with following schema:

bidding_zonerestrictionconsumertime_stamp_fromtime_stamp_until
ALMinimum_productionIndustry_twoway11
ALMinimum_productionIndustry_twoway22

Additionally, 23_dsr_restrictions_work.csv can specify following optional parameters:

load_increase_max_opt(MWh)load_increase_min_opt(MWh)
105
2010

If a work restriction specifies minimum and maximum load-increase values, the linked DSR consumers have to dispatch within the defined work range.

DSR availabilities

24_dsr_availabilities.csv defines the availabilities of demand-side response consumers with following schema:

bidding_zonetech(EC/EH/EL/EV/IC/OT)type_availability(outage/revision)time_stamp_fromtime_stamp_untilavailability(%)
ALICoutage1876099
ALICrevision1876099

The outage and revision drawing is carried out for every outage and revision cluster defined by bidding_zone and tech(EC/EH/EL/EV/IC/OT) in the system as well as time_stamp_from and time_stamp_until in time. availability(%) defines the average work availability of this cluster.

Additionally, for every outage and revision cluster, the following optional drawing parameters can be set.

event_duration_expectation_opt(h)event_duration_deviation_opt(h)
3624

The parameters event_duration_expectation_opt(h) and event_duration_deviation_opt(h) define the mean and standard deviation of the normal distribution for outage or revision event durations specified in the file line.

Battery

Battery storages

30_battery_storages.csv defines the price-dependent battery energy storage systems with the following schema:

bidding_zonebatterytech(LA/LI/RF/SS)capacity(MWh)p_max_charge(MW)
ALLead_Acid_BatteryLA55
ALLithium_Ion_BatteryLI23

The parameter battery sets the battery in the bidding zone bidding_zone with the maximum storage capacity of capacity(MWh) and the maximum charge power p_max_charge(MW). The parameter tech(LA/LI/RF/SS) sets the technology to one of the following categories used for enrichment of missing optional values and grouping components in the output.

AbbreviationBattery technology category
LALead-Acid
LILithium-Ion
RFRedox-Flow
SSSodium-Sulfur

Additionally, 30_battery_storages.csv can define the following optional discharge, efficiency, state and cost parameters:

p_max_discharge_opt(MW)efficiency_charge_opt(%)efficiency_discharge_opt(%)self_discharge_opt(%/h)state_of_charge_start_opt(MWh)state_of_charge_end_opt(MWh)cost_opt(EUR/MWh)
587870.0000082.52.50
395950.000071110

p_max_discharge_opt(MW) customizes the maximum discharge power, efficiency_charge_opt(%) the charge efficiency and efficiency_discharge_opt(%) the discharge efficiency. Efficiencies do not influence the maximum power, but changes in the state of charge resulting from charging and discharging. self_discharge_opt(%/h) defines the discharge rate of the current absolute state of charge. The parameters state_of_charge_start_opt(MWh) and state_of_charge_end_opt(MWh) define the absolute state of charge at start and end of the simulation time frame. Further, variable cost for discharging and charging can be defined via cost_opt(EUR/MWh).

Additionally, 30_battery_storages.csv can define the following optional reserve parameters:

p_max_fcr_opt(MW)p_max_afrr_pos_opt(MW)p_max_afrr_neg_opt(MW)p_max_mfrr_pos_opt(MW)p_max_mfrr_neg_opt(MW)
25555

p_max_fcr_opt(MW) defines the maximum symmetric Frequency Containment Reserve (FCR) provision of the battery. p_max_afrr_pos_opt(MW) and p_max_afrr_neg_opt(MW) set the maximum positive and negative automatic Frequency Restoration Reserve (aFRR) provision. p_max_mfrr_pos_opt(MW) and p_max_mfrr_neg_opt(MW) set the maximum positive and negative manual Frequency Restoration Reserve (mFRR) provision. Reserve product signs are in line with the generator reference-arrow system, so positive reserve provisions require discharging potentials and negative reserve provisions require charging potentials. To simulate more than one reserve per direction (e.g., more than one positive and one negative quality) or to simulate the FCR, the detailed reserve module must be activated in the configuration via parameter demand_reserves_high_resolution.

Battery mustruns, outages and revisions

31_battery_mustruns_outages_revisions.csv defines exogenous mustruns, outages, and revisions of battery storages with the following schema:

bidding_zonebatterytime_stamp_fromtime_stamp_until
ALLead_Acid_Battery876876
ALLithium_Ion_Battery876876

Additionally, 31_battery_mustruns_outages_revisions.csv can define for every event the following optional parameters:

p_max_charge_opt(MW)p_max_discharge_opt(MW)
00
10

For the time frame between time_stamp_from and time_stamp_until the maximum charging power is restricted to the values p_max_charge_opt(MW) and the maximum discharging power to p_max_discharge_opt(MW).

Battery states of charge

32_battery_states_of_charge.csv defines optional exogenous must-haves of batteries with the following schema:

bidding_zonebatterytime_stamp_fromtime_stamp_until
ALLead_Acid_Battery744744
ALLithium_Ion_Battery744744

Additionally, 32_battery_states_of_charge.csv can define for every event the following optional parameters:

state_of_charge_max_opt(MWh)state_of_charge_min_opt(MWh)
55
0.10

During the time frame between time_stamp_from and time_stamp_until the battery in bidding_zone needs to keep the state of charge between state_of_charge_max_opt(MWh) and state_of_charge_min_opt(MWh).

Battery availabilities

33_battery_availabilities.csv defines the availabilities of battery storages with following schema:

bidding_zonetech(LA/LI/RF/SS)type_availability(outage/revision)time_stamp_fromtime_stamp_untilavailability(%)
ALLIoutage1876095
ALLIrevision1876095

The outage and revision drawing is carried out for every outage and revision cluster defined by bidding_zone and tech(LA/LI/RF/SS) in the system as well as time_stamp_from and time_stamp_until in time. availability(%) defines the average work availability of this cluster.

Additionally, 33_battery_availabilities.csv can define for every outage and revision cluster, the following optional drawing parameters.

event_duration_expectation_opt(h)event_duration_deviation_opt(h)
3624

The parameters event_duration_expectation_opt(h) and event_duration_deviation_opt(h) define the mean and standard deviation of the normal distribution for outage or revision event durations specified in the file line.

Renewable

Bioenergy power plants

40_bioenergy_power_plants.csv defines the price-inelastic feed-in of bioenergy power plants per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Solar power plants

50_solar_power_plants.csv defines the price-inelastic feed-in of solar power plants per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Wind onshore power plants

60_wind_onshore_power_plants.csv defines the price-inelastic feed-in of wind onshore power plants per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Wind offshore power plants

61_wind_offshore_power_plants.csv defines the price-inelastic feed-in of wind offshore power plants per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Hydro

Hydro power plants

70_hydro_power_plants.csv defines hydro turbines and hydro pumps with the following non-optional entries:

bidding_zoneconnectionreservoir_fromreservoir_totech(FT/FP/PT/KT)p_max(MW)
ALFrancis_turbineupper_reservoirlower_reservoirFT73

The parameter connection states a component where hydro flows can occur from reservoir_from to reservoir_to. The parameter tech(FT/FP/PT/KT) sets the technology to one of the following categories used for enrichment of missing optional values and grouping components in the output.

AbbreviationHydro technology category
FTFrancis Turbine
FPFrancis Pump
PTPelton Turbine
KTKaplan Turbine

Francis turbines with pump possibility via reverse spin need to be defined with two rows (FT and FP). Francis turbines without using the pump possibility need to be defined with one row (only FT). p_max(MW) customizes the net maximum power for the spot market.

Additionally, 70_hydro_power_plants.csv can define the following optional power, efficiency, reserve and cost parameters:

p_min_opt(MW)height_of_fall_opt(m)efficiency_opt(%)p_max_fcr_opt(MW)p_max_afrr_pos_opt(MW)p_max_afrr_neg_opt(MW)p_max_mfrr_pos_opt(MW)p_max_mfrr_neg_opt(MW)cost_opt(EUR/MWh)
580943303030300.1

p_min(MW) customizes the net minimum power for the spot market, height_of_fall_opt(m) the height of fall and efficiency_opt(%) the efficiency of the turbine and respectively of the pump. Efficiencies do not influence the maximum power, but set the water-sided maximum flows. p_max_fcr_opt(MW) defines the maximum symmetric Frequency Containment Reserve (FCR) provision of the power plant in on-state. p_max_afrr_pos_opt(MW) and p_max_afrr_neg_opt(MW) set the maximum positive and negative automatic Frequency Restoration Reserve (aFRR) provision of the power plant in on-state. p_max_mfrr_pos_opt(MW) and p_max_mfrr_neg_opt(MW) set the maximum positive and negative manual Frequency Restoration Reserve (mFRR) provision of the power plant in on-state. To simulate more than one reserve per direction (e.g., more than one positive and one negative quality) or to simulate the FCR, the detailed reserve module must be activated in the configuration via parameter demand_reserves_high_resolution. Further, variable generation or consumption cost can be defined via cost_opt(EUR/MWh).

To keep hydro networks solvable at all times, endogenous inflows, overflows (also known as spillover or spillage) and outflows are automatically defined as slack variables. Internally, the optimization sub-problem for hydro has hydro flows and filling levels as decision variables.

Degrees of freedom of decision variables are set automatically based on the defined parameters. At least the connected bidding zone, component name, source and target reservoir, technology and maximum power need to be defined for a turbine or pump. Reservoirs need at least the connected bidding zone, component name and capacity. Missing other optional parameters are internally assumed based on the remaining given assumptions. It is not mandatory to set up cost thresholds and target filling levels for hydro power in the input data. Those would be then the output of the model since market incentives and component characteristics define the opportunity cost of hydro power plants.

Hydro mustruns, outages and revisions

71_hydro_mustruns_outages_revisions.csv defines exogenous mustruns, outages, and revisions of hydro turbines and hydro pumps with the following schema:

bidding_zoneconnectiontime_stamp_fromtime_stamp_until
ALFrancis_turbine8762000

Additionally, 71_hydro_mustruns_outages_revisions.csv can define for every event the following optional parameters:

p_max_opt(MW)p_min_opt(MW)
400

For the time frame between time_stamp_from and time_stamp_until the maximum power is restricted to the values p_max_opt(MW) and p_min_opt(MW).

Hydro reservoirs

72_hydro_reservoirs.csv defines reservoirs with the following schema:

bidding_zonereservoir
ALupper_reservoir
ALlower_reservoir

Reservoirs are water sources or sinks of hydro turbines and pumps.

Additionally, 72_hydro_reservoirs.csv can define the following optional capacities:

capacity_opt(MWh)spatial_capacity_opt(m^3)
150000
1000000

If capacities are not provided, the reservoir default capacity of zero is assumed. Capacities can be given either in MWh or in m^3. Mixed usage across reservoirs is legitimate (e.g., capacity_opt(MWh) for upper_reservoir and _spatial_capacity_opt(m^3) for lower_reservoir). Providing values in capacity_opt(MWh) and spatial_capacity_opt(m^3) for the same reservoir leads to their addition.

Additionally, 72_hydro_reservoirs.csv can define the following optional state parameters:

start_filling_level_opt(MW)end_filling_level_opt(MWh)spatial_start_filling_level_opt(m^3)spatial_end_filling_level_opt(m^3)leakage_opt(%/h)
75000750000.1

Such define the reservoir filling level before and after the optimization time frame. If none is set, 50 % filling level according to the maximum is assumed. The leakage factor defines the hourly relative losses of the storage. Leaked water will flow to the lower reservoirs.

Hydro reservoir inflows

73_hydro_reservoir_inflows.csv defines optional exogenous inflows with the following schema:

bidding_zonereservoirtime_stamp_fromtime_stamp_untilinflow_opt(MWh/h)spatial_inflow_opt(m^3/h)
ALupper_reservoir1105
ALupper_reservoir118760125

Inflows can be given either in columns inflow_opt(MWh/h) or spatial_inflow_opt(m^3/h). Such can be given due to rain, snowmelt or (not endogenously modeled) upstream water inflows.

Hydro reservoir filling levels

74_hydro_reservoir_filling_levels.csv defines optional exogenous must-haves of reservoirs with the following schema:

bidding_zonereservoirtime_stamp_fromtime_stamp_untilfilling_level_max_opt(MWh)filling_level_min_opt(MWh)spatial_filling_level_max_opt(m^3)spatial_filling_level_min_opt(m^3)
ALupper_reservoir174412500025000

Optional must-haves can be given either in MWh or in m^3. MWh and m^3 cannot be defined for a restriction at the same time. Such restrictions can be given for example due to local water resource laws.

Hydro availabilities

75_hydro_availabilities.csv defines the availabilities of hydro turbines and pumps with following schema:

bidding_zonetech(FT/FP/PT/KT)type_availability(outage/revision)time_stamp_fromtime_stamp_untilavailability(%)
ALFToutage1876095
ALFTrevision1876095

The outage and revision drawing is carried out for every outage and revision cluster defined by bidding_zone and tech(FT/FP/PT/KT) in the system as well as time_stamp_from and time_stamp_until in time. availability(%) defines the average work availability of this cluster.

Additionally, for every outage and revision cluster, the following optional drawing parameters can be set.

event_duration_expectation_opt(h)event_duration_deviation_opt(h)
3624

The parameters event_duration_expectation_opt(h) and event_duration_deviation_opt(h) define the mean and standard deviation of the normal distribution for outage or revision event durations specified in the file line.

Hydro run of river power plants

79_hydro_run_of_river_power_plants.csv defines the price-inelastic feed-in of run-of-river power plants per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Thermal

Thermal power plants

80_thermal_power_plants.csv defines thermal turbines with following non-optional entries:

bidding_zoneunittech(CC/GT/ST)fuelp_max(MW)efficiency_p_max(%)
ALVLOREGTGAS110045.1585

fuel defines the used fuel type and its costs. p_max(MW) sets the technical net maximum power for the spot market and efficiency_p_max_opt(%) the according efficiency. Efficiencies do not influence the maximum power, but set the necessary fuel consumption, emissions and so the generation cost. The parameter tech(CC/GT/ST) sets the technology to one of the following categories used for enrichment of missing optional values and grouping components in the output.

AbbreviationThermal technology category
CCCombined Cycle
GTGas Turbine
STSteam Turbine

Additionally, 80_thermal_power_plants.csv can define the following optional flexibility and efficiency parameters:

p_min_opt(MW)efficiency_p_min_opt(%)on_min_opt(h)off_min_opt(h)unit_downstream_opt
5535.858555

p_min_opt(MW) sets the technical minimum power and efficiency_p_min_opt(%) the according efficiency. on_min_opt(h) and off_min_opt(h) define the minimum time length of on and off states. For modeling combined cycles, the optional parameter unit_downstream_opt can be used. This parameter links two turbines: The turbine with the parameter entry is the upstream unit and the unit to which is referred to is the downstream unit. If this parameter is set, the downstream unit can be one in operation jointly with the upstream unit. If the upstream unit is off, the downstream unit will be off as well. The upstream unit can be freely in operation, if it is not considered a downstream unit from any other unit. Upstream and downstream units can be defined freely to simulate complex combined cycle gas and steam turbine systems.

Additionally, 80_thermal_power_plants.csv can define the following optional reserve parameters:

p_max_fcr_opt(MW)p_max_afrr_pos_opt(MW)p_max_afrr_neg_opt(MW)p_max_mfrr_pos_opt(MW)p_max_mfrr_neg_opt(MW)p_max_mfrr_pos_start_opt(MW)
43030303020

p_max_fcr_opt(MW) defines the maximum symmetric Frequency Containment Reserve (FCR) provision of the power plant in on-state. p_max_afrr_pos_opt(MW) and p_max_afrr_neg_opt(MW) set the maximum positive and negative automatic Frequency Restoration Reserve (aFRR) provision of the power plant in on-state. p_max_mfrr_pos_opt(MW) and p_max_mfrr_neg_opt(MW) set the maximum positive and negative manual Frequency Restoration Reserve (mFRR) provision of the power plant in on-state. For off-state p_max_mfrr_pos_start_opt(MW) defines the maximum positive mFRR contribution. To simulate more than one reserve per direction (e.g., more than one positive and one negative quality) or to simulate the FCR, the detailed reserve module must be activated in the configuration via parameter demand_reserves_high_resolution.

Additionally, 80_thermal_power_plants.csv can define the following optional cost parameters:

cost_add_work_opt(EUR/MWh)cost_add_time_opt(EUR/h)cost_start_opt(EUR/start)fuel_cold_start_opt(GJ/start)cooling_time_constant_opt(h)
1.10.212502001

cost_add_opt(EUR/MWh) and cost_add_opt(EUR/h) define the additional variable operation and maintenance costs (additional to fuel, transportation, emission allowance and start-up). cost_start_opt(EUR/start) defines the fixed costs per start-up (not dependent on previous state). fuel_cold_start_opt(GJ/start) defines the additional fuel costs per start-up. cooling_time_constant_opt(h) the cooling time constant. Depending on the state off time (cooling time), the variable start costs are defined together by fuel_cold_start_opt(GJ/start) and cooling_time_constant_opt(h).

Additionally, 80_thermal_power_plants.csv can define the following optional start and end state parameters:

state_before_opt(0/1)state_time_before_opt(h)state_after_opt(0/1)state_time_after_opt(h)
11681168

state_before_opt(0/1) and state_after_opt(0/1) define the state of the power plant before and after the total optimization time frame set in the configuration file. state_time_before_opt(h) and state_time_after_opt(h) define the number of hourly time intervals during that state.

Thermal fuel prices

81_thermal_prices_fuel.csv defines fuel costs for power plant operators with the following schema:

bidding_zonefueltime_stamp_fromtime_stamp_untilprice(EUR/GJ)price_transport_opt(EUR/GJ)emission_intensity_opt(tCO2/GJ)
ALGAS0187606.1910.056

price(EUR/GJ) sets the fuel price for the defined fuel during the period between time_stamp_from and time_stamp_until. Fuel names should begin with NUC (nuclear), LIG (lignite), HCO (hard coal), GAS (gas), OIL (oil) or OTH (other) followed by an unsigned integer value (fuel number). Fuel numbers can be used to distinguish types, qualities and locations. The cost paid for the transportation of the fuel to the plant location can be set with price_transport_opt(EUR/GJ). To model different emission intensities, carbon capture and storage (CCS) or carbon capture and utilization (CCU) the emission_intensity_opt(tCO2/GJ) can be set accordingly.

Thermal emission prices

82_thermal_prices_emission.csv defines the costs for emission allowances of power plant operators with the following schema:

bidding_zonetime_stamp_fromtime_stamp_untilprice(EUR/tCO2)
AL1876015.48

price(EUR/tCO2) sets the price during the period between time_stamp_from and time_stamp_until.

Emission restrictions can be used to simulate partially the European Union Emission Trading Scheme (EU ETS).

Thermal mustruns, outages and revisions

83_thermal_mustruns_outages_revisions.csv defines exogenous mustruns of thermal turbines with the following schema:

bidding_zoneunittype_availability(mustrun/outage/revision)time_stamp_fromtime_stamp_until
ALVLOREmustrun21240
ALVLOREoutage120
ALVLORErevision240250

Additionally, 83_thermal_mustruns_outages_revisions.csv can define for every event the following optional parameters:

p_max_opt(MW)p_min_opt(MW)
00
10085
00

For the selected time frame between time_stamp_from and time_stamp_until the power is restricted to the values between p_max_opt(MW) and p_min_opt(MW).

Mustruns can be reasoned for example by heat utility restrictions of plants with combined heat and power.

Outages can be set manually in this 83_thermal_mustruns_outages_revisions.csv or derived during preprocessing in 86_thermal_availabilities.csv. Both are optional and can be used at the same time.

Revisions can be set manually in this 83_thermal_mustruns_outages_revisions.csv or derived during preprocessing in 86_thermal_availabilities.csv. Both are optional and can be used at the same time.

Thermal fuel restrictions

84_thermal_restrictions_fuel.csv defines time-coupled fuel consumption restrictions with the following schema:

bidding_zonerestrictionfueltime_stamp_fromtime_stamp_until
ALGAS_AL_CAPGAS118760

Additionally, 84_thermal_restrictions_fuel.csv can specify following optional parameters:

max_opt(TJ)min_opt(TJ)
1000

If an fuel restriction specifies minimum and maximum values, the thermal power plants using the linked fuel have to consume the fuel within the defined range.

The restriction GAS_AL_CAP limits for the selected time frame between time_stamp_from and time_stamp_until, the consumption of the fuel GAS1 to the range between min_opt(TJ) and max_opt(TJ). Fuel restrictions can be defined for multiple bidding zones, fuels and time ranges. Such can be reasoned for example due to take-or-pay agreements of long-term natural gas purchase contracts or international fuel import embargos.

Thermal emission restrictions

85_thermal_restrictions_emission.csv defines time-coupled emission caps and floors with the following schema:

restrictionbidding_zonetime_stamp_fromtime_stamp_until
CO2_CAPDE18760
CO2_CAPFR18760

Additionally, 85_thermal_restrictions_emission.csv can specify following optional parameters:

min_opt(tCO2)max_opt(tCO2)
0150000000
0150000000

If an emission restriction specifies minimum and maximum values, the thermal power plants using the linked fuel have to emit within the defined range.

The restriction CO2_CAP covers the emissions in bidding_zones (in example DE and FR) in the according time frames time_stamp_from and time_stamp_until (in example hour 1 until 8760). The total emissions in this region and time frame need to be between min_opt(tCO2) and max_opt(tCO2). Emission restrictions can be defined for multiple bidding zones and time ranges. The maximum emission amount can be set up to simulate for example the European Union Emission Trading Scheme (EU ETS).

The volume-limiting approach in 85_thermal_restrictions_emission.csv can be combined with the price-setting approach in 82_thermal_prices_emission.csv. The following graph visualizes the differences between both approaches to simulate the emission allowance market.

Emission market modelling through setting emission prices and emission caps
Figure 0: Emission market modelling through setting emission prices and emission caps

Users set up the assumption in the first step, the second and third steps are taking place automatically inside the market simulation. The last fourth step comprises direct look-ups in the model output.

Thermal availabilities

86_thermal_availabilities.csv defines outage and revision availabilities as drawing parameters for the preprocessing drawing procedure with the following schema:

bidding_zonetech(CC/GT/ST)fuel_shorttype_availability(outage/revision)time_stamp_fromtime_stamp_untilavailability(%)
ALGTGASoutage1876099.5
ALGTGASrevision1876099.5

The outage and revision drawing is carried out for every outage and revision cluster defined by bidding_zone, tech(CC/GT/ST) and fuel_short in the system as well as time_stamp_from and time_stamp_until in time. availability(%) defines the average work availability of this cluster. fuel_short summarizes all fuels with identical fuel name beginnings (GAS1, GAS2, GAS3, etc., would be put in this example into one drawing cluster GAS).

Additionally, for every outage and revision cluster, the following optional drawing parameters can be set.

event_duration_expectation_opt(h)event_duration_deviation_opt(h)
3624

event_duration_expectation_opt(h) and event_duration_deviation_opt(h) define the mean and variance of the normal distribution for time ranges of outage and revisions.

Thermal cogeneration power plants

89_thermal_cogeneration_plants.csv defines the price-inelastic electric feed-in of cogeneration plants per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Grid

Bidding zones

90_grid_bidding_zones.csv defines bidding zones with the following non-optional entries:

bidding_zonebattery(0/1)load(0/1)fcr(0/1)afrr_pos(0/1)afrr_neg(0/1)mfrr_pos(0/1)mfrr_neg(0/1)dsr(0/1)thermal(0/1)hydro(0/1)onshore(0/1)offshore(0/1)solar(0/1)ror(0/1)bio(0/1)chp(0/1)import_external(0/1)export_external(0/1)
AL110111111111111111

Binary operators activate 1 (default) or deactivate 0 sub-models in the selected bidding_zone. Corresponding input data will be neglected and not checked by the procedure.

Net transfer capacities

91_grid_ntcs.csv defines Net Transfer Capacities (NTC) with the following schema:

time_stamp_fromtime_stamp_untilnet_transfer_capacity(MW)cost_opt(EUR/MWh)from_bidding_zoneto_bidding_zone
187602500GRAL
187602500ALGR

The NTC is valid between time_stamp_from and time_stamp_until with a maximum commercial flow of net_transfer_capacity(MW) from from_bidding_zone to to_bidding_zone. The wheeling charge, hurdle rate or exchange cost can be set via cost_opt(EUR/MWh).

Coordinated net transfer capacities

92_grid_cntcs.csv defines Coordinated Net Transfer Capacities (CNTC) with the following schema:

time_stamp_fromtime_stamp_untilcapacity(MW)from_bidding_zoneto_bidding_zone1to_bidding_zone2
18760250ALGRMK
18760-250ALGRMK

The CNTC is valid between time_stamp_from and time_stamp_until with a commercial exchange capacity(MW) from from_bidding_zone to to_bidding_zone1 and to to_bidding_zone2 together. Further destination bidding zones can be set freely via columns to_bidding_zone3_opt, to_bidding_zone4_opt and so on. A positive capacity value limits the maximum export of the bidding zone specified in from_bidding_zone. A negative capacity value limits the maximum import of the bidding zone specified in from_bidding_zone.

FBMC CNECs

93_grid_fbmc_cnecs.csv defines the flow-based market coupling (FBMC) through critical network elements and contingencies (CNEC) with the following exemplary schema:

critical_network_element_and_contingencytime_stamp_fromtime_stamp_untilremaining_available_margin(MW)power_transfer_distribution_factor_BEpower_transfer_distribution_factor_DEpower_transfer_distribution_factor_FRpower_transfer_distribution_factor_NL
11043240000119710.23517-0.003610.06728-0.02525
11238080000114500-1000

A CNEC is valid between time_stamp_from and time_stamp_until with a remaining available margin (RAM). The FBMC domain comprises the bidding zones occurring in the header specifiers (BE, DE, FR and NL in the exemplary table above). By default all bilateral exchanges between bidding zones in the FBMC domain are not limited and so limitations for inner FBMC domain exchanges need to be set explicitly. That applies also for physically not possible bilateral exchanges through zero NTC (for example between FR and NL). The zonal power transfer distribution factor (PTDF) has to be defined for all bidding zones in the FBMC domain. Exchanges between bidding zones are bound by CNEC restrictions. In case of time and or system overlaps with NTC restricted zone pairs, set the according NTC in 91_grid_ntcs.csv or CNTC in 92_grid_cntcs.csv to use combined exchange models.

FBMC AHCs

94_grid_fbmc_ahcs.csv defines advanced hybrid couplings (AHC) with the following schema:

critical_network_element_and_contingencytime_stamp_fromtime_stamp_untilfrom_bidding_zoneto_bidding_zonepower_transfer_distribution_factorevolved_opt(0/1)
110432400001971ALGR0.20

The defined AHC influences the selected CNEC with the zone-to-zone PTDF power_transfer_distribution_factor.

The optional setting evolved_opt enables to exclude the flow to contribute to the CNEC utilizations based in the zonal PTDF, that are derived from 93_grid_fbmc_cnecs.csv. Instead, the zone-to-zone PTDF from 94_grid_fbmc_ahcs.csv is used to calculate the contribution to the utilization of the linked CNEC. This can be used for example to model High-Voltage Direct Current (HVDC) lines and terminals.

Exchange capacities for reserves

95_grid_reserve_exchanges.csv defines bilateral frequency reserve exchange capacities with the following schema:

time_stamp_fromtime_stamp_untilfrom_bidding_zoneto_bidding_zonetype(fcr/afrr_pos/afrr_neg/mfrr_pos/mfrr_neg)capacity(MW)cost_opt(EUR/MWh)ntc_competition_opt(0/1)
12190ALGRfcr0.00.01
21916570ALGRfcr5.00.01
65718760ALGRfcr0.00.01

The symmetric Frequency Containment Reserve (FCR) can be exported between time_stamp_from and time_stamp_until from from_bidding_zone to to_bidding_zone for the exchange cost of cost_opt(EUR/MWh). Via ntc_competition_opt(0/1) reserve exchanges compete with bilateral spot exchanges for NTC capacities in a co-optimization (1 as default) or are handled separately so a spot and reserve exchange can together exceed the according NTC value. To model reserve core shares (total reserve export restrictions) use virtual export bidding zones: create a new bidding zone, disable in this new bidding zone all modules in 90_grid_bidding_zones.csv, parameterize the maximum reserve export inclusive core share to that new bidding zone and set higher total reserve export possibilities from the new virtual bidding zone to other bidding zones. To use the reserve exchange module, the detailed reserves must be activated in the configuration via parameter demand_reserves_high_resolution.

Exchange mustruns, outages and revisions

96_grid_mustruns_outages_revisions.csv defines exogenous mustruns, outages, and revisions of bilateral exchanges with the following schema:

from_bidding_zoneto_bidding_zonetype_availability(mustrun/outage/revision)time_stamp_fromtime_stamp_until
ALGRoutage72147

Additionally, 96_grid_mustruns_outages_revisions.csv can define for every event the following optional parameters:

p_max_opt(MW)p_min_opt(MW)
400

For the time frame between time_stamp_from and time_stamp_until the maximum power is restricted to the values p_max_opt(MW) and p_min_opt(MW).

Grid availabilities

97_grid_availabilities.csv defines the availabilities of exchange capacities with following schema:

bidding_zonetype_coupling(NTC/CNTC/FBMC)type_availability(outage/revision)time_stamp_fromtime_stamp_untilavailability(%)
ALNTCoutage1876099.5
ALNTCrevision1876099.5

The outage and revision drawing is carried out for every outage and revision cluster defined by bidding_zone and type_coupling(NTC/CNTC/FBMC) in the system as well as time_stamp_from and time_stamp_until in time. availability(%) defines the average work availability of this cluster.

Additionally, for every outage and revision cluster, the following optional drawing parameters can be set.

event_duration_expectation_opt(h)event_duration_deviation_opt(h)
360240

The parameters event_duration_expectation_opt(h) and event_duration_deviation_opt(h) define the mean and standard deviation of the normal distribution for outage or revision event durations specified in the file line.

External spot exports

98_grid_external_exports.csv defines the price-inelastic feed-in of external spot exports per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

External spot imports

99_grid_external_imports.csv defines the price-inelastic feed-in of external spot imports per bidding zone. The file format can be obtained via exporting the current dataset at the input export in the front-end. It has the same format as the spot market demand.

Resolution

Maon supports flexible and transferable time and system resolutions.

Time resolution

The interval length is by default set to 60 minutes and can be adjusted in the project configuration.

System resolution

Generation, consumption and exchange components can be aggregated to perform fast runs. Aggregations are carried out during the preprocessing (see preprocessing) and are based on performant, deterministic and automated schema identification, clustering and aggregation methods. The total joint aggregation time lies for transmission planning level data at below 1 second, but the total optimization complexity can be reduced gradually by magnitudes and so total simulation procedure times can be reduced to below 5 minutes even for very complex scenarios (more than 100000000 components and 8760 hours).

The original input and output data can be processed each bidding zone individually via 90_grid_bidding_zones.csv. Following optional preprocessing, procedure and postprocessing parameters can be defined in 90_grid_bidding_zones.csv:

battery_aggregation_opthydro_aggregation_optthermal_aggregation_optgrid_aggregation_optdsr_aggregation_optbz_group_id_opt
131001

The parameter battery_aggregation_opt specifies the aggregation level for all batteries in that bidding zone (see battery aggregation). The parameter hydro_aggregation_opt specifies the aggregation level for all hydro power plants in that bidding zone (see hydro aggregation). The parameter thermal_aggregation_opt specifies the aggregation level for all thermal power plants in that bidding zone (see thermal aggregation). grid_aggregation_opt sets the aggregation of grid capacities (see grid aggregation). The parameter dsr_aggregation_opt aggregates DSR consumers (see DSR aggregation).

The identifier bz_group_id_opt groups bidding zones, so that those in the same group are simulated together in the second procedure step to achieve a more realistic unit commitment (especially on and off states) in smaller bidding zones (see procedure).