Package agents.plantOperator
Class RenewablePlantOperator
- java.lang.Object
-
- de.dlr.gitlab.fame.agent.Agent
-
- agents.plantOperator.PowerPlantOperator
-
- agents.plantOperator.RenewablePlantOperator
-
- All Implemented Interfaces:
de.dlr.gitlab.fame.agent.AgentAbility
- Direct Known Subclasses:
Biogas
,VariableRenewableOperator
public abstract class RenewablePlantOperator extends PowerPlantOperator
APowerPlantOperator
for renewable plants- Author:
- Christoph Schimeczek, Johannes Kochems
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
RenewablePlantOperator.Products
Products ofRenewablePlantOperator
s-
Nested classes/interfaces inherited from class agents.plantOperator.PowerPlantOperator
PowerPlantOperator.OutputFields
-
-
Field Summary
Fields Modifier and Type Field Description static de.dlr.gitlab.fame.agent.input.ParameterBuilder
setParameter
Name for set type input parameter harmonised across agents related to policy sets
-
Constructor Summary
Constructors Constructor Description RenewablePlantOperator(de.dlr.gitlab.fame.agent.input.DataProvider dataProvider)
Creates aRenewablePlantOperator
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract Marginal
calcSingleMarginal(de.dlr.gitlab.fame.time.TimeStamp time)
protected double
dispatchPlants(double awardedPower, de.dlr.gitlab.fame.time.TimeStamp time)
Dispatches associated power plants to generate the specified awarded powerprotected double
getInstalledCapacityInMW()
protected double
getInstalledPowerAtTimeInMW(de.dlr.gitlab.fame.time.TimeStamp time)
Returns the installed power at the specified timeprotected double
getVariableOpexAtTime(de.dlr.gitlab.fame.time.TimeStamp time)
Returns variable operational expenses at the specified timestatic String
readSet(de.dlr.gitlab.fame.agent.input.ParameterData input)
Returns PolicySet read from given input group.static String
readSet(de.dlr.gitlab.fame.agent.input.ParameterData input, String defaultValue)
Returns PolicySet type read from given input group or specified default if data is missing-
Methods inherited from class agents.plantOperator.PowerPlantOperator
digestPayment, digestPaymentPerPlant, executeDispatch, reportCosts
-
-
-
-
Constructor Detail
-
RenewablePlantOperator
public RenewablePlantOperator(de.dlr.gitlab.fame.agent.input.DataProvider dataProvider) throws de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException
Creates aRenewablePlantOperator
- Parameters:
dataProvider
- provides input from config- Throws:
de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException
- if any required data is not provided
-
-
Method Detail
-
readSet
public static String readSet(de.dlr.gitlab.fame.agent.input.ParameterData input, String defaultValue)
Returns PolicySet type read from given input group or specified default if data is missing- Parameters:
input
- group that (might) hold the PolicySet input parameterdefaultValue
- is used in case PolicySet is not explicitly specified in this group- Returns:
- PolicySet read from input or given default
-
readSet
public static String readSet(de.dlr.gitlab.fame.agent.input.ParameterData input) throws de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException
Returns PolicySet read from given input group.- Parameters:
input
- group that holds the PolicySet input parameter- Returns:
- PolicySet read from input
- Throws:
de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException
- if PolicySet is not present in given input group
-
calcSingleMarginal
protected abstract Marginal calcSingleMarginal(de.dlr.gitlab.fame.time.TimeStamp time)
- Parameters:
time
- to calculate costs for- Returns:
- single Marginal item calculated for the given time
-
getInstalledPowerAtTimeInMW
protected double getInstalledPowerAtTimeInMW(de.dlr.gitlab.fame.time.TimeStamp time)
Returns the installed power at the specified time- Parameters:
time
- to get the installed power for- Returns:
- installed peak power in MW at the specified time
-
getVariableOpexAtTime
protected double getVariableOpexAtTime(de.dlr.gitlab.fame.time.TimeStamp time)
Returns variable operational expenses at the specified time- Parameters:
time
- to calculate the costs for- Returns:
- variable operational expenses in EUR per MWh at the specified time
-
dispatchPlants
protected double dispatchPlants(double awardedPower, de.dlr.gitlab.fame.time.TimeStamp time)
Description copied from class:PowerPlantOperator
Dispatches associated power plants to generate the specified awarded power- Specified by:
dispatchPlants
in classPowerPlantOperator
- Parameters:
awardedPower
- amount of power to generatetime
- at which to dispatch- Returns:
- total costs for dispatch
-
getInstalledCapacityInMW
protected double getInstalledCapacityInMW()
- Specified by:
getInstalledCapacityInMW
in classPowerPlantOperator
- Returns:
- current installed capacity
-
-