Class StrategistExternal


  • public class StrategistExternal
    extends HeatPumpStrategist
    Creates a cost-optimal HeatPumpSchedule according to real-time prices, which is endogenously calculated by a heat pump dispatch model.
    Author:
    Evelyn Sperber, Christoph Schimeczek
    • Field Detail

      • apiParameters

        public static final de.dlr.gitlab.fame.agent.input.Tree apiParameters
        Input parameters required for connecting to an external API-based model
    • Constructor Detail

      • StrategistExternal

        public StrategistExternal​(de.dlr.gitlab.fame.agent.input.ParameterData basicStrategy,
                                  HeatPump heatPump,
                                  Device device,
                                  HeatingInputData heatingData,
                                  de.dlr.gitlab.fame.data.TimeSeries installedUnits,
                                  StrategyParameters strategyParams,
                                  EndUserTariff tariffStrategist,
                                  double fixedRoomTemperaturInC)
                           throws de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException
        Parameters:
        basicStrategy - basic input data related to the strategist
        heatPump - specifies the heat pump to be dispatched
        device - the storage used for heat pump dispatch optimisation
        heatingData - input regarding heat-related input time series
        installedUnits - number of installed heat pump units
        strategyParams - strategy parameters for heat pump operation
        tariffStrategist - specifies the real time price design
        fixedRoomTemperaturInC - initial room temperature when instantiated
        Throws:
        de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException - if any required data is not provided
    • Method Detail

      • updateSchedule

        protected void updateSchedule​(de.dlr.gitlab.fame.time.TimePeriod timePeriod)
        Description copied from class: Strategist
        Updates schedule arrays starting at the given TimePeriod with the given initial energy level
        Specified by:
        updateSchedule in class HeatPumpStrategist
        Parameters:
        timePeriod - first period of the schedule to be created
      • getHeatLoad

        public double getHeatLoad​(de.dlr.gitlab.fame.time.TimePeriod currentTimeSegment)
        Specified by:
        getHeatLoad in class HeatPumpStrategist
        Parameters:
        currentTimeSegment - for which to get the heat load
        Returns:
        aggregated heat load to be covered by heat pumps at time step