I have requested some section 3, 4 and 5 stash diagnostics in my suite u-ce369 which are not being output because they are ‘not available in this model version’ according to the suite logs. The diagnostics are related to aerosol species removal through dry and wet deposition. I followed cms trac ticket #3172
which suggests running stashtestmask.STASHTstmskValidate on my suite to identify the cause.
Apprarently the diagnostics are not available because of logical switches that are embedded in the CLASSIC aerosol model component (section 17). But, my suite does not use CLASSIC aerosols, it uses modal aerosol (l_ukca_mode=TRUE) with i_mode_setup=2 and offline-odiant chemistry scheme (i_ukca_chem=Offline Oxidants (BE) (14)) in section 34.
The specific logical switches that prevent the diagnostics from being available are:
and the associated diagnostics are:
3-270 to 3-273
3-396 to 3-398
3-407 to 3-409
5-238 to 5-244
I have checked the code for use of l_sulpc_so2 for example, and the only use is associated with the CLASSIC aerosol scheme, including the run_aerosols.F90 subroutine, which is associated with section 17 (CLASSIC).
I think there are logical checks in ukca_set1defs.F90 which assume only CLASSIC aerosols will be used. For example:
UkcaD1Codes(j+13)%item=103 ! SO4 Aitken Mode
IF ((.NOT. l_sulpc_so2) .OR. l_use_arclsulp) &
UkcaD1Codes(j+14)%item=104 ! SO4 accumulation Mode
If I have followed this through correctly, I think I could add an additional logical option for l_ukca_mode to ukca_set1defs.F90, with additional checks for the value of i_mode_setup to make sure the aerosol species associated with the diagnostic is being emitted. Is that a sensible approach?
Thanks and sorry for the long message!