Module net.finmath.lib
Class EvolutionOfTemperature
- java.lang.Object
-
- net.finmath.climate.models.dice.submodels.EvolutionOfTemperature
-
- All Implemented Interfaces:
TriFunction<Integer,Temperature2DScalar,Double,Temperature2DScalar>
public class EvolutionOfTemperature extends Object implements TriFunction<Integer,Temperature2DScalar,Double,Temperature2DScalar>
The evolution of the temperature \( \mathrm{d}T(t) = \left( \Gamma_{T} T(t) + \xi \cdot F(t) \right) \mathrm{d}t \). The unit of \( T \) is K (Kelvin). This is a function of timeIndex, previous temperature and forcing. The evolution is modelled as \( \mathrm{d}T(t) = \left( \Gamma_{T} T(t) + \xi \cdot F(t) \right) \mathrm{d}t \). With the givenTimeDiscretization
it is approximated via an Euler-step \( T(t_{i+1}) = \Phi T(t_{i}) + (forcingToTemp \cdot (forcing, 0) \cdot \Delta t_{i} \) where \( \Phi = (1 + \Gamma_{T} \Delta t_{i}) \).- Author:
- Christian Fries
-
-
Constructor Summary
Constructors Constructor Description EvolutionOfTemperature(TimeDiscretization timeDiscretization)
EvolutionOfTemperature(TimeDiscretization timeDiscretization, Function<Integer,double[][]> transitionMatrices, double forcingToTemp)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Temperature2DScalar
apply(Integer timeIndex, Temperature2DScalar temperature, Double forcing)
TimeDiscretization
getTimeDiscretization()
-
-
-
Constructor Detail
-
EvolutionOfTemperature
public EvolutionOfTemperature(TimeDiscretization timeDiscretization, Function<Integer,double[][]> transitionMatrices, double forcingToTemp)
- Parameters:
timeDiscretization
- The time discretization.transitionMatrices
- Transition matrix \( \Phi \) for each time step.forcingToTemp
- The scaling coefficient for the external forcing to temperature change per year (this is per 1Y).
-
EvolutionOfTemperature
public EvolutionOfTemperature(TimeDiscretization timeDiscretization)
-
-
Method Detail
-
apply
public Temperature2DScalar apply(Integer timeIndex, Temperature2DScalar temperature, Double forcing)
- Specified by:
apply
in interfaceTriFunction<Integer,Temperature2DScalar,Double,Temperature2DScalar>
-
getTimeDiscretization
public TimeDiscretization getTimeDiscretization()
-
-