utilities for tempo microphysics
normalized lower gamma function calculated either with a series expansion or continued fraction method
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | a | |||
| real(kind=wp), | intent(in) | :: | x |
solves the normalized lower gamma function
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | a | |||
| real(kind=wp), | intent(in) | :: | x |
solves the normalized upper gamma function using a continued fractions method (modified Lentz Algorithm)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | a | |||
| real(kind=wp), | intent(in) | :: | x |
calculates liquid saturation vapor mixing ratio
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | p | |||
| real(kind=wp), | intent(in) | :: | t |
calculates liquid saturation vapor mixing ratio
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | p | |||
| real(kind=wp), | intent(in) | :: | t |
returns nu_c for cloud water (values from 2-15)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | nc |
returns land-specific value of cloud droplet number concentration when aerosol-aware = false if land = 1, else returns ocean-specific value
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in), | optional | :: | land | ||
| real(kind=wp), | intent(out), | dimension(:) | :: | nc |
computes snow moments from Field et al. (2005)
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | rs | |||
| real(kind=wp), | intent(in) | :: | tc | |||
| real(kind=dp), | intent(out) | :: | smob | |||
| real(kind=dp), | intent(out) | :: | smoc | |||
| real(kind=dp), | intent(out), | optional | :: | ns | ||
| real(kind=dp), | intent(out), | optional | :: | smo0 | ||
| real(kind=dp), | intent(out), | optional | :: | smo1 | ||
| real(kind=dp), | intent(out), | optional | :: | smo2 | ||
| real(kind=dp), | intent(out), | optional | :: | smoe | ||
| real(kind=dp), | intent(out), | optional | :: | smof | ||
| real(kind=dp), | intent(out), | optional | :: | smog | ||
| real(kind=dp), | intent(out), | optional | :: | smoz |
collision efficiency for rain collecting cloud water from Beard and Grover (1974) if a/A < 0.25 https://doi.org/10.1175/1520-0469(1974)031<0543:NCEFSR>2.0.CO;2 otherwise uses polynomials to get close match of Pruppacher and Klett Fig. 14-9
collision efficiency for snow collecting cloud water from Wang and Ji (2000) https://doi.org/10.1175/1520-0469(2000)057<1001:CEOICA>2.0.CO;2 equating melted snow diameter to effective collision cross-section
calculates cloud ice conversion to snow and depositional growth by binning cloud ice distributions and determining both the size bins > d0s (that are converted to snow) and the depositional growth up to d0s (for cloud ice) and > d0s for snow following Harrington et al. (1995) https://doi.org/10.1175/1520-0469(1995)052<4344:POICCP>2.0.CO;2
calculates droplet evaporation data