module#
A reservoir with attached (aggregated) plant.
Input connections |
|
Output connections |
|
License |
PRODRISK_OPEN |
Release version |
9.6.1 |
module#
A module that is part of a regulated hydropower watercourse
Input connections |
|
License |
PRODRISK_OPEN |
Release version |
9.6.1 |
Introduction#
The module is an aggregated object combining a reservoir with an attached plant. The latter is an aggregated description of all generators in the plant. The following input attributes are mandatory:
Maximum volum of the reservoir.
Dummy modules#
It is possible to set either the volume or the production to zero to model a plant without storage or a reservoir without a plant, respectively.
Examples#
Attributes#
Object type | Attribute name | Python data type | Core data type | unit | I/O | License | Version added | Description |
---|
Loading ITables v2.3.0 from the internet... (need help?) |
reservoirVolume#
Output reservoir volume (unit: Mm3)
waterValueConversionFactors#
Local energy equivalents at the best efficiency point which the SHOP cuts refer to. (unit: GWh/Mm3)
meanRegInflow#
Mean reg. inflow per year (unit: Mm3)
overflow#
Output overflow (unit: m3/s)
maintenance#
Time series used to specify the reduction in the power output of the module due to maintenance. This attribute is not required input and may be left out if no maintenance is scheduled. (unit: MW)
min_vol_violation_extra_cut#
Violations of minimum volume limit in extra cut generation (unit: Mm3)
max_reserve_up_cost#
Violations of maximum reserve up allocation (unit: MW)
min_discharge_violation_extra_cut#
Violations of minimum discharge limit in extra cut generation (unit: m3/s)
MinBypassCostDPrice#
Cost of violating minimum bypass constraint (unit: EUR/MWh)
BufferReservoirCostDPrice#
Cost of deviating from the guideline curve for buffer reservoirs (unit: EUR/MWh)
rampingUp#
Used to restrict the maximal increase in reservoir volume per week. It is possible to give in one, both ore none of the ramping attributes, as they are not required input to Prodrisk. The unit is specified with the attribute res_ramp_unit. To toggle off the ramping constraint after a certain point in time, the value - 1 should be given in the time series. (unit: Mm3/week)
min_bypass_violation_last_backward#
Violations of minimum bypass limit in last backward iteration (unit: m3/s)
max_reserve_down_cost#
Violations of maximum reserve down allocation (unit: MW)
ForwardSpillingCostVolume#
Cost of spilling in forward simulation (unit: EUR/1000m3)
BackwardSpillingCostVolume#
Cost of spilling in backward recursion (unit: EUR/1000m3)
pmax#
Module max production, hourly resolution. If the resolution for the input series is greater than the price period resolution then the value becomes an average of all the hourly input contributions to that price point. (unit: MW)
localEnergyEquivalentConst#
Local energy equivalent (unit: kWh/m3)
headDependentQMax#
The height correction of the maximal module discharge has x values given as relative height (h/h_max). This is not a required input attribute. (unit: m3/s)
MinBypassCostVolume#
Cost of violating minimum bypass constraint (unit: EUR/1000m3)
max_reserve_up#
Maximum reserve up allocation (unit: MW)
maxVol#
Time-dependent maximal volume (unit: Mm3)
number#
Module number (unit: none)
reservoirReferenceLevels#
Reservoir reference levels for the standard SHOP cuts. (unit: none)
min_discharge_violation#
Violations of minimum discharge limit. (unit: m3/s)
res_ramp_intra_week#
If 1, reservoir ramping is considered in each water balance within weeks. If 0 (default), reservoir ramping is only included at the end of the week, i.e. weekly average ramping satisfies constraints. Activating this option can be mkuch more time consuming. (unit: none)
shopWaterValues#
Water values (reservoir cut coefficients) for the SHOP cuts. (unit: none)
maxDischargeConst#
Max discharge (unit: m3/s)
MinDischargeCostEnergy#
Cost of violating minimum discharge constraint (unit: EUR/MWh)
RampingDownCostEnergy#
Cost of violating ramping down constraint (unit: EUR/MWh)
start_cost#
Module startup costs (unit: kEUR)
reservoirMinRestrictionType#
Min reservoir restriction type. can have three different values: 0 = no restriction, 1 = soft restriction (a less strict hard constraint is calculated based on average inflow and known upstream discharge/bypass due to minimum discharge limits), 2 = absolute restriction (violations penalized with given ). (unit: none)
BackwardSpillingCostEnergy#
Cost of spilling in backward recursion (unit: EUR/MWh)
ForwardSpillingCostDPrice#
Cost of spilling in forward simulation (unit: EUR/MWh)
max_discharge_series_mean#
Mean year scalar applied to the inflow series to form the restriction (unit: none)
min_bypass_violation#
Violations of minimum bypass limit. (unit: m3/s)
max_reserve_down#
Maximum reserve down allocation (unit: MW)
ForwardBypassCostVolume#
Cost of bypassing in forward simulation (unit: EUR/1000m3)
RampingDownCostDPrice#
Cost of violating ramping down constraint (unit: EUR/MWh)
mean_reservoir_trajectories_used_in_run#
From cut calculations run two main iterations (no head coefficients given), this contains the mean reservoir trajectories from the first main iteration. From runs with head coefficient input, this attribute contains the input series, as MeanReservoirTrajectories is overwritten with new coefficients. (unit: Mm3)
min_bypass_violation_extra_cut#
Violations of minimum bypass limit in extra cut generation (unit: m3/s)
name#
Module name (unit: none)
BufferReservoirCostEnergy#
Cost of deviating from the guideline curve for buffer reservoirs (unit: EUR/MWh)
BackwardSpillingCostDPrice#
Cost of spilling in backward recursion (unit: EUR/MWh)
minBypass#
Time-dependent minimal water bypass (unit: m3/s)
probability_of_negative_inflow_back#
Probability of occurances of negative inflows in last backward iteration (unit: 1)
min_discharge_series_mean#
Mean year scalar applied to the inflow series to form the restriction (unit: none)
MaxReservoirCostVolume#
Cost of violating maximum reservoir constraint (unit: EUR/1000m3)
min_vol_violation#
Violations of minimum volume limit. (unit: Mm3)
energyEquivalent#
Time-dependent global energy equivalent (to ocean) (unit: kWh/m3)
MeanReservoirTrajectories#
Mean reservoir trajectories, used to scale the PQ curve with head in backward iterations. (unit: Mm3)
MinReservoirCostVolume#
Cost of violating minimum reservoir constraint (unit: EUR/1000m3)
min_discharge_series_id#
ID of the inflow series forming the basis for this restriction. (unit: none)
reserve_up_allocation#
Output reserve up allocation (unit: MW)
hydraulicType#
Describes any hydraulic coupling between modules. The first element is a code for the type of hydraulic coupling: 100 = modules above same station, no free flow between them, 120 = modules above same station, flow between them restricted by coupling capacity, 130 = modules above same station, flow between them controlled by strategy, 200 = coupled modules, flow between them restricted by coupling capacity, 300 = coupled modules, flow between them controlled by strategy. The second element is an id shared between the modules in the coupling, The third element is the coupling capacity in m3/s (integer value). If the module is not part of a hydraulic coupling, this attribute may be left out or entered with all numbers set to 0. (unit: none)
PQcurve#
Production-discharge table for the power production. The PQ curve can be omitted for modules without any production (pure reservoirs). The curve should be based on nominal head. (unit: MW and m3/s)
RampingUpCostVolume#
Cost of violating ramping up constraint. (unit: EUR/1000m3)
maxDischarge#
Time-dependent maximal discharge (unit: m3/s)
topology#
Describes where the water running through the module will end up. Each of the three entries is the module number of the module where the water will flow: [discharge, bypass, owerflow]. Module number 0 is reserved for the sea (water is lost out of the system). (unit: none)
connected_unreg_series_id#
ID number of the unregulated inflow series the module is connected to. Default same as connectedSeriesID. (unit: none)
MinDischargeCostVolume#
Cost of violating minimum discharge constraint (unit: EUR/1000m3)
connectedSeriesId#
Id of connected inflowSeries (unit: none)
n_different_inflows#
Number of calculated inflows in last backward recursion (unit: #)
minDischarge#
Time-dependent minimal discharge (unit: m3/s)
time_dependent_pq_curve#
Time dependent PQ Curves (unit: none)
MaxReservoirCostEnergy#
Cost of violating maximum reservoir constraint (unit: EUR/MWh)
min_discharge_hourly#
Time dependent minimum discharge with hourly resolution. If the resolution for the input series is greater than the price period resolution then the value becomes an average of all the hourly input contributions to that price point. (unit: m3/s)
MinReservoirCostEnergy#
Cost of violating minimum reservoir constraint (unit: EUR/MWh)
max_discharge_series_id#
ID of the inflow series forming the basis for this restriction (unit: none)
ForwardBypassCostDPrice#
Cost of bypassing in forward simulation (unit: EUR/MWh)
BufferReservoirCostVolume#
Cost of deviating from the guideline curve for buffer reservoirs (unit: EUR/1000m3)
localInflow#
Output inflow (unit: m3/s)
BackwardBypassCostEnergy#
Cost of bypassing in backward recursion (unit: EUR/MWh)
MinDischargeCostDPrice#
Cost of violating minimum discharge constraint (unit: EUR/MWh)
global_water_value_indvan_prd#
Global water value at start time (to ocean) (unit: EUR/MWh)
plantName#
Module plant name (unit: none)
expected_water_value_indvan_prd#
Expected global water value at start time (to ocean) (unit: Ec /m3)
scenario_start_volumes#
Reservoir start volume per scenario. If used as input, the number of values must match the number of scenarios. This input overwrites the value of startVol, which will be set to the average of all scenarios. When running a serial simulation in -sim or -forts mode, the start volumes found in the previous run (water value calculation) should be used. (unit: Mm3)
rampingDown#
Used to restrict the maximal decrease in reservoir volume per week. It is possible to give in one, both ore none of the ramping attributes, as they are not required input to Prodrisk. The unit is specified with the attribute res_ramp_unit. To toggle off the ramping constraint after a certain point in time, the value -1 should be given in the time series. (unit: Mm3/week)
res_ramp_piecewise_linear#
If 1, reservoir ramping limits are linearly interpolated between given weeks. If zero (default), the limits are kept constant until next given week. Note that the value within a week is constant. (unit: none)
BackwardBypassCostVolume#
Cost of bypassing in backward recursion (unit: EUR/1000m3)
discharge#
Output discharge (unit: m3/s)
maintenance_hourly#
Time series used to specify the reduction in the power output of the module due to maintenance. The underlying PQ curves that are modified have a weekly resolution, if the input has a finer resolution an average is sampled from each hourly contribution. (unit: MW)
MinReservoirCostDPrice#
Cost of violating minimum reservoir constraint (unit: EUR/MWh)
reserve_down_allocation#
Output reserve down allocation (unit: MW)
head_coefficients_used_in_run#
From cut calculations run two main iterations (no head coefficients given), this contains the head coefficients from the first main iteration. From runs with head coefficient input, this attribute contains the input series, as HeadCoefficient is overwritten with new coefficients. (unit: kEUR/Mm3)
maxProd#
Max production (unit: MW)
nominalHead#
Net nominal head used as reference height for the PQcurve (unit: m)
ForwardSpillingCostEnergy#
Cost of spilling in forward simulation (unit: EUR/MWh)
maxBypassConst#
Max bypass (unit: m3/s)
average_neg_inflow_back#
Average negative inflow in last backward iteration (unit: Mm3)
production#
Output production (unit: MW)
RampingUpCostEnergy#
Cost of violating ramping up constraint. (unit: EUR/MWh)
rsvMax#
Max reservoir volume (unit: Mm3)
submersion#
Module outlet line height in MASL. (unit: m)
startVol#
Reservoir start volume (unit: Mm3)
ForwardBypassCostEnergy#
Cost of bypassing in forward simulation (unit: EUR/MWh)
meanUnregInflow#
Mean unreg. inflow per year (unit: Mm3)
min_vol_violation_last_backward#
Violations of minimum volume limit in last backward iteration (unit: Mm3)
MaxReservoirCostDPrice#
Cost of violating maximum reservoir constraint (unit: EUR/MWh)
RampingDownCostVolume#
Cost of violating ramping down constraint. (unit: EUR/1000m3)
n_negative_inflows_back#
Number of occurances of negative inflows in last backward iteration (unit: #)
energyEquivalentConst#
Global energy equivalent (to ocean) (unit: kWh/m3)
max_bypass_series_id#
ID of the inflow series forming the basis for this restriction (unit: none)
min_discharge_violation_last_backward#
Violations of minimum discharge limit in last backward iteration (unit: m3/s)
maxBypass#
Time-dependent maximal water bypass (unit: m3/s)
cutCoeffs#
Cut coefficients of the module production are given as an array of XY tables. Each table in the array corresponds to a price level in ascending order. The x values are all 0, while the y values represent the coefficients. (unit: kEUR/Mm3)
BackwardBypassCostDPrice#
Cost of bypassing in backward recursion (unit: EUR/MWh)
local_water_value_indvan_prd#
Local water value at start time (unit: EUR/MWh)
refVol#
Time-dependent reservoir guidline curves (for buffer reservoirs). (unit: %)
MinBypassCostEnergy#
Cost of violating minimum bypass constraint (unit: EUR/MWh)
localEnergyEquivalent#
Time-dependent local energy equivalent (unit: kWh/m3)
max_bypass_series_mean#
Mean year scalar applied to the inflow series to form the restriction (unit: none)
minVol#
Time-dependent minimal volume (unit: Mm3)
res_ramp_unit#
Unit of reservoir ramping, if given. Allowed values: Mm3/h, Mm3/week (default), m/h, m/week, cm/h, cm/week. If length (m or cm) per time is used, the ramp rate will reflect the change in surface evaluated at the defined nominal height. (unit: none)
RampingUpCostDPrice#
Cost of violating ramping up constraint. (unit: EUR/MWh)
reservoirMaxRestrictionType#
Max reservoir restriction type. can have three different values: 0 = no restriction, 1 = soft restriction (a less strict hard constraint is calculated based on average inflow and known upstream discharge/bypass due to minimum discharge limits), 2 = absolute restriction (violations penalized with given ). (unit: none)
min_bypass_series_id#
ID of the inflow series forming the basis for this restriction. (unit: none)
volHeadCurve#
the relation between volume (Mm3) and head (MASL) of the module reservoir. This is not a required input attribute, and nominalHead and submersion should be set to 0 if the volHeadCurve is left out. The PQcurve will not be scaled by the height difference in these cases. (unit: Mm3 and m)
min_bypass_series_mean#
Mean year scalar applied to the inflow series to form the restriction. (unit: none)
regulationType#
0 = buffer res 1 = reguation res (unit: none)
HeadCoefficient#
Head coefficients represent the expected added value of storing water in the reservoirs due to head. (unit: kEUR/Mm3)
bypass#
Output bypass (unit: m3/s)
max_discharge_hourly#
Time dependent maximum discharge with hourly resolution. If the resolution for the input series is greater than the price period resolution then the value becomes an average of all the hourly input contributions to that price point. (unit: m3/s)