Class MarginalsAtTime

  • All Implemented Interfaces:
    de.dlr.gitlab.fame.communication.transfer.Portable

    public class MarginalsAtTime
    extends Object
    implements de.dlr.gitlab.fame.communication.transfer.Portable
    Summary of multiple Marginals associated with the same producer and delivery time
    Author:
    Christoph Schimeczek
    • Constructor Detail

      • MarginalsAtTime

        public MarginalsAtTime()
        required for Portables
      • MarginalsAtTime

        public MarginalsAtTime​(long producerUuid,
                               de.dlr.gitlab.fame.time.TimeStamp deliveryTime,
                               List<Marginal> marginals)
        Constructs new MarginalsAtTime DataItem
        Parameters:
        producerUuid - unique ID of power production agent
        deliveryTime - time at which the power production can be offered
        marginals - any number of Marginals associated with the given producer and at given time
      • MarginalsAtTime

        public MarginalsAtTime​(long producerUuid,
                               de.dlr.gitlab.fame.time.TimeStamp deliveryTime,
                               Marginal... marginals)
        Constructs new MarginalsAtTime DataItem
        Parameters:
        producerUuid - unique ID of power production agent
        deliveryTime - time at which the power production can be offered
        marginals - any number of Marginals associated with the given producer and at given time
    • Method Detail

      • addComponentsTo

        public void addComponentsTo​(de.dlr.gitlab.fame.communication.transfer.ComponentCollector collector)
        Specified by:
        addComponentsTo in interface de.dlr.gitlab.fame.communication.transfer.Portable
      • populate

        public void populate​(de.dlr.gitlab.fame.communication.transfer.ComponentProvider provider)
        Specified by:
        populate in interface de.dlr.gitlab.fame.communication.transfer.Portable
      • getProducerUuid

        public long getProducerUuid()
        Returns:
        UUID of power plant associated with the marginals herein
      • getDeliveryTime

        public de.dlr.gitlab.fame.time.TimeStamp getDeliveryTime()
        Returns:
        the begin of the delivery interval
      • getMarginals

        public List<Marginal> getMarginals()
        Returns:
        marginals of electricity production associated with its producer
      • getTotalPowerPotentialInMW

        public double getTotalPowerPotentialInMW()
        Returns:
        sum of all power potentials in the marginals