Skip to content

Commit

Permalink
Merge pull request #91 from jtruesdal/dadadj
Browse files Browse the repository at this point in the history
Refactor dadadj for CCPP framework
  • Loading branch information
nusbaume authored Jul 25, 2024
2 parents f4c0961 + 1e70ee7 commit 7710ff3
Show file tree
Hide file tree
Showing 9 changed files with 691 additions and 46 deletions.
57 changes: 57 additions & 0 deletions doc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,61 @@
===============================================================

Tag name: atmos_phys0_04_000
Originator(s): jet
Date: May 3, 2024
One-line Summary: dadadj CCPP mods
Github PR URL: https://github.com/ESCOMP/atmospheric_physics/pull/91

This PR fixes the following NCAR/atmospheric_physics Github issues:
- Creates the CCPP interface for the dadadj routine
- dadadj.F90 routine was slightly refactored to update the logic and syntax

Additionally it was discovered that the temporary variable for cappa interface was
not set properly each time through the loop that makes the dry adiabatic adjustment.
This bug was fixed as part of this PR with the following line.

cappaint = 0.5_kind_phys*(cappa(i,k+1) + cappa(i,k))

Code reviewed by: nusbaume, cacraigucar

List all existing files that have been added (A), modified (M), or deleted (D),
and describe the changes:

A dry_adiabatic_adjust/dadadj_apply_qv_tendency.F90 - temp file to update constituent tendency
A dry_adiabatic_adjust/dadadj_apply_qv_tendency.meta - SIMA meta file for F90 routine
A dry_adiabatic_adjust/dadadj.F90 - minor refactor to the cam routine - CCPP'ize
A dry_adiabatic_adjust/dadadj.meta - SIMA meta file for F90 routine
A dry_adiabatic_adjust/dadadj_namelist.xml
M doc/ChangeLog
A test/test_sdfs/suite_dry_adiabatic_adjust.xml - CCPP suite file for testing
M suite_cam7.xml - added dry adiabatic adjust to cam7 CCPP suite file
M NamesNotInDictionary.txt - updated with current set of names

List and Describe any test failures:
- Tested in CAM
Because dadadj doesn't normally get tripped I modified the Temp
profile to create an instability where the code would be exercised.
The snapshot files contain this instability. The modification adds
60 degrees to the layer 2 temperature.

--- /project/amp/jet/collections/cam6_3_160_dryadj.042924.1856/src/dynamics/se/dyn_comp.F90
2024-05-02 16:56:49.746341064 -0600
+++ SourceMods/src.cam/dyn_comp.F90 2024-05-02 16:37:13.171433366 -0600
@@ -1429,6 +1429,7 @@
do j = 1, np
do i = 1, np
elem(ie)%state%T(i,j,:,1) = dbuf3(indx,:,ie)
+ elem(ie)%state%T(i,j,2,1) = dbuf3(indx,2,ie) + 60._r8
indx = indx + 1
end do
end do

Summarize any changes to answers:
- none: base code includes the same mod above to exercise code.

===============================================================
===============================================================

Tag name: atmos_phys0_03_00
Originator(s): mwaxmonsky
Date: June 18, 2024
Expand Down Expand Up @@ -61,6 +117,7 @@ water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
********** End Physics Check Data Results **********


===============================================================
===============================================================

Tag name: atmos_phys0_02_006
Expand Down
108 changes: 62 additions & 46 deletions doc/NamesNotInDictionary.txt
Original file line number Diff line number Diff line change
@@ -1,21 +1,43 @@

#######################
Date/time of when script was run:
2024-06-20 11:25:12.714233
2024-07-12 11:08:18.467654
#######################

Non-dictionary standard names found in the following metadata files:

--------------------------

/home/mwaxmonsky/source/atmospheric_physics-mwaxmonsky/utilities/geopotential_temp.meta
atmospheric_physics.jt.062024/utilities/geopotential_temp.meta

- air_pressure_at_interface
- ln_air_pressure_at_interface

--------------------------

/home/mwaxmonsky/source/atmospheric_physics-mwaxmonsky/zhang_mcfarlane/zm_conv_momtran.meta
atmospheric_physics.jt.062024/zhang_mcfarlane/zm_conv_convtran.meta

- atmosphere_detrainment_convective_mass_flux_for_deep_convection_for_convective_columns
- atmosphere_downdraft_convective_mass_flux_for_deep_convection_for_convective_columns
- 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
- current_timestep_number
- flag_for_zhang_mcfarlane_deep_convective_transport?
- fraction_of_water_insoluble_convectively_transported_species
- horizontal_index_of_convective_columns_for_deep_convection_for_convective_columns
- maximum_number_of_grid_cells_with_deep_convection?
- minimum_number_of_grid_cells_with_deep_convection?
- pressure_thickness_for_deep_convection_for_convective_columns
- pressure_thickness_for_subcloud_layer_for_deep_convection_for_convective_columns
- pressure_thickness_of_dry_air_for_deep_convection_for_convective_columns?
- tendency_of_ccpp_constituents?
- vertical_index_at_top_of_deep_convection_for_convective_columns
- vertical_index_of_deep_conveciton_launch_level_for_convective_columns

--------------------------

atmospheric_physics.jt.062024/zhang_mcfarlane/zm_conv_momtran.meta

- atmosphere_detrainment_convective_mass_flux_for_deep_convection_for_convective_columns
- atmosphere_downdraft_convective_mass_flux_for_deep_convection_for_convective_columns
Expand All @@ -42,7 +64,33 @@ Non-dictionary standard names found in the following metadata files:

--------------------------

