-
Notifications
You must be signed in to change notification settings - Fork 6
/
AbstractTypes.jl
50 lines (37 loc) · 1.15 KB
/
AbstractTypes.jl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
"""
ParametersType{FT}
The top-level super-type for all cloud microphysics parameters
"""
abstract type ParametersType{FT} end
Base.eltype(::ParametersType{FT}) where {FT} = FT
Base.broadcastable(x::ParametersType) = tuple(x)
"""
AerosolType{FT}
The top-level super-type for all aerosol properties
"""
abstract type AerosolType{FT} <: ParametersType{FT} end
"""
AerosolDistributionType
The top-level super-type for all aerosol distribution types
"""
abstract type AerosolDistributionType end
"""
CloudCondensateType{FT}
The top-level super-type for cloud condensate types (liquid and ice)
"""
abstract type CloudCondensateType{FT} <: ParametersType{FT} end
"""
PrecipitationType{FT}
The top-level super-type for precipitation types (rain and snow)
"""
abstract type PrecipitationType{FT} <: ParametersType{FT} end
"""
TerminalVelocityType{FT}
The top-level super-type for terminal velocity parameterizations
"""
abstract type TerminalVelocityType{FT} <: ParametersType{FT} end
"""
Precipitation2MType
The top-level super-type for 2-moment precipitation parameterizations
"""
abstract type Precipitation2MType{FT} <: ParametersType{FT} end