1a_definitions.gms 24.9 KB
 Erkka Rinne committed Aug 04, 2017 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ``````\$ontext This file is part of Backbone. Backbone is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Backbone is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with Backbone. If not, see . \$offtext `````` Topi Rasku committed Oct 17, 2017 18 19 20 21 22 23 24 ``````* ============================================================================= * --- Model Related Set Definitions ------------------------------------------- * ============================================================================= Sets * --- Model Related Selections ------------------------------------------------ `````` Topi Rasku committed Mar 31, 2017 25 `````` `````` Topi Rasku committed Oct 17, 2017 26 27 28 29 `````` mType "model types in the Backbone" / building, invest, schedule `````` Juha Kiviluoma committed Jun 22, 2017 30 `````` / `````` Topi Rasku committed Oct 17, 2017 31 32 33 34 `````` mSetting "setting categories for models" / // General Time Structure `````` Erkka Rinne committed Nov 19, 2020 35 36 37 38 39 40 41 42 `````` t_start "First time step for the start of simulation" t_jump "Number of time steps realized with each solve" t_horizon "Length of the simulation horizon in time steps (central forecast)" t_end "Last time step of the simulation" loadPoint "Load advanced basis; 0 = no basis, 1 = latest solve, 2 = all solves, 3 = first solve" savePoint "Save advanced basis; 0 = no basis, 1 = latest solve, 2 = all solves, 3 = first solve" lastStepInIntervalBlock "Last time step in the block of intervals with the same length" stepsPerInterval "Number of time steps aggregated within interval" `````` Erkka Rinne committed Nov 19, 2020 43 `````` stepLengthInHours "Length of a time step in hours" `````` Topi Rasku committed Oct 17, 2017 44 45 `````` // Samples and Forecasts `````` Erkka Rinne committed Nov 19, 2020 46 47 48 49 50 51 `````` samples "Number of active samples" forecasts "Number of active forecasts" t_forecastLengthUnchanging "Length of forecasts in time steps - this does not decrease when the solve moves forward (requires forecast data that is longer than the horizon at first)" t_forecastLengthDecreasesFrom "Length of forecasts in time steps - this decreases when the solve moves forward until the new forecast data is read (then extends back to full length)" t_forecastStart "Time step for first reading the forecasts (not necessarily t_start)" t_forecastJump "Number of time steps between each update of the forecasts" `````` Topi Rasku committed Jan 16, 2019 52 `````` t_improveForecast "Number of time steps ahead of time on which the forecast is improved on each solve" `````` Erkka Rinne committed Mar 28, 2019 53 `````` t_perfectForesight "Number of time steps for which realized data is used instead of forecasts" `````` Erkka Rinne committed Mar 12, 2019 54 `````` onlyExistingForecasts "Use only existing forecast values when reading updated forecasts. Note: zero values need to be saved as Eps in the gdx file." `````` Erkka Rinne committed Feb 26, 2019 55 `````` scenarios "Number of long-term scenarios used" `````` Erkka Rinne committed Nov 19, 2020 56 `````` scenarioLength "Length of scenario in time steps for creating stochastic scenarios from time series data" `````` jussi ikäheimo committed May 18, 2021 57 `````` candidate_periods "Number of candidate periods which are mapped to typical periods" `````` Topi Rasku committed Oct 17, 2017 58 59 `````` // Features `````` Erkka Rinne committed Nov 19, 2020 60 61 62 `````` t_trajectoryHorizon "Length of the horizon when start-up and shutdown trajectories are considered (in time steps)" t_initializationPeriod "Number of time steps in the beginning of the simulation which are solved but the results of which are not stored" dataLength "The maximum number of time steps in any input data time series (recommended for correctly circulating data)" `````` Erkka Rinne committed Nov 19, 2020 63 `````` red_num_leaves "Desired number of preserved scenarios or leaves of scenario reduction (SCENRED)" `````` Erkka Rinne committed Nov 02, 2018 64 `````` red_percentage "Desired relative distance (accuracy) of scenario reduction (SCENRED)" `````` Erkka Rinne committed Nov 19, 2020 65 `````` incHRAdditionalConstraints "Method to include the two additional constraints for incremental heat rates" `````` 66 `````` // 0 = include for units with non-convex fuel use, 1 = include for all units `````` Juha Kiviluoma committed Jun 22, 2017 67 68 `````` / `````` Topi Rasku committed Oct 17, 2017 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 `````` // Solve info solveInfoAttributes "Information about model solves" / modelStat solveStat totalTime iterations nodes numEqu numDVar numVar numNZ sumInfes objEst objVal / // !!! REDUNDANT SETS PENDING REMOVAL !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! solve_info "Containers for solve information" / modelStat "Status of the model after solve" solveStat "Status of the solve" totalTime "Total solve time" iterations "Number of iteration" nodes "Number of nodes in the solve" numEqu "Number of equations in the problem" numDVar "Number of D variables in the problem" numVar "Number of variables in the problem" numNZ "Number of non-zeros in the problem" sumInfes "Sum of infeasibilities" objEst "Estimate for the best possible objective value" objVal "Objectiv value" `````` 99 `````` / `````` Topi Rasku committed Oct 17, 2017 100 101 102 103 104 105 `````` * --- Efficiency Approximation Related Sets ----------------------------------- // Efficiency Levels and Categories effLevel "Pre-defined levels for efficiency representation that can start from t_solve + x" / level1*level9 / `````` Juha Kiviluoma committed Sep 27, 2016 106 `````` effSelector "Select equations and lambdas/slope for efficiency calculations" `````` ran li committed Feb 12, 2019 107 `````` / lambda01*lambda12, directOff, directOnLP, directOnMIP , incHR/ // NOTE! Lambdas required first! `````` Juha Kiviluoma committed Sep 27, 2016 108 `````` effDirect(effSelector) "Using direct input to output equation" `````` Topi Rasku committed Oct 17, 2017 109 `````` / directOff, directOnLP, directOnMIP / `````` Juha Kiviluoma committed Sep 27, 2016 110 111 112 `````` effDirectOff(effSelector) "Using direct input to output equation without online variable, i.e. constant efficiency" / directOff / effDirectOn(effSelector) "Using direct input to output equation with online variable" `````` Topi Rasku committed Oct 17, 2017 113 `````` / directOnLP, directOnMIP / `````` Juha Kiviluoma committed Sep 27, 2016 114 115 `````` effLambda(effSelector) "Lambdas in use for part-load efficiency representation" / lambda01*lambda12 / `````` ran li committed Feb 12, 2019 116 117 `````` effIncHR(effSelector) "Using incremental heat rate equation" / incHR / `````` Topi Rasku committed Mar 28, 2017 118 `````` effOnline(effSelector) "Efficiency selectors that use online variables" `````` ran li committed Feb 12, 2019 119 `````` / directOnLP, directOnMIP, lambda01*lambda12 ,incHR / // IMPORTANT! Online variables are generated based on this, so keep it up to date! `````` Topi Rasku committed Mar 31, 2017 120 `````` `````` Topi Rasku committed Oct 17, 2017 121 122 123 ``````* --- General and Directional Sets -------------------------------------------- // General Counter `````` Topi Rasku committed Oct 20, 2017 124 `````` counter "General counter set" `````` Topi Rasku committed Oct 17, 2017 125 `````` /c000*c999/ `````` Topi Rasku committed Oct 20, 2017 126 `````` cc(counter) "Temporary subset of counter used for calculations" `````` Topi Rasku committed Oct 17, 2017 127 128 `````` // Directional Sets `````` 129 130 `````` input_output "Designating nodes as either inputs or outputs" / input, output / `````` Topi Rasku committed Mar 31, 2017 131 `````` inc_dec "Increase or decrease in dummy, or slack variables" `````` Topi Rasku committed Oct 17, 2017 132 `````` / increase, decrease / `````` 133 134 `````` min_max "Minimum and maximum" / min, max / `````` 135 `````` constraint "Possible names for constraints" `````` Juha Kiviluoma committed Feb 28, 2020 136 `````` / eq1*eq9, gt1*gt9 / `````` 137 138 139 140 `````` eq_constraint(constraint) "Equality constraints" / eq1*eq9 / gt_constraint(constraint) "Greater than constraints" / gt1*gt9 / `````` 141 `````` `````` Topi Rasku committed Oct 17, 2017 142 143 144 145 146 147 148 ``````* --- Model Feature Sets ------------------------------------------------------ // Unit Startup Related Sets starttype "Startup types" / hot "Hot start" warm "Warm start" cold "Cold start" `````` 149 150 151 `````` / starttypeConstrained(starttype) "Startup types with constrained maximum non-opearational time" / hot, warm / `````` Niina Helistö committed Aug 30, 2017 152 153 `````` cost_consumption "Startup cost or startup fuel consumption" / cost, consumption / `````` 154 `````` `````` Topi Rasku committed Oct 17, 2017 155 156 `````` // Other Features feature "Set of optional model features" / `````` Topi Rasku committed Jan 28, 2019 157 ``````* findStorageStart "Solve for optimal storage start levels" // NOT IMPLEMENTED `````` Topi Rasku committed Oct 17, 2017 158 `````` storageValue "Use storage value instead of fixed control" `````` Topi Rasku committed Jan 28, 2019 159 160 161 162 ``````* storageEnd "Expected storage end levels greater than starting levels" // NOT IMPLEMENTED * addOn "Use StoSSch as a storage add-on to a larger model" // NOT IMPLEMENTED * extraRes "Use extra tertiary reserves for error in elec. load during time step" // NOT IMPLEMENTED * rampSched "Use power based scheduling" // PARTIALLY IMPLEMENTED `````` Erkka Rinne committed Nov 02, 2018 163 `````` scenRed "Reduce number of long-tem scenarios using GAMS SCENRED2" `````` jussi ikäheimo committed Feb 22, 2019 164 165 `````` checkUnavailability "Take into account ts_unit unavailability data" / `````` Juha Kiviluoma committed Jun 17, 2018 166 167 168 169 170 171 172 173 ``````* --- Set to declare time series that will be read between solves ------------------------------------------------------ timeseries "Names of time series that could be loop read from files between solves" / ts_unit ts_effUnit ts_effGroupUnit ts_influx ts_cf ts_reserveDemand `````` Dana Kirchem committed Aug 14, 2018 174 `````` ts_node `````` 175 176 `````` ts_priceChange ts_price `````` Juha Kiviluoma committed Jun 17, 2018 177 `````` ts_unavailability `````` 178 `````` ts_storageValue `````` Niina Helistö committed Jun 03, 2021 179 `````` ts_gnn `````` Juha Kiviluoma committed Jun 17, 2018 180 181 `````` / `````` Topi Rasku committed Oct 17, 2017 182 183 184 185 186 187 188 189 190 ``````; // END Sets * ============================================================================= * --- Model Parameter Definitions --------------------------------------------- * ============================================================================= * --- Numeric Model Parameters ------------------------------------------------ // General model parameter arrays `````` 191 ``````Parameter `````` Topi Rasku committed Oct 17, 2017 192 193 194 ``````* settings(mSetting) mSettings(mType, mSetting) "Model settings array" mSettingsEff(mtype, effLevel) "Model efficiency approximation array" `````` Niina Helistö committed Mar 03, 2021 195 `````` mSettingsEff_start(mtype, effLevel) "The first time step of the efficiency level - mSettingsEff is the last" `````` Topi Rasku committed Oct 17, 2017 196 197 `````` mInterval(mType, mSetting, counter) "Model interval array" t_skip_counter "Numerical counter for solve time steps" `````` 198 199 ``````; `````` Topi Rasku committed Oct 17, 2017 200 ``````// Include additional parameters if found `````` 201 202 203 204 ``````Parameter params(*) / \$if exist 'params.inc' \$include 'params.inc' /; `````` 205 ``````// Features `````` Topi Rasku committed Jan 29, 2019 206 ``````Set active(mType, feature) "Set membership tells active model features"; `````` Topi Rasku committed Feb 07, 2019 207 ``````option clear = active; `````` 208 `````` `````` Topi Rasku committed Oct 17, 2017 209 210 211 ``````* ============================================================================= * --- Parameter Set Definitions ----------------------------------------------- * ============================================================================= `````` 212 `````` `````` Juha Kiviluoma committed Sep 27, 2016 213 214 ``````Sets `````` Topi Rasku committed Oct 17, 2017 215 216 ``````* --- Parameter Data Related Sets --------------------------------------------- `````` Juha Kiviluoma committed Nov 29, 2016 217 ``````param_gn "Possible parameters for grid, node" / `````` 218 `````` nodeBalance "A flag to decide whether node balance constraint is to be used" `````` Niina Helistö committed Jul 12, 2018 219 220 `````` selfDischargeLoss "Self discharge rate of the node (MW/[v_state])" energyStoredPerUnitOfState "A possible unit conversion if v_state uses something else than MWh (MWh/[v_state])" `````` Juha Kiviluoma committed Nov 29, 2016 221 222 223 224 225 `````` boundStart "A flag to bound the first t in the run using reference constant or time series" boundStartAndEnd "A flag that both start and end are bound using reference constant or time series" boundEnd "A flag to bound last t in each solve based on the reference constant or time series" boundAll "A flag to bound the state to the reference in all time steps" boundStartToEnd "Force the last states to equal the first state" `````` Niina Helistö committed Feb 21, 2020 226 ``````* forecastLength "Length of forecasts in use for the node (hours). After this, the node will use the central forecast." // NOT IMPLEMENTED `````` Niina Helistö committed Aug 23, 2017 227 `````` capacityMargin "Capacity margin used in invest mode (MW)" `````` 228 `````` storageValueUseTimeSeries "A flag to determine whether to use time series form `storageValue`" `````` Juha Kiviluoma committed Sep 27, 2016 229 230 ``````/ `````` Juha Kiviluoma committed Nov 29, 2016 231 ``````param_gnBoundaryTypes "Types of boundaries that can be set for a node with a state variable" / `````` Erkka Rinne committed Nov 19, 2020 232 233 234 235 236 `````` upwardLimit "Absolute maximum state of the node (unit of measure depends on energyStoredPerUnitOfState)" downwardLimit "Absolute minimum energy in the node (unit of measure depends on energyStoredPerUnitOfState)" upwardSlack01*upwardSlack20 "A threshold after which a specific cost co-efficient is applied (unit of measure depends on energyStoredPerUnitOfState)" downwardSlack01*downwardSlack20 "A threshold after which a specific cost co-efficient is applied (unit of measure depends on energyStoredPerUnitOfState)" reference "Reference value for a state that can be used to bound a state (unit of measure depends on energyStoredPerUnitOfState)" `````` Juha Kiviluoma committed Nov 29, 2016 237 238 `````` maxSpill "Maximum spill rate from the node (MWh/h)" minSpill "Minimum spill rate from the node (MWh/h)" `````` Dana Kirchem committed Aug 14, 2018 239 `````` balancePenalty "Penalty value for violating the energy balance of that particular node (EUR/MWh) (can be interpretated as the energy price in certain settings)" `````` Juha Kiviluoma committed Nov 29, 2016 240 241 242 243 244 ``````/ param_gnBoundaryProperties "Properties that can be set for the different boundaries" / useTimeSeries "A flag to use time series to set state bounds and limits" useConstant "A flag to use constant to set state bounds and limits" `````` Niina Helistö committed Feb 21, 2020 245 ``````* deltaFromReference "The constant or the time series indicate how much the boundary deviates from reference (instead of being an absolute number)" // NOT IMPLEMENTED `````` Juha Kiviluoma committed Nov 29, 2016 246 247 248 249 250 `````` constant "A constant value for the boundary or the reference" slackCost "The cost of exceeding the slack boundary" multiplier "A multiplier to change the value (either constant or time series), default 1" / `````` Juha Kiviluoma committed Sep 27, 2016 251 ``````param_gnn "Set of possible data parameters for grid, node, node (nodal interconnections)" / `````` Niina Helistö committed Jul 12, 2018 252 253 254 255 256 `````` transferCap "Transfer capacity limits (MW)" transferCapBidirectional "Total bidirectional transfer capacity limit (MW)" transferLoss "Transfer losses" diffCoeff "Coefficients for energy diffusion between nodes (MW/[v_state])" boundStateMaxDiff "Maximum difference of node state pairs ([v_state])" `````` Niina Helistö committed Aug 21, 2017 257 `````` transferCapInvLimit "Capacity limit for investments (MW)" `````` Erkka Rinne committed Nov 19, 2020 258 `````` investMIP "A flag to make integer investment instead of continuous investment (MW versus number of links)" `````` Niina Helistö committed Jul 12, 2018 259 260 261 `````` unitSize "Size of one link for integer investments (MW)" invCost "Investment cost (EUR/MW)" annuity "Investment annuity" `````` Juha Kiviluoma committed Aug 17, 2020 262 `````` portion_of_transfer_to_reserve "Portion of the infeed from the unit that needs to be available as reserve if the unit fails" `````` Juha Kiviluoma committed May 03, 2020 263 264 `````` ICrampUp ICrampDown `````` Ciara O'Dwyer committed Nov 11, 2020 265 `````` variableTransCost "Variable cost applied to transfers (EUR/MW)" `````` Niina Helistö committed Jun 03, 2021 266 `````` availability "Availability of the interconnection (p.u.)" `````` Niina Helistö committed Jun 04, 2021 267 `````` useTimeseriesAvailability "A flag to use time series form input for availability" `````` Niina Helistö committed Jun 04, 2021 268 `````` useTimeseriesLoss "A flag to use time series form input for transferLoss" `````` Juha Kiviluoma committed Sep 27, 2016 269 270 271 ``````/ param_gnu "Set of possible data parameters for grid, node, unit" / `````` 272 273 `````` capacity "Maximum capacity (MW)" conversionCoeff "Coefficient for conversion equation (multiplies each input or output when summing v_gen from multiple inputs/outputs)" `````` Juha Kiviluoma committed Jan 16, 2019 274 275 `````` useInitialGeneration "A flag to indicate whether to fix generation for the first time step (binary)" initialGeneration "Initial generation/consumption of the unit in the first time step (MW)" `````` Niina Helistö committed Jul 12, 2018 276 277 278 `````` maxRampUp "Speed to ramp up (p.u./min)" maxRampDown "Speed to ramp down (p.u./min)" upperLimitCapacityRatio "Ratio of the upper limit of the node state and the unit capacity investment ([v_state]/MW)" `````` 279 `````` unitSize "Input/Output capacity of one subunit for integer investments (MW)" `````` Niina Helistö committed Jul 12, 2018 280 281 282 `````` invCosts "Investment costs (EUR/MW)" annuity "Investment annuity factor" fomCosts "Fixed operation and maintenance costs (EUR/MW/a)" `````` 283 `````` vomCosts "Variable operation and maintenance costs (EUR/MWh)" `````` Niina Helistö committed Jul 12, 2018 284 285 `````` inertia "Inertia of the unit (s)" unitSizeMVA "Generator MVA rating of one subunit (MVA)" `````` 286 `````` availabilityCapacityMargin "Availability of the unit in the capacity margin equation (p.u.). If zero, v_gen is used. Currently used only for output capacity." `````` Juha Kiviluoma committed Sep 27, 2016 287 ``````/ `````` 288 `````` `````` 289 ``````param_gnuBoundaryProperties "Properties that can be set for the different boundaries" / `````` Niina Helistö committed Jul 12, 2018 290 291 `````` rampLimit "Maximum ramp speed (p.u./min)" rampCost "Wear and tear cost of ramping up (EUR/MW)" `````` Juha Kiviluoma committed Sep 27, 2016 292 ``````/ `````` 293 `````` `````` Topi Rasku committed Mar 14, 2017 294 ``````param_unit "Set of possible data parameters for units" / `````` Niina Helistö committed Feb 21, 2020 295 `````` // Given in input data `````` Niina Helistö committed Jul 12, 2018 296 `````` unitCount "Number of subunits if aggregated" `````` Topi Rasku committed Mar 30, 2017 297 `````` outputCapacityTotal "Output capacity of the unit, calculated by summing all the outputs together by default, unless defined in data" `````` Niina Helistö committed Jul 12, 2018 298 299 `````` unitOutputCapacityTotal "Output capacity of the unit, calculated by summing all the subunit output sizes together by default" availability "Availability of given energy conversion technology (p.u.)" `````` Juha Kiviluoma committed Jan 16, 2019 300 301 `````` useInitialOnlineStatus "A flag to fix the online status of a unit for the first time step (binary)" initialOnlineStatus "Initial online status of the unit in the first time step (0-1)" `````` jussi ikäheimo committed Feb 22, 2019 302 `````` unavailability "Unavailability of given energy conversion technology (p.u.)" `````` Niina Helistö committed Jul 12, 2018 303 304 305 `````` startCostCold "Variable start-up costs for cold starts excluding fuel costs (EUR/MW)" startCostWarm "Variable start-up costs for warm starts excluding fuel costs (EUR/MW)" startCostHot "Variable start-up costs for hot starts excluding fuel costs (EUR/MW)" `````` 306 `````` startFuelConsCold "Consumption of start-up fuel per cold subunit started up (MWh_fuel/MW)" `````` Topi Rasku committed Nov 15, 2017 307 308 `````` startFuelConsWarm "Consumption of start-up fuel per warm subunit started up (MWh_fuel/MW)" startFuelConsHot "Consumption of start-up fuel per hot subunit started up (MWh_fuel/MW)" `````` Niina Helistö committed Jul 12, 2018 309 310 `````` startColdAfterXhours "Offline hours after which the start-up will be a cold start (h)" startWarmAfterXhours "Offline hours after which the start-up will be a warm start (h)" `````` Topi Rasku committed Feb 26, 2019 311 `````` shutdownCost "Cost of shutting down the unit" `````` Niina Helistö committed Jul 12, 2018 312 313 `````` rampSpeedToMinLoad "Ramping speed from start-up to minimum load (p.u./min)" rampSpeedFromMinLoad "Ramping speed from shutdown decision to zero load (p.u./min)" `````` 314 315 `````` minOperationHours "Minimum operation time (h), prevents shutdown after startup until the defined amount of time has passed" minShutdownHours "Minimum shut down time (h), prevents starting up again after the defined amount of time has passed" `````` Niina Helistö committed Feb 21, 2020 316 317 318 319 ``````* SO2 "SO2 emissions (tonne per MWh_fuel)" // NOT IMPLEMENTED * NOx "NOx emissions (tonne per MWh_fuel)" // NOT IMPLEMENTED * CH4 "CH4 emissions (tonne per MWh_fuel)" // NOT IMPLEMENTED * resTimelim "How long should a storage be able to provide reserve (h)" // NOT IMPLEMENTED `````` Niina Helistö committed Jul 12, 2018 320 321 322 `````` eff00 * eff12 "Efficiency of the unit to convert input to output/intermediate product" opFirstCross "The operating point where the real efficiency curve and approximated efficiency curve cross" op00 * op12 "Right border of the efficiency point" `````` 323 `````` hr00 * hr12 "Incremental heat rates (GJ/MWh)" `````` ran li committed Feb 12, 2019 324 `````` hrop00 * hrop12 "Right border of the incremental heat rates" `````` Niina Helistö committed Jul 12, 2018 325 `````` section "Possibility to define a no load fuel use for units with zero minimum output" `````` Ciara O'Dwyer committed Feb 27, 2019 326 `````` hrsection "no load fuel use to be defined when using incremental heat rates" `````` Niina Helistö committed Jul 12, 2018 327 328 329 330 `````` useTimeseries "A flag to use time series form input for unit parameters whenever possible" investMIP "A flag to make integer investment instead of continous investment" maxUnitCount "Maximum number of units when making integer investments" minUnitCount "Minimum number of units when making integer investments" `````` Niina Helistö committed Feb 21, 2020 331 `````` // Calculated based on other input data `````` Topi Rasku committed Jan 08, 2019 332 `````` lastStepNotAggregated "Last time step when the unit is not yet aggregated - calculated in inputsLoop.gms for units that have aggregation" `````` Niina Helistö committed Jun 22, 2020 333 334 `````` becomeAvailable "The relative position of the time step when the unit becomes available (calculated from ut(unit, t, start_end))" becomeUnavailable "The relative position of the time step when the unit becomes unavailable (calculated from ut(unit, t, start_end))" `````` Juha Kiviluoma committed Sep 27, 2016 335 ``````/ `````` 336 `````` `````` Topi Rasku committed Jan 28, 2019 337 338 339 340 341 342 343 ``````param_eff "Parameters used for unit efficiency approximations" / lb "Minimum load of the unit" op "Maximum load of the unit, or the operating point of the SOS2 variable in the piecewise linear heat rate approximation (lambda)" section "Operational heat rate of the unit, or the SOS2 variable in the piecewise linear heat rate approximation (lambda)" slope "Heat rate parameter representing no-load fuel consumption" / `````` 344 345 346 ``````param_constraint "Parameters for constraints" / constant "Constant when binding inputs/outputs" coefficient "Coefficient when binding inputs/outputs" `````` Juha Kiviluoma committed Sep 27, 2016 347 348 ``````/ `````` 349 350 351 352 ``````param_price "Parameters for commodity prices" / price "Commodity price (EUR/MWh)" useConstant "Flag to use constant data for commodities" useTimeSeries "Flag to use time series form data for commodities" `````` Topi Rasku committed Feb 26, 2019 353 354 ``````/ `````` 355 ``````param_unitStartupfuel "Parameters for startup fuel limits in units" / `````` Dana Kirchem committed Aug 02, 2018 356 `````` fixedFuelFraction "Fixed share of a fuel in the consumption mix" //only for start-up fuels `````` Juha Kiviluoma committed Sep 27, 2016 357 358 ``````/ `````` Niina Helistö committed Feb 21, 2020 359 ``````param_policy "Set of possible data parameters for groups or grid, node, regulation" / `````` Niina Helistö committed Jul 12, 2018 360 361 `````` emissionTax "Emission tax (EUR/tonne)" emissionCap "Emission limit (tonne)" `````` Niina Helistö committed Sep 14, 2017 362 `````` instantaneousShareMax "Maximum instantaneous share of generation and import from a particular group of units and transfer links" `````` 363 364 `````` energyMax "Maximum energy production or consumption from a particular group of units over samples" energyMaxVgenSign "Sign for v_gen in the maximum energy constraint - use -1 when you need a minimum energy constraint (then also energyMax should be negative)" `````` Niina Helistö committed Sep 14, 2017 365 366 `````` energyShareMax "Maximum energy share of generation from a particular group of units" energyShareMin "Minimum energy share of generation from a particular group of units" `````` Niina Helistö committed Mar 28, 2018 367 368 `````` constrainedCapMultiplier "Multiplier a(i) for unit investments in equation Sum(i, a(i)*v_invest(i)) <= b" constrainedCapTotalMax "Total maximum b for unit investments in equation Sum(i, a(i)*v_invest(i)) <= b" `````` 369 370 `````` constrainedOnlineMultiplier "Multiplier a(i) for online units in equation Sum(i, a(i)*v_online(i)) <= b" constrainedOnlineTotalMax "Total maximum b for online units in equation Sum(i, a(i)*v_online(i)) <= b" `````` Niina Helistö committed Feb 21, 2020 371 ``````* minCons "minimum consumption of storage unit when charging" // NOT USED, PENDING REMOVAL `````` Niina Helistö committed Sep 24, 2019 372 373 `````` ROCOF "Maximum rate of change of frequency (Hz/s)" defaultFrequency "Nominal frequency in the system (Hz)" `````` 374 375 `````` staticInertia "A flag to indicate static inertia constraint should be implemented - q_inertiaMin" dynamicInertia "A flag to indicate dynamic inertia constraint should be implemented - q_rateOfChangeOfFrequencyUnit/Transfer" `````` Topi Rasku committed Nov 28, 2018 376 `````` // Reserve related parameters, currently without a proper parameter set `````` 377 378 `````` update_frequency "Frequency of updating reserve contributions (number of timesteps)" update_offset "Optional offset for delaying the reserve update frequency (number of timesteps)" `````` Topi Rasku committed Nov 28, 2018 379 `````` gate_closure "Number of timesteps ahead of dispatch that reserves are fixed" `````` Niina Helistö committed Feb 21, 2020 380 ``````* use_time_series "Flag for using time series data. !!! REDUNDANT WITH useTimeseries, PENDING REMOVAL !!!" `````` Juha Kiviluoma committed Feb 28, 2020 381 `````` useTimeSeries "Flag for using time series data" `````` 382 383 384 `````` reserve_length "Length of reserve horizon (number of timesteps)" reserve_activation_duration "How long the reserve should be provided once activated (h)" reserve_reactivation_time "How soon the unit providing reserve needs to be able to reactivate after the start of the previous activation (h)" `````` Topi Rasku committed Nov 28, 2018 385 386 `````` reserveReliability "Reliability parameter of reserve provisions" reserve_increase_ratio "Unit output is multiplied by this factor to get the increase in reserve demand" `````` Juha Kiviluoma committed Jan 18, 2019 387 `````` portion_of_infeed_to_reserve "Proportion of the generation of a tripping unit that needs to be covered by reserves from other units" `````` Ciara O'Dwyer committed Sep 02, 2019 388 `````` offlineReserveCapability "Proportion of an offline unit which can contribute to a category of reserve" `````` ran li committed Sep 02, 2019 389 `````` ReserveShareMax "Maximum reserve share of a group of units" `````` Niina Helistö committed Feb 21, 2020 390 `````` LossOfTrans "A flag to tell that N-1 reserve is needed due to a possibility that an interconnector to/from the node group fails" `````` 391 392 `````` up "Upward direction, e.g. for reserve provisions" down "Downward direction, e.g. for reserve provisions" `````` Niina Helistö committed Aug 14, 2017 393 394 ``````/ `````` 395 396 397 398 399 400 401 402 403 ``````* --- Efficiency Approximation Related Sets ----------------------------------- // Efficiency Approximation related Counters op(param_unit) "Operating points in the efficiency curves, also functions as index for data points" /op00*op12/ // IMPORTANT! Has to equal the same param_unit! eff(param_unit) "Effiency for the corresponding operating point ('op') in the efficiency curves, also used for data indexing" /eff00*eff12/ // IMPORTANT! Has to equal the same param_unit! lambda "Lambda approximation indeces" /lambda01*lambda12/ // IMPORTANT! Has to equal effLambda! `````` ran li committed Feb 12, 2019 404 405 406 407 ``````hrop(param_unit) "Operating points in the incremental heat rate curves, also functions as index for data points" /hrop00*hrop12/ // IMPORTANT! Has to equal the same param_unit! hr(param_unit) "Heat rate for the corresponding operating point ('hrop') in the heat rate curves, also used for data indexing" /hr00*hr12/ // IMPORTANT! Has to equal the same param_unit! `````` 408 `````` `````` Topi Rasku committed Oct 17, 2017 409 410 411 412 413 ``````* --- Counters and Directional Sets ------------------------------------------- // Slack categories slack(param_gnBoundaryTypes) "Categories for slack variables" / upwardSlack01*upwardSlack20, downwardSlack01*downwardSlack20 / `````` Erkka Rinne committed Mar 19, 2019 414 ``````upwardSlack(param_gnBoundaryTypes) "Set of upward slacks" `````` Topi Rasku committed Oct 17, 2017 415 `````` / upwardSlack01*upwardSlack20 / `````` Erkka Rinne committed Mar 19, 2019 416 ``````downwardSlack(param_gnBoundaryTypes) "Set of downward slacks" `````` Topi Rasku committed Oct 17, 2017 417 418 419 420 421 422 423 424 425 `````` / downwardSlack01*downwardSlack20 / // Flags for boundaries stateLimits(param_gnBoundaryTypes) "set of upward and downward state limits" / upwardLimit, downwardLimit / spillLimits(param_gnBoundaryTypes) "set of upward and downward state limits" / maxSpill, minSpill / useConstantOrTimeSeries(param_gnBoundaryProperties) "useTimeSeries and useConstant property together" / useTimeSeries, useConstant / `````` Niina Helistö committed Jan 31, 2020 426 `````` `````` 427 428 429 ``````// Directional sets that are subsets of others up_down(param_policy) "Direction set used by some variables, e.g. reserve provisions and generation ramps" / up, down / `````` Niina Helistö committed Jun 22, 2020 430 431 ``````availabilityLimits(param_unit) "Start and end, e.g. of unit lifetime" / becomeAvailable, becomeUnavailable / `````` Topi Rasku committed Oct 17, 2017 432 ``; // END parameter set declarations``