module

Contents

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 typeAttribute namePython data typeCore data typeunitI/OLicenseVersion addedDescription
Loading ITables v2.1.4 from the internet... (need help?)

reserve_up_allocation#

Output reserve up allocation (unit: MW)

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)

localInflow#

Output inflow (unit: m3/s)

MeanReservoirTrajectories#

Mean reservoir trajectories, used to scale the PQ curve with head in backward iterations. (unit: Mm3)

shopWaterValues#

Water values (reservoir cut coefficients) for the SHOP cuts. (unit: none)

ownerShare#

Fraction owned of the module. Used to scale down the production capacity. Must be in [0,1]. (unit: none)

MinDischargeCostEnergy#

Cost of violating minimum discharge constraint (unit: EUR/MWh)

n_negative_inflows_back#

Number of occurances of negative inflows in last backward iteration (unit: #)

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)

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)

BackwardBypassCostDPrice#

Cost of bypassing in backward recursion (unit: EUR/MWh)

BackwardSpillingCostVolume#

Cost of spilling in backward recursion (unit: EUR/1000m3)

meanRegInflow#

Mean reg. inflow per year (unit: Mm3)

ForwardSpillingCostEnergy#

Cost of spilling in forward simulation (unit: EUR/MWh)

MinReservoirCostDPrice#

Cost of violating minimum reservoir constraint (unit: EUR/MWh)

BufferReservoirCostEnergy#

Cost of deviating from the guideline curve for buffer reservoirs (unit: EUR/MWh)

MaxReservoirCostEnergy#

Cost of violating maximum reservoir constraint (unit: EUR/MWh)

energyEquivalentConst#

Global energy equivalent (to ocean) (unit: kWh/m3)

BackwardBypassCostVolume#

Cost of bypassing in backward recursion (unit: EUR/1000m3)

nominalHead#

Net nominal head used as reference height for the PQcurve (unit: m)

waterValueConversionFactors#

Local energy equivalents at the best efficiency point which the SHOP cuts refer to. (unit: GWh/Mm3)

overflow#

Output overflow (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)

local_water_value_indvan_prd#

Local water value at start time (unit: EUR/MWh)

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)

RampingDownCostVolume#

Cost of violating ramping down constraint. (unit: EUR/1000m3)

MaxReservoirCostVolume#

Cost of violating maximum reservoir constraint (unit: EUR/1000m3)

MinDischargeCostDPrice#

Cost of violating minimum discharge constraint (unit: EUR/MWh)

RampingUpCostEnergy#

Cost of violating ramping up constraint. (unit: EUR/MWh)

max_reserve_up#

Maximum reserve up allocation (unit: MW)

production#

Output production (unit: MW)

MinBypassCostVolume#

Cost of violating minimum bypass constraint (unit: EUR/1000m3)

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)

reservoirReferenceLevels#

Reservoir reference levels for the standard SHOP cuts. (unit: none)

global_water_value_indvan_prd#

Global water value at start time (to ocean) (unit: EUR/MWh)

MinReservoirCostEnergy#

Cost of violating minimum reservoir constraint (unit: EUR/MWh)

maxBypassConst#

Max bypass (unit: m3/s)

submersion#

Module outlet line height in MASL. (unit: m)

average_neg_inflow_back#

Average negative inflow in last backward iteration (unit: Mm3)

name#

Module name (unit: none)

rsvMax#

Max reservoir volume (unit: Mm3)

connected_unreg_series_id#

ID number of the unregulated inflow series the module is connected to. Default same as connectedSeriesID. (unit: none)

ForwardBypassCostEnergy#

Cost of bypassing in forward simulation (unit: EUR/MWh)

min_bypass_violation_extra_cut#

Violations of minimum bypass limit in extra cut generation (unit: m3/s)

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)

max_reserve_down_cost#

Violations of maximum reserve down allocation (unit: MW)

number#

Module number (unit: none)

discharge#

Output discharge (unit: m3/s)

min_discharge_violation_extra_cut#

Violations of minimum discharge limit in extra cut generation (unit: m3/s)

plantName#

Module plant name (unit: none)

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)

BufferReservoirCostVolume#

Cost of deviating from the guideline curve for buffer reservoirs (unit: EUR/1000m3)

minDischarge#

Time-dependent minimal discharge (unit: m3/s)

n_different_inflows#

