Class Electrolyzer


  • public class Electrolyzer
    extends Object
    An electrolyzer device that converts electricity to hydrogen
    Author:
    Christoph Schimeczek
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static de.dlr.gitlab.fame.agent.input.Tree parameters
      Input parameters of an Electrolyzer unit
    • Constructor Summary

      Constructors 
      Constructor Description
      Electrolyzer​(de.dlr.gitlab.fame.agent.input.ParameterData input)
      Create electrolyzer device using its associated input
    • Field Detail

      • parameters

        public static final de.dlr.gitlab.fame.agent.input.Tree parameters
        Input parameters of an Electrolyzer unit
    • Constructor Detail

      • Electrolyzer

        public Electrolyzer​(de.dlr.gitlab.fame.agent.input.ParameterData input)
                     throws de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException
        Create electrolyzer device using its associated input
        Parameters:
        input - parameter data group associated with Electrolyzer
        Throws:
        de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException - if any required input is missing
    • Method Detail

      • calcProducedHydrogenOneHour

        public double calcProducedHydrogenOneHour​(double electricPowerInMW,
                                                  de.dlr.gitlab.fame.time.TimeStamp time)
        Calculates produced hydrogen in one hour for given electric power at given time
        Parameters:
        electricPowerInMW - electric power to use for electrolysis
        time - at which to electrolyze
        Returns:
        produced amount of hydrogen in thermal MWh
      • calcCappedElectricDemandInMW

        public double calcCappedElectricDemandInMW​(double electricPowerInMW,
                                                   de.dlr.gitlab.fame.time.TimeStamp time)
        Caps given electric demand if it exceeds the maximum peak power;
        issues a warning if power is capped
        Parameters:
        electricPowerInMW - to be used in the conversion
        time - of the energy conversion
        Returns:
        given value, possible reduced to peak electric conversion power available at given time
      • hasEnoughPowerToConvert

        public boolean hasEnoughPowerToConvert​(double hydrogenOutput,
                                               de.dlr.gitlab.fame.time.TimePeriod period)
        Returns true if given amount of hydrogen can be produced in the given time period, false otherwise
        Parameters:
        hydrogenOutput - requested hydrogen output in thermal MWH
        period - during which to produce the hydrogen
        Returns:
        true if there is enough power to produce request amount of hydrogen within given time
      • calcElectricEnergy

        public double calcElectricEnergy​(double hydrogenOutputInThermalMWH)
        Calculates required electric energy to produce requested amount of hydrogen
        Parameters:
        hydrogenOutputInThermalMWH - requested for production
        Returns:
        required electric energy to output given amount of hydrogen
      • getPeakPower

        public double getPeakPower​(de.dlr.gitlab.fame.time.TimeStamp timeStamp)
        Gets the available peak electricity power consumption at given time
        Parameters:
        timeStamp - at which to evaluate
        Returns:
        maximum electric power consumption
      • calcHydrogenEnergy

        public double calcHydrogenEnergy​(double electricInputInMWH)
        Calculates hydrogen output for given electric input
        Parameters:
        electricInputInMWH - used for hydrogen production
        Returns:
        hydrogen output in MWH - ignoring limits of the converter's peak power
      • getConversionFactor

        public double getConversionFactor()
        Returns:
        factor < 1 of converting electric energy to hydrogen thermal energy