Expose 3D heating rates from radiation multi-calls as diagnostics #60
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
#51 introduced the machinery to compute and output radiation diagnostics from SHiELD with scaled CO2 concentration. However, it only provided diagnostics for the surface and top of atmosphere fluxes. Having vertically resolved heating rate information can also be valuable. This PR makes the mostly boilerplate / plumbing updates needed to expose the 3D heating rates computed by the radiation multi-calls as diagnostics in a similar way.
The usage is the same as that described in #51, though one must also specify
gfs_physics_nml.ldiag3d = .true.
. The multi-call diagnostics exposed have names of the form:gfs_phys/tendency_of_air_temperature_due_to_longwave_heating_with_scaled_co2_1
gfs_phys/tendency_of_air_temperature_due_to_shortwave_heating_with_scaled_co2_1
gfs_phys/tendency_of_air_temperature_due_to_longwave_heating_assuming_clear_sky_with_scaled_co2_1
gfs_phys/tendency_of_air_temperature_due_to_shortwave_heating_assuming_clear_sky_with_scaled_co2_1
As we do with the existing versions of these diagnostics—i.e. those with the model-active CO2 concentration—we scale their values by the appropriate ratio of$c_p$ to the moist specific heat relevant to the configuration of the dynamical core to ensure that what is output is consistent with how the tendencies would be felt by the rest of the model.
Note these are diagnostics-manager-controlled fields, meaning that time aggregation (e.g. snapshot versus interval-averaged) can be configured through the diagnostics table.
How Has This Been Tested?
As in #51 this has been tested to ensure that:
This notebook illustrates the first two bullet points of these tests.
Difference between 4xCO2 and 1xCO2
Difference between 0xCO2 and 1xCO2
Checklist:
Please check all whether they apply or not