Number of calculated inflows in last backward recursion (unit: #)

min_vol_violation#

Violations of minimum volume limit. (unit: Mm3)

minVol#

Time-dependent minimal volume (unit: Mm3)

ForwardSpillingCostDPrice#

Cost of spilling in forward simulation (unit: EUR/MWh)

expected_water_value_indvan_prd#

Expected global water value at start time (to ocean) (unit: Ec /m3)

maxProd#

Max production (unit: MW)

BufferReservoirCostDPrice#

Cost of deviating from the guideline curve for buffer reservoirs (unit: EUR/MWh)

reserve_down_allocation#

Output reserve down allocation (unit: MW)

min_bypass_violation_last_backward#

Violations of minimum bypass limit in last backward iteration (unit: m3/s)

maxDischarge#

Time-dependent maximal discharge (unit: m3/s)

reservoirVolume#

Output reservoir volume (unit: Mm3)

minBypass#

Time-dependent minimal water bypass (unit: m3/s)

RampingDownCostDPrice#

Cost of violating ramping down constraint (unit: EUR/MWh)

min_discharge_violation_last_backward#

Violations of minimum discharge limit in last backward iteration (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)

maxDischargeConst#

Max discharge (unit: m3/s)

meanUnregInflow#

Mean unreg. inflow per year (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)

BackwardBypassCostEnergy#

Cost of bypassing in backward recursion (unit: EUR/MWh)

min_vol_violation_extra_cut#

Violations of minimum volume limit in extra cut generation (unit: Mm3)

min_vol_violation_last_backward#

Violations of minimum volume limit in last backward iteration (unit: Mm3)

ForwardSpillingCostVolume#

Cost of spilling in forward simulation (unit: EUR/1000m3)

MinReservoirCostVolume#

Cost of violating minimum reservoir constraint (unit: EUR/1000m3)

MaxReservoirCostDPrice#

Cost of violating maximum reservoir constraint (unit: EUR/MWh)

ForwardBypassCostVolume#

Cost of bypassing in forward simulation (unit: EUR/1000m3)

RampingUpCostDPrice#

Cost of violating ramping up constraint. (unit: EUR/MWh)

bypass#

Output bypass (unit: m3/s)

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)

RampingDownCostEnergy#

Cost of violating ramping down constraint (unit: EUR/MWh)

startVol#

Reservoir start volume (unit: Mm3)

max_reserve_up_cost#

Violations of maximum reserve up allocation (unit: MW)

maxVol#

Time-dependent maximal 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)

MinBypassCostDPrice#

Cost of violating minimum bypass constraint (unit: EUR/MWh)

localEnergyEquivalentConst#

Local energy equivalent (unit: kWh/m3)

MinBypassCostEnergy#

Cost of violating minimum bypass constraint (unit: EUR/MWh)

max_reserve_down#

Maximum reserve down allocation (unit: MW)

RampingUpCostVolume#

Cost of violating ramping up constraint. (unit: EUR/1000m3)

energyEquivalent#

Time-dependent global energy equivalent (to ocean) (unit: kWh/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)

maxBypass#

Time-dependent maximal water bypass (unit: m3/s)

refVol#

Time-dependent reservoir guidline curves (for buffer reservoirs). (unit: %)

BackwardSpillingCostEnergy#

Cost of spilling in backward recursion (unit: EUR/MWh)

localEnergyEquivalent#

Time-dependent local energy equivalent (unit: kWh/m3)

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)

HeadCoefficient#

Head coefficients represent the expected added value of storing water in the reservoirs due to head. (unit: kEUR/Mm3)

min_discharge_violation#

Violations of minimum discharge limit. (unit: m3/s)

min_bypass_violation#

Violations of minimum bypass limit. (unit: m3/s)

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)

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)

regulationType#

0 = buffer res 1 = reguation res (unit: none)

connectedSeriesId#

Id of connected inflowSeries (unit: none)

probability_of_negative_inflow_back#

Probability of occurances of negative inflows in last backward iteration (unit: 1)

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)

ForwardBypassCostDPrice#

Cost of bypassing in forward simulation (unit: EUR/MWh)

MinDischargeCostVolume#

Cost of violating minimum discharge constraint (unit: EUR/1000m3)

BackwardSpillingCostDPrice#

Cost of spilling in backward recursion (unit: EUR/MWh)