Package agents.policy
Class Cp
- java.lang.Object
-
- agents.policy.PolicyItem
-
- agents.policy.Cp
-
- All Implemented Interfaces:
de.dlr.gitlab.fame.communication.transfer.Portable
public class Cp extends PolicyItem
Set-specific realisation of a capacity premium- Author:
- Johannes Kochems, Christoph Schimeczek
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class agents.policy.PolicyItem
PolicyItem.SupportInstrument
-
-
Constructor Summary
Constructors Constructor Description Cp()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addComponentsTo(de.dlr.gitlab.fame.communication.transfer.ComponentCollector collector)
required forPortable
sdouble
calcCapacitySupportRate(de.dlr.gitlab.fame.time.TimePeriod accountingPeriod)
Calculate the support rate in EUR/MW per eligible installed capacitydouble
calcEligibleCapacity(SupportRequestData request)
Calculate the capacity eligible for support under the given instrumentdouble
calcEligibleInfeed(TreeMap<de.dlr.gitlab.fame.time.TimeStamp,Double> powerPrices, SupportRequestData request)
Calculate the infeed eligible for support under the given instrumentdouble
calcInfeedSupportRate(de.dlr.gitlab.fame.time.TimePeriod accountingPeriod, double marketValue)
Calculate the support rate in EUR/MWh per eligible infeedde.dlr.gitlab.fame.data.TimeSeries
getPremium()
PolicyItem.SupportInstrument
getSupportInstrument()
boolean
isTypeOfMarketPremium()
void
populate(de.dlr.gitlab.fame.communication.transfer.ComponentProvider provider)
required forPortable
svoid
setDataFromConfig(de.dlr.gitlab.fame.agent.input.ParameterData group)
Initialises an emptyPolicyItem
with its associated config data-
Methods inherited from class agents.policy.PolicyItem
buildPolicy, calcEligibleHours, getClass, isEligible, readMaxNumberOfNegativeHours
-
-
-
-
Method Detail
-
setDataFromConfig
public void setDataFromConfig(de.dlr.gitlab.fame.agent.input.ParameterData group) throws de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException
Description copied from class:PolicyItem
Initialises an emptyPolicyItem
with its associated config data- Specified by:
setDataFromConfig
in classPolicyItem
- Parameters:
group
- DataProvider group matching type ofPolicyItem
to provide input from config- Throws:
de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException
- if any required data is not provided
-
addComponentsTo
public void addComponentsTo(de.dlr.gitlab.fame.communication.transfer.ComponentCollector collector)
required forPortable
s
-
populate
public void populate(de.dlr.gitlab.fame.communication.transfer.ComponentProvider provider)
required forPortable
s
-
getPremium
public de.dlr.gitlab.fame.data.TimeSeries getPremium()
- Returns:
- time series capacity premium in EUR/MW
-
getSupportInstrument
public PolicyItem.SupportInstrument getSupportInstrument()
- Specified by:
getSupportInstrument
in classPolicyItem
- Returns:
PolicyItem.SupportInstrument
thisPolicyItem
is covering
-
calcEligibleInfeed
public double calcEligibleInfeed(TreeMap<de.dlr.gitlab.fame.time.TimeStamp,Double> powerPrices, SupportRequestData request)
Description copied from class:PolicyItem
Calculate the infeed eligible for support under the given instrument- Specified by:
calcEligibleInfeed
in classPolicyItem
- Parameters:
powerPrices
- at the time the infeed occurredrequest
- specifying the infeed data- Returns:
- amount eligible for support payment in MWH based on infeed in accounting period
-
calcInfeedSupportRate
public double calcInfeedSupportRate(de.dlr.gitlab.fame.time.TimePeriod accountingPeriod, double marketValue)
Description copied from class:PolicyItem
Calculate the support rate in EUR/MWh per eligible infeed- Specified by:
calcInfeedSupportRate
in classPolicyItem
- Parameters:
accountingPeriod
- for which to calculate the support ratemarketValue
- of the respective energy carrier during the accounting period- Returns:
- support rate in EUR/MWh per eligible infeed
-
calcEligibleCapacity
public double calcEligibleCapacity(SupportRequestData request)
Description copied from class:PolicyItem
Calculate the capacity eligible for support under the given instrument- Specified by:
calcEligibleCapacity
in classPolicyItem
- Parameters:
request
- specifying the total capacity- Returns:
- amount eligible for support payment in MW based on available capacity in accounting period
-
calcCapacitySupportRate
public double calcCapacitySupportRate(de.dlr.gitlab.fame.time.TimePeriod accountingPeriod)
Description copied from class:PolicyItem
Calculate the support rate in EUR/MW per eligible installed capacity- Specified by:
calcCapacitySupportRate
in classPolicyItem
- Parameters:
accountingPeriod
- for which to calculate the support rate- Returns:
- support rate in EUR/MW per installed capacity
-
isTypeOfMarketPremium
public boolean isTypeOfMarketPremium()
- Specified by:
isTypeOfMarketPremium
in classPolicyItem
- Returns:
- true if PolicyItem returns a type of market premium
-
-