Skip to content
10 changes: 10 additions & 0 deletions PySDM/physics/constants_defaults.py
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,16 @@
MERLIVAT_NIEF_1967_ALPHA_I_2H_T1 = 0 * si.K
MERLIVAT_NIEF_1967_ALPHA_I_2H_T0 = -0.0945

""" [Lamb et al. (2017)](https://doi.org/10.1073/pnas.1618374114) """
LAMB_ET_AL_2017_ALPHA_I_2H_T2 = 13525 * si.K**2
LAMB_ET_AL_2017_ALPHA_I_2H_T1 = 0 * si.K
LAMB_ET_AL_2017_ALPHA_I_2H_T0 = -0.0559

""" [Ellehoj et al. (2013)](https://doi.org/10.1002/rcm.6668) """
ELLEHOJ_ET_AL_2013_ALPHA_I_2H_T2 = 48888 * si.K**2
ELLEHOJ_ET_AL_2013_ALPHA_I_2H_T1 = -203.1 * si.K
ELLEHOJ_ET_AL_2013_ALPHA_I_2H_T0 = 0.2133

""" [Majoube (1971)](https://doi.org/10.1051/jcp/1971681423) """
# values taken from Jouzel 1986 (eqs. 1)
MAJOUBE_1971_ALPHA_L_18O_T2 = 1137 * si.K**2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,5 @@
from .null import Null
from .pierchala_et_al_2022 import PierchalaEtAl2022
from .van_hook_1968 import VanHook1968
from .lamb_et_al_2017 import LambEtAl2017
from .ellehoj_et_al_2013 import EllehojEtAl2013
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
"""
Equilibrium fractionation factors from
[Ellehoj et al. 2013](https://doi.org/10.1002/rcm.6668)
"""

import numpy as np


class EllehojEtAl2013: # pylint: disable=too-few-public-methods
def __init__(self, _):
pass

@staticmethod
def alpha_i_2H(const, T):
return np.exp(
const.ELLEHOJ_ET_AL_2013_ALPHA_I_2H_T2 / T**2
+ const.ELLEHOJ_ET_AL_2013_ALPHA_I_2H_T1 / T
+ const.ELLEHOJ_ET_AL_2013_ALPHA_I_2H_T0
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
"""
Equilibrium fractionation factors from
[Lamb et al. 2017](https://doi.org/10.1073/pnas.1618374114)
"""

import numpy as np


class LambEtAl2017: # pylint: disable=too-few-public-methods
def __init__(self, _):
pass

@staticmethod
def alpha_i_2H(const, T):
return np.exp(
const.LAMB_ET_AL_2017_ALPHA_I_2H_T2 / T**2
+ const.LAMB_ET_AL_2017_ALPHA_I_2H_T1 / T
+ const.LAMB_ET_AL_2017_ALPHA_I_2H_T0
)
5 changes: 5 additions & 0 deletions examples/PySDM_examples/Lamb_et_al_2017/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# pylint: disable=invalid-name
"""
Formulae-only example depicting equilibrium isotopic fractionation over ice based on
[Lamb et al. 2017](https://doi.org/10.1073/pnas.1618374114)
"""
Loading