/home/mwaxmonsky/source/atmospheric_physics-mwaxmonsky/zhang_mcfarlane/zm_convr.meta
atmospheric_physics.jt.062024/zhang_mcfarlane/zm_conv_evap.meta

-
- cloud_area_fraction
- flag_for_zhang_mcfarlane_convective_organization_parameterization?
- freezing_point_of_water?
- frozen_precipitation_mass_flux_at_interface_due_to_deep_convection?
- heating_rate
- latent_heat_of_fusion_of_water_at_0c?
- latent_heat_of_vaporization_of_water_at_0c?
- lwe_frozen_precipitation_rate_at_surface_due_to_deep_convection
- lwe_precipitation_rate_at_surface_due_to_deep_convection
- precipitation_mass_flux_at_interface_due_to_deep_convection?
- pressure_thickness
- specific_heat_of_dry_air_at_constant_pressure?
- tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_frozen_precipitation_melt?
- tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_frozen_precipitation_production_in_deep_convection?
- tendency_of_frozen_precipitation_wrt_moist_air_and_condensed_water_due_to_deep_convection?
- tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_deep_convection?
- tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_deep_convection_excluding_subcloud_evaporation
- tendency_of_water_vapor_mixing_ratio_wrt_moist_air and_condensed_water?
- tunable_evaporation_efficiency_for_land_in_zhang_mcfarlane_deep_convection_scheme?
- tunable_evaporation_efficiency_in_zhang_mcfarlane_deep_convection_scheme?

--------------------------

atmospheric_physics.jt.062024/zhang_mcfarlane/zm_convr.meta

- air_pressure_at_interface
- atmosphere_convective_mass_flux_due_to all_convection?
Expand Down Expand Up @@ -98,55 +146,23 @@ Non-dictionary standard names found in the following metadata files:

--------------------------

/home/mwaxmonsky/source/atmospheric_physics-mwaxmonsky/zhang_mcfarlane/zm_conv_convtran.meta
atmospheric_physics.jt.062024/dry_adiabatic_adjust/dadadj.meta

- atmosphere_detrainment_convective_mass_flux_for_deep_convection_for_convective_columns
- atmosphere_downdraft_convective_mass_flux_for_deep_convection_for_convective_columns
- 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
- current_timestep_number
- flag_for_zhang_mcfarlane_deep_convective_transport?
- fraction_of_water_insoluble_convectively_transported_species
- horizontal_index_of_convective_columns_for_deep_convection_for_convective_columns
- maximum_number_of_grid_cells_with_deep_convection?
- minimum_number_of_grid_cells_with_deep_convection?
- pressure_thickness_for_deep_convection_for_convective_columns
- pressure_thickness_for_subcloud_layer_for_deep_convection_for_convective_columns
- pressure_thickness_of_dry_air_for_deep_convection_for_convective_columns?
- tendency_of_ccpp_constituents?
- vertical_index_at_top_of_deep_convection_for_convective_columns
- vertical_index_of_deep_conveciton_launch_level_for_convective_columns
- air_pressure_at_interface
- binary_indicator_for_dry_adiabatic_adjusted_grid_cell
- number_of_iterations_for_dry_adiabatic_adjustment_algorithm_convergence
- number_of_vertical_levels_from_model_top_where_dry_adiabatic_adjustment_occurs
- tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water

--------------------------

/home/mwaxmonsky/source/atmospheric_physics-mwaxmonsky/zhang_mcfarlane/zm_conv_evap.meta
atmospheric_physics.jt.062024/dry_adiabatic_adjust/dadadj_apply_qv_tendency.meta

-
- cloud_area_fraction
- flag_for_zhang_mcfarlane_convective_organization_parameterization?
- freezing_point_of_water?
- frozen_precipitation_mass_flux_at_interface_due_to_deep_convection?
- heating_rate
- latent_heat_of_fusion_of_water_at_0c?
- latent_heat_of_vaporization_of_water_at_0c?
- lwe_frozen_precipitation_rate_at_surface_due_to_deep_convection
- lwe_precipitation_rate_at_surface_due_to_deep_convection
- precipitation_mass_flux_at_interface_due_to_deep_convection?
- pressure_thickness
- specific_heat_of_dry_air_at_constant_pressure?
- tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_frozen_precipitation_melt?
- tendency_of_dry_air_enthalpy_at_constant_pressure_due_to_frozen_precipitation_production_in_deep_convection?
- tendency_of_frozen_precipitation_wrt_moist_air_and_condensed_water_due_to_deep_convection?
- tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_deep_convection?
- tendency_of_precipitation_wrt_moist_air_and_condensed_water_due_to_deep_convection_excluding_subcloud_evaporation
- tendency_of_water_vapor_mixing_ratio_wrt_moist_air and_condensed_water?
- tunable_evaporation_efficiency_for_land_in_zhang_mcfarlane_deep_convection_scheme?
- tunable_evaporation_efficiency_in_zhang_mcfarlane_deep_convection_scheme?
- tendency_of_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water

--------------------------

/home/mwaxmonsky/source/atmospheric_physics-mwaxmonsky/tj2016/tj2016_precip.meta
atmospheric_physics.jt.062024/tj2016/tj2016_precip.meta

- gas_constant_of_water_vapor
- lwe_large_scale_precipitation_rate_at_surface
Expand All @@ -155,7 +171,7 @@ Non-dictionary standard names found in the following metadata files:

--------------------------

/home/mwaxmonsky/source/atmospheric_physics-mwaxmonsky/tj2016/tj2016_sfc_pbl_hs.meta
atmospheric_physics.jt.062024/tj2016/tj2016_sfc_pbl_hs.meta

- air_pressure_at_interface
- eddy_heat_diffusivity
Expand Down
Loading

0 comments on commit 7710ff3

Please sign in to comment.