@@ -1304,6 +1304,21 @@ module GFS_typedefs
1304
1304
integer :: ntchm ! < number of prognostic chemical tracers (advected)
1305
1305
integer :: ntchs ! < tracer index for first prognostic chemical tracer
1306
1306
integer :: ntche ! < tracer index for last prognostic chemical tracer
1307
+ integer :: ntdu1 ! < tracer index for dust bin1
1308
+ integer :: ntdu2 ! < tracer index for dust bin2
1309
+ integer :: ntdu3 ! < tracer index for dust bin3
1310
+ integer :: ntdu4 ! < tracer index for dust bin4
1311
+ integer :: ntdu5 ! < tracer index for dust bin5
1312
+ integer :: ntss1 ! < tracer index for sea salt bin1
1313
+ integer :: ntss2 ! < tracer index for sea salt bin2
1314
+ integer :: ntss3 ! < tracer index for sea salt bin3
1315
+ integer :: ntss4 ! < tracer index for sea salt bin4
1316
+ integer :: ntss5 ! < tracer index for sea salt bin5
1317
+ integer :: ntsu ! < tracer index for sulfate
1318
+ integer :: ntbcl ! < tracer index for BCPHILIC
1319
+ integer :: ntbcb ! < tracer index for BCPHOBIC
1320
+ integer :: ntocl ! < tracer index for OCPHILIC
1321
+ integer :: ntocb ! < tracer index for OCPHOBIC
1307
1322
integer :: ndchm ! < number of diagnostic chemical tracers (not advected)
1308
1323
integer :: ndchs ! < tracer index for first diagnostic chemical tracer
1309
1324
integer :: ndche ! < tracer index for last diagnostic chemical tracer
@@ -3833,6 +3848,8 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
3833
3848
if (iaer/ 1000 == 1 .or. Model% iccn == 2 ) then
3834
3849
Model% iaerclm = .true.
3835
3850
ntrcaer = ntrcaerm
3851
+ else if (iaer/ 1000 == 2 ) then
3852
+ ntrcaer = ntrcaerm
3836
3853
else
3837
3854
ntrcaer = 1
3838
3855
endif
@@ -4496,6 +4513,24 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
4496
4513
allocate (Model% dtidx(Model% ntracp100,Model% nprocess))
4497
4514
Model% dtidx = - 99
4498
4515
4516
+ if (Model% ntchm> 0 ) then
4517
+ Model% ntdu1 = get_tracer_index(Model% tracer_names, ' dust1' , Model% me, Model% master, Model% debug)
4518
+ Model% ntdu2 = get_tracer_index(Model% tracer_names, ' dust2' , Model% me, Model% master, Model% debug)
4519
+ Model% ntdu3 = get_tracer_index(Model% tracer_names, ' dust3' , Model% me, Model% master, Model% debug)
4520
+ Model% ntdu4 = get_tracer_index(Model% tracer_names, ' dust4' , Model% me, Model% master, Model% debug)
4521
+ Model% ntdu5 = get_tracer_index(Model% tracer_names, ' dust5' , Model% me, Model% master, Model% debug)
4522
+ Model% ntss1 = get_tracer_index(Model% tracer_names, ' seas1' , Model% me, Model% master, Model% debug)
4523
+ Model% ntss2 = get_tracer_index(Model% tracer_names, ' seas2' , Model% me, Model% master, Model% debug)
4524
+ Model% ntss3 = get_tracer_index(Model% tracer_names, ' seas3' , Model% me, Model% master, Model% debug)
4525
+ Model% ntss4 = get_tracer_index(Model% tracer_names, ' seas4' , Model% me, Model% master, Model% debug)
4526
+ Model% ntss5 = get_tracer_index(Model% tracer_names, ' seas5' , Model% me, Model% master, Model% debug)
4527
+ Model% ntsu = get_tracer_index(Model% tracer_names, ' so4' , Model% me, Model% master, Model% debug)
4528
+ Model% ntbcb = get_tracer_index(Model% tracer_names, ' bc1' , Model% me, Model% master, Model% debug)
4529
+ Model% ntbcl = get_tracer_index(Model% tracer_names, ' bc2' , Model% me, Model% master, Model% debug)
4530
+ Model% ntocb = get_tracer_index(Model% tracer_names, ' oc1' , Model% me, Model% master, Model% debug)
4531
+ Model% ntocl = get_tracer_index(Model% tracer_names, ' oc2' , Model% me, Model% master, Model% debug)
4532
+ end if
4533
+
4499
4534
if (ldiag3d) then
4500
4535
! Flags used to turn on or off tracer "causes"
4501
4536
have_pbl_edmf = Model% hybedmf .or. Model% satmedmf .or. Model% do_mynnedmf
0 commit comments