diff --git a/doc/NamesNotInDictionary.txt b/doc/NamesNotInDictionary.txt
index fd11ee07..ef98dec9 100644
--- a/doc/NamesNotInDictionary.txt
+++ b/doc/NamesNotInDictionary.txt
@@ -1,15 +1,36 @@
#######################
Date/time of when script was run:
-2025-02-13 20:35:20.393146
+2025-06-16 17:08:09.244285
#######################
Non-dictionary standard names found in the following metadata files:
--------------------------
+atmospheric_physics/schemes/sima_diagnostics/sima_tend_diagnostics.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+
+--------------------------
+
+atmospheric_physics/schemes/sima_diagnostics/cloud_particle_sedimentation_diagnostics.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+ - stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation
+ - stratiform_rain_flux_at_surface_due_to_sedimentation
+ - tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
+
+--------------------------
+
atmospheric_physics/schemes/sima_diagnostics/zm_evap_tendency_diagnostics.meta
+ - ccpp_error_code
+ - ccpp_error_message
- tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_and_melting_of_frozen_precipitation_due_to_deep_convection
- tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_frozen_precipitation_production_due_to_deep_convection
- tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
@@ -18,6 +39,8 @@ atmospheric_physics/schemes/sima_diagnostics/zm_evap_tendency_diagnostics.meta
atmospheric_physics/schemes/sima_diagnostics/check_energy_gmean_diagnostics.meta
+ - ccpp_error_code
+ - ccpp_error_message
- flag_for_energy_global_means_output
- global_mean_heating_rate_correction_for_energy_conservation
- global_mean_vertically_integrated_total_energy_using_dycore_energy_formula_at_end_of_physics_timestep
@@ -25,14 +48,58 @@ atmospheric_physics/schemes/sima_diagnostics/check_energy_gmean_diagnostics.meta
--------------------------
+atmospheric_physics/schemes/sima_diagnostics/convective_cloud_cover_diagnostics.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+ - deep_convective_cloud_area_fraction
+ - shallow_convective_cloud_area_fraction
+
+--------------------------
+
atmospheric_physics/schemes/sima_diagnostics/zm_tendency_diagnostics.meta
+ - ccpp_constituent_properties
+ - ccpp_constituent_tendencies
+ - ccpp_error_code
+ - ccpp_error_message
+
+--------------------------
+
+atmospheric_physics/schemes/sima_diagnostics/convect_shallow_diagnostics.meta
+
+ - atmosphere_convective_mass_flux_due_to_all_convection
+ - atmosphere_convective_mass_flux_due_to_shallow_convection
+ - ccpp_constituent_properties
- ccpp_constituent_tendencies
+ - ccpp_error_code
+ - ccpp_error_message
+ - detrainment_of_cloud_liquid_water_wrt_moist_air_and_condensed_water_due_to_all_convection
+ - detrainment_of_cloud_liquid_water_wrt_moist_air_and_condensed_water_due_to_shallow_convection
+ - frozen_precipitation_flux_at_interface_due_to_shallow_convection
+ - in_cloud_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_shallow_convection
+ - liquid_water_static_energy_flux_due_to_shallow_convection
+ - lwe_precipitation_rate_at_surface_due_to_shallow_convection
+ - number_of_ccpp_constituents
+ - precipitation_flux_at_interface_due_to_shallow_convection
+ - pressure_at_cloud_base_for_all_convection
+ - pressure_at_cloud_top_for_all_convection
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_and_melting_of_frozen_precipitation_due_to_shallow_convection
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_frozen_precipitation_production_due_to_shallow_convection
+ - tendency_of_frozen_precipitation_wrt_moist_air_and_condensed_water_due_to_shallow_convection
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_shallow_convection
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_shallow_convection_excluding_subcloud_evaporation
+ - tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
+ - total_water_flux_due_to_shallow_convection
+ - vertical_index_at_cloud_base_for_all_convection
+ - vertical_index_at_cloud_top_for_all_convection
--------------------------
atmospheric_physics/schemes/sima_diagnostics/check_energy_diagnostics.meta
+ - ccpp_error_code
+ - ccpp_error_message
- cumulative_total_energy_boundary_flux_using_physics_energy_formula
- cumulative_total_water_boundary_flux
- ratio_of_specific_heat_of_air_used_in_physics_energy_formula_to_specific_heat_of_air_used_in_dycore_energy_formula
@@ -46,20 +113,72 @@ atmospheric_physics/schemes/sima_diagnostics/sima_state_diagnostics.meta
- air_pressure_at_interface
- air_pressure_of_dry_air_at_interface
+ - ccpp_constituent_properties
+ - ccpp_constituents
+ - ccpp_error_code
+ - ccpp_error_message
+ - geopotential_height_wrt_surface_at_interface
- ln_air_pressure_at_interface
- ln_air_pressure_of_dry_air_at_interface
- surface_air_pressure
--------------------------
+atmospheric_physics/schemes/sima_diagnostics/rk_stratiform_diagnostics.meta
+
+ - accretion_of_cloud_ice_by_snow
+ - accretion_of_cloud_liquid_water_by_rain
+ - accretion_of_cloud_liquid_water_by_snow
+ - ccpp_error_code
+ - ccpp_error_message
+ - cloud_area_fraction
+ - cloud_area_fraction_from_relative_humidity_method
+ - lwe_snow_precipitation_rate_at_surface_due_to_microphysics
+ - mass_fraction_of_ice_content_within_stratiform_cloud
+ - net_condensation_rate_due_to_microphysics
+ - precipitation_production_due_to_microphysics
+ - rate_of_condensation_minus_evaporation_for_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ - rate_of_condensation_minus_evaporation_for_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ - rate_of_evaporation_of_falling_snow_due_to_microphysics
+ - rate_of_evaporation_of_precipitation_due_to_microphysics
+ - relative_importance_of_cloud_ice_autoconversion
+ - relative_importance_of_cloud_liquid_water_autoconversion
+ - relative_importance_of_rain_accreting_cloud_liquid_water
+ - relative_importance_of_snow_accreting_cloud_ice
+ - relative_importance_of_snow_accreting_cloud_liquid_water
+ - stratiform_rain_and_snow_flux_at_interface
+ - stratiform_snow_flux_at_interface
+ - tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tendency_of_cloud_ice_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_ice_to_snow_autoconversion
+ - tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tendency_of_cloud_liquid_water_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_liquid_to_rain_autoconversion
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_cloud_ice_and_cloud_liquid_repartitioning
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_condensation_minus_evaporation
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_of_precipitation
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_freezing_of_precipitation
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_snow_melt
+
+--------------------------
+
+atmospheric_physics/schemes/sima_diagnostics/rayleigh_friction_diagnostics.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+
+--------------------------
+
atmospheric_physics/schemes/sima_diagnostics/zm_convr_tendency_diagnostics.meta
+ - ccpp_error_code
+ - ccpp_error_message
- tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
--------------------------
atmospheric_physics/schemes/sima_diagnostics/check_energy_fix_diagnostics.meta
+ - ccpp_error_code
+ - ccpp_error_message
- net_sensible_heat_flux_through_top_and_bottom_of_atmosphere_column
- vertically_integrated_total_energy_using_dycore_energy_formula
- vertically_integrated_total_energy_using_dycore_energy_formula_at_end_of_physics_timestep
@@ -67,8 +186,17 @@ atmospheric_physics/schemes/sima_diagnostics/check_energy_fix_diagnostics.meta
--------------------------
+atmospheric_physics/schemes/sima_diagnostics/kessler_diagnostics.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+
+--------------------------
+
atmospheric_physics/schemes/sima_diagnostics/tropopause_diagnostics.meta
+ - ccpp_error_code
+ - ccpp_error_message
- tropopause_air_pressure
- tropopause_air_pressure_from_climatological_method
- tropopause_air_pressure_from_cold_point_method
@@ -95,12 +223,29 @@ atmospheric_physics/schemes/sima_diagnostics/tropopause_diagnostics.meta
--------------------------
+atmospheric_physics/schemes/sima_diagnostics/compute_cloud_fraction_diagnostics.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+ - stratiform_cloud_area_fraction
+
+--------------------------
+
+atmospheric_physics/schemes/sima_diagnostics/zm_momtran_tendency_diagnostics.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+
+--------------------------
+
atmospheric_physics/schemes/sima_diagnostics/zm_diagnostics.meta
- atmosphere_convective_mass_flux_due_to_deep_convection
- atmosphere_downdraft_convective_mass_flux_for_deep_convection_for_convective_columns
- atmosphere_updraft_convective_mass_flux_for_deep_convection_for_convective_columns
- - detrainment_of_cloud_liquid_due_to_deep_convection
+ - ccpp_error_code
+ - ccpp_error_message
+ - detrainment_of_cloud_liquid_water_wrt_moist_air_and_condensed_water_due_to_deep_convection
- frozen_precipitation_flux_at_interface_due_to_deep_convection
- horizontal_index_of_convective_columns_for_deep_convection_for_convective_columns
- in_cloud_eastward_wind_in_downdraft_due_to_deep_convection
@@ -124,9 +269,12 @@ atmospheric_physics/schemes/sima_diagnostics/zm_diagnostics.meta
atmospheric_physics/schemes/tj2016/tj2016_precip.meta
+ - ccpp_error_code
+ - ccpp_error_message
- gas_constant_of_water_vapor
- lwe_large_scale_precipitation_rate_at_surface
- ratio_of_water_vapor_to_dry_air_molecular_weights
+ - scheme_name
- sum_of_sigma_pressure_hybrid_coordinate_a_coefficient_and_sigma_pressure_hybrid_coordinate_b_coefficient
--------------------------
@@ -134,12 +282,15 @@ atmospheric_physics/schemes/tj2016/tj2016_precip.meta
atmospheric_physics/schemes/tj2016/tj2016_sfc_pbl_hs.meta
- air_pressure_at_interface
+ - ccpp_error_code
+ - ccpp_error_message
- eddy_heat_diffusivity
- eddy_momentum_diffusivity
- gas_constant_of_water_vapor
- ln_air_pressure_at_interface
- pi_constant
- ratio_of_water_vapor_to_dry_air_molecular_weights
+ - scheme_name
- sum_of_sigma_pressure_hybrid_coordinate_a_coefficient_and_sigma_pressure_hybrid_coordinate_b_coefficient
- surface_air_pressure
- surface_eastward_wind_stress
@@ -152,12 +303,176 @@ atmospheric_physics/schemes/tj2016/tj2016_sfc_pbl_hs.meta
--------------------------
+atmospheric_physics/schemes/cloud_fraction/convective_cloud_cover.meta
+
+ - atmosphere_convective_mass_flux_due_to_all_convection
+ - atmosphere_convective_mass_flux_due_to_shallow_convection
+ - ccpp_error_code
+ - ccpp_error_message
+ - deep_convective_cloud_area_fraction
+ - flag_for_cloud_area_fraction_to_use_shallow_convection_calculated_cloud_area_fraction
+ - shallow_convective_cloud_area_fraction
+ - shallow_convective_cloud_area_fraction_from_shallow_convection
+ - tunable_parameter_for_deep_convection_1_for_cloud_fraction
+ - tunable_parameter_for_deep_convection_2_for_cloud_fraction
+ - tunable_parameter_for_shallow_convection_1_for_cloud_fraction
+ - tunable_parameter_for_shallow_convection_2_for_cloud_fraction
+ - vertical_layer_index_of_cloud_fraction_top
+
+--------------------------
+
+atmospheric_physics/schemes/cloud_fraction/compute_cloud_fraction.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+ - cloud_area_fraction
+ - cloud_area_fraction_from_relative_humidity_method
+ - control_for_ice_cloud_fraction
+ - deep_convective_cloud_area_fraction
+ - do_ice_cloud_fraction_for_cloud_fraction
+ - do_no_stratification_based_cloud_fraction
+ - do_relative_humidity_perturbation_for_cloud_fraction
+ - do_vavrus_freeze_dry_adjustment_for_cloud_fraction
+ - freezing_point_of_water
+ - lwe_surface_snow_depth_over_land
+ - ocean_area_fraction
+ - ratio_of_dry_air_gas_constant_to_specific_heat_of_dry_air_at_constant_pressure
+ - reference_temperature_lapse_rate
+ - relative_humidity_threshold_for_cloud_formation
+ - shallow_convective_cloud_area_fraction
+ - stratiform_cloud_area_fraction
+ - stratiform_cloud_ice_area_fraction
+ - stratiform_cloud_liquid_area_fraction
+ - surface_air_pressure
+ - tunable_parameter_for_adjustment_to_minimum_relative_humidity_for_low_stable_clouds_for_land_without_snow_cover_for_cloud_fraction
+ - tunable_parameter_for_bottom_pressure_bound_for_mid_level_liquid_stratus_for_cloud_fraction
+ - tunable_parameter_for_critical_relative_humidity_for_ice_clouds_for_cloud_fraction_using_wilson_and_ballard_scheme
+ - tunable_parameter_for_minimum_relative_humidity_for_high_stable_clouds_for_cloud_fraction
+ - tunable_parameter_for_minimum_relative_humidity_for_low_stable_clouds_for_cloud_fraction
+ - tunable_parameter_for_top_pressure_bound_for_mid_level_clouds_for_cloud_fraction
+ - vertical_layer_index_of_cloud_fraction_top
+
+--------------------------
+
atmospheric_physics/schemes/cloud_fraction/cloud_fraction_fice.meta
+ - ccpp_error_code
+ - ccpp_error_message
- freezing_point_of_water
- mass_fraction_of_ice_content_within_stratiform_cloud
- mass_fraction_of_snow_content_within_stratiform_cloud
- - vertical_layer_index_of_troposphere_cloud_top
+ - vertical_layer_index_of_cloud_fraction_top
+
+--------------------------
+
+atmospheric_physics/schemes/cloud_fraction/set_cloud_fraction_top.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+ - vertical_layer_index_of_cloud_fraction_top
+ - vertical_layer_index_of_troposphere_cloud_physics_top
+
+--------------------------
+
+atmospheric_physics/schemes/hack_shallow/convect_shallow_sum_to_deep.meta
+
+ - atmosphere_convective_mass_flux_due_to_all_convection
+ - atmosphere_convective_mass_flux_due_to_deep_convection
+ - atmosphere_convective_mass_flux_due_to_shallow_convection
+ - ccpp_error_code
+ - ccpp_error_message
+ - detrainment_of_cloud_liquid_water_wrt_moist_air_and_condensed_water_due_to_all_convection
+ - detrainment_of_cloud_liquid_water_wrt_moist_air_and_condensed_water_due_to_deep_convection
+ - detrainment_of_cloud_liquid_water_wrt_moist_air_and_condensed_water_due_to_shallow_convection
+ - pressure_at_cloud_base_for_all_convection
+ - pressure_at_cloud_top_for_all_convection
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_convection_excluding_subcloud_evaporation
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_deep_convection_excluding_subcloud_evaporation
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_shallow_convection_excluding_subcloud_evaporation
+ - vertical_index_at_cloud_base_for_all_convection
+ - vertical_index_at_cloud_base_for_shallow_convection
+ - vertical_index_at_cloud_top_for_all_convection
+ - vertical_index_at_cloud_top_for_shallow_convection
+ - vertical_index_at_top_of_deep_convection_for_convective_columns
+ - vertical_index_of_deep_convection_launch_level_for_convective_columns
+ - vertically_integrated_cloud_liquid_water_tendency_due_to_all_convection_to_be_applied_later_in_time_loop
+ - vertically_integrated_cloud_liquid_water_tendency_due_to_shallow_convection_to_be_applied_later_in_time_loop
+
+--------------------------
+
+atmospheric_physics/schemes/hack_shallow/hack_convect_shallow.meta
+
+ - atmosphere_convective_mass_flux_due_to_shallow_convection
+ - ccpp_constituent_properties
+ - ccpp_constituent_tendencies
+ - ccpp_constituents
+ - ccpp_error_code
+ - ccpp_error_message
+ - characteristic_adjustment_time_for_shallow_convection
+ - convective_water_vapor_wrt_moist_air_and_condensed_water_perturbation_due_to_pbl_eddies
+ - detrainment_of_cloud_liquid_water_wrt_moist_air_and_condensed_water_due_to_shallow_convection
+ - flag_for_cloud_area_fraction_to_use_shallow_convection_calculated_cloud_area_fraction
+ - in_cloud_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_shallow_convection
+ - liquid_water_static_energy_flux_due_to_shallow_convection
+ - lwe_precipitation_rate_at_surface_due_to_shallow_convection
+ - net_liquid_and_lwe_ice_fluxes_through_top_and_bottom_of_atmosphere_column
+ - number_of_ccpp_constituents
+ - rain_water_autoconversion_coefficient_for_shallow_convection
+ - reference_pressure_at_interface
+ - scheme_name
+ - shallow_convective_cloud_area_fraction_from_shallow_convection
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_shallow_convection_excluding_subcloud_evaporation
+ - total_water_flux_due_to_shallow_convection
+ - vertical_index_at_cloud_base_for_shallow_convection
+ - vertical_index_at_cloud_top_for_shallow_convection
+ - vertical_layer_index_of_cloud_fraction_top
+ - vertically_integrated_cloud_liquid_water_tendency_due_to_shallow_convection_to_be_applied_later_in_time_loop
+
+--------------------------
+
+atmospheric_physics/schemes/hack_shallow/set_shallow_conv_fluxes_to_general.meta
+
+ - lwe_precipitation_rate_at_surface_due_to_convection
+ - lwe_precipitation_rate_at_surface_due_to_shallow_convection
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_convection_excluding_subcloud_evaporation
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_shallow_convection_excluding_subcloud_evaporation
+
+--------------------------
+
+atmospheric_physics/schemes/hack_shallow/set_general_conv_fluxes_to_shallow.meta
+
+ - frozen_precipitation_flux_at_interface_due_to_convection
+ - frozen_precipitation_flux_at_interface_due_to_shallow_convection
+ - lwe_frozen_precipitation_rate_at_surface_due_to_convection
+ - lwe_frozen_precipitation_rate_at_surface_due_to_shallow_convection
+ - lwe_precipitation_rate_at_surface_due_to_convection
+ - lwe_precipitation_rate_at_surface_due_to_shallow_convection
+ - net_lwe_ice_fluxes_through_top_and_bottom_of_atmosphere_column
+ - precipitation_flux_at_interface_due_to_convection
+ - precipitation_flux_at_interface_due_to_shallow_convection
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_and_melting_of_frozen_precipitation_due_to_convection
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_and_melting_of_frozen_precipitation_due_to_shallow_convection
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_frozen_precipitation_production_due_to_convection
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_frozen_precipitation_production_due_to_shallow_convection
+ - tendency_of_frozen_precipitation_wrt_moist_air_and_condensed_water_due_to_convection
+ - tendency_of_frozen_precipitation_wrt_moist_air_and_condensed_water_due_to_shallow_convection
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_convection
+ - tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_shallow_convection
+
+--------------------------
+
+atmospheric_physics/schemes/kessler/kessler_update.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+
+--------------------------
+
+atmospheric_physics/schemes/kessler/kessler.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+ - scheme_name
--------------------------
@@ -165,12 +480,42 @@ atmospheric_physics/schemes/dry_adiabatic_adjust/dadadj.meta
- air_pressure_at_interface
- binary_indicator_for_dry_adiabatic_adjusted_grid_cell
+ - ccpp_error_code
+ - ccpp_error_message
- number_of_iterations_for_dry_adiabatic_adjustment_algorithm_convergence
- number_of_vertical_levels_from_model_top_where_dry_adiabatic_adjustment_occurs
+ - scheme_name
- tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
--------------------------
+atmospheric_physics/schemes/thermo_water_update/thermo_water_update.meta
+
+ - ccpp_constituents
+ - specific_heat_of_air_used_in_dycore
+ - total_energy_formula_for_dycore
+
+--------------------------
+
+atmospheric_physics/schemes/zhang_mcfarlane/zm_conv_options.meta
+
+ - cape_threshold_for_zhang_mcfarlane_deep_convection_scheme
+ - cloud_condensate_to_precipitation_autoconversion_coefficient_over_land_for_zhang_mcfarlane_deep_convection_scheme
+ - cloud_condensate_to_precipitation_autoconversion_coefficient_over_ocean_for_zhang_mcfarlane_deep_convection_scheme
+ - deep_convective_adjustment_timescale_for_zhang_mcfarlane_deep_convection_scheme
+ - entrainment_rate_for_cape_for_zhang_mcfarlane_deep_convection_scheme
+ - flag_for_no_deep_convection_in_pbl
+ - flag_for_well_mixed_pbl_parcel_property_for_zhang_mcfarlane_deep_convection_scheme
+ - fraction_of_pbl_depth_mixed_for_initial_zhang_mcfarlane_parcel_properties
+ - momentum_transport_parameter_for_vertical_pressure_gradient_force_for_downdraft_for_zhang_mcfarlane_deep_convection_scheme
+ - momentum_transport_parameter_for_vertical_pressure_gradient_force_for_updraft_for_zhang_mcfarlane_deep_convection_scheme
+ - number_of_negative_buoyancy_layers_allowed_before_convection_top_for_zhang_mcfarlane_deep_convection_scheme
+ - parcel_temperature_perturbation_for_zhang_mcfarlane_deep_convection_scheme
+ - tunable_evaporation_efficiency_over_land_for_zhang_mcfarlane_deep_convection_scheme
+ - tunable_evaporation_efficiency_over_ocean_for_zhang_mcfarlane_deep_convection_scheme
+
+--------------------------
+
atmospheric_physics/schemes/zhang_mcfarlane/set_deep_conv_fluxes_to_general.meta
- lwe_precipitation_rate_at_surface_due_to_convection
@@ -187,6 +532,8 @@ atmospheric_physics/schemes/zhang_mcfarlane/zm_conv_momtran.meta
- atmosphere_downdraft_entrainment_convective_mass_flux_for_deep_convection_for_convective_columns
- atmosphere_updraft_convective_mass_flux_for_deep_convection_for_convective_columns
- atmosphere_updraft_entrainment_convective_mass_flux_for_deep_convection_for_convective_columns
+ - ccpp_error_code
+ - ccpp_error_message
- current_timestep_number
- flag_for_momentum_transport_by_zhang_mcfarlane_deep_convection_scheme
- horizontal_index_of_convective_columns_for_deep_convection_for_convective_columns
@@ -200,6 +547,7 @@ atmospheric_physics/schemes/zhang_mcfarlane/zm_conv_momtran.meta
- momentum_transport_parameter_for_vertical_pressure_gradient_force_for_updraft_for_zhang_mcfarlane_deep_convection_scheme
- pressure_thickness_for_deep_convection_for_convective_columns
- pressure_thickness_for_subcloud_layer_for_deep_convection_for_convective_columns
+ - scheme_name
- tendency_of_eastward_wind_due_to_zhang_mcfarlane_deep_convective_downdraft_pressure_gradient_term
- tendency_of_eastward_wind_due_to_zhang_mcfarlane_deep_convective_updraft_pressure_gradient_term
- tendency_of_northward_wind_due_to_zhang_mcfarlane_deep_convective_downdraft_pressure_gradient_term
@@ -211,6 +559,8 @@ atmospheric_physics/schemes/zhang_mcfarlane/zm_conv_momtran.meta
atmospheric_physics/schemes/zhang_mcfarlane/zm_conv_evap.meta
+ - ccpp_error_code
+ - ccpp_error_message
- cloud_area_fraction
- freezing_point_of_water
- frozen_precipitation_flux_at_interface_due_to_convection
@@ -219,6 +569,7 @@ atmospheric_physics/schemes/zhang_mcfarlane/zm_conv_evap.meta
- lwe_precipitation_rate_at_surface_due_to_convection
- mass_fraction_of_snow_content_within_stratiform_cloud
- precipitation_flux_at_interface_due_to_convection
+ - scheme_name
- tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_and_melting_of_frozen_precipitation_due_to_convection
- tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_frozen_precipitation_production_due_to_convection
- tendency_of_frozen_precipitation_wrt_moist_air_and_condensed_water_due_to_convection
@@ -240,18 +591,22 @@ atmospheric_physics/schemes/zhang_mcfarlane/zm_convr.meta
- atmosphere_updraft_convective_mass_flux_for_deep_convection_for_convective_columns
- atmosphere_updraft_entrainment_convective_mass_flux_for_deep_convection_for_convective_columns
- cape_threshold_for_zhang_mcfarlane_deep_convection_scheme
+ - ccpp_error_code
+ - ccpp_error_message
- cloud_condensate_to_precipitation_autoconversion_coefficient_over_land_for_zhang_mcfarlane_deep_convection_scheme
- cloud_condensate_to_precipitation_autoconversion_coefficient_over_ocean_for_zhang_mcfarlane_deep_convection_scheme
- convective_temperature_perturbation_due_to_pbl_eddies
- deep_convective_adjustment_timescale_for_zhang_mcfarlane_deep_convection_scheme
- detrainment_mass_flux_due_to_deep_convection
- - detrainment_of_cloud_ice_due_to_deep_convection
- - detrainment_of_cloud_liquid_due_to_deep_convection
+ - detrainment_of_cloud_ice_wrt_moist_air_and_condensed_water_due_to_deep_convection
+ - detrainment_of_cloud_liquid_water_wrt_moist_air_and_condensed_water_due_to_deep_convection
- entrainment_rate_for_cape_for_zhang_mcfarlane_deep_convection_scheme
- flag_for_no_deep_convection_in_pbl
- flag_for_well_mixed_pbl_parcel_property_for_zhang_mcfarlane_deep_convection_scheme
+ - fraction_of_pbl_depth_mixed_for_initial_zhang_mcfarlane_parcel_properties
- freezing_point_of_water
- gas_constant_of_water_vapor
+ - geopotential_height_wrt_surface_at_interface
- horizontal_index_of_convective_columns_for_deep_convection_for_convective_columns
- in_cloud_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_deep_convection
- index_of_last_column_of_gathered_deep_convection_arrays
@@ -265,6 +620,7 @@ atmospheric_physics/schemes/zhang_mcfarlane/zm_convr.meta
- pressure_thickness_for_subcloud_layer_for_deep_convection_for_convective_columns
- ratio_of_water_vapor_to_dry_air_molecular_weights
- reference_pressure_at_interface
+ - scheme_name
- specific_heat_of_liquid_water_at_constant_pressure
- specific_heat_of_water_vapor_at_constant_pressure
- tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_deep_convection_excluding_subcloud_evaporation
@@ -275,7 +631,7 @@ atmospheric_physics/schemes/zhang_mcfarlane/zm_convr.meta
- vertical_index_at_top_of_deep_convection_for_convective_columns
- vertical_index_of_deep_convection_launch_level_for_convective_columns
- vertically_integrated_cloud_ice_tendency_due_to_all_convection_to_be_applied_later_in_time_loop
- - vertically_integrated_cloud_liquid_tendency_due_to_all_convection_to_be_applied_later_in_time_loop
+ - vertically_integrated_cloud_liquid_water_tendency_due_to_all_convection_to_be_applied_later_in_time_loop
- zhang_mcfarlane_convective_available_potential_energy
--------------------------
@@ -308,44 +664,246 @@ atmospheric_physics/schemes/zhang_mcfarlane/zm_conv_convtran.meta
- atmosphere_downdraft_entrainment_convective_mass_flux_for_deep_convection_for_convective_columns
- atmosphere_updraft_convective_mass_flux_for_deep_convection_for_convective_columns
- atmosphere_updraft_entrainment_convective_mass_flux_for_deep_convection_for_convective_columns
+ - ccpp_constituent_properties
- ccpp_constituent_tendencies
+ - ccpp_constituents
+ - ccpp_error_code
+ - ccpp_error_message
- current_timestep_number
- flag_for_tracer_transport_by_zhang_mcfarlane_deep_scheme
- fraction_of_water_insoluble_convectively_transported_species
- horizontal_index_of_convective_columns_for_deep_convection_for_convective_columns
- index_of_first_column_of_gathered_deep_convection_arrays
- index_of_last_column_of_gathered_deep_convection_arrays
+ - number_of_ccpp_constituents
- pressure_thickness_for_deep_convection_for_convective_columns
- pressure_thickness_for_subcloud_layer_for_deep_convection_for_convective_columns
+ - scheme_name
- vertical_index_at_top_of_deep_convection_for_convective_columns
- vertical_index_of_deep_convection_launch_level_for_convective_columns
--------------------------
+atmospheric_physics/schemes/utilities/to_be_ccppized_temporary.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+
+--------------------------
+
atmospheric_physics/schemes/utilities/geopotential_temp.meta
- air_pressure_at_interface
+ - ccpp_constituent_properties
+ - ccpp_constituents
+ - ccpp_error_code
+ - ccpp_error_message
+ - geopotential_height_wrt_surface_at_interface
- ln_air_pressure_at_interface
+ - number_of_ccpp_constituents
+
+--------------------------
+
+atmospheric_physics/schemes/utilities/state_converters.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+
+--------------------------
+
+atmospheric_physics/schemes/utilities/qneg.meta
+
+ - ccpp_constituent_minimum_values
+ - ccpp_constituent_properties
+ - ccpp_constituents
+ - ccpp_error_code
+ - ccpp_error_message
+ - number_of_ccpp_constituents
+ - scheme_name
--------------------------
atmospheric_physics/schemes/utilities/physics_tendency_updaters.meta
- ccpp_constituent_tendencies
+ - ccpp_constituents
+ - ccpp_error_code
+ - ccpp_error_message
+
+--------------------------
+
+atmospheric_physics/schemes/utilities/static_energy.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
--------------------------
-atmospheric_physics/schemes/check_energy/check_energy_save_teout.meta
+atmospheric_physics/schemes/rasch_kristjansson/rk_stratiform.meta
+ - ccpp_error_code
+ - ccpp_error_message
+ - cloud_area_fraction
+ - cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_on_previous_timestep
+ - deep_convective_cloud_area_fraction
+ - detrainment_of_cloud_liquid_water_wrt_moist_air_and_condensed_water_due_to_all_convection
+ - freezing_point_of_water
+ - latent_heat_of_fusion_of_water_at_0c
+ - lwe_large_scale_precipitation_rate_at_surface
+ - lwe_snow_and_cloud_ice_precipitation_rate_at_surface_due_to_microphysics
+ - lwe_snow_precipitation_rate_at_surface_due_to_microphysics
+ - lwe_stratiform_precipitation_rate_at_surface
+ - lwe_surface_snow_depth_over_land
+ - mass_fraction_of_ice_content_within_stratiform_cloud
+ - net_condensation_rate_due_to_microphysics
+ - ocean_area_fraction
+ - rate_of_condensation_minus_evaporation_for_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ - rate_of_condensation_minus_evaporation_for_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ - rate_of_evaporation_of_precipitation_due_to_microphysics
+ - ratio_of_dry_air_gas_constant_to_specific_heat_of_dry_air_at_constant_pressure
+ - reference_temperature_lapse_rate
+ - relative_humidity_divided_by_cloud_area_fraction_perturbation
+ - relative_humidity_threshold_for_cloud_formation
+ - sea_ice_area_fraction
+ - shallow_convective_cloud_area_fraction
+ - smoothed_land_area_fraction
+ - stratiform_cloud_water_surface_flux_due_to_sedimentation
+ - stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation
+ - stratiform_rain_flux_at_surface_due_to_sedimentation
+ - surface_air_pressure
+ - tendency_of_air_temperature_not_due_to_microphysics
+ - tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tendency_of_cloud_ice_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_ice_to_snow_autoconversion
+ - tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tendency_of_cloud_liquid_water_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_liquid_to_rain_autoconversion
+ - tendency_of_cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_cloud_ice_and_cloud_liquid_repartitioning
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_condensation_minus_evaporation
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_of_precipitation
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_freezing_of_precipitation
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_snow_melt
+ - tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics
+ - vertical_layer_index_of_cloud_fraction_top
+ - vertically_integrated_cloud_liquid_water_tendency_due_to_all_convection_to_be_applied_later_in_time_loop
+ - water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_on_previous_timestep
+
+--------------------------
+
+atmospheric_physics/schemes/rasch_kristjansson/cloud_particle_sedimentation.meta
+
+ - air_pressure_at_interface
+ - ccpp_error_code
+ - ccpp_error_message
+ - cloud_area_fraction
+ - freezing_point_of_water
+ - latent_heat_of_fusion_of_water_at_0c
+ - lwe_surface_snow_depth_over_land
+ - magnitude_of_vertical_pressure_velocity_of_cloud_ice_due_to_sedimentation
+ - magnitude_of_vertical_pressure_velocity_of_cloud_liquid_water_due_to_sedimentation
+ - ocean_area_fraction
+ - sea_ice_area_fraction
+ - smoothed_land_area_fraction
+ - stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation
+ - stratiform_rain_flux_at_surface_due_to_sedimentation
+ - tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
+ - tunable_parameter_for_autoconversion_of_cold_ice_for_rk_microphysics
+ - tunable_parameter_for_ice_fall_velocity_for_rk_microphysics
+
+--------------------------
+
+atmospheric_physics/schemes/rasch_kristjansson/prognostic_cloud_water.meta
+
+ - accretion_of_cloud_ice_by_snow
+ - accretion_of_cloud_liquid_water_by_rain
+ - accretion_of_cloud_liquid_water_by_snow
+ - ccpp_error_code
+ - ccpp_error_message
+ - cloud_area_fraction
+ - density_of_dry_air_at_stp
+ - flag_for_relative_humidity_threshold_for_cloud_formation_in_polar_stratosphere_for_rk_microphysics
+ - freezing_point_of_water
+ - gas_constant_of_water_vapor
+ - geopotential_height_wrt_surface_at_interface
+ - latent_heat_of_fusion_of_water_at_0c
+ - latitude_degrees_north
+ - lwe_snow_precipitation_rate_at_surface_due_to_microphysics
+ - lwe_stratiform_precipitation_rate_at_surface
+ - lwe_surface_snow_depth_over_land
+ - mass_fraction_of_ice_content_within_stratiform_cloud
+ - mass_fraction_of_snow_content_within_stratiform_cloud
+ - net_condensation_rate_due_to_microphysics
+ - pi_constant
+ - precipitation_production_due_to_microphysics
+ - rate_of_evaporation_of_falling_snow_due_to_microphysics
+ - rate_of_evaporation_of_precipitation_due_to_microphysics
+ - ratio_of_water_vapor_to_dry_air_molecular_weights
+ - relative_humidity_divided_by_cloud_area_fraction_perturbation
+ - relative_humidity_threshold_for_cloud_formation
+ - relative_humidity_threshold_for_cloud_formation_in_polar_stratosphere_for_rk_microphysics
+ - relative_importance_of_cloud_ice_autoconversion
+ - relative_importance_of_cloud_liquid_water_autoconversion
+ - relative_importance_of_rain_accreting_cloud_liquid_water
+ - relative_importance_of_snow_accreting_cloud_ice
+ - relative_importance_of_snow_accreting_cloud_liquid_water
+ - sea_ice_area_fraction
+ - smoothed_land_area_fraction
+ - snow_production_due_to_microphysics
+ - stratiform_rain_and_snow_flux_at_interface
+ - stratiform_snow_flux_at_interface
+ - tendency_of_air_temperature_not_due_to_microphysics
+ - tendency_of_cloud_ice_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_ice_to_snow_autoconversion
+ - tendency_of_cloud_liquid_water_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_liquid_to_rain_autoconversion
+ - tendency_of_cloud_liquid_water_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_liquid_to_snow_autoconversion
+ - tendency_of_cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_of_precipitation
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_freezing_of_precipitation
+ - tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_snow_melt
+ - tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics
+ - tropopause_vertical_layer_index
+ - tunable_parameter_for_autoconversion_of_cold_ice_for_rk_microphysics
+ - tunable_parameter_for_autoconversion_of_warm_ice_for_rk_microphysics
+ - tunable_parameter_for_cloud_water_autoconversion_for_rk_microphysics
+ - tunable_parameter_for_precipitation_evaporation_for_rk_microphysics
+ - vertical_layer_index_of_troposphere_cloud_physics_top
+
+--------------------------
+
+atmospheric_physics/schemes/conservation_adjust/dme_adjust/dme_adjust.meta
+
+ - air_pressure_at_interface
+ - ccpp_constituent_properties
+ - ccpp_constituents
+ - ccpp_error_code
+ - ccpp_error_message
+ - is_moist_basis_dycore
+ - ln_air_pressure_at_interface
+ - number_of_ccpp_constituents
+ - surface_air_pressure
+ - total_ice_water_mixing_ratio_wrt_moist_air_and_condensed_water_before_physics
+ - total_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water_before_physics
+ - water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_before_physics
+
+--------------------------
+
+atmospheric_physics/schemes/conservation_adjust/check_energy/check_energy_save_teout.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
- vertically_integrated_total_energy_using_dycore_energy_formula
- vertically_integrated_total_energy_using_dycore_energy_formula_at_end_of_physics_timestep
--------------------------
-atmospheric_physics/schemes/check_energy/check_energy_chng.meta
+atmospheric_physics/schemes/conservation_adjust/check_energy/check_energy_chng.meta
- air_pressure_of_dry_air_at_interface
- air_temperature_at_start_of_physics_timestep
+ - ccpp_constituents
+ - ccpp_error_code
+ - ccpp_error_message
- cumulative_total_energy_boundary_flux_using_physics_energy_formula
- cumulative_total_water_boundary_flux
- flag_for_energy_conservation_warning
@@ -356,7 +914,9 @@ atmospheric_physics/schemes/check_energy/check_energy_chng.meta
- net_sensible_heat_flux_through_top_and_bottom_of_atmosphere_column
- net_water_vapor_fluxes_through_top_and_bottom_of_atmosphere_column
- number_of_atmosphere_columns_with_significant_energy_or_water_imbalances
+ - number_of_ccpp_constituents
- ratio_of_specific_heat_of_air_used_in_physics_energy_formula_to_specific_heat_of_air_used_in_dycore_energy_formula
+ - scheme_name
- specific_heat_of_air_used_in_dycore
- total_energy_formula_for_dycore
- total_energy_formula_for_physics
@@ -370,40 +930,52 @@ atmospheric_physics/schemes/check_energy/check_energy_chng.meta
--------------------------
-atmospheric_physics/schemes/check_energy/check_energy_zero_fluxes.meta
+atmospheric_physics/schemes/conservation_adjust/check_energy/check_energy_zero_fluxes.meta
+ - ccpp_error_code
+ - ccpp_error_message
- net_liquid_and_lwe_ice_fluxes_through_top_and_bottom_of_atmosphere_column
- net_lwe_ice_fluxes_through_top_and_bottom_of_atmosphere_column
- net_sensible_heat_flux_through_top_and_bottom_of_atmosphere_column
- net_water_vapor_fluxes_through_top_and_bottom_of_atmosphere_column
+ - scheme_name
--------------------------
-atmospheric_physics/schemes/check_energy/dycore_energy_consistency_adjust.meta
+atmospheric_physics/schemes/conservation_adjust/check_energy/dycore_energy_consistency_adjust.meta
+ - ccpp_error_code
+ - ccpp_error_message
- flag_for_dycore_energy_consistency_adjustment
- ratio_of_specific_heat_of_air_used_in_physics_energy_formula_to_specific_heat_of_air_used_in_dycore_energy_formula
--------------------------
-atmospheric_physics/schemes/check_energy/check_energy_scaling.meta
+atmospheric_physics/schemes/conservation_adjust/check_energy/check_energy_scaling.meta
+ - ccpp_error_code
+ - ccpp_error_message
- ratio_of_specific_heat_of_air_used_in_physics_energy_formula_to_specific_heat_of_air_used_in_dycore_energy_formula
- specific_heat_of_air_used_in_dycore
--------------------------
-atmospheric_physics/schemes/check_energy/check_energy_fix.meta
+atmospheric_physics/schemes/conservation_adjust/check_energy/check_energy_fix.meta
- air_pressure_at_interface
+ - ccpp_error_code
+ - ccpp_error_message
- global_mean_heating_rate_correction_for_energy_conservation
- net_sensible_heat_flux_through_top_and_bottom_of_atmosphere_column
+ - scheme_name
--------------------------
-atmospheric_physics/schemes/check_energy/check_energy_gmean/check_energy_gmean.meta
+atmospheric_physics/schemes/conservation_adjust/check_energy/check_energy_gmean/check_energy_gmean.meta
- air_pressure_at_interface
+ - ccpp_error_code
+ - ccpp_error_message
- global_mean_air_pressure_at_top_of_atmosphere_model
- global_mean_heating_rate_correction_for_energy_conservation
- global_mean_surface_air_pressure
@@ -418,10 +990,14 @@ atmospheric_physics/schemes/check_energy/check_energy_gmean/check_energy_gmean.m
atmospheric_physics/schemes/tropopause_find/tropopause_find.meta
- air_pressure_at_interface
+ - ccpp_error_code
+ - ccpp_error_message
- fill_value_for_diagnostic_output
- fractional_calendar_days_on_end_of_current_timestep
+ - geopotential_height_wrt_surface_at_interface
- pi_constant
- ratio_of_dry_air_gas_constant_to_specific_heat_of_dry_air_at_constant_pressure
+ - scheme_name
- tropopause_air_pressure
- tropopause_air_pressure_from_chemical_method
- tropopause_air_pressure_from_climatological_method
@@ -454,21 +1030,54 @@ atmospheric_physics/schemes/tropopause_find/tropopause_find.meta
--------------------------
+atmospheric_physics/schemes/held_suarez/held_suarez_1994.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+ - scheme_name
+
+--------------------------
+
+atmospheric_physics/schemes/rayleigh_friction/rayleigh_friction.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+ - center_vertical_layer_for_rayleigh_friction
+ - model_top_decay_time_for_rayleigh_friction
+ - number_of_vertical_layers_for_rayleigh_friction
+
+--------------------------
+
atmospheric_physics/schemes/musica/musica_ccpp.meta
- blackbody_temperature_at_surface
+ - ccpp_constituent_properties
+ - ccpp_constituents
+ - ccpp_error_code
+ - ccpp_error_message
- cloud_area_fraction
- dynamic_constituents_for_musica_ccpp
- earth_sun_distance
- extraterrestrial_radiation_flux
+ - geopotential_height_wrt_surface_at_interface
- photolysis_wavelength_grid_interfaces
- solar_zenith_angle
- surface_albedo_due_to_UV_and_VIS_direct
--------------------------
+atmospheric_physics/test/test_schemes/file_io_test.meta
+
+ - ccpp_error_code
+ - ccpp_error_message
+ - filename_of_rrtmgp_shortwave_coefficients
+
+--------------------------
+
atmospheric_physics/test/test_schemes/initialize_constituents.meta
+ - ccpp_error_code
+ - ccpp_error_message
- dynamic_constituents_for_initialize_constituents
#######################
diff --git a/schemes/cloud_fraction/compute_cloud_fraction.meta b/schemes/cloud_fraction/compute_cloud_fraction.meta
index c314e2cf..590bf42e 100644
--- a/schemes/cloud_fraction/compute_cloud_fraction.meta
+++ b/schemes/cloud_fraction/compute_cloud_fraction.meta
@@ -225,13 +225,13 @@
dimensions = (horizontal_loop_extent)
intent = in
[ shallowcu ]
- standard_name = shallow_convective_cloud_area_fraction_tbd
+ standard_name = shallow_convective_cloud_area_fraction
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ deepcu ]
- standard_name = deep_convective_cloud_area_fraction_tbd
+ standard_name = deep_convective_cloud_area_fraction
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -273,7 +273,7 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ rhcloud ]
- standard_name = cloud_area_fraction_from_relative_humidity_method_tbd
+ standard_name = cloud_area_fraction_from_relative_humidity_method
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -285,7 +285,7 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ rhu00 ]
- standard_name = relative_humidity_threshold_for_prognostic_cloud_water_tbd
+ standard_name = relative_humidity_threshold_for_cloud_formation
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -303,7 +303,7 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ relhum ]
- standard_name = relative_humidity_for_prognostic_cloud_water_tbd
+ standard_name = relative_humidity
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
diff --git a/schemes/cloud_fraction/convective_cloud_cover.meta b/schemes/cloud_fraction/convective_cloud_cover.meta
index 7340b8f6..d368ecb5 100644
--- a/schemes/cloud_fraction/convective_cloud_cover.meta
+++ b/schemes/cloud_fraction/convective_cloud_cover.meta
@@ -82,7 +82,7 @@
dimensions = ()
intent = in
[ shfrc ]
- standard_name = shallow_convective_cloud_area_fraction
+ standard_name = shallow_convective_cloud_area_fraction_from_shallow_convection
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -100,13 +100,13 @@
dimensions = (horizontal_loop_extent, vertical_interface_dimension)
intent = in
[ shallowcu ]
- standard_name = shallow_convective_cloud_area_fraction_tbd
+ standard_name = shallow_convective_cloud_area_fraction
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ deepcu ]
- standard_name = deep_convective_cloud_area_fraction_tbd
+ standard_name = deep_convective_cloud_area_fraction
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
diff --git a/schemes/hack_shallow/hack_convect_shallow.meta b/schemes/hack_shallow/hack_convect_shallow.meta
index ac0f88ea..3b90a151 100644
--- a/schemes/hack_shallow/hack_convect_shallow.meta
+++ b/schemes/hack_shallow/hack_convect_shallow.meta
@@ -79,7 +79,7 @@
dimensions = ()
intent = out
[ shfrc ]
- standard_name = shallow_convective_cloud_area_fraction
+ standard_name = shallow_convective_cloud_area_fraction_from_shallow_convection
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_dimension, vertical_layer_dimension)
diff --git a/schemes/rasch_kristjansson/cloud_particle_sedimentation.F90 b/schemes/rasch_kristjansson/cloud_particle_sedimentation.F90
index 5732856a..3c7f4ff6 100644
--- a/schemes/rasch_kristjansson/cloud_particle_sedimentation.F90
+++ b/schemes/rasch_kristjansson/cloud_particle_sedimentation.F90
@@ -146,7 +146,7 @@ subroutine cloud_particle_sedimentation_run( &
real(kind_phys), intent(out) :: wvtend(:,:) ! water vapor tendency [kg kg-1 s-1] -- to apply wv tendency
real(kind_phys), intent(out) :: htend(:,:) ! heating rate [J kg-1 s-1] -- to apply s tendency
real(kind_phys), intent(out) :: sfliq(:) ! surface flux of liquid (rain) [kg m-2 s-1]
- real(kind_phys), intent(out) :: sfice(:) ! lwe_cloud_ice_sedimentation_rate_at_surface_due_to_microphysics [m s-1]
+ real(kind_phys), intent(out) :: sfice(:) ! stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation [m s-1]
character(len=512), intent(out) :: errmsg ! error message
integer, intent(out) :: errflg ! error flag
@@ -361,7 +361,7 @@ subroutine cloud_particle_sedimentation_run( &
sfliq(:ncol) = fxliq(:ncol, pverp)/(dtime*gravit)
sfice(:ncol) = fxice(:ncol, pverp)/(dtime*gravit)
- ! Convert lwe_cloud_ice_sedimentation_rate_at_surface_due_to_microphysics from kg m-2 s-1 to precip units m s-1
+ ! Convert stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation from kg m-2 s-1 to precip units m s-1
sfice(:ncol) = sfice(:ncol)/1000._kind_phys
end subroutine cloud_particle_sedimentation_run
@@ -390,7 +390,6 @@ subroutine getflx(ncol, pver, pverp, &
integer :: i, k
real(kind_phys) :: psi(ncol, pverp)
real(kind_phys) :: fdot(ncol, pverp)
- real(kind_phys) :: xx(ncol)
real(kind_phys) :: fxdot(ncol)
real(kind_phys) :: fxdd(ncol)
real(kind_phys) :: psistar(ncol)
@@ -457,7 +456,6 @@ subroutine cfint2(ncol, pverp, &
real(kind_phys) :: c2
real(kind_phys) :: c3
real(kind_phys) :: xx
- real(kind_phys) :: xinf
real(kind_phys) :: psi1, psi2, psi3, psim
real(kind_phys) :: cfint
real(kind_phys) :: cfnew
@@ -551,7 +549,6 @@ subroutine cfdotmc(ncol, pver, pverp, x, f, fdot)
real(kind_phys), intent(out) :: fdot(ncol, pverp) ! derivative at nodes
integer :: i, k
- real(kind_phys) :: a, b, c ! work var
real(kind_phys) :: s(ncol, pverp) ! first divided differences at nodes
real(kind_phys) :: sh(ncol, pverp) ! first divided differences between nodes
real(kind_phys) :: d(ncol, pverp) ! second divided differences at nodes
diff --git a/schemes/rasch_kristjansson/cloud_particle_sedimentation.meta b/schemes/rasch_kristjansson/cloud_particle_sedimentation.meta
index 4b318031..cbe8705c 100644
--- a/schemes/rasch_kristjansson/cloud_particle_sedimentation.meta
+++ b/schemes/rasch_kristjansson/cloud_particle_sedimentation.meta
@@ -193,13 +193,13 @@
dimensions = (horizontal_loop_extent)
intent = in
[ pvliq ]
- standard_name = vertical_velocity_of_cloud_liquid_water_due_to_sedimentation_tbd
+ standard_name = magnitude_of_vertical_pressure_velocity_of_cloud_liquid_water_due_to_sedimentation
units = Pa s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_interface_dimension)
intent = out
[ pvice ]
- standard_name = vertical_velocity_of_cloud_ice_due_to_sedimentation_tbd
+ standard_name = magnitude_of_vertical_pressure_velocity_of_cloud_ice_due_to_sedimentation
units = Pa s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_interface_dimension)
@@ -238,7 +238,7 @@
dimensions = (horizontal_loop_extent)
intent = out
[ sfice ]
- standard_name = lwe_cloud_ice_sedimentation_rate_at_surface_due_to_microphysics
+ standard_name = stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation
units = m s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent)
diff --git a/schemes/rasch_kristjansson/prognostic_cloud_water.F90 b/schemes/rasch_kristjansson/prognostic_cloud_water.F90
index b2484d6b..d2f4d117 100644
--- a/schemes/rasch_kristjansson/prognostic_cloud_water.F90
+++ b/schemes/rasch_kristjansson/prognostic_cloud_water.F90
@@ -26,7 +26,6 @@ module prognostic_cloud_water
real(kind_phys) :: rhonot ! air density at surface [g cm-3]
real(kind_phys) :: rhos ! assumed snow density [g cm-3]
real(kind_phys) :: rhow ! water density [g cm-3]
- real(kind_phys) :: rhoi ! ice density [g cm-3]
real(kind_phys) :: esi ! Collection efficiency for ice by snow [1]
real(kind_phys) :: esw ! Collection efficiency for water by snow [1]
real(kind_phys) :: t0 ! Approx. freezing temperature [K]
@@ -120,10 +119,9 @@ subroutine prognostic_cloud_water_init( &
rhonot = rhodair/1000.0_kind_phys ! convert from kg m-3 to g cm-3
- ! assumed densities of snow, water, ice [g cm-3]
+ ! assumed densities of snow, water [g cm-3]
rhos = 0.1_kind_phys
rhow = 1._kind_phys
- rhoi = 1._kind_phys
esi = 1._kind_phys
esw = 0.1_kind_phys
@@ -292,7 +290,7 @@ subroutine prognostic_cloud_water_run( &
real(kind_phys), intent(out) :: qme(:,:) ! Rate of condensation-evaporation of condensate (net_condensation_rate_due_to_microphysics) [kg kg-1 s-1]
real(kind_phys), intent(out) :: prodprec(:,:) ! Conversion rate of condensate to precip (precipitation_production_due_to_microphysics) [kg kg-1 s-1]
real(kind_phys), intent(out) :: prodsnow(:,:) ! Snow production rate (ignored in RK?) [kg kg-1 s-1]
- real(kind_phys), intent(out) :: evapprec(:,:) ! Falling precipitation evaporation rate (precipitation_evaporation_due_to_microphysics) [kg kg-1 s-1] -- & combined to apply q(wv) tendency
+ real(kind_phys), intent(out) :: evapprec(:,:) ! Falling precipitation evaporation rate (rate_of_evaporation_of_precipitation_due_to_microphysics) [kg kg-1 s-1] -- & combined to apply q(wv) tendency
real(kind_phys), intent(out) :: evapsnow(:,:) ! Falling snow evaporation rate [kg kg-1 s-1]
real(kind_phys), intent(out) :: evapheat(:,:) ! heating rate due to evaporation of precipitation [J kg-1 s-1]
real(kind_phys), intent(out) :: prfzheat(:,:) ! heating rate due to freezing of precipitation [J kg-1 s-1]
@@ -320,6 +318,7 @@ subroutine prognostic_cloud_water_run( &
integer, intent(out) :: errflg ! error flag
! Local variables
+ real(kind_phys), parameter :: rhofw = 1000._kind_phys ! density of fresh water [kg m-3]
integer :: i, k, l ! Iteration index [1]
integer :: iter ! # of iterations for precipitation calculation [1]
logical :: error_found ! Flag for error detection [flag]
@@ -378,11 +377,9 @@ subroutine prognostic_cloud_water_run( &
real(kind_phys) :: mincld ! Minimum cloud fraction [1]
real(kind_phys) :: cpohl ! Ratio of specific heat to latent heat [K-1]
real(kind_phys) :: hlocp ! Ratio of latent heat to specific heat [K]
- real(kind_phys) :: clrh2o ! Ratio of latent heat to water vapor gas constant [K]
real(kind_phys) :: dto2 ! Half timestep [s]
! Work variables
- real(kind_phys) :: denom ! Denominator work variable [1]
real(kind_phys) :: dqsdt ! Change in saturation specific humidity with temperature [kg kg-1 K-1]
real(kind_phys) :: gamma(ncol) ! Temperature derivative of saturation specific humidity [kg kg-1 K-1]
real(kind_phys) :: qtl(ncol) ! Saturation tendency [kg kg-1 s-1]
@@ -400,7 +397,6 @@ subroutine prognostic_cloud_water_run( &
errflg = 0
error_found = .false.
- clrh2o = latvap/rh2o
cpohl = cpair/latvap
hlocp = latvap/cpair
dto2 = 0.5_kind_phys * deltat
@@ -845,8 +841,8 @@ subroutine prognostic_cloud_water_run( &
!
! If this conversion is removed in the future, the metadata needs to
! be updated.
- precip(:ncol) = precip(:ncol)/1000._kind_phys
- snowab(:ncol) = snowab(:ncol)/1000._kind_phys
+ precip(:ncol) = precip(:ncol)/rhofw
+ snowab(:ncol) = snowab(:ncol)/rhofw
end subroutine prognostic_cloud_water_run
! Calculate the conversion of condensate to precipitate
@@ -898,7 +894,6 @@ subroutine findmcnew( &
integer :: ncols ! Number of active columns for microphysics (different from ncol!!) [count]
integer :: ind(ncol) ! Active column indices [index]
real(kind_phys) :: capn ! Local cloud particle number concentration [cm-3]
- real(kind_phys) :: capnoice ! Cloud particle concentration excluding sea ice [cm-3]
real(kind_phys) :: cldloc(ncol) ! Non-zero cloud fraction [1]
real(kind_phys) :: cldpr(ncol) ! Cloud fraction for precipitation [1]
real(kind_phys) :: totmr(ncol) ! In-cloud total water mixing ratio [kg kg-1]
@@ -920,11 +915,7 @@ subroutine findmcnew( &
real(kind_phys) :: rhocgs ! Air density in CGS units [g cm-3]
real(kind_phys) :: r3l ! Cloud droplet volume radius [m]
real(kind_phys) :: icrit ! Ice autoconversion threshold [kg kg-1]
- real(kind_phys) :: wsi ! Sea ice weight factor [1]
real(kind_phys) :: wt ! Ice fraction weight [1]
- real(kind_phys) :: wland ! Land fraction weight [1]
- real(kind_phys) :: wp ! Pressure dependence weight [1]
- real(kind_phys) :: ftot ! Total fraction for conversion processes [1]
real(kind_phys) :: con1 ! Work constant for radius calculation [m]
real(kind_phys) :: con2 ! Work constant for density ratios [1]
real(kind_phys) :: csacx ! Constant used for snow accreting liquid or ice [??]
@@ -1119,8 +1110,6 @@ subroutine findmcnew( &
fsacw(i) = 0._kind_phys
fsaci(i) = 0._kind_phys
endif
-
- ftot = fwaut(i)+fsaut(i)+fracw(i)+fsacw(i)+fsaci(i)
end do
end subroutine findmcnew
diff --git a/schemes/rasch_kristjansson/prognostic_cloud_water.meta b/schemes/rasch_kristjansson/prognostic_cloud_water.meta
index 6f59d935..c821416c 100644
--- a/schemes/rasch_kristjansson/prognostic_cloud_water.meta
+++ b/schemes/rasch_kristjansson/prognostic_cloud_water.meta
@@ -190,7 +190,7 @@
dimensions = (horizontal_loop_extent)
intent = in
[ ttend ]
- standard_name = tendency_of_air_temperature_not_due_to_microphysics_tbd
+ standard_name = tendency_of_air_temperature_not_due_to_microphysics
units = K s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -202,7 +202,7 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ qtend ]
- standard_name = tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics_tbd
+ standard_name = tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -214,7 +214,7 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ ltend ]
- standard_name = tendency_of_cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics_tbd
+ standard_name = tendency_of_cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -256,13 +256,13 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ rhdfda ]
- standard_name = derivative_of_relative_humidity_wrt_cloud_fraction_tbd
+ standard_name = relative_humidity_divided_by_cloud_area_fraction_perturbation
units = percent
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ rhu00 ]
- standard_name = relative_humidity_threshold_for_prognostic_cloud_water_tbd
+ standard_name = relative_humidity_threshold_for_cloud_formation
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -304,31 +304,31 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ evapprec ]
- standard_name = precipitation_evaporation_due_to_microphysics
+ standard_name = rate_of_evaporation_of_precipitation_due_to_microphysics
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ evapsnow ]
- standard_name = rate_of_evaporation_of_falling_snow_due_to_microphysics_tbd
+ standard_name = rate_of_evaporation_of_falling_snow_due_to_microphysics
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ evapheat ]
- standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_precipitation_evaporation_tbd
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_of_precipitation
units = J kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ prfzheat ]
- standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_precipitation_freezing_tbd
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_freezing_of_precipitation
units = J kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ meltheat ]
- standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_precipitation_phase_change_tbd
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_snow_melt
units = J kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -346,19 +346,19 @@
dimensions = (horizontal_loop_extent)
intent = out
[ ice2pr ]
- standard_name = tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_microphysics_tbd
+ standard_name = tendency_of_cloud_ice_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_ice_to_snow_autoconversion
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ liq2pr ]
- standard_name = tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_microphysics_tbd
+ standard_name = tendency_of_cloud_liquid_water_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_liquid_to_rain_autoconversion
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ liq2snow ]
- standard_name = tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_conversion_to_snow_tbd
+ standard_name = tendency_of_cloud_liquid_water_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_liquid_to_snow_autoconversion
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -376,49 +376,49 @@
dimensions = (horizontal_loop_extent, vertical_interface_dimension)
intent = out
[ pracwo ]
- standard_name = accretion_of_cloud_liquid_water_by_rain_tbd
+ standard_name = accretion_of_cloud_liquid_water_by_rain
units = s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ psacwo ]
- standard_name = accretion_of_cloud_liquid_water_by_snow_tbd
+ standard_name = accretion_of_cloud_liquid_water_by_snow
units = s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ psacio ]
- standard_name = accretion_of_cloud_ice_by_snow_tbd
+ standard_name = accretion_of_cloud_ice_by_snow
units = s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ fwaut ]
- standard_name = relative_importance_of_liquid_autoconversion_tbd
+ standard_name = relative_importance_of_cloud_liquid_water_autoconversion
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ fsaut ]
- standard_name = relative_importance_of_ice_autoconversion_tbd
+ standard_name = relative_importance_of_cloud_ice_autoconversion
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ fracw ]
- standard_name = relative_importance_of_rain_accreting_liquid_tbd
+ standard_name = relative_importance_of_rain_accreting_cloud_liquid_water
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ fsacw ]
- standard_name = relative_importance_of_snow_accreting_liquid_tbd
+ standard_name = relative_importance_of_snow_accreting_cloud_liquid_water
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ fsaci ]
- standard_name = relative_importance_of_snow_accreting_ice_tbd
+ standard_name = relative_importance_of_snow_accreting_cloud_ice
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
diff --git a/schemes/rasch_kristjansson/rk_stratiform.F90 b/schemes/rasch_kristjansson/rk_stratiform.F90
index 64da34dd..ec2021e0 100644
--- a/schemes/rasch_kristjansson/rk_stratiform.F90
+++ b/schemes/rasch_kristjansson/rk_stratiform.F90
@@ -89,21 +89,23 @@ subroutine rk_stratiform_sedimentation_run( &
! Input arguments
integer, intent(in) :: ncol
real(kind_phys), intent(in) :: sfliq(:) ! stratiform_rain_flux_at_surface_due_to_sedimentation [kg m-2 s-1]
- real(kind_phys), intent(in) :: snow_sed(:) ! sfice = lwe_cloud_ice_sedimentation_rate_at_surface_due_to_microphysics [m s-1]
+ real(kind_phys), intent(in) :: snow_sed(:) ! sfice = stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation [m s-1]
! Output arguments
real(kind_phys), intent(out) :: prec_sed(:) ! stratiform_cloud_water_surface_flux_due_to_sedimentation [m s-1]
real(kind_phys), intent(out) :: prec_str(:) ! lwe_large_scale_precipitation_rate_at_surface [m s-1]
real(kind_phys), intent(out) :: snow_str(:) ! lwe_snow_and_cloud_ice_precipitation_rate_at_surface_due_to_microphysics [m s-1]
- character(len=512), intent(out) :: errmsg ! error message
- integer, intent(out) :: errflg ! error flag
+ character(len=512), intent(out) :: errmsg ! error message
+ integer, intent(out) :: errflg ! error flag
+
+ real(kind_phys), parameter :: rhofw = 1000._kind_phys ! density of fresh water [kg m-3]
errmsg = ''
errflg = 0
! Convert rain flux to precip units from mass units
! and create cloud water surface flux (rain + snow)
- prec_sed(:ncol) = sfliq(:ncol)/1000._kind_phys + snow_sed(:ncol)
+ prec_sed(:ncol) = sfliq(:ncol)/rhofw + snow_sed(:ncol)
! Start accumulation of precipitation and snow flux [m s-1]
prec_str(:ncol) = 0._kind_phys + prec_sed(:ncol)
diff --git a/schemes/rasch_kristjansson/rk_stratiform.meta b/schemes/rasch_kristjansson/rk_stratiform.meta
index f994c28b..f1ffe7f1 100644
--- a/schemes/rasch_kristjansson/rk_stratiform.meta
+++ b/schemes/rasch_kristjansson/rk_stratiform.meta
@@ -49,19 +49,19 @@
intent = in
advected = true
[ qcwat ]
- standard_name = water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_at_end_of_microphysics
+ standard_name = water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_on_previous_timestep
units = kg kg-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = inout
[ tcwat ]
- standard_name = air_temperature_at_end_of_microphysics
+ standard_name = air_temperature_on_previous_timestep
units = K
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = inout
[ lcwat ]
- standard_name = cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_at_end_of_microphysics
+ standard_name = cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_on_previous_timestep
units = kg kg-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -99,7 +99,7 @@
dimensions = (horizontal_loop_extent)
intent = in
[ snow_sed ]
- standard_name = lwe_cloud_ice_sedimentation_rate_at_surface_due_to_microphysics
+ standard_name = stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation
units = m s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent)
@@ -290,13 +290,13 @@
dimensions = (horizontal_loop_extent)
intent = in
[ shallowcu ]
- standard_name = shallow_convective_cloud_area_fraction_tbd
+ standard_name = shallow_convective_cloud_area_fraction
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ deepcu ]
- standard_name = deep_convective_cloud_area_fraction_tbd
+ standard_name = deep_convective_cloud_area_fraction
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -332,19 +332,19 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ relhum ]
- standard_name = relative_humidity_for_prognostic_cloud_water_tbd
+ standard_name = relative_humidity
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ rhu00 ]
- standard_name = relative_humidity_threshold_for_prognostic_cloud_water_tbd
+ standard_name = relative_humidity_threshold_for_cloud_formation
units = fraction
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = inout
[ rhdfda ]
- standard_name = derivative_of_relative_humidity_wrt_cloud_fraction_tbd
+ standard_name = relative_humidity_divided_by_cloud_area_fraction_perturbation
units = percent
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -412,37 +412,37 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ qcwat ]
- standard_name = water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_at_end_of_microphysics
+ standard_name = water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_on_previous_timestep
units = kg kg-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ tcwat ]
- standard_name = air_temperature_at_end_of_microphysics
+ standard_name = air_temperature_on_previous_timestep
units = K
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ lcwat ]
- standard_name = cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_at_end_of_microphysics
+ standard_name = cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_on_previous_timestep
units = kg kg-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ qtend ]
- standard_name = tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics_tbd
+ standard_name = tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ ttend ]
- standard_name = tendency_of_air_temperature_not_due_to_microphysics_tbd
+ standard_name = tendency_of_air_temperature_not_due_to_microphysics
units = K s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ ltend ]
- standard_name = tendency_of_cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics_tbd
+ standard_name = tendency_of_cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_not_due_to_microphysics
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -510,7 +510,7 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ repartht ]
- standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_precipitation_repartitioning_tbd
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_cloud_ice_and_cloud_liquid_repartitioning
units = J kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -592,43 +592,43 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ evapheat ]
- standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_precipitation_evaporation_tbd
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_of_precipitation
units = J kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ prfzheat ]
- standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_precipitation_freezing_tbd
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_freezing_of_precipitation
units = J kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ meltheat ]
- standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_precipitation_phase_change_tbd
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_snow_melt
units = J kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ repartht ]
- standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_precipitation_repartitioning_tbd
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_cloud_ice_and_cloud_liquid_repartitioning
units = J kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ evapprec ]
- standard_name = precipitation_evaporation_due_to_microphysics
+ standard_name = rate_of_evaporation_of_precipitation_due_to_microphysics
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ ice2pr ]
- standard_name = tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_microphysics_tbd
+ standard_name = tendency_of_cloud_ice_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_ice_to_snow_autoconversion
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ liq2pr ]
- standard_name = tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_microphysics_tbd
+ standard_name = tendency_of_cloud_liquid_water_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_liquid_to_rain_autoconversion
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -658,19 +658,19 @@
dimensions = (horizontal_loop_extent)
intent = inout
[ cmeheat ]
- standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_condensation_evaporation_within_stratiform_cloud_tbd
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_condensation_minus_evaporation
units = J kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ cmeice ]
- standard_name = rate_of_condensation_evaporation_of_cloud_ice_within_stratiform_cloud_tbd
+ standard_name = rate_of_condensation_minus_evaporation_for_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ cmeliq ]
- standard_name = rate_of_condensation_evaporation_of_cloud_liquid_water_within_stratiform_cloud_tbd
+ standard_name = rate_of_condensation_minus_evaporation_for_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
units = kg kg-1 s-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
@@ -759,19 +759,19 @@
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = in
[ qcwat ]
- standard_name = water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_at_end_of_microphysics
+ standard_name = water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_on_previous_timestep
units = kg kg-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ tcwat ]
- standard_name = air_temperature_at_end_of_microphysics
+ standard_name = air_temperature_on_previous_timestep
units = K
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
intent = out
[ lcwat ]
- standard_name = cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_at_end_of_microphysics
+ standard_name = cloud_water_mixing_ratio_wrt_moist_air_and_condensed_water_on_previous_timestep
units = kg kg-1
type = real | kind = kind_phys
dimensions = (horizontal_loop_extent, vertical_layer_dimension)
diff --git a/schemes/sima_diagnostics/cloud_particle_sedimentation_diagnostics.F90 b/schemes/sima_diagnostics/cloud_particle_sedimentation_diagnostics.F90
new file mode 100644
index 00000000..cd89a833
--- /dev/null
+++ b/schemes/sima_diagnostics/cloud_particle_sedimentation_diagnostics.F90
@@ -0,0 +1,84 @@
+! Diagnostics for RK stratiform - cloud particle sedimentation
+module cloud_particle_sedimentation_diagnostics
+ use ccpp_kinds, only: kind_phys
+
+ implicit none
+ private
+ save
+
+ public :: cloud_particle_sedimentation_diagnostics_init
+ public :: cloud_particle_sedimentation_diagnostics_run
+
+contains
+
+ !> \section arg_table_cloud_particle_sedimentation_diagnostics_init Argument Table
+ !! \htmlinclude cloud_particle_sedimentation_diagnostics_init.html
+ subroutine cloud_particle_sedimentation_diagnostics_init(errmsg, errflg)
+ use cam_history, only: history_add_field
+ use cam_history_support, only: horiz_only
+
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ ! Local variables:
+
+ errmsg = ''
+ errflg = 0
+
+ ! History add field calls
+ call history_add_field('DQSED', 'tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_sedimentation', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('DISED', 'tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_sedimentation', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('DLSED', 'tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_sedimentation', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('HSED', 'tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_sedimentation', 'lev', 'avg', 'J kg-1 s-1')
+ call history_add_field('PRECSED', 'stratiform_cloud_water_surface_flux_due_to_sedimentation', horiz_only, 'inst', 'm s-1')
+ call history_add_field('SNOWSED', 'stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation', horiz_only, 'inst', 'm s-1')
+ call history_add_field('RAINSED', 'stratiform_rain_flux_at_surface_due_to_sedimentation', horiz_only, 'inst', 'm s-1')
+
+ end subroutine cloud_particle_sedimentation_diagnostics_init
+
+ !> \section arg_table_cloud_particle_sedimentation_diagnostics_run Argument Table
+ !! \htmlinclude cloud_particle_sedimentation_diagnostics_run.html
+ subroutine cloud_particle_sedimentation_diagnostics_run( &
+ ncol, &
+ wvtend, icetend, liqtend, htend, &
+ snow_sed, sfliq, &
+ errmsg, errflg)
+
+ use cam_history, only: history_out_field
+
+ ! Input parameters
+ integer, intent(in) :: ncol
+ real(kind_phys), intent(in) :: wvtend(:,:) ! water vapor tendency -- to apply wv tendency
+ real(kind_phys), intent(in) :: icetend(:,:) ! ice condensate tendency -- to apply cldice tendency
+ real(kind_phys), intent(in) :: liqtend(:,:) ! liquid condensate tendency -- to apply cldliq tendency
+ real(kind_phys), intent(in) :: htend(:,:) ! heating rate [J kg-1 s-1] -- to apply s tendency
+
+ real(kind_phys), intent(in) :: snow_sed(:) ! stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation [m s-1]
+ real(kind_phys), intent(in) :: sfliq(:) ! stratiform_rain_flux_at_surface_due_to_sedimentation [kg m-2 s-1]
+
+ ! CCPP error handling variables
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ real(kind_phys), parameter :: rhofw = 1000._kind_phys ! density of fresh water [kg m-3]
+ real(kind_phys) :: prec_sed(ncol)
+
+ ! repeat computation of prec_sed here for diagnostics [m s-1]
+ prec_sed(:ncol) = sfliq(:ncol)/rhofw + snow_sed(:ncol)
+
+ errmsg = ''
+ errflg = 0
+
+ ! History out field calls
+ call history_out_field('DQSED' , wvtend)
+ call history_out_field('DISED' , icetend)
+ call history_out_field('DLSED' , liqtend)
+ call history_out_field('HSED' , htend)
+
+ call history_out_field('PRECSED', prec_sed) ! calculated as m s-1
+ call history_out_field('SNOWSED', snow_sed) ! already in m s-1
+ call history_out_field('RAINSED', sfliq/rhofw) ! convert from kg m-2 s-1 to m s-1 (precip units) for output
+
+ end subroutine cloud_particle_sedimentation_diagnostics_run
+
+end module cloud_particle_sedimentation_diagnostics
diff --git a/schemes/sima_diagnostics/cloud_particle_sedimentation_diagnostics.meta b/schemes/sima_diagnostics/cloud_particle_sedimentation_diagnostics.meta
new file mode 100644
index 00000000..b638b250
--- /dev/null
+++ b/schemes/sima_diagnostics/cloud_particle_sedimentation_diagnostics.meta
@@ -0,0 +1,77 @@
+[ccpp-table-properties]
+ name = cloud_particle_sedimentation_diagnostics
+ type = scheme
+
+[ccpp-arg-table]
+ name = cloud_particle_sedimentation_diagnostics_init
+ type = scheme
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
+
+[ccpp-arg-table]
+ name = cloud_particle_sedimentation_diagnostics_run
+ type = scheme
+[ ncol ]
+ standard_name = horizontal_loop_extent
+ units = count
+ type = integer
+ dimensions = ()
+ intent = in
+[ wvtend ]
+ standard_name = tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ icetend ]
+ standard_name = tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ liqtend ]
+ standard_name = tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ htend ]
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure
+ units = J kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ snow_sed ]
+ standard_name = stratiform_lwe_cloud_ice_surface_flux_due_to_sedimentation
+ units = m s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent)
+ intent = in
+[ sfliq ]
+ standard_name = stratiform_rain_flux_at_surface_due_to_sedimentation
+ units = kg m-2 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent)
+ intent = in
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
diff --git a/schemes/sima_diagnostics/compute_cloud_fraction_diagnostics.F90 b/schemes/sima_diagnostics/compute_cloud_fraction_diagnostics.F90
new file mode 100644
index 00000000..74a69996
--- /dev/null
+++ b/schemes/sima_diagnostics/compute_cloud_fraction_diagnostics.F90
@@ -0,0 +1,57 @@
+! Diagnostics for cloud fraction
+module compute_cloud_fraction_diagnostics
+ use ccpp_kinds, only: kind_phys
+
+ implicit none
+ private
+ save
+
+ public :: compute_cloud_fraction_diagnostics_init
+ public :: compute_cloud_fraction_diagnostics_run
+
+contains
+
+ !> \section arg_table_compute_cloud_fraction_diagnostics_init Argument Table
+ !! \htmlinclude compute_cloud_fraction_diagnostics_init.html
+ subroutine compute_cloud_fraction_diagnostics_init(errmsg, errflg)
+ use cam_history, only: history_add_field
+ use cam_history_support, only: horiz_only
+
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ ! Local variables:
+
+ errmsg = ''
+ errflg = 0
+
+ ! History add field calls
+ call history_add_field('CLDST', 'stratiform_cloud_area_fraction', 'lev', 'avg', 'fraction')
+
+ end subroutine compute_cloud_fraction_diagnostics_init
+
+ !> \section arg_table_compute_cloud_fraction_diagnostics_run Argument Table
+ !! \htmlinclude compute_cloud_fraction_diagnostics_run.html
+ subroutine compute_cloud_fraction_diagnostics_run( &
+ cldst, &
+ errmsg, errflg)
+
+ use cam_history, only: history_out_field
+
+ ! Input parameters
+ real(kind_phys), intent(in) :: cldst(:,:)
+
+
+ ! CCPP error handling variables
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ errmsg = ''
+ errflg = 0
+
+ ! History out field calls
+ call history_out_field('CLDST', cldst)
+
+ end subroutine compute_cloud_fraction_diagnostics_run
+
+end module compute_cloud_fraction_diagnostics
diff --git a/schemes/sima_diagnostics/compute_cloud_fraction_diagnostics.meta b/schemes/sima_diagnostics/compute_cloud_fraction_diagnostics.meta
new file mode 100644
index 00000000..e0167a72
--- /dev/null
+++ b/schemes/sima_diagnostics/compute_cloud_fraction_diagnostics.meta
@@ -0,0 +1,41 @@
+[ccpp-table-properties]
+ name = compute_cloud_fraction_diagnostics
+ type = scheme
+
+[ccpp-arg-table]
+ name = compute_cloud_fraction_diagnostics_init
+ type = scheme
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
+
+[ccpp-arg-table]
+ name = compute_cloud_fraction_diagnostics_run
+ type = scheme
+[ cldst ]
+ standard_name = stratiform_cloud_area_fraction
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
diff --git a/schemes/sima_diagnostics/convect_shallow_diagnostics.F90 b/schemes/sima_diagnostics/convect_shallow_diagnostics.F90
index 1504a1c9..b3ec2971 100644
--- a/schemes/sima_diagnostics/convect_shallow_diagnostics.F90
+++ b/schemes/sima_diagnostics/convect_shallow_diagnostics.F90
@@ -1,5 +1,4 @@
! Diagnostics for shallow convection and merged deep + shallow convection
-! Haipeng Lin, December 2024
module convect_shallow_diagnostics
use ccpp_kinds, only: kind_phys
diff --git a/schemes/sima_diagnostics/convective_cloud_cover_diagnostics.F90 b/schemes/sima_diagnostics/convective_cloud_cover_diagnostics.F90
new file mode 100644
index 00000000..fedcded9
--- /dev/null
+++ b/schemes/sima_diagnostics/convective_cloud_cover_diagnostics.F90
@@ -0,0 +1,63 @@
+! Diagnostics for cloud fraction - convective cloud cover
+module convective_cloud_cover_diagnostics
+ use ccpp_kinds, only: kind_phys
+
+ implicit none
+ private
+ save
+
+ public :: convective_cloud_cover_diagnostics_init
+ public :: convective_cloud_cover_diagnostics_run
+
+contains
+
+ !> \section arg_table_convective_cloud_cover_diagnostics_init Argument Table
+ !! \htmlinclude convective_cloud_cover_diagnostics_init.html
+ subroutine convective_cloud_cover_diagnostics_init(errmsg, errflg)
+ use cam_history, only: history_add_field
+ use cam_history_support, only: horiz_only
+
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ ! Local variables:
+
+ errmsg = ''
+ errflg = 0
+
+ ! History add field calls
+ call history_add_field('SH_CLD', 'shallow_convective_cloud_area_fraction', 'lev', 'avg', 'fraction')
+ call history_add_field('DP_CLD', 'deep_convective_cloud_area_fraction', 'lev', 'avg', 'fraction')
+ call history_add_field('CONCLD', 'convective_cloud_area_fraction', 'lev', 'avg', 'fraction')
+
+ end subroutine convective_cloud_cover_diagnostics_init
+
+ !> \section arg_table_convective_cloud_cover_diagnostics_run Argument Table
+ !! \htmlinclude convective_cloud_cover_diagnostics_run.html
+ subroutine convective_cloud_cover_diagnostics_run( &
+ shallowcu, deepcu, concld, &
+ errmsg, errflg)
+
+ use cam_history, only: history_out_field
+
+ ! Input parameters
+ real(kind_phys), intent(in) :: shallowcu(:, :) ! Shallow convective cloud fraction [fraction]
+ real(kind_phys), intent(in) :: deepcu(:, :) ! Deep convective cloud fraction [fraction]
+ real(kind_phys), intent(in) :: concld(:, :) ! Convective cloud cover [fraction]
+
+
+ ! CCPP error handling variables
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ errmsg = ''
+ errflg = 0
+
+ ! History out field calls
+ call history_out_field('SH_CLD', shallowcu)
+ call history_out_field('DP_CLD', deepcu)
+ call history_out_field('CONCLD', concld)
+
+ end subroutine convective_cloud_cover_diagnostics_run
+
+end module convective_cloud_cover_diagnostics
diff --git a/schemes/sima_diagnostics/convective_cloud_cover_diagnostics.meta b/schemes/sima_diagnostics/convective_cloud_cover_diagnostics.meta
new file mode 100644
index 00000000..85796f3f
--- /dev/null
+++ b/schemes/sima_diagnostics/convective_cloud_cover_diagnostics.meta
@@ -0,0 +1,53 @@
+[ccpp-table-properties]
+ name = convective_cloud_cover_diagnostics
+ type = scheme
+
+[ccpp-arg-table]
+ name = convective_cloud_cover_diagnostics_init
+ type = scheme
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
+
+[ccpp-arg-table]
+ name = convective_cloud_cover_diagnostics_run
+ type = scheme
+[ shallowcu ]
+ standard_name = shallow_convective_cloud_area_fraction
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ deepcu ]
+ standard_name = deep_convective_cloud_area_fraction
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ concld ]
+ standard_name = convective_cloud_area_fraction
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
diff --git a/schemes/sima_diagnostics/rk_stratiform_diagnostics.F90 b/schemes/sima_diagnostics/rk_stratiform_diagnostics.F90
new file mode 100644
index 00000000..90c37cb0
--- /dev/null
+++ b/schemes/sima_diagnostics/rk_stratiform_diagnostics.F90
@@ -0,0 +1,327 @@
+! Diagnostics for RK stratiform - miscellaneous interstitial schemes
+module rk_stratiform_diagnostics
+ use ccpp_kinds, only: kind_phys
+
+ implicit none
+ private
+ save
+
+ public :: rk_stratiform_diagnostics_init
+ public :: rk_stratiform_cloud_fraction_perturbation_diagnostics_run
+ public :: rk_stratiform_condensate_repartioning_diagnostics_run
+ public :: rk_stratiform_prognostic_cloud_water_tendencies_diagnostics_run
+ public :: rk_stratiform_cloud_optical_properties_diagnostics_run
+
+contains
+
+ !> \section arg_table_rk_stratiform_diagnostics_init Argument Table
+ !! \htmlinclude rk_stratiform_diagnostics_init.html
+ subroutine rk_stratiform_diagnostics_init(errmsg, errflg)
+ use cam_history, only: history_add_field
+ use cam_history_support, only: horiz_only
+
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ ! There is one initialization scheme for all RK diagnostics
+ ! but there are separate run phases for diagnostics
+ ! pertaining to each interstitial scheme. See RK SDF file.
+
+ errmsg = ''
+ errflg = 0
+
+ ! rk_stratiform_cloud_fraction_perturbation_diagnostics
+ call history_add_field('AST', 'cloud_area_fraction', 'lev', 'avg', 'fraction')
+
+ ! rk_stratiform_condensate_repartioning_diagnostics
+ call history_add_field('FICE', 'mass_fraction_of_ice_content_within_stratiform_cloud', 'lev', 'avg', 'fraction')
+ call history_add_field('REPARTICE', 'tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_cloud_ice_and_cloud_liquid_repartitioning', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('REPARTLIQ', 'tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water_due_to_cloud_ice_and_cloud_liquid_repartitioning', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('HREPART', 'tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_cloud_ice_and_cloud_liquid_repartitioning', 'lev', 'avg', 'J kg-1 s-1')
+
+ ! rk_stratiform_prognostic_cloud_water_tendencies_diagnostics
+ call history_add_field('FWAUT', 'relative_importance_of_cloud_liquid_water_autoconversion', 'lev', 'avg', 'fraction')
+ call history_add_field('FSAUT', 'relative_importance_of_cloud_ice_autoconversion', 'lev', 'avg', 'fraction')
+ call history_add_field('FRACW', 'relative_importance_of_rain_accreting_cloud_liquid_water', 'lev', 'avg', 'fraction')
+ call history_add_field('FSACW', 'relative_importance_of_snow_accreting_cloud_liquid_water', 'lev', 'avg', 'fraction')
+ call history_add_field('FSACI', 'relative_importance_of_snow_accreting_cloud_ice', 'lev', 'avg', 'fraction')
+ call history_add_field('PCSNOW', 'lwe_snow_precipitation_rate_at_surface_due_to_microphysics', horiz_only, 'avg', 'fraction')
+ call history_add_field('CME', 'net_condensation_rate_due_to_microphysics', 'lev', 'avg', 'kg kg-1 s-1') ! qme.
+ call history_add_field('CMEICE', 'rate_of_condensation_minus_evaporation_for_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('CMELIQ', 'rate_of_condensation_minus_evaporation_for_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('ICE2PR', 'tendency_of_cloud_ice_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_ice_to_snow_autoconversion', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('LIQ2PR', 'tendency_of_cloud_liquid_water_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_liquid_to_rain_autoconversion', 'lev', 'avg', 'kg kg-1 s-1')
+
+ call history_add_field('HPROGCLD', 'tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_microphysics', 'lev', 'avg', 'J kg-1 s-1')
+ call history_add_field('HEVAP', 'tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_of_precipitation', 'lev', 'avg', 'J kg-1 s-1')
+ call history_add_field('HMELT', 'tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_snow_melt', 'lev', 'avg', 'J kg-1 s-1')
+ call history_add_field('HCME', 'tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_condensation_minus_evaporation', 'lev', 'avg', 'J kg-1 s-1')
+ call history_add_field('HFREEZ', 'tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_freezing_of_precipitation', 'lev', 'avg', 'J kg-1 s-1')
+
+ call history_add_field('PRODPREC', 'precipitation_production_due_to_microphysics', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('EVAPPREC', 'rate_of_evaporation_of_precipitation_due_to_microphysics', 'lev', 'avg', 'kg kg-1 s-1')
+ call history_add_field('EVAPSNOW', 'rate_of_evaporation_of_falling_snow_due_to_microphysics', 'lev', 'avg', 'kg kg-1 s-1')
+
+ ! ... for COSP/CFMIP
+ call history_add_field('LS_FLXPRC', 'stratiform_rain_and_snow_flux_at_interface', 'ilev', 'avg', 'kg m-2 s-1')
+ call history_add_field('LS_FLXSNW', 'stratiform_snow_flux_at_interface', 'ilev', 'avg', 'kg m-2 s-1')
+ call history_add_field('PRACWO', 'accretion_of_cloud_liquid_water_by_rain', 'lev', 'avg', 's-1')
+ call history_add_field('PSACWO', 'accretion_of_cloud_liquid_water_by_snow', 'lev', 'avg', 's-1')
+ call history_add_field('PSACIO', 'accretion_of_cloud_ice_by_snow', 'lev', 'avg', 's-1')
+
+ call history_add_field('CLDLIQSTR', 'stratiform_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water', 'lev', 'avg', 'kg kg-1')
+ call history_add_field('CLDICESTR', 'stratiform_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water', 'lev', 'avg', 'kg kg-1')
+ call history_add_field('CLDLIQCON', 'convective_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water', 'lev', 'avg', 'kg kg-1')
+ call history_add_field('CLDICECON', 'convective_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water', 'lev', 'avg', 'kg kg-1')
+
+ ! rk_stratiform_cloud_optical_properties_diagnostics
+ call history_add_field('IWC', 'stratiform_cloud_ice_water_content', 'lev', 'avg', 'kg m-3')
+ call history_add_field('LWC', 'stratiform_cloud_liquid_water_content', 'lev', 'avg', 'kg m-3')
+ call history_add_field('ICIMR', 'in_cloud_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water', 'lev', 'avg', 'kg kg-1')
+ call history_add_field('ICWMR', 'in_cloud_cloud_liquid_mixing_ratio_wrt_moist_air_and_condensed_water', 'lev', 'avg', 'kg kg-1')
+
+ call history_add_field('REI', 'effective_radius_of_stratiform_cloud_ice_particle', 'lev', 'avg', 'um')
+ call history_add_field('REL', 'effective_radius_of_stratiform_cloud_liquid_water_particle', 'lev', 'avg', 'um')
+
+
+ end subroutine rk_stratiform_diagnostics_init
+
+ !> \section arg_table_rk_stratiform_cloud_fraction_perturbation_diagnostics_run Argument Table
+ !! \htmlinclude rk_stratiform_cloud_fraction_perturbation_diagnostics_run.html
+ subroutine rk_stratiform_cloud_fraction_perturbation_diagnostics_run( &
+ cloud, &
+ errmsg, errflg)
+
+ use cam_history, only: history_out_field
+
+ ! Input parameters
+ real(kind_phys), intent(in) :: cloud(:, :) ! cloud_area_fraction [fraction]
+
+ ! CCPP error handling variables
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ errmsg = ''
+ errflg = 0
+
+ ! History out field calls
+ call history_out_field('AST', cloud)
+
+ end subroutine rk_stratiform_cloud_fraction_perturbation_diagnostics_run
+
+ !> \section arg_table_rk_stratiform_condensate_repartioning_diagnostics_run Argument Table
+ !! \htmlinclude rk_stratiform_condensate_repartioning_diagnostics_run.html
+ subroutine rk_stratiform_condensate_repartioning_diagnostics_run( &
+ fice, tend_cldice, tend_cldliq, repartht, &
+ errmsg, errflg)
+
+ use cam_history, only: history_out_field
+
+ ! Input parameters
+ real(kind_phys), intent(in) :: fice(:,:) ! mass_fraction_of_ice_content_within_stratiform_cloud [fraction]
+ real(kind_phys), intent(in) :: tend_cldice(:,:) ! tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water [kg kg-1 s-1]
+ real(kind_phys), intent(in) :: tend_cldliq(:,:) ! tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water [kg kg-1 s-1]
+ real(kind_phys), intent(in) :: repartht(:,:) ! [J kg-1 s-1]
+
+ ! CCPP error handling variables
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ errmsg = ''
+ errflg = 0
+
+ ! History out field calls
+ call history_out_field('FICE', fice)
+ call history_out_field('REPARTICE', tend_cldice)
+ call history_out_field('REPARTLIQ', tend_cldliq)
+ call history_out_field('HREPART', repartht)
+
+ end subroutine rk_stratiform_condensate_repartioning_diagnostics_run
+
+ !> \section arg_table_rk_stratiform_prognostic_cloud_water_tendencies_diagnostics_run Argument Table
+ !! \htmlinclude rk_stratiform_prognostic_cloud_water_tendencies_diagnostics_run.html
+ subroutine rk_stratiform_prognostic_cloud_water_tendencies_diagnostics_run( &
+ ncol, pver, &
+ cloud, concld, &
+ cldliq, cldice, &
+ fwaut, fsaut, fracw, fsacw, fsaci, &
+ snow_pcw, cme, cmeice, cmeliq, ice2pr, liq2pr, &
+ tend_s, &
+ evapheat, meltheat, cmeheat, prfzheat, &
+ prodprec, evapprec, evapsnow, &
+ lsflxprc, lsflxsnw, &
+ pracwo, psacwo, psacio, &
+ errmsg, errflg)
+
+ use cam_history, only: history_out_field
+
+ ! Input parameters
+ integer, intent(in) :: ncol
+ integer, intent(in) :: pver
+ real(kind_phys), intent(in) :: cloud(:,:) ! cloud_area_fraction [fraction]
+ real(kind_phys), intent(in) :: concld(:,:) ! convective_cloud_area_fraction [fraction]
+ real(kind_phys), intent(in) :: cldliq(:,:) ! adv: cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water [kg kg-1]
+ real(kind_phys), intent(in) :: cldice(:,:) ! adv: cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water [kg kg-1]
+
+ real(kind_phys), intent(in) :: fwaut(:,:)
+ real(kind_phys), intent(in) :: fsaut(:,:)
+ real(kind_phys), intent(in) :: fracw(:,:)
+ real(kind_phys), intent(in) :: fsacw(:,:)
+ real(kind_phys), intent(in) :: fsaci(:,:)
+
+ real(kind_phys), intent(in) :: snow_pcw(:)
+ real(kind_phys), intent(in) :: cme(:,:)
+ real(kind_phys), intent(in) :: cmeice(:,:)
+ real(kind_phys), intent(in) :: cmeliq(:,:)
+ real(kind_phys), intent(in) :: ice2pr(:,:)
+ real(kind_phys), intent(in) :: liq2pr(:,:)
+
+ real(kind_phys), intent(in) :: tend_s(:,:)
+ real(kind_phys), intent(in) :: evapheat(:,:)
+ real(kind_phys), intent(in) :: meltheat(:,:)
+ real(kind_phys), intent(in) :: cmeheat(:,:)
+ real(kind_phys), intent(in) :: prfzheat(:,:)
+
+ real(kind_phys), intent(in) :: prodprec(:,:)
+ real(kind_phys), intent(in) :: evapprec(:,:)
+ real(kind_phys), intent(in) :: evapsnow(:,:)
+ real(kind_phys), intent(in) :: lsflxprc(:,:)
+ real(kind_phys), intent(in) :: lsflxsnw(:,:)
+ real(kind_phys), intent(in) :: pracwo(:,:)
+ real(kind_phys), intent(in) :: psacwo(:,:)
+ real(kind_phys), intent(in) :: psacio(:,:)
+
+ ! CCPP error handling variables
+ character(len=512), intent(out) :: errmsg
+ integer, intent(out) :: errflg
+
+ ! Local variables
+ real(kind_phys) :: cldliqstr(ncol, pver) ! [kg kg-1]
+ real(kind_phys) :: cldicestr(ncol, pver) ! [kg kg-1]
+ real(kind_phys) :: cldliqcon(ncol, pver) ! [kg kg-1]
+ real(kind_phys) :: cldicecon(ncol, pver) ! [kg kg-1]
+ integer :: i, k
+
+ errmsg = ''
+ errflg = 0
+
+ ! History out field calls
+ call history_out_field('FWAUT', fwaut)
+ call history_out_field('FSAUT', fsaut)
+ call history_out_field('FRACW', fracw)
+ call history_out_field('FSACW', fsacw)
+ call history_out_field('FSACI', fsaci)
+
+ call history_out_field('PCSNOW', snow_pcw)
+ call history_out_field('CME', cme)
+ call history_out_field('CMEICE', cmeice)
+ call history_out_field('CMELIQ', cmeliq)
+ call history_out_field('ICE2PR', ice2pr)
+ call history_out_field('LIQ2PR', liq2pr)
+
+ call history_out_field('HPROGCLD', tend_s)
+ call history_out_field('HEVAP', evapheat)
+ call history_out_field('HMELT', meltheat)
+ call history_out_field('HCME', cmeheat)
+ call history_out_field('HFREEZ', prfzheat)
+
+ call history_out_field('PRODPREC', prodprec)
+ call history_out_field('EVAPPREC', evapprec)
+ call history_out_field('EVAPSNOW', evapsnow)
+
+ call history_out_field('LS_FLXPRC', lsflxprc)
+ call history_out_field('LS_FLXSNW', lsflxsnw)
+ call history_out_field('PRACWO', pracwo)
+ call history_out_field('PSACWO', psacwo)
+ call history_out_field('PSACIO', psacio)
+
+ ! Derived diagnostics -- mass mixing ratio for stratiform or convective cloud liquid / cloud ice
+ cldliqstr(:,:) = 0._kind_phys
+ cldicestr(:,:) = 0._kind_phys
+ cldliqcon(:,:) = 0._kind_phys
+ cldicecon(:,:) = 0._kind_phys
+ do k = 1, pver
+ do i = 1, ncol
+ if(cloud(i,k) > 0._kind_phys) then
+ ! convective mass mixing ratios
+ cldliqcon(i,k) = cldliq(i,k)/cloud(i,k) * concld(i,k)
+ cldicecon(i,k) = cldice(i,k)/cloud(i,k) * concld(i,k)
+
+ ! stratiform (large-scale) mass mixing ratios
+ cldliqstr(i,k) = cldliq(i,k)/cloud(i,k) * (cloud(i,k) - concld(i,k))
+ cldicestr(i,k) = cldice(i,k)/cloud(i,k) * (cloud(i,k) - concld(i,k))
+ endif
+ enddo
+ enddo
+
+ call history_out_field('CLDLIQCON', cldliqcon)
+ call history_out_field('CLDICECON', cldicecon)
+
+ call history_out_field('CLDLIQSTR', cldliqstr)
+ call history_out_field('CLDICESTR', cldicestr)
+
+ end subroutine rk_stratiform_prognostic_cloud_water_tendencies_diagnostics_run
+
+ !> \section arg_table_rk_stratiform_cloud_optical_properties_diagnostics_run Argument Table
+ !! \htmlinclude rk_stratiform_cloud_optical_properties_diagnostics_run.html
+ subroutine rk_stratiform_cloud_optical_properties_diagnostics_run( &
+ ncol, pver, &
+ rair, &
+ pmid, &
+ t, &
+ cldice, cldliq, &
+ rhcloud, &
+ rel, rei, &
+ errmsg, errflg)
+
+ use cam_history, only: history_out_field
+
+ ! Input arguments
+ integer, intent(in) :: ncol
+ integer, intent(in) :: pver
+ real(kind_phys), intent(in) :: rair
+ real(kind_phys), intent(in) :: pmid(:,:) ! air_pressure [Pa]
+ real(kind_phys), intent(in) :: t(:,:) ! air_temperature [K]
+ real(kind_phys), intent(in) :: cldliq(:,:) ! adv: cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water [kg kg-1]
+ real(kind_phys), intent(in) :: cldice(:,:) ! adv: cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water [kg kg-1]
+ real(kind_phys), intent(in) :: rhcloud(:,:) ! cloud_area_fraction_from_relative_humidity_method [fraction]
+ real(kind_phys), intent(in) :: rel(:,:) ! effective_radius_of_stratiform_cloud_liquid_water_particle [um]
+ real(kind_phys), intent(in) :: rei(:,:) ! effective_radius_of_stratiform_cloud_ice_particle [um]
+
+ ! Output arguments
+ character(len=512), intent(out) :: errmsg ! error message
+ integer, intent(out) :: errflg ! error flag
+
+ ! Temporaries for diagnostic output.
+ real(kind_phys) :: iwc(ncol,pver) ! stratiform_cloud_ice_water_content [kg m-3]
+ real(kind_phys) :: lwc(ncol,pver) ! stratiform_cloud_liquid_water_content [kg m-3]
+ real(kind_phys) :: icimr(ncol,pver) ! in_cloud_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water [kg kg-1]
+ real(kind_phys) :: icwmr(ncol,pver) ! in_cloud_cloud_liquid_mixing_ratio_wrt_moist_air_and_condensed_water [kg kg-1]
+
+ integer :: i, k
+
+
+ ! Prognostic cloud water diagnostics
+ ! needs updated cloud fraction
+ do k = 1, pver
+ do i = 1, ncol
+ iwc(i,k) = cldice(i,k)*pmid(i,k)/(rair*t(i,k))
+ lwc(i,k) = cldliq(i,k)*pmid(i,k)/(rair*t(i,k))
+ icimr(i,k) = cldice(i,k) / max(0.01_kind_phys, rhcloud(i,k))
+ icwmr(i,k) = cldliq(i,k) / max(0.01_kind_phys, rhcloud(i,k))
+ end do
+ end do
+
+ call history_out_field('IWC', iwc)
+ call history_out_field('LWC', lwc)
+ call history_out_field('ICIMR', icimr)
+ call history_out_field('ICWMR', icwmr)
+
+ ! Cloud optical properties
+ call history_out_field('REL', rel)
+ call history_out_field('REI', rei)
+
+ end subroutine rk_stratiform_cloud_optical_properties_diagnostics_run
+
+
+end module rk_stratiform_diagnostics
diff --git a/schemes/sima_diagnostics/rk_stratiform_diagnostics.meta b/schemes/sima_diagnostics/rk_stratiform_diagnostics.meta
new file mode 100644
index 00000000..9346b7d2
--- /dev/null
+++ b/schemes/sima_diagnostics/rk_stratiform_diagnostics.meta
@@ -0,0 +1,371 @@
+[ccpp-table-properties]
+ name = rk_stratiform_diagnostics
+ type = scheme
+
+[ccpp-arg-table]
+ name = rk_stratiform_diagnostics_init
+ type = scheme
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
+
+[ccpp-table-properties]
+ name = rk_stratiform_cloud_fraction_perturbation_diagnostics
+ type = scheme
+
+[ccpp-arg-table]
+ name = rk_stratiform_cloud_fraction_perturbation_diagnostics_run
+ type = scheme
+[ cloud ]
+ standard_name = cloud_area_fraction
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
+
+[ccpp-table-properties]
+ name = rk_stratiform_condensate_repartioning_diagnostics
+ type = scheme
+
+[ccpp-arg-table]
+ name = rk_stratiform_condensate_repartioning_diagnostics_run
+ type = scheme
+[ fice ]
+ standard_name = mass_fraction_of_ice_content_within_stratiform_cloud
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ tend_cldice ]
+ standard_name = tendency_of_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ tend_cldliq ]
+ standard_name = tendency_of_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ repartht ]
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_cloud_ice_and_cloud_liquid_repartitioning
+ units = J kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
+
+[ccpp-table-properties]
+ name = rk_stratiform_prognostic_cloud_water_tendencies_diagnostics
+ type = scheme
+
+[ccpp-arg-table]
+ name = rk_stratiform_prognostic_cloud_water_tendencies_diagnostics_run
+ type = scheme
+[ ncol ]
+ standard_name = horizontal_loop_extent
+ units = count
+ type = integer
+ dimensions = ()
+ intent = in
+[ pver ]
+ standard_name = vertical_layer_dimension
+ units = count
+ type = integer
+ dimensions = ()
+ intent = in
+[ cloud ]
+ standard_name = cloud_area_fraction
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ concld ]
+ standard_name = convective_cloud_area_fraction
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ cldliq ]
+ standard_name = cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+ advected = true
+[ cldice ]
+ standard_name = cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+ advected = true
+[ fwaut ]
+ standard_name = relative_importance_of_cloud_liquid_water_autoconversion
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ fsaut ]
+ standard_name = relative_importance_of_cloud_ice_autoconversion
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ fracw ]
+ standard_name = relative_importance_of_rain_accreting_cloud_liquid_water
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ fsacw ]
+ standard_name = relative_importance_of_snow_accreting_cloud_liquid_water
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ fsaci ]
+ standard_name = relative_importance_of_snow_accreting_cloud_ice
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ snow_pcw ]
+ standard_name = lwe_snow_precipitation_rate_at_surface_due_to_microphysics
+ units = m s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent)
+ intent = in
+[ cme ]
+ standard_name = net_condensation_rate_due_to_microphysics
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ cmeice ]
+ standard_name = rate_of_condensation_minus_evaporation_for_cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ cmeliq ]
+ standard_name = rate_of_condensation_minus_evaporation_for_cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ ice2pr ]
+ standard_name = tendency_of_cloud_ice_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_ice_to_snow_autoconversion
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ liq2pr ]
+ standard_name = tendency_of_cloud_liquid_water_mixing_ratio_wrt_to_moist_air_and_condensed_water_due_to_liquid_to_rain_autoconversion
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ tend_s ]
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure
+ units = J kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ evapheat ]
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_evaporation_of_precipitation
+ units = J kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ meltheat ]
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_snow_melt
+ units = J kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ cmeheat ]
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_condensation_minus_evaporation
+ units = J kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ prfzheat ]
+ standard_name = tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_freezing_of_precipitation
+ units = J kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ prodprec ]
+ standard_name = precipitation_production_due_to_microphysics
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ evapprec ]
+ standard_name = rate_of_evaporation_of_precipitation_due_to_microphysics
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ evapsnow ]
+ standard_name = rate_of_evaporation_of_falling_snow_due_to_microphysics
+ units = kg kg-1 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ lsflxprc ]
+ standard_name = stratiform_rain_and_snow_flux_at_interface
+ units = kg m-2 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_interface_dimension)
+ intent = in
+[ lsflxsnw ]
+ standard_name = stratiform_snow_flux_at_interface
+ units = kg m-2 s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_interface_dimension)
+ intent = in
+[ pracwo ]
+ standard_name = accretion_of_cloud_liquid_water_by_rain
+ units = s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ psacwo ]
+ standard_name = accretion_of_cloud_liquid_water_by_snow
+ units = s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ psacio ]
+ standard_name = accretion_of_cloud_ice_by_snow
+ units = s-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
+
+[ccpp-table-properties]
+ name = rk_stratiform_cloud_optical_properties_diagnostics
+ type = scheme
+
+[ccpp-arg-table]
+ name = rk_stratiform_cloud_optical_properties_diagnostics_run
+ type = scheme
+[ ncol ]
+ standard_name = horizontal_loop_extent
+ units = count
+ type = integer
+ dimensions = ()
+ intent = in
+[ pver ]
+ standard_name = vertical_layer_dimension
+ units = count
+ type = integer
+ dimensions = ()
+ intent = in
+[ rair ]
+ standard_name = gas_constant_of_dry_air
+ units = J kg-1 K-1
+ type = real | kind = kind_phys
+ dimensions = ()
+ intent = in
+[ pmid ]
+ standard_name = air_pressure
+ units = Pa
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ t ]
+ standard_name = air_temperature
+ units = K
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ cldice ]
+ standard_name = cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ cldliq ]
+ standard_name = cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
+ units = kg kg-1
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ rhcloud ]
+ standard_name = cloud_area_fraction_from_relative_humidity_method
+ units = fraction
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ rel ]
+ standard_name = effective_radius_of_stratiform_cloud_liquid_water_particle
+ units = um
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ rei ]
+ standard_name = effective_radius_of_stratiform_cloud_ice_particle
+ units = um
+ type = real | kind = kind_phys
+ dimensions = (horizontal_loop_extent, vertical_layer_dimension)
+ intent = in
+[ errmsg ]
+ standard_name = ccpp_error_message
+ units = none
+ type = character | kind = len=512
+ dimensions = ()
+ intent = out
+[ errflg ]
+ standard_name = ccpp_error_code
+ units = 1
+ type = integer
+ dimensions = ()
+ intent = out
diff --git a/suites/suite_cam4.xml b/suites/suite_cam4.xml
index 9c2c943b..7c3fc7f8 100644
--- a/suites/suite_cam4.xml
+++ b/suites/suite_cam4.xml
@@ -5,8 +5,8 @@
CAM4 PHYSICS SUITE
Deep convection ZM
Shallow convection Hack
- Macrophysics RK (not implemented)
- Microphysics RK (not implemented)
+ Macrophysics RK
+ Microphysics RK
Radiation RRTMGP (not implemented)
Chemistry None (not implemented)
Vertical Diffusion HB (not implemented)
@@ -127,8 +127,88 @@
check_energy_chng
+
+ tropopause_find
+
+
+ rk_stratiform_diagnostics
+
+
+ rk_stratiform_check_qtlcwat
+
+
+ cloud_particle_sedimentation
+ cloud_particle_sedimentation_diagnostics
+ apply_constituent_tendencies
+ apply_heating_rate
+ qneg
+ geopotential_temp
+ rk_stratiform_sedimentation
+
+
+ rk_stratiform_detrain_convective_condensate
+ apply_constituent_tendencies
+ qneg
+ geopotential_temp
+
+
+ convective_cloud_cover
+ convective_cloud_cover_diagnostics
+ compute_cloud_fraction
+ rk_stratiform_cloud_fraction_perturbation
+ rk_stratiform_cloud_fraction_perturbation_diagnostics
+
+
+ rk_stratiform_external_forcings
+
+
+ cloud_fraction_fice
+
+
+ prognostic_cloud_water
+
+
+ rk_stratiform_condensate_repartioning
+ rk_stratiform_condensate_repartioning_diagnostics
+ apply_constituent_tendencies
+ qneg
+ geopotential_temp
+
+
+ rk_stratiform_prognostic_cloud_water_tendencies
+ rk_stratiform_prognostic_cloud_water_tendencies_diagnostics
+ apply_constituent_tendencies
+ apply_heating_rate
+ qneg
+ geopotential_temp
+
+
+ compute_cloud_fraction
+ compute_cloud_fraction_diagnostics
+
+
+ rk_stratiform_cloud_optical_properties
+ rk_stratiform_cloud_optical_properties_diagnostics
+
+
+ rk_stratiform_save_qtlcwat
sima_state_diagnostics
diff --git a/test/test_suites/suite_rasch_kristjansson.xml b/test/test_suites/suite_rasch_kristjansson.xml
index 1281df89..b76ffb2b 100644
--- a/test/test_suites/suite_rasch_kristjansson.xml
+++ b/test/test_suites/suite_rasch_kristjansson.xml
@@ -23,7 +23,7 @@
cloud_particle_sedimentation
-
+ cloud_particle_sedimentation_diagnostics
apply_constituent_tendencies
apply_heating_rate
qneg
@@ -45,10 +45,10 @@
relative humidity derivative used in the prognostic_cloud_water scheme.
-->
convective_cloud_cover
-
+ convective_cloud_cover_diagnostics
compute_cloud_fraction
rk_stratiform_cloud_fraction_perturbation
-
+ rk_stratiform_cloud_fraction_perturbation_diagnostics
@@ -67,7 +67,7 @@
repartition heating from change in cloud ice is determined here,
but only the constituent tendencies are applied in the repartitioning step. -->
rk_stratiform_condensate_repartioning
-
+ rk_stratiform_condensate_repartioning_diagnostics
apply_constituent_tendencies
qneg
geopotential_temp
@@ -76,7 +76,7 @@
repartition heating determined in condensate_repartitioning scheme is applied here,
together with other heating fluxes from prognostic_cloud_water. -->
rk_stratiform_prognostic_cloud_water_tendencies
-
+ rk_stratiform_prognostic_cloud_water_tendencies_diagnostics
apply_constituent_tendencies
apply_heating_rate
qneg
@@ -84,13 +84,14 @@
compute_cloud_fraction
-
+ compute_cloud_fraction_diagnostics
rk_stratiform_cloud_optical_properties
-
+ rk_stratiform_cloud_optical_properties_diagnostics
rk_stratiform_save_qtlcwat
+