Skip to content

Commit b709b27

Browse files
authored
Merge pull request #1462 from fvitt/aerosol_hygroscopicity
cam6_4_141: Aerosol hygroscopicity update
2 parents 628aba8 + f1d029c commit b709b27

File tree

2 files changed

+3
-26
lines changed

2 files changed

+3
-26
lines changed

bld/build-namelist

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3660,7 +3660,6 @@ if ($clubb_sgs =~ /$TRUE/io) {
36603660
# Tuning for wet scavenging of modal aerosols
36613661
if ($chem =~ /_mam/) {
36623662
add_default($nl, 'sol_facti_cloud_borne');
3663-
add_default($nl, 'sol_factb_interstitial');
36643663
add_default($nl, 'sol_factic_interstitial');
36653664
}
36663665
if ($carma =~ /trop_strat/) {

src/chemistry/aerosol/aerosol_state_mod.F90

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -927,7 +927,7 @@ function sol_factb_interstitial(self, bin_ndx, ncol, nlev, aero_props) result(so
927927
real(r8) :: totmmr(ncol,nlev)
928928
real(r8) :: solmmr(ncol,nlev)
929929
integer :: ispc
930-
character(len=aero_name_len) :: spectype
930+
real(r8) :: spechygro
931931

932932
sol_factb(:,:) = 0.0_r8
933933

@@ -936,40 +936,18 @@ function sol_factb_interstitial(self, bin_ndx, ncol, nlev, aero_props) result(so
936936

937937
do ispc = 1, aero_props%nspecies(bin_ndx)
938938

939-
call aero_props%species_type(bin_ndx, ispc, spectype)
939+
call aero_props%get(bin_ndx, ispc, hygro=spechygro)
940940
call self%get_ambient_mmr(ispc, bin_ndx, aer_mmr)
941941

942942
totmmr(:ncol,:) = totmmr(:ncol,:) + aer_mmr(:ncol,:)
943-
944-
if (trim(spectype) == 'sulfate') then
945-
solmmr(:ncol,:) = solmmr(:ncol,:) + aer_mmr(:ncol,:)*0.5_r8
946-
end if
947-
if (trim(spectype) == 'p-organic') then
948-
solmmr(:ncol,:) = solmmr(:ncol,:) + aer_mmr(:ncol,:)*0.2_r8
949-
end if
950-
if (trim(spectype) == 's-organic') then
951-
solmmr(:ncol,:) = solmmr(:ncol,:) + aer_mmr(:ncol,:)*0.2_r8
952-
end if
953-
if (trim(spectype) == 'dust') then
954-
solmmr(:ncol,:) = solmmr(:ncol,:) + aer_mmr(:ncol,:)*0.1_r8
955-
end if
956-
if (trim(spectype) == 'seasalt') then
957-
solmmr(:ncol,:) = solmmr(:ncol,:) + aer_mmr(:ncol,:)*0.8_r8
958-
end if
943+
solmmr(:ncol,:) = solmmr(:ncol,:) + aer_mmr(:ncol,:)*spechygro
959944

960945
end do !nspec
961946

962947
where ( totmmr > 0._r8 )
963948
sol_factb = solmmr/totmmr
964949
end where
965950

966-
where ( sol_factb > 0.8_r8 )
967-
sol_factb = 0.8_r8
968-
end where
969-
where ( sol_factb < 0.1_r8 )
970-
sol_factb = 0.1_r8
971-
end where
972-
973951
end function sol_factb_interstitial
974952

975953

0 commit comments

Comments
 (0)