Skip to content

Commit 68cf8b2

Browse files
authored
Merge pull request #526 from CliMA/al/more_dust
Add Asian, MiddleEastern, and Saharan Dust params
2 parents 1937922 + f5d5263 commit 68cf8b2

File tree

3 files changed

+93
-0
lines changed

3 files changed

+93
-0
lines changed

src/parameters/AerosolAsianDust.jl

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
export AsianDust
2+
3+
"""
4+
AsianDust{FT}
5+
6+
Parameters for Asian Dust
7+
8+
# Fields
9+
$(DocStringExtensions.FIELDS)
10+
"""
11+
Base.@kwdef struct AsianDust{FT} <: AerosolType{FT}
12+
"m coefficient for deposition nucleation J [-]"
13+
deposition_m::FT
14+
"c coefficient for deposition nucleation J [-]"
15+
deposition_c::FT
16+
"m coefficient for immersion freezing J [-]"
17+
ABIFM_m::FT
18+
"c coefficient for immersion freezing J [-]"
19+
ABIFM_c::FT
20+
end
21+
22+
AsianDust(::Type{FT}) where {FT <: AbstractFloat} =
23+
AsianDust(CP.create_toml_dict(FT))
24+
25+
function AsianDust(td::CP.AbstractTOMLDict)
26+
name_map = (;
27+
:J_ABDINM_m_AsianDust => :deposition_m,
28+
:J_ABDINM_c_AsianDust => :deposition_c,
29+
:J_ABIFM_m_AsianDust => :ABIFM_m,
30+
:J_ABIFM_c_AsianDust => :ABIFM_c,
31+
)
32+
parameters = CP.get_parameter_values(td, name_map, "CloudMicrophysics")
33+
FT = CP.float_type(td)
34+
return AsianDust{FT}(; parameters...)
35+
end
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
export MiddleEasternDust
2+
3+
"""
4+
MiddleEasternDust{FT}
5+
6+
Parameters for Middle Eastern Dust
7+
8+
# Fields
9+
$(DocStringExtensions.FIELDS)
10+
"""
11+
Base.@kwdef struct MiddleEasternDust{FT} <: AerosolType{FT}
12+
"m coefficient for immersion freezing J [-]"
13+
ABIFM_m::FT
14+
"c coefficient for immersion freezing J [-]"
15+
ABIFM_c::FT
16+
end
17+
18+
MiddleEasternDust(::Type{FT}) where {FT <: AbstractFloat} =
19+
MiddleEasternDust(CP.create_toml_dict(FT))
20+
21+
function MiddleEasternDust(td::CP.AbstractTOMLDict)
22+
name_map = (;
23+
:J_ABIFM_m_MiddleEasternDust => :ABIFM_m,
24+
:J_ABIFM_c_MiddleEasternDust => :ABIFM_c,
25+
)
26+
parameters = CP.get_parameter_values(td, name_map, "CloudMicrophysics")
27+
FT = CP.float_type(td)
28+
return MiddleEasternDust{FT}(; parameters...)
29+
end

src/parameters/AerosolSaharanDust.jl

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
export SaharanDust
2+
3+
"""
4+
SaharanDust{FT}
5+
6+
Parameters for Saharan Dust
7+
8+
# Fields
9+
$(DocStringExtensions.FIELDS)
10+
"""
11+
Base.@kwdef struct SaharanDust{FT} <: AerosolType{FT}
12+
"m coefficient for deposition nucleation J [-]"
13+
deposition_m::FT
14+
"c coefficient for deposition nucleation J [-]"
15+
deposition_c::FT
16+
end
17+
18+
SaharanDust(::Type{FT}) where {FT <: AbstractFloat} =
19+
SaharanDust(CP.create_toml_dict(FT))
20+
21+
function SaharanDust(td::CP.AbstractTOMLDict)
22+
name_map = (;
23+
:J_ABDINM_m_SaharanDust => :deposition_m,
24+
:J_ABDINM_c_SaharanDust => :deposition_c,
25+
)
26+
parameters = CP.get_parameter_values(td, name_map, "CloudMicrophysics")
27+
FT = CP.float_type(td)
28+
return SaharanDust{FT}(; parameters...)
29+
end

0 commit comments

Comments
 (0)