I am not that familiar with ICON source code and Fortran programming, therefore I am asking, whether the following is correct:
- I have just found out that there are
reff_qx variables. For my use case (ICON→libRadtran/MYSTIC for 3D radiative transfer calculation) 3D cloud radiative ) would like to use them instead of calculating reff from qx and qnx.
- I am also aware of the
SUBROUTINE combine_phases_radiation_reff (mo_nwp_reff_interface.f90), which combines liquid and ice phases.
This uses the SUBROUTINE combine_reff (mo_reff_main.f90). And as there is INTENT(INOUT) this overwrites the qc / qi and reff_qc/reff_qi variables.
- The mass concentration here is not
p_prog%tracer(:,:,jb:iqc) but prm_diag%tot_cld(:,:,jb:iqc), so this doesnt change the output of qc and qi but the output of reff_qc and reff_qi?
- If this is correct, how would I get the not combined versions of reff_qc and reff_qi?
I have added the relevant the parts of my runscript.
&nwp_phy_nml
inwp_gscp = 4 !4 for two moment
icalc_reff = 100 ! Consistent with current microphysics (it sets icalc_reff = inwp_gscp)
icpl_rad_reff = 1 ! Radiation uses the effective radius defined by icalc_reff. All hydrometeors are combined in a frozen and a liquid phase.
<...>
/
&output_nml
output_start = "${start_date}"
output_end = "${end_date}"
output_interval = "PT02H"
file_interval = "PT02H"
include_last = .FALSE.
output_filename = '3d_full_qmix'
remap = 0
filename_format = "<output_filename>_DOM<physdom>_<levtype>_<datetime2>"
ml_varlist = 'qc','qi','qr','qs','qg','qh'
filetype = 5
/
&output_nml
output_start = "${start_date}"
output_end = "${end_date}"
output_interval = "PT02H"
file_interval = "PT02H"
include_last = .FALSE.
output_filename = '3d_full_reff'
remap = 0
filename_format = "<output_filename>_DOM<physdom>_<levtype>_<datetime2>"
ml_varlist = 'reff_qc','reff_qi','reff_qr','reff_qs','reff_qg','reff_qh'
filetype = 5
/
Best regards,
Kolja Wagner
Phd / Modelling / TROPOS
Hi Kolja,
the combine_reff routine is called when you use the effective radius in the radiation calculations (icpl_rad_reff = 1). This is done because most radiation schemes only accept a liquid and a frozen phase but we have more hydrometeors. The calculations are done so that the sum of the effective cross sections of the hydrometers (like rain and cloud water for liquid) is now given by the optical properties of the liquid phase (reff_qc and qc_dia). Correspondingly a new cloud fraction clc_rad, which accounts for large hydrometeors, is calculated and should be used by extra radiation calculations (like satellite forward operators). The frozen phase combines qi_dia, qs, qg, and their effective radii into qi_dia reff_qi.
The mass of the hydrometers qx are unchanged by radiation or effective radius calculations, we only change the diagnostics of the liquid and frozen phase used for radiation: qc_dia and qi_dia. These are first calculated in the cloud scheme and then modified by the effective radius as described above.
Unfortunately we do not have an extra output for the effective radius of cloud water or ice when we use this option, they are overwritten by the total liquid and frozen phase.
You can use the option icpl_rad_reff = 2. With this option ecrad considers all hydrometeors independently and they are not combined. Another option is to use icpl_rad_reff = 0 for which radiation uses an effective radius independent of microphysics, and the calculated effective radii (not used by the model now but they can be written as output) are also not combined. Model results will however change. Notice that even with these options the effective radius of cloud water and ice still refer to the diagnostic cloud water and ice (qc_dia and qi_dia).
I do not know how mystic works, does it consider all hydrometeors independently or just a liquid and frozen phase?
Best Regards,
Alberto de Lozar
Deutscher Wetterdienst
MYSTIC allows to specify clouds as 3D fields of lwc and reff for ice and liquid phases. So qc_dia, reff_qc, qi_dia, reff_qi are exactly what I want as I would have to combine them myself. Thanks
No problem. Do not forget to use clc_rad for cloud cover. It does not make a big difference but it is nice to be consistent.