Class EmissionIndustrialIntensityFunction

java.lang.Object
net.finmath.climate.models.dice.submodels.EmissionIndustrialIntensityFunction
All Implemented Interfaces:
BiFunction<Integer,Double,Double>

public class EmissionIndustrialIntensityFunction extends Object implements BiFunction<Integer,Double,Double>
The function that maps \(i, \sigma(t_{i})) \) to \sigma(t_{i+1})), where \( \sigma(t) \) is the emission intensity (in kgCO2 / USD = GtCO2 / (10^12 USD)). The emission intensity is the factor that is applied to the GDP to get the corresponding emissions. The function is modelled as an exponential decay, where the decay rate decays exponentially (double exponential). Note: This is a continuous time version of the function \( \sigma(t) \) from the original model, except that the division by \( (1-\mu(0)) \) is missing here.
Author:
Christian Fries
  • Constructor Details

    • EmissionIndustrialIntensityFunction

      public EmissionIndustrialIntensityFunction(TimeDiscretization timeDiscretization, double emissionIntensityInitial, double emissionIntensityRateInitial, double emissionIntensityRateDecay)
      The evolution of the emission intensity
      Parameters:
      timeDiscretization - The time discretization used.
      emissionIntensityInitial - The initial emission intensity. Unit: GtCO2 / (10^12 USD)
      emissionIntensityRateInitial - Initial value for the exponential decay rate.
      emissionIntensityRateDecay - Exponential decay rate for the decay rate.
    • EmissionIndustrialIntensityFunction

      public EmissionIndustrialIntensityFunction(TimeDiscretization timeDiscretization)
  • Method Details

    • apply

      public Double apply(Integer timeIndex, Double _emissionIntensity)
      Specified by:
      apply in interface BiFunction<Integer,Double,Double>
    • getTimeDiscretization

      public TimeDiscretization getTimeDiscretization()
    • getEmissionIntensityInitial

      public double getEmissionIntensityInitial()
    • getEmissionIntensityRateInitial

      public double getEmissionIntensityRateInitial()
    • getEmissionIntensityRateDecay

      public double getEmissionIntensityRateDecay()