From b4510ef93be07dd0d24b49b2a842799fbb588c87 Mon Sep 17 00:00:00 2001 From: Dustin Swales Date: Tue, 16 Apr 2019 12:26:03 -0600 Subject: [PATCH] Added SW clear-sky calculation. --- physics/GFS_DCNV_generic_post.xml | 557 ++++++++ physics/GFS_DCNV_generic_pre.xml | 172 +++ physics/GFS_MP_generic_post.xml | 832 +++++++++++ physics/GFS_MP_generic_pre.xml | 150 ++ physics/GFS_PBL_generic_post.xml | 766 ++++++++++ physics/GFS_PBL_generic_pre.xml | 326 +++++ physics/GFS_SCNV_generic_post.xml | 194 +++ physics/GFS_SCNV_generic_pre.xml | 117 ++ physics/GFS_phys_time_vary.xml | 151 ++ physics/GFS_rad_time_vary.xml | 62 + physics/GFS_rrtmg_post.xml | 260 ++++ physics/GFS_rrtmg_pre.xml | 656 +++++++++ physics/GFS_rrtmg_setup.xml | 504 +++++++ physics/GFS_rrtmgp_post.F90 | 210 +++ physics/GFS_rrtmgp_post.xml | 260 ++++ physics/GFS_rrtmgp_pre.F90 | 906 ++++++++++++ physics/GFS_rrtmgp_pre.xml | 656 +++++++++ physics/GFS_rrtmgp_setup.F90 | 869 ++++++++++++ physics/GFS_rrtmgp_setup.xml | 504 +++++++ physics/GFS_suite_interstitial_1.xml | 304 ++++ physics/GFS_suite_interstitial_2.xml | 546 ++++++++ physics/GFS_suite_interstitial_3.xml | 491 +++++++ physics/GFS_suite_interstitial_4.xml | 359 +++++ physics/GFS_suite_interstitial_phys_reset.xml | 51 + physics/GFS_suite_interstitial_rad_reset.xml | 40 + physics/GFS_suite_stateout_reset.xml | 150 ++ physics/GFS_suite_stateout_update.xml | 205 +++ physics/GFS_surface_generic_post.xml | 942 +++++++++++++ physics/GFS_surface_generic_pre.xml | 502 +++++++ physics/GFS_surface_loop_control_part1.xml | 73 + physics/GFS_surface_loop_control_part2.xml | 106 ++ physics/GFS_time_vary_pre.xml | 86 ++ physics/cnvc90.xml | 183 +++ physics/cs_conv.xml | 590 ++++++++ physics/cs_conv_aw_adj.xml | 249 ++++ physics/cs_conv_post.xml | 84 ++ physics/cs_conv_pre.xml | 216 +++ physics/cu_gf_driver.xml | 470 +++++++ physics/cu_gf_driver_post.xml | 106 ++ physics/cu_gf_driver_pre.xml | 172 +++ physics/dcyc2t3.xml | 546 ++++++++ physics/dcyc2t3_post.xml | 73 + physics/get_phi_fv3.xml | 106 ++ physics/get_prs_fv3.xml | 117 ++ physics/gfdl_cloud_microphys.xml | 504 +++++++ physics/gmtb_scm_sfc_flux_spec.xml | 381 +++++ physics/gwdc.xml | 359 +++++ physics/gwdc_post.xml | 227 +++ physics/gwdc_pre.xml | 194 +++ physics/gwdps.xml | 469 +++++++ physics/gwdps_post.xml | 172 +++ physics/gwdps_pre.xml | 150 ++ physics/h2ophys.xml | 161 +++ physics/hedmf.xml | 612 ++++++++ physics/lsm_noah.xml | 856 ++++++++++++ physics/lsm_ruc.xml | 1230 +++++++++++++++++ physics/m_micro.xml | 1152 +++++++++++++++ physics/m_micro_post.xml | 205 +++ physics/m_micro_pre.xml | 381 +++++ physics/machine.xml | 36 + physics/moninshoc.xml | 634 +++++++++ physics/mp_thompson_hrrr.xml | 625 +++++++++ physics/mp_thompson_hrrr_post.xml | 207 +++ physics/mp_thompson_hrrr_pre.xml | 337 +++++ physics/mynnedmf_wrapper.xml | 1052 ++++++++++++++ physics/mynnrad_post.xml | 106 ++ physics/mynnrad_pre.xml | 216 +++ physics/mynnsfc_wrapper.xml | 700 ++++++++++ physics/ozphys.xml | 238 ++++ physics/ozphys_2015.xml | 238 ++++ physics/rayleigh_damp.xml | 205 +++ physics/rrtmg_lw.xml | 524 +++++++ physics/rrtmg_lw_post.xml | 150 ++ physics/rrtmg_lw_pre.xml | 106 ++ physics/rrtmg_sw.xml | 634 +++++++++ physics/rrtmg_sw_post.xml | 216 +++ physics/rrtmg_sw_pre.xml | 183 +++ physics/rrtmgp_lw.xml | 547 ++++++++ physics/rte-rrtmgp | 2 +- physics/samfdeepcnv.xml | 700 ++++++++++ physics/samfshalcnv.xml | 513 +++++++ physics/samfshalcnv_post.xml | 205 +++ physics/satmedmfvdif.xml | 667 +++++++++ physics/sfc_diag.xml | 282 ++++ physics/sfc_diag_post.xml | 227 +++ physics/sfc_ex_coef.xml | 392 ++++++ physics/sfc_nst.xml | 656 +++++++++ physics/sfc_nst_post.xml | 216 +++ physics/sfc_nst_pre.xml | 106 ++ physics/sfc_ocean.xml | 260 ++++ physics/sfc_sice.xml | 469 +++++++ physics/sfc_sice_post.xml | 95 ++ physics/shoc.xml | 645 +++++++++ physics/zhaocarr_gscond.xml | 260 ++++ physics/zhaocarr_precpd.xml | 249 ++++ 95 files changed, 34869 insertions(+), 1 deletion(-) create mode 100644 physics/GFS_DCNV_generic_post.xml create mode 100644 physics/GFS_DCNV_generic_pre.xml create mode 100644 physics/GFS_MP_generic_post.xml create mode 100644 physics/GFS_MP_generic_pre.xml create mode 100644 physics/GFS_PBL_generic_post.xml create mode 100644 physics/GFS_PBL_generic_pre.xml create mode 100644 physics/GFS_SCNV_generic_post.xml create mode 100644 physics/GFS_SCNV_generic_pre.xml create mode 100644 physics/GFS_phys_time_vary.xml create mode 100644 physics/GFS_rad_time_vary.xml create mode 100644 physics/GFS_rrtmg_post.xml create mode 100644 physics/GFS_rrtmg_pre.xml create mode 100644 physics/GFS_rrtmg_setup.xml create mode 100644 physics/GFS_rrtmgp_post.F90 create mode 100644 physics/GFS_rrtmgp_post.xml create mode 100644 physics/GFS_rrtmgp_pre.F90 create mode 100644 physics/GFS_rrtmgp_pre.xml create mode 100644 physics/GFS_rrtmgp_setup.F90 create mode 100644 physics/GFS_rrtmgp_setup.xml create mode 100644 physics/GFS_suite_interstitial_1.xml create mode 100644 physics/GFS_suite_interstitial_2.xml create mode 100644 physics/GFS_suite_interstitial_3.xml create mode 100644 physics/GFS_suite_interstitial_4.xml create mode 100644 physics/GFS_suite_interstitial_phys_reset.xml create mode 100644 physics/GFS_suite_interstitial_rad_reset.xml create mode 100644 physics/GFS_suite_stateout_reset.xml create mode 100644 physics/GFS_suite_stateout_update.xml create mode 100644 physics/GFS_surface_generic_post.xml create mode 100644 physics/GFS_surface_generic_pre.xml create mode 100644 physics/GFS_surface_loop_control_part1.xml create mode 100644 physics/GFS_surface_loop_control_part2.xml create mode 100644 physics/GFS_time_vary_pre.xml create mode 100644 physics/cnvc90.xml create mode 100644 physics/cs_conv.xml create mode 100644 physics/cs_conv_aw_adj.xml create mode 100644 physics/cs_conv_post.xml create mode 100644 physics/cs_conv_pre.xml create mode 100644 physics/cu_gf_driver.xml create mode 100644 physics/cu_gf_driver_post.xml create mode 100644 physics/cu_gf_driver_pre.xml create mode 100644 physics/dcyc2t3.xml create mode 100644 physics/dcyc2t3_post.xml create mode 100644 physics/get_phi_fv3.xml create mode 100644 physics/get_prs_fv3.xml create mode 100644 physics/gfdl_cloud_microphys.xml create mode 100644 physics/gmtb_scm_sfc_flux_spec.xml create mode 100644 physics/gwdc.xml create mode 100644 physics/gwdc_post.xml create mode 100644 physics/gwdc_pre.xml create mode 100644 physics/gwdps.xml create mode 100644 physics/gwdps_post.xml create mode 100644 physics/gwdps_pre.xml create mode 100644 physics/h2ophys.xml create mode 100644 physics/hedmf.xml create mode 100644 physics/lsm_noah.xml create mode 100644 physics/lsm_ruc.xml create mode 100644 physics/m_micro.xml create mode 100644 physics/m_micro_post.xml create mode 100644 physics/m_micro_pre.xml create mode 100644 physics/machine.xml create mode 100644 physics/moninshoc.xml create mode 100644 physics/mp_thompson_hrrr.xml create mode 100644 physics/mp_thompson_hrrr_post.xml create mode 100644 physics/mp_thompson_hrrr_pre.xml create mode 100644 physics/mynnedmf_wrapper.xml create mode 100644 physics/mynnrad_post.xml create mode 100644 physics/mynnrad_pre.xml create mode 100644 physics/mynnsfc_wrapper.xml create mode 100644 physics/ozphys.xml create mode 100644 physics/ozphys_2015.xml create mode 100644 physics/rayleigh_damp.xml create mode 100644 physics/rrtmg_lw.xml create mode 100644 physics/rrtmg_lw_post.xml create mode 100644 physics/rrtmg_lw_pre.xml create mode 100644 physics/rrtmg_sw.xml create mode 100644 physics/rrtmg_sw_post.xml create mode 100644 physics/rrtmg_sw_pre.xml create mode 100644 physics/rrtmgp_lw.xml create mode 100644 physics/samfdeepcnv.xml create mode 100644 physics/samfshalcnv.xml create mode 100644 physics/samfshalcnv_post.xml create mode 100644 physics/satmedmfvdif.xml create mode 100644 physics/sfc_diag.xml create mode 100644 physics/sfc_diag_post.xml create mode 100644 physics/sfc_ex_coef.xml create mode 100644 physics/sfc_nst.xml create mode 100644 physics/sfc_nst_post.xml create mode 100644 physics/sfc_nst_pre.xml create mode 100644 physics/sfc_ocean.xml create mode 100644 physics/sfc_sice.xml create mode 100644 physics/sfc_sice_post.xml create mode 100644 physics/shoc.xml create mode 100644 physics/zhaocarr_gscond.xml create mode 100644 physics/zhaocarr_precpd.xml diff --git a/physics/GFS_DCNV_generic_post.xml b/physics/GFS_DCNV_generic_post.xml new file mode 100644 index 000000000..5c2965b27 --- /dev/null +++ b/physics/GFS_DCNV_generic_post.xml @@ -0,0 +1,557 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + flag_diagnostics + logical flag for storing diagnostics + flag + lssav + logical + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + flag_diagnostics_3D + flag for 3d diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + flag_gocart + flag for 3d diagnostic fields for gocart 1 + flag + lgocart + logical + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + flag_for_ras_deep_convection + flag for ras convection scheme + flag + ras + logical + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + flag_for_Chikira_Sugiyama_deep_convection + flag for Chikira-Sugiyama convection + flag + cscnv + logical + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + dynamics_to_physics_timestep_ratio + ratio of dynamics timestep to physics timestep + none + frain + real + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + lwe_thickness_of_deep_convective_precipitation_amount + deep convective rainfall amount on physics timestep + m + rain1 + real + (:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + time_step_for_dynamics + dynamics timestep + s + dtf + real + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cloud_work_function + cloud work function + m2 s-2 + cld1d + real + (:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + x_wind_save + x-wind before entering a physics scheme + m s-1 + save_u + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + y_wind_save + y-wind before entering a physics scheme + m s-1 + save_v + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + air_temperature_save + air temperature before entering a physics scheme + K + save_t + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + water_vapor_specific_humidity_save + water vapor specific humidity before entering a physics scheme + kg kg-1 + save_qv + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + x_wind_updated_by_physics + zonal wind updated by physics + m s-1 + gu0 + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + y_wind_updated_by_physics + meridional wind updated by physics + m s-1 + gv0 + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + gq0_water_vapor + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + instantaneous_atmosphere_updraft_convective_mass_flux + (updraft mass flux) * delt + kg m-2 + ud_mf + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + instantaneous_atmosphere_downdraft_convective_mass_flux + (downdraft mass flux) * delt + kg m-2 + dd_mf + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + instantaneous_atmosphere_detrainment_convective_mass_flux + (detrainment mass flux) * delt + kg m-2 + dt_mf + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + ice_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of ice water in the convectively transported tracer array + kg kg-1 + clw_ice + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cloud_condensed_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) in the convectively transported tracer array + kg kg-1 + clw_liquid + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + number_of_3d_arrays_associated_with_pdf-based_clouds + number of 3d arrays associated with pdf based clouds/mp + count + npdf3d + integer + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + array_dimension_of_3d_arrays_for_microphysics + number of 3D arrays needed for microphysics + count + num_p3d + integer + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + number_of_convective_3d_cloud_fields + number of convective 3d clouds fields + count + ncnvcld3d + integer + + in + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + lwe_thickness_of_convective_precipitation_amount_on_dynamics_timestep + convective rain at this time step + m + rainc + real + (:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_cloud_work_function + cumulative cloud work function (valid only with sas) + m2 s-1 + cldwrk + real + (:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_lwe_thickness_of_convective_precipitation_amount + cumulative convective precipitation + m + cnvprcp + real + (:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_lwe_thickness_of_convective_precipitation_amount_in_bucket + cumulative convective precipitation in bucket + m + cnvprcpb + real + (:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_change_in_temperature_due_to_deep_convection + cumulative change in temperature due to deep conv. + K + dt3dt + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_change_in_water_vapor_specific_humidity_due_to_deep_convection + cumulative change in water vapor specific humidity due to deep conv. + kg kg-1 + dq3dt + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_change_in_x_wind_due_to_deep_convection + cumulative change in x wind due to deep convection + m s-1 + du3dt + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_change_in_y_wind_due_to_deep_convection + cumulative change in y wind due to deep convection + m s-1 + dv3dt + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_atmosphere_updraft_convective_mass_flux + cumulative updraft mass flux + Pa + upd_mf + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_atmosphere_downdraft_convective_mass_flux + cumulative downdraft mass flux + Pa + dwn_mf + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + cumulative_atmosphere_detrainment_convective_mass_flux + cumulative detrainment mass flux + Pa + det_mf + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + instantaneous_water_vapor_specific_humidity_tendency_due_to_convection + instantaneous moisture tendency due to convection + kg kg-1 s-1 + dqdti + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + instantaneous_deep_convective_cloud_condensate_mixing_ratio_on_dynamics_time_step + instantaneous total convective condensate mixing ratio + kg kg-1 + cnvqci + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + instantaneous_atmosphere_updraft_convective_mass_flux_on_dynamics_timestep + (updraft mass flux) * delt + kg m-2 + upd_mfi + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + instantaneous_atmosphere_downdraft_convective_mass_flux_on_dynamics_timestep + (downdraft mass flux) * delt + kg m-2 + dwn_mfi + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + instantaneous_atmosphere_detrainment_convective_mass_flux_on_dynamics_timestep + (detrainment mass flux) * delt + kg m-2 + det_mfi + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + convective_cloud_water_mixing_ratio + moist convective cloud water mixing ratio + kg kg-1 + cnvw + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + convective_cloud_cover + convective cloud cover + frac + cnvc + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + convective_cloud_water_mixing_ratio_in_phy_f3d + convective cloud water mixing ratio in the phy_f3d array + kg kg-1 + cnvw_phy_f3d + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + convective_cloud_cover_in_phy_f3d + convective cloud cover in the phy_f3d array + frac + cnvc_phy_f3d + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_DCNV_generic_post SCHEME_GFS_DCNV_generic_post SUBROUTINE_GFS_DCNV_generic_post_run + + + + diff --git a/physics/GFS_DCNV_generic_pre.xml b/physics/GFS_DCNV_generic_pre.xml new file mode 100644 index 000000000..a8cbc0ee4 --- /dev/null +++ b/physics/GFS_DCNV_generic_pre.xml @@ -0,0 +1,172 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + flag_diagnostics_3D + flag for 3d diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + flag_convective_gravity_wave_drag + flag for conv gravity wave drag + flag + cnvgwd + logical + + in + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + flag_gocart + flag for 3d diagnostic fields for gocart 1 + flag + lgocart + logical + + in + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + x_wind_updated_by_physics + zonal wind updated by physics + m s-1 + gu0 + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + y_wind_updated_by_physics + meridional wind updated by physics + m s-1 + gv0 + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + gq0_water_vapor + real + (:,:) + in + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + x_wind_save + x-wind before entering a physics scheme + m s-1 + save_u + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + y_wind_save + y-wind before entering a physics scheme + m s-1 + save_v + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + air_temperature_save + air temperature before entering a physics scheme + K + save_t + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + water_vapor_specific_humidity_save + water vapor specific humidity before entering a physics scheme + kg kg-1 + save_qv + real + (:,:) + inout + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_DCNV_generic_pre SCHEME_GFS_DCNV_generic_pre SUBROUTINE_GFS_DCNV_generic_pre_run + + + + + diff --git a/physics/GFS_MP_generic_post.xml b/physics/GFS_MP_generic_post.xml new file mode 100644 index 000000000..3f57fb308 --- /dev/null +++ b/physics/GFS_MP_generic_post.xml @@ -0,0 +1,832 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + index_of_time_step + current time step index + index + kdt + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + array_dimension_of_random_number + second dimension of random number stream for RAS + count + nrcm + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + number_of_hydrometeors + choice of cloud scheme / number of hydrometeors + count + ncld + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + number_of_tracers_for_cloud_condensate + number of tracers for cloud condensate + count + nncl + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_gfdl_microphysics_scheme + choice of GFDL microphysics scheme + flag + imp_physics_gfdl + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_thompson_microphysics_scheme + choice of Thompson microphysics scheme + flag + imp_physics_thompson + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_precipitation_type_algorithm + flag controls precip type algorithm + flag + cal_pre + logical + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_diagnostics + logical flag for storing diagnostics + flag + lssav + logical + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_diagnostics_3D + flag for 3d diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_flux_coupling + flag controlling cplflx collection (default off) + flag + cplflx + logical + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_chemistry_coupling + flag controlling cplchm collection (default off) + flag + cplchm + logical + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + time_step_for_dynamics + dynamics timestep + s + dtf + real + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + dynamics_to_physics_timestep_ratio + ratio of dynamics timestep to physics timestep + none + frain + real + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_convective_precipitation_amount_on_dynamics_timestep + convective rain at this time step + m + rainc + real + (:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_explicit_precipitation_amount + explicit rainfall amount on physics timestep + m + rain1 + real + (:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + random_number_array + random number array (0-1) + none + rann + real + (:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + latitude + latitude + radians + xlat + real + (:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + longitude + longitude + radians + xlon + real + (:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + tracer_concentration_updated_by_physics + tracer concentration updated by physics + kg kg-1 + gq0 + real + (:,:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + air_pressure + layer mean pressure + Pa + prsl + real + (:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + air_pressure_at_interface + pressure at layer interface + Pa + prsi + real + (:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + surface_skin_temperature + surface skin temperature + K + tsfc + real + (:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_ice_amount_on_dynamics_timestep + ice fall at this time step + m + ice + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_snow_amount_on_dynamics_timestep + snow fall at this time step + m + snow + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_graupel_amount_on_dynamics_timestep + graupel fall at this time step + m + graupel + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + air_temperature_save + air temperature before entering a physics scheme + K + save_t + real + (:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + water_vapor_specific_humidity_save + water vapor specific humidity before entering a physics scheme + kg kg-1 + save_qv + real + (:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_ice_amount + ice fall on physics timestep + m + ice0 + real + (:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_snow_amount + snow fall on physics timestep + m + snow0 + real + (:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_graupel_amount + graupel fall on physics timestep + m + graupel0 + real + (:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + air_pressure_difference_between_midlayers + air pressure difference between midlayers + Pa + del + real + (:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_precipitation_amount_on_dynamics_timestep + total rain at this time step + m + rain + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + dominant_rain_type + dominant rain type + none + domr_diag + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + dominant_freezing_rain_type + dominant freezing rain type + none + domzr_diag + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + dominant_sleet_type + dominant sleet type + none + domip_diag + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + dominant_snow_type + dominant snow type + none + doms_diag + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + nonnegative_lwe_thickness_of_precipitation_amount_on_dynamics_timestep + total precipitation amount in each time step + m + tprcp + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_precipitation_type + snow/rain flag for precipitation + flag + srflag + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + accumulated_lwe_thickness_of_precipitation_amount + accumulated total precipitation + m + totprcp + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + accumulated_lwe_thickness_of_ice_amount + accumulated ice precipitation + kg m-2 + totice + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + accumulated_lwe_thickness_of_snow_amount + accumulated snow precipitation + kg m-2 + totsnw + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + accumulated_lwe_thickness_of_graupel_amount + accumulated graupel precipitation + kg m-2 + totgrp + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + accumulated_lwe_thickness_of_precipitation_amount_in_bucket + accumulated total precipitation in bucket + m + totprcpb + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + accumulated_lwe_thickness_of_ice_amount_in_bucket + accumulated ice precipitation in bucket + kg m-2 + toticeb + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + accumulated_lwe_thickness_of_snow_amount_in_bucket + accumulated snow precipitation in bucket + kg m-2 + totsnwb + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + accumulated_lwe_thickness_of_graupel_amount_in_bucket + accumulated graupel precipitation in bucket + kg m-2 + totgrpb + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + cumulative_change_in_temperature_due_to_microphysics + cumulative change in temperature due to microphysics + K + dt3dt + real + (:,:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + cumulative_change_in_water_vapor_specific_humidity_due_to_microphysics + cumulative change in water vapor specific humidity due to microphysics + kg kg-1 + dq3dt + real + (:,:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_precipitation_amount_for_coupling + total rain precipitation + m + rain_cpl + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_convective_precipitation_amount_for_coupling + total convective precipitation + m + rainc_cpl + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_snow_amount_for_coupling + total snow precipitation + m + snow_cpl + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + column_precipitable_water + precipitable water + kg m-2 + pwat + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_stochastic_surface_physics_perturbations + flag for stochastic surface physics perturbations + flag + do_sppt + logical + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + tendency_of_air_temperature_due_to_radiative_heating_on_physics_time_step + temp. change due to radiative heating per time step + K + dtdtr + real + (:,:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + tendency_of_air_temperature_due_to_radiative_heating_assuming_clear_sky + clear sky radiative (shortwave + longwave) heating rate at current time + K s-1 + dtdtc + real + (:,:) + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + tendency_of_lwe_thickness_of_precipitation_amount_for_coupling + change in rain_cpl (coupling_type) + m + drain_cpl + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + tendency_of_lwe_thickness_of_snow_amount_for_coupling + change in show_cpl (coupling_type) + m + dsnow_cpl + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_land_surface_scheme + flag for land surface model + flag + lsm + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + flag_for_ruc_land_surface_scheme + flag for RUC land surface model + flag + lsm_ruc + integer + + in + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_explicit_rainfall_amount_from_previous_timestep + explicit rainfall from previous timestep + m + raincprv + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_convective_precipitation_amount_from_previous_timestep + convective_precipitation_amount from previous timestep + m + rainncprv + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_ice_amount_from_previous_timestep + ice amount from previous timestep + m + iceprv + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_snow_amount_from_previous_timestep + snow amount from previous timestep + m + snowprv + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + lwe_thickness_of_graupel_amount_from_previous_timestep + graupel amount from previous timestep + m + graupelprv + real + (:) + inout + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_MP_generic_post SCHEME_GFS_MP_generic_post SUBROUTINE_GFS_MP_generic_post_run + + + + diff --git a/physics/GFS_MP_generic_pre.xml b/physics/GFS_MP_generic_pre.xml new file mode 100644 index 000000000..4274552e6 --- /dev/null +++ b/physics/GFS_MP_generic_pre.xml @@ -0,0 +1,150 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + flag_diagnostics_3D + logical flag for 3D diagnostics + flag + ldiag3d + logical + + in + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + flag_for_Arakawa_Wu_adjustment + flag for Arakawa Wu scale-aware adjustment + flag + do_aw + logical + + in + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + number_of_tracers_for_cloud_condensate + number of tracers for cloud condensate + count + nncl + integer + + in + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + in + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + tracer_concentration_updated_by_physics + tracer concentration updated by physics + kg kg-1 + gq0 + real + (:,:,:) + in + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + air_temperature_save + air temperature before entering a physics scheme + K + save_t + real + (:,:) + inout + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + tracer_concentration_save + tracer concentration before entering a physics scheme + kg kg-1 + save_q + real + (:,:,:) + inout + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_MP_generic_pre SCHEME_GFS_MP_generic_pre SUBROUTINE_GFS_MP_generic_pre_run + + + diff --git a/physics/GFS_PBL_generic_post.xml b/physics/GFS_PBL_generic_post.xml new file mode 100644 index 000000000..41dbad048 --- /dev/null +++ b/physics/GFS_PBL_generic_post.xml @@ -0,0 +1,766 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + number_of_vertical_diffusion_tracers + number of tracers to diffuse vertically + count + nvdiff + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_water_vapor + tracer index for water vapor (specific humidity) + index + ntqv + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_ice_cloud_condensate + tracer index for ice water + index + ntiw + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_rain_water + tracer index for rain water + index + ntrw + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_snow_water + tracer index for snow water + index + ntsw + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_liquid_cloud_number_concentration + tracer index for liquid number concentration + index + ntlnc + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_ice_cloud_number_concentration + tracer index for ice number concentration + index + ntinc + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_water_friendly_aerosols + tracer index for water friendly aerosol + index + ntwa + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_ice_friendly_aerosols + tracer index for ice friendly aerosol + index + ntia + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_graupel + tracer index for graupel + index + ntgl + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_ozone + tracer index for ozone mixing ratio + index + ntoz + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_turbulent_kinetic_energy + tracer index for turbulent kinetic energy + index + ntke + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + index_for_turbulent_kinetic_energy_vertical_diffusion_tracer + index for turbulent kinetic energy in the vertically diffused tracer array + index + ntkev + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_gfdl_microphysics_scheme + choice of GFDL microphysics scheme + flag + imp_physics_gfdl + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_thompson_microphysics_scheme + choice of Thompson microphysics scheme + flag + imp_physics_thompson + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_wsm6_microphysics_scheme + choice of WSM6 microphysics scheme + flag + imp_physics_wsm6 + integer + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_aerosol_physics + flag for aerosol physics + flag + ltaerosol + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_flux_coupling + flag controlling cplflx collection (default off) + flag + cplflx + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_diagnostics + logical flag for storing diagnostics + flag + lssav + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_diagnostics_3D + flag for 3d diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_idealized_physics + flag for idealized physics + flag + lsidea + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_hedmf + flag for hybrid edmf pbl scheme (moninedmf) + flag + hybedmf + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_shoc + flag for SHOC + flag + do_shoc + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_scale_aware_TKE_moist_EDMF_PBL + flag for scale-aware TKE moist EDMF PBL scheme + flag + satmedmf + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_scale_aware_Shinhong_PBL + flag for scale-aware Shinhong PBL scheme + flag + shinhong + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + flag_for_ysu + flag for YSU PBL scheme + flag + do_ysu + logical + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + tendency_of_vertically_diffused_tracer_concentration + updated tendency of the tracers due to vertical diffusion in PBL scheme + kg kg-1 s-1 + dvdftra + real + (:,:,:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_x_momentum_flux + surface momentum flux in the x-direction valid for current call + Pa + dusfc1 + real + (:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_y_momentum_flux + surface momentum flux in the y-direction valid for current call + Pa + dvsfc1 + real + (:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_upward_sensible_heat_flux + surface upward sensible heat flux valid for current call + W m-2 + dtsfc1 + real + (:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_upward_latent_heat_flux + surface upward latent heat flux valid for current call + W m-2 + dqsfc1 + real + (:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + time_step_for_dynamics + dynamics timestep + s + dtf + real + + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + tendency_of_x_wind_due_to_model_physics + updated tendency of the x wind + m s-2 + dudt + real + (:,:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + tendency_of_y_wind_due_to_model_physics + updated tendency of the y wind + m s-2 + dvdt + real + (:,:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + tendency_of_air_temperature_due_to_model_physics + updated tendency of the temperature + K s-1 + dtdt + real + (:,:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + tendency_of_air_temperature_due_to_shortwave_heating_on_radiation_timestep + total sky sw heating rate + K s-1 + htrsw + real + (:,:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_timestep + total sky lw heating rate + K s-1 + htrlw + real + (:,:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + zenith_angle_temporal_adjustment_factor_for_shortwave_fluxes + zenith angle temporal adjustment factor for shortwave + none + xmu + real + (:) + in + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + tendency_of_tracers_due_to_model_physics + updated tendency of the tracers due to model physics + kg kg-1 s-1 + dqdt + real + (:,:,:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_surface_x_momentum_flux_for_coupling_multiplied_by_timestep + cumulative sfc u momentum flux multiplied by timestep + Pa s + dusfc_cpl + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_surface_y_momentum_flux_for_coupling_multiplied_by_timestep + cumulative sfc v momentum flux multiplied by timestep + Pa s + dvsfc_cpl + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_surface_upward_sensible_heat_flux_for_coupling_multiplied_by_timestep + cumulative sfc sensible heat flux multiplied by timestep + W m-2 s + dtsfc_cpl + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_surface_upward_latent_heat_flux_for_coupling_multiplied_by_timestep + cumulative sfc latent heat flux multiplied by timestep + W m-2 s + dqsfc_cpl + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_x_momentum_flux_for_coupling + instantaneous sfc u momentum flux + Pa + dusfci_cpl + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_y_momentum_flux_for_coupling + instantaneous sfc v momentum flux + Pa + dvsfci_cpl + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_upward_sensible_heat_flux_for_coupling + instantaneous sfc sensible heat flux + W m-2 + dtsfci_cpl + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_upward_latent_heat_flux_for_coupling + instantaneous sfc latent heat flux + W m-2 + dqsfci_cpl + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_surface_x_momentum_flux_for_diag_multiplied_by_timestep + cumulative sfc x momentum flux multiplied by timestep + Pa s + dusfc_diag + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_surface_y_momentum_flux_for_diag_multiplied_by_timestep + cumulative sfc y momentum flux multiplied by timestep + Pa s + dvsfc_diag + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_surface_upward_sensible_heat_flux_for_diag_multiplied_by_timestep + cumulative sfc sensible heat flux multiplied by timestep + W m-2 s + dtsfc_diag + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_surface_upward_latent_heat_flux_for_diag_multiplied_by_timestep + cumulative sfc latent heat flux multiplied by timestep + W m-2 s + dqsfc_diag + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_x_momentum_flux_for_diag + instantaneous sfc x momentum flux multiplied by timestep + Pa + dusfci_diag + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_y_momentum_flux_for_diag + instantaneous sfc y momentum flux multiplied by timestep + Pa + dvsfci_diag + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_upward_sensible_heat_flux_for_diag + instantaneous sfc sensible heat flux multiplied by timestep + W m-2 + dtsfci_diag + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + instantaneous_surface_upward_latent_heat_flux_for_diag + instantaneous sfc latent heat flux multiplied by timestep + W m-2 + dqsfci_diag + real + (:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_change_in_temperature_due_to_PBL + cumulative change in temperature due to PBL + K + dt3dt + real + (:,:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_change_in_x_wind_due_to_PBL + cumulative change in x wind due to PBL + m s-1 + du3dt_PBL + real + (:,:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_change_in_x_wind_due_to_orographic_gravity_wave_drag + cumulative change in x wind due to orographic gravity wave drag + m s-1 + du3dt_OGWD + real + (:,:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_change_in_y_wind_due_to_PBL + cumulative change in y wind due to PBL + m s-1 + dv3dt_PBL + real + (:,:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_change_in_y_wind_due_to_orographic_gravity_wave_drag + cumulative change in y wind due to orographic gravity wave drag + m s-1 + dv3dt_OGWD + real + (:,:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_change_in_water_vapor_specific_humidity_due_to_PBL + cumulative change in water vapor specific humidity due to PBL + kg kg-1 + dq3dt + real + (:,:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + cumulative_change_in_ozone_mixing_ratio_due_to_PBL + cumulative change in ozone mixing ratio due to PBL + kg kg-1 + dq3dt_ozone + real + (:,:) + inout + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_PBL_generic_post SCHEME_GFS_PBL_generic_post SUBROUTINE_GFS_PBL_generic_post_run + + + diff --git a/physics/GFS_PBL_generic_pre.xml b/physics/GFS_PBL_generic_pre.xml new file mode 100644 index 000000000..e4213e6ae --- /dev/null +++ b/physics/GFS_PBL_generic_pre.xml @@ -0,0 +1,326 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + number_of_vertical_diffusion_tracers + number of tracers to diffuse vertically + count + nvdiff + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_water_vapor + tracer index for water vapor (specific humidity) + index + ntqv + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_ice_cloud_condensate + tracer index for ice water + index + ntiw + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_rain_water + tracer index for rain water + index + ntrw + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_snow_water + tracer index for snow water + index + ntsw + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_liquid_cloud_number_concentration + tracer index for liquid number concentration + index + ntlnc + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_ice_cloud_number_concentration + tracer index for ice number concentration + index + ntinc + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_water_friendly_aerosols + tracer index for water friendly aerosol + index + ntwa + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_ice_friendly_aerosols + tracer index for ice friendly aerosol + index + ntia + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_graupel + tracer index for graupel + index + ntgl + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_ozone + tracer index for ozone mixing ratio + index + ntoz + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_turbulent_kinetic_energy + tracer index for turbulent kinetic energy + index + ntke + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + index_for_turbulent_kinetic_energy_vertical_diffusion_tracer + index for turbulent kinetic energy in the vertically diffused tracer array + index + ntkev + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + flag_for_gfdl_microphysics_scheme + choice of GFDL microphysics scheme + flag + imp_physics_gfdl + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + flag_for_thompson_microphysics_scheme + choice of Thompson microphysics scheme + flag + imp_physics_thompson + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + flag_for_wsm6_microphysics_scheme + choice of WSM6 microphysics scheme + flag + imp_physics_wsm6 + integer + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + flag_for_aerosol_physics + flag for aerosol physics + flag + ltaerosol + logical + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + flag_for_hedmf + flag for hybrid edmf pbl scheme (moninedmf) + flag + hybedmf + logical + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + flag_for_shoc + flag for SHOC + flag + do_shoc + logical + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + flag_for_scale_aware_TKE_moist_EDMF_PBL + flag for scale-aware TKE moist EDMF PBL scheme + flag + satmedmf + logical + + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + tracer_concentration + model layer mean tracer concentration + kg kg-1 + qgrs + real + (:,:,:) + in + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + vertically_diffused_tracer_concentration + tracer concentration diffused by PBL scheme + kg kg-1 + vdftra + real + (:,:,:) + inout + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_PBL_generic_pre SCHEME_GFS_PBL_generic_pre SUBROUTINE_GFS_PBL_generic_pre_run + + + + + diff --git a/physics/GFS_SCNV_generic_post.xml b/physics/GFS_SCNV_generic_post.xml new file mode 100644 index 000000000..230edf8c3 --- /dev/null +++ b/physics/GFS_SCNV_generic_post.xml @@ -0,0 +1,194 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + number_of_tracers_for_convective_transport + number of tracers for convective transport + count + nn + integer + + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + flag_diagnostics + logical flag for storing diagnostics + flag + lssav + logical + + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + flag_diagnostics_3D + flag for 3d diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + flag_gocart + flag for 3d diagnostic fields for gocart 1 + flag + lgocart + logical + + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + dynamics_to_physics_timestep_ratio + ratio of dynamics timestep to physics timestep + none + frain + real + + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + gq0_water_vapor + real + (:,:) + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + air_temperature_save + air temperature before entering a physics scheme + K + save_t + real + (:,:) + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + water_vapor_specific_humidity_save + water vapor specific humidity before entering a physics scheme + kg kg-1 + save_qv + real + (:,:) + in + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + instantaneous_water_vapor_specific_humidity_tendency_due_to_convection + instantaneous moisture tendency due to convection + kg kg-1 s-1 + dqdti + real + (:,:) + inout + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + cumulative_change_in_temperature_due_to_shal_convection + cumulative change in temperature due to shal conv. + K + dt3dt + real + (:,:) + inout + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + cumulative_change_in_water_vapor_specific_humidity_due_to_shal_convection + cumulative change in water vapor specific humidity due to shal conv. + kg kg-1 + dq3dt + real + (:,:) + inout + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + convective_transportable_tracers + array to contain cloud water and other convective trans. tracers + kg kg-1 + clw + real + (:,:,:) + inout + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_SCNV_generic_post SCHEME_GFS_SCNV_generic_post SUBROUTINE_GFS_SCNV_generic_post_run + + + + + diff --git a/physics/GFS_SCNV_generic_pre.xml b/physics/GFS_SCNV_generic_pre.xml new file mode 100644 index 000000000..1a69aa5af --- /dev/null +++ b/physics/GFS_SCNV_generic_pre.xml @@ -0,0 +1,117 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + flag_diagnostics_3D + flag for 3d diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + flag_gocart + flag for 3d diagnostic fields for gocart 1 + flag + lgocart + logical + + in + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + in + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + gq0_water_vapor + real + (:,:) + in + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + air_temperature_save + air temperature before entering a physics scheme + K + save_t + real + (:,:) + inout + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + water_vapor_specific_humidity_save + water vapor specific humidity before entering a physics scheme + kg kg-1 + save_qv + real + (:,:) + inout + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_SCNV_generic_pre SCHEME_GFS_SCNV_generic_pre SUBROUTINE_GFS_SCNV_generic_pre_run + + + diff --git a/physics/GFS_phys_time_vary.xml b/physics/GFS_phys_time_vary.xml new file mode 100644 index 000000000..8f5a765ea --- /dev/null +++ b/physics/GFS_phys_time_vary.xml @@ -0,0 +1,151 @@ + + + + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + inout + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_init + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_init + + + GFS_tbd_type_instance + Fortran DDT containing FV3-GFS miscellaneous data + DDT + Tbd + GFS_tbd_type + + in + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_init + + + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + in + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_run + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + inout + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_run + + + GFS_tbd_type_instance + Fortran DDT containing FV3-GFS miscellaneous data + DDT + Tbd + GFS_tbd_type + + inout + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_run + + + GFS_sfcprop_type_instance + Fortran DDT containing FV3-GFS surface fields + DDT + Sfcprop + GFS_sfcprop_type + + inout + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_run + + + GFS_cldprop_type_instance + Fortran DDT containing FV3-GFS cloud fields + DDT + Cldprop + GFS_cldprop_type + + inout + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_run + + + GFS_diag_type_instance + Fortran DDT containing FV3-GFS fields targeted for diagnostic output + DDT + Diag + GFS_diag_type + + inout + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_phys_time_vary SCHEME_GFS_phys_time_vary SUBROUTINE_GFS_phys_time_vary_run + + + diff --git a/physics/GFS_rad_time_vary.xml b/physics/GFS_rad_time_vary.xml new file mode 100644 index 000000000..e351dd54c --- /dev/null +++ b/physics/GFS_rad_time_vary.xml @@ -0,0 +1,62 @@ + + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + inout + F + MODULE_GFS_rad_time_vary SCHEME_GFS_rad_time_vary SUBROUTINE_GFS_rad_time_vary_run + + + GFS_statein_type_instance + Fortran DDT containing FV3-GFS prognostic state data in from dycore + DDT + Statein + GFS_statein_type + + in + F + MODULE_GFS_rad_time_vary SCHEME_GFS_rad_time_vary SUBROUTINE_GFS_rad_time_vary_run + + + GFS_tbd_type_instance + Fortran DDT containing FV3-GFS data not yet assigned to a defined container + DDT + Tbd + GFS_tbd_type + + inout + F + MODULE_GFS_rad_time_vary SCHEME_GFS_rad_time_vary SUBROUTINE_GFS_rad_time_vary_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rad_time_vary SCHEME_GFS_rad_time_vary SUBROUTINE_GFS_rad_time_vary_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rad_time_vary SCHEME_GFS_rad_time_vary SUBROUTINE_GFS_rad_time_vary_run + + + + diff --git a/physics/GFS_rrtmg_post.xml b/physics/GFS_rrtmg_post.xml new file mode 100644 index 000000000..9529d2127 --- /dev/null +++ b/physics/GFS_rrtmg_post.xml @@ -0,0 +1,260 @@ + + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + GFS_diag_type_instance + Fortran DDT containing FV3-GFS diagnotics data + DDT + Diag + GFS_diag_type + + inout + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + GFS_radtend_type_instance + Fortran DDT containing FV3-GFS radiation tendencies + DDT + Radtend + GFS_radtend_type + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + GFS_statein_type_instance + Fortran DDT containing FV3-GFS prognostic state data in from dycore + DDT + Statein + GFS_statein_type + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + GFS_coupling_type_instance + Fortran DDT containing FV3-GFS fields to/from coupling with other components + DDT + Coupling + GFS_coupling_type + + inout + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + components_of_surface_downward_shortwave_fluxes + derived type for special components of surface downward shortwave fluxes + W m-2 + scmpsw + cmpfsw_type + (:) + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + vertical_layer_dimension_for_radiation + number of vertical layers for radiation calculation + count + lm + integer + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + extra_top_layer + extra top layers + none + ltp + integer + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + vertical_index_difference_between_layer_and_upper_bound + vertical index difference between layer and upper bound + index + kt + integer + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + vertical_index_difference_between_layer_and_lower_bound + vertical index difference between layer and lower bound + index + kb + integer + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + vertical_index_difference_between_inout_and_local + vertical index difference between in/out and local + index + kd + integer + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + time_step_for_radiation + radiation time step + s + raddt + real + + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + atmosphere_optical_thickness_due_to_ambient_aerosol_particles + vertical integrated optical depth for various aerosol species + none + aerodp + real + (:,:) + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + cloud_area_fraction_for_radiation + fraction of clouds for low, middle, high, total and BL + frac + cldsa + real + (:,:) + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + model_layer_number_at_cloud_top + vertical indices for low, middle and high cloud tops + index + mtopa + integer + (:,:) + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + model_layer_number_at_cloud_base + vertical indices for low, middle and high cloud bases + index + mbota + integer + (:,:) + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + total_cloud_fraction + layer total cloud fraction + frac + clouds1 + real + (:,:) + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + cloud_optical_depth_layers_at_10mu_band + approx 10mu band layer cloud optical depth + none + cldtaulw + real + (:,:) + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + cloud_optical_depth_layers_at_0.55mu_band + approx .55mu band layer cloud optical depth + none + cldtausw + real + (:,:) + in + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmg_post SCHEME_GFS_rrtmg_post SUBROUTINE_GFS_rrtmg_post_run + + + + diff --git a/physics/GFS_rrtmg_pre.xml b/physics/GFS_rrtmg_pre.xml new file mode 100644 index 000000000..63f7d8d58 --- /dev/null +++ b/physics/GFS_rrtmg_pre.xml @@ -0,0 +1,656 @@ + + + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + GFS_sfcprop_type_instance + Fortran DDT containing FV3-GFS surface fields + DDT + Sfcprop + GFS_sfcprop_type + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + GFS_statein_type_instance + Fortran DDT containing FV3-GFS prognostic state data in from dycore + DDT + Statein + GFS_statein_type + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + GFS_tbd_type_instance + Fortran DDT containing FV3-GFS data not yet assigned to a defined container + DDT + Tbd + GFS_tbd_type + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + GFS_cldprop_type_instance + Fortran DDT containing FV3-GFS cloud fields needed by radiation from physics + DDT + Cldprop + GFS_cldprop_type + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + GFS_coupling_type_instance + Fortran DDT containing FV3-GFS fields needed for coupling + DDT + Coupling + GFS_coupling_type + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + GFS_radtend_type_instance + Fortran DDT containing FV3-GFS radiation tendencies + DDT + Radtend + GFS_radtend_type + + inout + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + vertical_layer_dimension_for_radiation + number of vertical layers for radiation calculation + count + lm + integer + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + adjusted_vertical_layer_dimension_for_radiation + number of vertical layers for radiation + count + lmk + integer + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + adjusted_vertical_level_dimension_for_radiation + number of vertical levels for radiation + count + lmp + integer + + in + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + vertical_index_difference_between_inout_and_local + vertical index difference between in/out and local + index + kd + integer + + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + vertical_index_difference_between_layer_and_upper_bound + vertical index difference between layer and upper bound + index + kt + integer + + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + vertical_index_difference_between_layer_and_lower_bound + vertical index difference between layer and lower bound + index + kb + integer + + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + time_step_for_radiation + radiation time step + s + raddt + real + + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + layer_pressure_thickness_for_radiation + layer pressure thickness on radiation levels + hPa + delp + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + layer_thickness_for_radiation + layer thickness on radiation levels + km + dz + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + air_pressure_at_interface_for_radiation_in_hPa + air pressure at vertical interface for radiation calculation + hPa + plvl + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + air_pressure_at_layer_for_radiation_in_hPa + air pressure at vertical layer for radiation calculation + hPa + plyr + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + air_temperature_at_interface_for_radiation + air temperature at vertical interface for radiation calculation + K + tlvl + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + air_temperature_at_layer_for_radiation + air temperature at vertical layer for radiation calculation + K + tlyr + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + surface_ground_temperature_for_radiation + surface ground temperature for radiation + K + tsfg + real + (:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + surface_air_temperature_for_radiation + lowest model layer air temperature for radiation + K + tsfa + real + (:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + water_vapor_specific_humidity_at_layer_for_radiation + water vapor specific humidity at vertical layer for radiation calculation + kg kg-1 + qlyr + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + ozone_concentration_at_layer_for_radiation + ozone concentration + kg kg-1 + olyr + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_co2 + CO2 volume mixing ratio + kg kg-1 + gasvmr_co2 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_n2o + N2O volume mixing ratio + kg kg-1 + gasvmr_n2o + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_ch4 + CH4 volume mixing ratio + kg kg-1 + gasvmr_ch4 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_o2 + O2 volume mixing ratio + kg kg-1 + gasvmr_o2 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_co + CO volume mixing ratio + kg kg-1 + gasvmr_co + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_cfc11 + CFC11 volume mixing ratio + kg kg-1 + gasvmr_cfc11 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_cfc12 + CFC12 volume mixing ratio + kg kg-1 + gasvmr_cfc12 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_cfc22 + CFC22 volume mixing ratio + kg kg-1 + gasvmr_cfc22 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_ccl4 + CCL4 volume mixing ratio + kg kg-1 + gasvmr_ccl4 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + volume_mixing_ratio_cfc113 + CFC113 volume mixing ratio + kg kg-1 + gasvmr_cfc113 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + aerosol_optical_depth_for_shortwave_bands_01-16 + aerosol optical depth for shortwave bands 01-16 + none + faersw1 + real + (:,:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + aerosol_single_scattering_albedo_for_shortwave_bands_01-16 + aerosol single scattering albedo for shortwave bands 01-16 + frac + faersw2 + real + (:,:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + aerosol_asymmetry_parameter_for_shortwave_bands_01-16 + aerosol asymmetry parameter for shortwave bands 01-16 + none + faersw3 + real + (:,:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + aerosol_optical_depth_for_longwave_bands_01-16 + aerosol optical depth for longwave bands 01-16 + none + faerlw1 + real + (:,:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + aerosol_single_scattering_albedo_for_longwave_bands_01-16 + aerosol single scattering albedo for longwave bands 01-16 + frac + faerlw2 + real + (:,:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + aerosol_asymmetry_parameter_for_longwave_bands_01-16 + aerosol asymmetry parameter for longwave bands 01-16 + none + faerlw3 + real + (:,:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + atmosphere_optical_thickness_due_to_ambient_aerosol_particles + vertical integrated optical depth for various aerosol species + none + aerodp + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + total_cloud_fraction + layer total cloud fraction + frac + clouds1 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + cloud_liquid_water_path + layer cloud liquid water path + g m-2 + clouds2 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + mean_effective_radius_for_liquid_cloud + mean effective radius for liquid cloud + micron + clouds3 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + cloud_ice_water_path + layer cloud ice water path + g m-2 + clouds4 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + mean_effective_radius_for_ice_cloud + mean effective radius for ice cloud + micron + clouds5 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + cloud_rain_water_path + cloud rain water path + g m-2 + clouds6 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + mean_effective_radius_for_rain_drop + mean effective radius for rain drop + micron + clouds7 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + cloud_snow_water_path + cloud snow water path + g m-2 + clouds8 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + mean_effective_radius_for_snow_flake + mean effective radius for snow flake + micron + clouds9 + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + cloud_area_fraction_for_radiation + fraction of clouds for low, middle,high, total and BL + frac + cldsa + real + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + model_layer_number_at_cloud_top + vertical indices for low, middle and high cloud tops + index + mtopa + integer + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + model_layer_number_at_cloud_base + vertical indices for low, middle and high cloud bases + index + mbota + integer + (:,:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + cloud_decorrelation_length + cloud decorrelation length + km + de_lgth + real + (:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + surface_albedo_perturbation + surface albedo perturbation + frac + alb1d + real + (:) + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmg_pre SCHEME_GFS_rrtmg_pre SUBROUTINE_GFS_rrtmg_pre_run + + + diff --git a/physics/GFS_rrtmg_setup.xml b/physics/GFS_rrtmg_setup.xml new file mode 100644 index 000000000..9db0b1aba --- /dev/null +++ b/physics/GFS_rrtmg_setup.xml @@ -0,0 +1,504 @@ + + + + + date_and_time_at_model_initialization + initialization date and time + none + idate + integer + (:) + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + forecast_date_and_time + current forecast date and time + none + jdate + integer + (:) + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + frequency_for_shortwave_radiation + frequency for shortwave radiation + s + deltsw + real + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + time_step_for_dynamics + dynamics timestep + s + deltim + real + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + flag_to_calc_sw + logical flags for sw radiation calls + flag + lsswr + logical + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + mpi_rank + current MPI-rank + index + me + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + equation_of_time + equation of time (radian) + radians + slag + real + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + sine_of_solar_declination_angle + sin of the solar declination angle + none + sdec + real + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + cosine_of_solar_declination_angle + cos of the solar declination angle + none + cdec + real + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + solar_constant + solar constant (sun-earth distant adjusted) + W m-2 + solcon + real + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_run + + + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_finalize + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_finalize + + + + + vertical_sigma_coordinate_for_radiation_initialization + vertical sigma coordinate for radiation initialization + none + si + real + (:) + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + number_of_vertical_layers_for_radiation_calculations + number of vertical levels for radiation calculations + count + levr + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_initial_time-date_control + flag for initial conditions and forcing + flag + ictm + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_solar_constant + use prescribed solar constant + flag + isol + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_using_prescribed_global_mean_co2_value + prescribed global mean value (old opernl) + flag + ico2 + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_default_aerosol_effect_in_shortwave_radiation + default aerosol effect in sw only + flag + iaer + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_using_climatology_albedo + flag for using climatology alb, based on sfc type + flag + ialb + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_surface_emissivity_control + surface emissivity control flag, use fixed value of 1 + flag + iems + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + array_dimension_of_2d_arrays_for_microphysics + number of 2D arrays needed for microphysics + count + num_p2d + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + array_dimension_of_3d_arrays_for_microphysics + number of 3D arrays needed for microphysics + count + num_p3d + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + number_of_3d_arrays_associated_with_pdf-based_clouds + number of 3d arrays associated with pdf based clouds/mp + count + npdf3d + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + index_for_ozone + tracer index for ozone mixing ratio + index + ntoz + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_max-random_overlap_clouds_for_shortwave_radiation + sw: max-random overlap clouds + flag + iovr_sw + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_max-random_overlap_clouds_for_longwave_radiation + lw: max-random overlap clouds + flag + iovr_lw + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_sw_clouds_without_sub-grid_approximation + flag for sw clouds without sub-grid approximation + flag + isubc_sw + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_lw_clouds_without_sub-grid_approximation + flag for lw clouds without sub-grid approximation + flag + isubc_lw + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_optical_property_for_liquid_clouds_for_shortwave_radiation + sw optical property for liquid clouds + flag + icliq_sw + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_CRICK-proof_cloud_water + flag for CRICK-Proof cloud water + flag + crick_proof + logical + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_cloud_condensate_normalized_by_cloud_cover + flag for cloud condensate normalized by cloud cover + flag + ccnorm + logical + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_precipitation_effect_on_radiation + radiation precip flag for Ferrier/Moorthi + flag + norad_precip + logical + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + date_and_time_at_model_initialization_reordered + initialization date and time + none + idate + integer + (:) + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + flag_for_vertical_index_direction_control + flag for vertical index direction control + flag + iflip + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + aerosol_optical_properties_for_longwave_bands_01-16 + optical properties for longwave bands 01-16 + various + faerlw + real + (:,:,:,:) + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + aerosol_optical_properties_for_shortwave_bands_01-16 + aerosol optical properties for shortwave bands 01-16 + various + faersw + real + (:,:,:,:) + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + atmosphere_optical_thickness_due_to_ambient_aerosol_particles + vertical integrated optical depth for various aerosol species + none + aerodp + real + (:,:) + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + mpi_rank + current MPI-rank + index + me + integer + + in + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmg_setup SCHEME_GFS_rrtmg_setup SUBROUTINE_GFS_rrtmg_setup_init + + + diff --git a/physics/GFS_rrtmgp_post.F90 b/physics/GFS_rrtmgp_post.F90 new file mode 100644 index 000000000..3f8d0c1d8 --- /dev/null +++ b/physics/GFS_rrtmgp_post.F90 @@ -0,0 +1,210 @@ +!>\file GFS_rrtmgp_post.f90 +!! This file contains + module GFS_rrtmgp_post + contains + +!>\defgroup GFS_rrtmgp_post GFS RRTMGP Scheme Post +!! @{ +!> \section arg_table_GFS_rrtmgp_post_init Argument Table +!! + subroutine GFS_rrtmgp_post_init () + end subroutine GFS_rrtmgp_post_init + +!> \section arg_table_GFS_rrtmgp_post_run Argument Table +!! | local_name | standard_name | long_name | units | rank | type | kind | intent | optional | +!! |----------------|---------------------------------------------------------------|-------------------------------------------------------------------------------|----------|------|-------------------|-----------|--------|----------| +!! | Model | GFS_control_type_instance | Fortran DDT containing FV3-GFS model control parameters | DDT | 0 | GFS_control_type | | in | F | +!! | Grid | GFS_grid_type_instance | Fortran DDT containing FV3-GFS grid and interpolation related data | DDT | 0 | GFS_grid_type | | in | F | +!! | Diag | GFS_diag_type_instance | Fortran DDT containing FV3-GFS diagnotics data | DDT | 0 | GFS_diag_type | | inout | F | +!! | Radtend | GFS_radtend_type_instance | Fortran DDT containing FV3-GFS radiation tendencies | DDT | 0 | GFS_radtend_type | | in | F | +!! | Statein | GFS_statein_type_instance | Fortran DDT containing FV3-GFS prognostic state data in from dycore | DDT | 0 | GFS_statein_type | | in | F | +!! | Coupling | GFS_coupling_type_instance | Fortran DDT containing FV3-GFS fields to/from coupling with other components | DDT | 0 | GFS_coupling_type | | inout | F | +!! | scmpsw | components_of_surface_downward_shortwave_fluxes | derived type for special components of surface downward shortwave fluxes | W m-2 | 1 | cmpfsw_type | | in | F | +!! | im | horizontal_loop_extent | horizontal loop extent | count | 0 | integer | | in | F | +!! | lm | vertical_layer_dimension_for_radiation | number of vertical layers for radiation calculation | count | 0 | integer | | in | F | +!! | ltp | extra_top_layer | extra top layers | none | 0 | integer | | in | F | +!! | kt | vertical_index_difference_between_layer_and_upper_bound | vertical index difference between layer and upper bound | index | 0 | integer | | in | F | +!! | kb | vertical_index_difference_between_layer_and_lower_bound | vertical index difference between layer and lower bound | index | 0 | integer | | in | F | +!! | kd | vertical_index_difference_between_inout_and_local | vertical index difference between in/out and local | index | 0 | integer | | in | F | +!! | raddt | time_step_for_radiation | radiation time step | s | 0 | real | kind_phys | in | F | +!! | aerodp | atmosphere_optical_thickness_due_to_ambient_aerosol_particles | vertical integrated optical depth for various aerosol species | none | 2 | real | kind_phys | in | F | +!! | cldsa | cloud_area_fraction_for_radiation | fraction of clouds for low, middle, high, total and BL | frac | 2 | real | kind_phys | in | F | +!! | mtopa | model_layer_number_at_cloud_top | vertical indices for low, middle and high cloud tops | index | 2 | integer | | in | F | +!! | mbota | model_layer_number_at_cloud_base | vertical indices for low, middle and high cloud bases | index | 2 | integer | | in | F | +!! | clouds1 | total_cloud_fraction | layer total cloud fraction | frac | 2 | real | kind_phys | in | F | +!! | cldtaulw | cloud_optical_depth_layers_at_10mu_band | approx 10mu band layer cloud optical depth | none | 2 | real | kind_phys | in | F | +!! | cldtausw | cloud_optical_depth_layers_at_0.55mu_band | approx .55mu band layer cloud optical depth | none | 2 | real | kind_phys | in | F | +!! | errmsg | ccpp_error_message | error message for error handling in CCPP | none | 0 | character | len=* | out | F | +!! | errflg | ccpp_error_flag | error flag for error handling in CCPP | flag | 0 | integer | | out | F | +!! + subroutine GFS_rrtmgp_post_run (Model, Grid, Diag, Radtend, Statein, & + Coupling, scmpsw, im, lm, ltp, kt, kb, kd, raddt, aerodp, & + cldsa, mtopa, mbota, clouds1, cldtaulw, cldtausw, & + errmsg, errflg) + + use machine, only: kind_phys + use GFS_typedefs, only: GFS_statein_type, & + GFS_coupling_type, & + GFS_control_type, & + GFS_grid_type, & + GFS_radtend_type, & + GFS_diag_type + use module_radiation_aerosols, only: NSPC1 + use module_radsw_parameters, only: cmpfsw_type + use module_radlw_parameters, only: topflw_type, sfcflw_type + use module_radsw_parameters, only: topfsw_type, sfcfsw_type + + implicit none + + ! Interface variables + type(GFS_control_type), intent(in) :: Model + type(GFS_grid_type), intent(in) :: Grid + type(GFS_statein_type), intent(in) :: Statein + type(GFS_coupling_type), intent(inout) :: Coupling + type(GFS_radtend_type), intent(in) :: Radtend + type(GFS_diag_type), intent(inout) :: Diag + type(cmpfsw_type), dimension(size(Grid%xlon,1)), intent(in) :: scmpsw + + integer, intent(in) :: im, lm, ltp, kt, kb, kd + real(kind=kind_phys), intent(in) :: raddt + + real(kind=kind_phys), dimension(size(Grid%xlon,1),NSPC1), intent(in) :: aerodp + real(kind=kind_phys), dimension(size(Grid%xlon,1),5), intent(in) :: cldsa + integer, dimension(size(Grid%xlon,1),3), intent(in) :: mbota, mtopa + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(in) :: clouds1 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(in) :: cldtausw + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(in) :: cldtaulw + + character(len=*), intent(out) :: errmsg + integer, intent(out) :: errflg + + ! Local variables + integer :: i, j, k, k1, itop, ibtc + real(kind=kind_phys) :: tem0d, tem1, tem2 + + ! Initialize CCPP error handling variables + errmsg = '' + errflg = 0 + + if (.not. (Model%lsswr .or. Model%lslwr)) return + +!> - For time averaged output quantities (including total-sky and +!! clear-sky SW and LW fluxes at TOA and surface; conventional +!! 3-domain cloud amount, cloud top and base pressure, and cloud top +!! temperature; aerosols AOD, etc.), store computed results in +!! corresponding slots of array fluxr with appropriate time weights. + +! --- ... collect the fluxr data for wrtsfc + + if (Model%lssav) then + if (Model%lsswr) then + do i=1,im + Diag%fluxr(i,34) = Diag%fluxr(i,34) + Model%fhswr*aerodp(i,1) ! total aod at 550nm + Diag%fluxr(i,35) = Diag%fluxr(i,35) + Model%fhswr*aerodp(i,2) ! DU aod at 550nm + Diag%fluxr(i,36) = Diag%fluxr(i,36) + Model%fhswr*aerodp(i,3) ! BC aod at 550nm + Diag%fluxr(i,37) = Diag%fluxr(i,37) + Model%fhswr*aerodp(i,4) ! OC aod at 550nm + Diag%fluxr(i,38) = Diag%fluxr(i,38) + Model%fhswr*aerodp(i,5) ! SU aod at 550nm + Diag%fluxr(i,39) = Diag%fluxr(i,39) + Model%fhswr*aerodp(i,6) ! SS aod at 550nm + enddo + endif + +! --- save lw toa and sfc fluxes + if (Model%lslwr) then + do i=1,im +! --- lw total-sky fluxes + Diag%fluxr(i,1 ) = Diag%fluxr(i,1 ) + Model%fhlwr * Diag%topflw(i)%upfxc ! total sky top lw up + Diag%fluxr(i,19) = Diag%fluxr(i,19) + Model%fhlwr * Radtend%sfcflw(i)%dnfxc ! total sky sfc lw dn + Diag%fluxr(i,20) = Diag%fluxr(i,20) + Model%fhlwr * Radtend%sfcflw(i)%upfxc ! total sky sfc lw up +! --- lw clear-sky fluxes + Diag%fluxr(i,28) = Diag%fluxr(i,28) + Model%fhlwr * Diag%topflw(i)%upfx0 ! clear sky top lw up + Diag%fluxr(i,30) = Diag%fluxr(i,30) + Model%fhlwr * Radtend%sfcflw(i)%dnfx0 ! clear sky sfc lw dn + Diag%fluxr(i,33) = Diag%fluxr(i,33) + Model%fhlwr * Radtend%sfcflw(i)%upfx0 ! clear sky sfc lw up + enddo + endif + +! --- save sw toa and sfc fluxes with proper diurnal sw wgt. coszen=mean cosz over daylight +! part of sw calling interval, while coszdg= mean cosz over entire interval + if (Model%lsswr) then + do i = 1, IM + if (Radtend%coszen(i) > 0.) then +! --- sw total-sky fluxes +! ------------------- + tem0d = Model%fhswr * Radtend%coszdg(i) / Radtend%coszen(i) + Diag%fluxr(i,2 ) = Diag%fluxr(i,2) + Diag%topfsw(i)%upfxc * tem0d ! total sky top sw up + Diag%fluxr(i,3 ) = Diag%fluxr(i,3) + Radtend%sfcfsw(i)%upfxc * tem0d ! total sky sfc sw up + Diag%fluxr(i,4 ) = Diag%fluxr(i,4) + Radtend%sfcfsw(i)%dnfxc * tem0d ! total sky sfc sw dn +! --- sw uv-b fluxes +! -------------- + Diag%fluxr(i,21) = Diag%fluxr(i,21) + scmpsw(i)%uvbfc * tem0d ! total sky uv-b sw dn + Diag%fluxr(i,22) = Diag%fluxr(i,22) + scmpsw(i)%uvbf0 * tem0d ! clear sky uv-b sw dn +! --- sw toa incoming fluxes +! ---------------------- + Diag%fluxr(i,23) = Diag%fluxr(i,23) + Diag%topfsw(i)%dnfxc * tem0d ! top sw dn +! --- sw sfc flux components +! ---------------------- + Diag%fluxr(i,24) = Diag%fluxr(i,24) + scmpsw(i)%visbm * tem0d ! uv/vis beam sw dn + Diag%fluxr(i,25) = Diag%fluxr(i,25) + scmpsw(i)%visdf * tem0d ! uv/vis diff sw dn + Diag%fluxr(i,26) = Diag%fluxr(i,26) + scmpsw(i)%nirbm * tem0d ! nir beam sw dn + Diag%fluxr(i,27) = Diag%fluxr(i,27) + scmpsw(i)%nirdf * tem0d ! nir diff sw dn +! --- sw clear-sky fluxes +! ------------------- + Diag%fluxr(i,29) = Diag%fluxr(i,29) + Diag%topfsw(i)%upfx0 * tem0d ! clear sky top sw up + Diag%fluxr(i,31) = Diag%fluxr(i,31) + Radtend%sfcfsw(i)%upfx0 * tem0d ! clear sky sfc sw up + Diag%fluxr(i,32) = Diag%fluxr(i,32) + Radtend%sfcfsw(i)%dnfx0 * tem0d ! clear sky sfc sw dn + endif + enddo + endif + +! --- save total and boundary layer clouds + + if (Model%lsswr .or. Model%lslwr) then + do i=1,im + Diag%fluxr(i,17) = Diag%fluxr(i,17) + raddt * cldsa(i,4) + Diag%fluxr(i,18) = Diag%fluxr(i,18) + raddt * cldsa(i,5) + enddo + +! --- save cld frac,toplyr,botlyr and top temp, note that the order +! of h,m,l cloud is reversed for the fluxr output. +! --- save interface pressure (pa) of top/bot + + do j = 1, 3 + do i = 1, IM + tem0d = raddt * cldsa(i,j) + itop = mtopa(i,j) - kd + ibtc = mbota(i,j) - kd + Diag%fluxr(i, 8-j) = Diag%fluxr(i, 8-j) + tem0d + Diag%fluxr(i,11-j) = Diag%fluxr(i,11-j) + tem0d * Statein%prsi(i,itop+kt) + Diag%fluxr(i,14-j) = Diag%fluxr(i,14-j) + tem0d * Statein%prsi(i,ibtc+kb) + Diag%fluxr(i,17-j) = Diag%fluxr(i,17-j) + tem0d * Statein%tgrs(i,itop) + +! Anning adds optical depth and emissivity output + tem1 = 0. + tem2 = 0. + do k=ibtc,itop + tem1 = tem1 + cldtausw(i,k) ! approx .55 mu channel + tem2 = tem2 + cldtaulw(i,k) ! approx 10. mu channel + enddo + Diag%fluxr(i,43-j) = Diag%fluxr(i,43-j) + tem0d * tem1 + Diag%fluxr(i,46-j) = Diag%fluxr(i,46-j) + tem0d * (1.0-exp(-tem2)) + enddo + enddo + endif + +! if (.not. Model%uni_cld) then + if (Model%lgocart .or. Model%ldiag3d) then + do k = 1, LM + k1 = k + kd + Coupling%cldcovi(1:im,k) = clouds1(1:im,k1) + enddo + endif + endif ! end_if_lssav +! + end subroutine GFS_rrtmgp_post_run + +!> \section arg_table_GFS_rrtmgp_post_finalize Argument Table +!! + subroutine GFS_rrtmgp_post_finalize () + end subroutine GFS_rrtmgp_post_finalize + +!! @} + end module GFS_rrtmgp_post diff --git a/physics/GFS_rrtmgp_post.xml b/physics/GFS_rrtmgp_post.xml new file mode 100644 index 000000000..88bf0af99 --- /dev/null +++ b/physics/GFS_rrtmgp_post.xml @@ -0,0 +1,260 @@ + + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + GFS_diag_type_instance + Fortran DDT containing FV3-GFS diagnotics data + DDT + Diag + GFS_diag_type + + inout + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + GFS_radtend_type_instance + Fortran DDT containing FV3-GFS radiation tendencies + DDT + Radtend + GFS_radtend_type + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + GFS_statein_type_instance + Fortran DDT containing FV3-GFS prognostic state data in from dycore + DDT + Statein + GFS_statein_type + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + GFS_coupling_type_instance + Fortran DDT containing FV3-GFS fields to/from coupling with other components + DDT + Coupling + GFS_coupling_type + + inout + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + components_of_surface_downward_shortwave_fluxes + derived type for special components of surface downward shortwave fluxes + W m-2 + scmpsw + cmpfsw_type + (:) + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + vertical_layer_dimension_for_radiation + number of vertical layers for radiation calculation + count + lm + integer + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + extra_top_layer + extra top layers + none + ltp + integer + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + vertical_index_difference_between_layer_and_upper_bound + vertical index difference between layer and upper bound + index + kt + integer + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + vertical_index_difference_between_layer_and_lower_bound + vertical index difference between layer and lower bound + index + kb + integer + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + vertical_index_difference_between_inout_and_local + vertical index difference between in/out and local + index + kd + integer + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + time_step_for_radiation + radiation time step + s + raddt + real + + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + atmosphere_optical_thickness_due_to_ambient_aerosol_particles + vertical integrated optical depth for various aerosol species + none + aerodp + real + (:,:) + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + cloud_area_fraction_for_radiation + fraction of clouds for low, middle, high, total and BL + frac + cldsa + real + (:,:) + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + model_layer_number_at_cloud_top + vertical indices for low, middle and high cloud tops + index + mtopa + integer + (:,:) + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + model_layer_number_at_cloud_base + vertical indices for low, middle and high cloud bases + index + mbota + integer + (:,:) + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + total_cloud_fraction + layer total cloud fraction + frac + clouds1 + real + (:,:) + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + cloud_optical_depth_layers_at_10mu_band + approx 10mu band layer cloud optical depth + none + cldtaulw + real + (:,:) + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + cloud_optical_depth_layers_at_0.55mu_band + approx .55mu band layer cloud optical depth + none + cldtausw + real + (:,:) + in + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmgp_post SCHEME_GFS_rrtmgp_post SUBROUTINE_GFS_rrtmgp_post_run + + + + diff --git a/physics/GFS_rrtmgp_pre.F90 b/physics/GFS_rrtmgp_pre.F90 new file mode 100644 index 000000000..a9669cf6d --- /dev/null +++ b/physics/GFS_rrtmgp_pre.F90 @@ -0,0 +1,906 @@ +!> \file GFS_rrtmgp_pre.f90 +!! This file contains + module GFS_rrtmgp_pre + + public GFS_rrtmgp_pre_run + + contains + +!> \defgroup GFS_rrtmgp_pre GFS RRTMGP Scheme Pre +!! @{ +!! \section arg_table_GFS_rrtmgp_pre_init Argument Table +!! + subroutine GFS_rrtmgp_pre_init () + open(58,file='GFS_rrtmgp_aux_dump.txt',status='unknown') + end subroutine GFS_rrtmgp_pre_init + +!> \section arg_table_GFS_rrtmgp_pre_run Argument Table +!! | local_name | standard_name | long_name | units | rank | type | kind | intent | optional | +!! |-------------------|---------------------------------------------------------------|-------------------------------------------------------------------------------|----------|------|------------------|-----------|--------|----------| +!! | Model | GFS_control_type_instance | Fortran DDT containing FV3-GFS model control parameters | DDT | 0 | GFS_control_type | | in | F | +!! | Grid | GFS_grid_type_instance | Fortran DDT containing FV3-GFS grid and interpolation related data | DDT | 0 | GFS_grid_type | | in | F | +!! | Sfcprop | GFS_sfcprop_type_instance | Fortran DDT containing FV3-GFS surface fields | DDT | 0 | GFS_sfcprop_type | | in | F | +!! | Statein | GFS_statein_type_instance | Fortran DDT containing FV3-GFS prognostic state data in from dycore | DDT | 0 | GFS_statein_type | | in | F | +!! | Tbd | GFS_tbd_type_instance | Fortran DDT containing FV3-GFS data not yet assigned to a defined container | DDT | 0 | GFS_tbd_type | | in | F | +!! | Cldprop | GFS_cldprop_type_instance | Fortran DDT containing FV3-GFS cloud fields needed by radiation from physics | DDT | 0 | GFS_cldprop_type | | in | F | +!! | Coupling | GFS_coupling_type_instance | Fortran DDT containing FV3-GFS fields needed for coupling | DDT | 0 | GFS_coupling_type| | in | F | +!! | Radtend | GFS_radtend_type_instance | Fortran DDT containing FV3-GFS radiation tendencies | DDT | 0 | GFS_radtend_type | | inout | F | +!! | lm | vertical_layer_dimension_for_radiation | number of vertical layers for radiation calculation | count | 0 | integer | | in | F | +!! | im | horizontal_loop_extent | horizontal loop extent | count | 0 | integer | | in | F | +!! | lmk | adjusted_vertical_layer_dimension_for_radiation | number of vertical layers for radiation | count | 0 | integer | | in | F | +!! | lmp | adjusted_vertical_level_dimension_for_radiation | number of vertical levels for radiation | count | 0 | integer | | in | F | +!! | kd | vertical_index_difference_between_inout_and_local | vertical index difference between in/out and local | index | 0 | integer | | out | F | +!! | kt | vertical_index_difference_between_layer_and_upper_bound | vertical index difference between layer and upper bound | index | 0 | integer | | out | F | +!! | kb | vertical_index_difference_between_layer_and_lower_bound | vertical index difference between layer and lower bound | index | 0 | integer | | out | F | +!! | raddt | time_step_for_radiation | radiation time step | s | 0 | real | kind_phys | out | F | +!! | delp | layer_pressure_thickness_for_radiation | layer pressure thickness on radiation levels | hPa | 2 | real | kind_phys | out | F | +!! | dz | layer_thickness_for_radiation | layer thickness on radiation levels | km | 2 | real | kind_phys | out | F | +!! | plvl | air_pressure_at_interface_for_radiation_in_hPa | air pressure at vertical interface for radiation calculation | hPa | 2 | real | kind_phys | out | F | +!! | plyr | air_pressure_at_layer_for_radiation_in_hPa | air pressure at vertical layer for radiation calculation | hPa | 2 | real | kind_phys | out | F | +!! | tlvl | air_temperature_at_interface_for_radiation | air temperature at vertical interface for radiation calculation | K | 2 | real | kind_phys | out | F | +!! | tlyr | air_temperature_at_layer_for_radiation | air temperature at vertical layer for radiation calculation | K | 2 | real | kind_phys | out | F | +!! | tsfg | surface_ground_temperature_for_radiation | surface ground temperature for radiation | K | 1 | real | kind_phys | out | F | +!! | tsfa | surface_air_temperature_for_radiation | lowest model layer air temperature for radiation | K | 1 | real | kind_phys | out | F | +!! | qlyr | water_vapor_specific_humidity_at_layer_for_radiation | water vapor specific humidity at vertical layer for radiation calculation | kg kg-1 | 2 | real | kind_phys | out | F | +!! | olyr | ozone_concentration_at_layer_for_radiation | ozone concentration | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_co2 | volume_mixing_ratio_co2 | CO2 volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_n2o | volume_mixing_ratio_n2o | N2O volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_ch4 | volume_mixing_ratio_ch4 | CH4 volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_o2 | volume_mixing_ratio_o2 | O2 volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_co | volume_mixing_ratio_co | CO volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_cfc11 | volume_mixing_ratio_cfc11 | CFC11 volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_cfc12 | volume_mixing_ratio_cfc12 | CFC12 volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_cfc22 | volume_mixing_ratio_cfc22 | CFC22 volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_ccl4 | volume_mixing_ratio_ccl4 | CCL4 volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | gasvmr_cfc113 | volume_mixing_ratio_cfc113 | CFC113 volume mixing ratio | kg kg-1 | 2 | real | kind_phys | out | F | +!! | faersw1 | aerosol_optical_depth_for_shortwave_bands_01-16 | aerosol optical depth for shortwave bands 01-16 | none | 3 | real | kind_phys | out | F | +!! | faersw2 | aerosol_single_scattering_albedo_for_shortwave_bands_01-16 | aerosol single scattering albedo for shortwave bands 01-16 | frac | 3 | real | kind_phys | out | F | +!! | faersw3 | aerosol_asymmetry_parameter_for_shortwave_bands_01-16 | aerosol asymmetry parameter for shortwave bands 01-16 | none | 3 | real | kind_phys | out | F | +!! | faerlw1 | aerosol_optical_depth_for_longwave_bands_01-16 | aerosol optical depth for longwave bands 01-16 | none | 3 | real | kind_phys | out | F | +!! | faerlw2 | aerosol_single_scattering_albedo_for_longwave_bands_01-16 | aerosol single scattering albedo for longwave bands 01-16 | frac | 3 | real | kind_phys | out | F | +!! | faerlw3 | aerosol_asymmetry_parameter_for_longwave_bands_01-16 | aerosol asymmetry parameter for longwave bands 01-16 | none | 3 | real | kind_phys | out | F | +!! | aerodp | atmosphere_optical_thickness_due_to_ambient_aerosol_particles | vertical integrated optical depth for various aerosol species | none | 2 | real | kind_phys | out | F | +!! | clouds1 | total_cloud_fraction | layer total cloud fraction | frac | 2 | real | kind_phys | out | F | +!! | clouds2 | cloud_liquid_water_path | layer cloud liquid water path | g m-2 | 2 | real | kind_phys | out | F | +!! | clouds3 | mean_effective_radius_for_liquid_cloud | mean effective radius for liquid cloud | micron | 2 | real | kind_phys | out | F | +!! | clouds4 | cloud_ice_water_path | layer cloud ice water path | g m-2 | 2 | real | kind_phys | out | F | +!! | clouds5 | mean_effective_radius_for_ice_cloud | mean effective radius for ice cloud | micron | 2 | real | kind_phys | out | F | +!! | clouds6 | cloud_rain_water_path | cloud rain water path | g m-2 | 2 | real | kind_phys | out | F | +!! | clouds7 | mean_effective_radius_for_rain_drop | mean effective radius for rain drop | micron | 2 | real | kind_phys | out | F | +!! | clouds8 | cloud_snow_water_path | cloud snow water path | g m-2 | 2 | real | kind_phys | out | F | +!! | clouds9 | mean_effective_radius_for_snow_flake | mean effective radius for snow flake | micron | 2 | real | kind_phys | out | F | +!! | cldsa | cloud_area_fraction_for_radiation | fraction of clouds for low, middle,high, total and BL | frac | 2 | real | kind_phys | out | F | +!! | mtopa | model_layer_number_at_cloud_top | vertical indices for low, middle and high cloud tops | index | 2 | integer | | out | F | +!! | mbota | model_layer_number_at_cloud_base | vertical indices for low, middle and high cloud bases | index | 2 | integer | | out | F | +!! | de_lgth | cloud_decorrelation_length | cloud decorrelation length | km | 1 | real | kind_phys | out | F | +!! | alb1d | surface_albedo_perturbation | surface albedo perturbation | frac | 1 | real | kind_phys | out | F | +!! | errmsg | ccpp_error_message | error message for error handling in CCPP | none | 0 | character | len=* | out | F | +!! | errflg | ccpp_error_flag | error flag for error handling in CCPP | flag | 0 | integer | | out | F | +!! + ! Attention - the output arguments lm, im, lmk, lmp must not be set + ! in the CCPP version - they are defined in the interstitial_create routine + subroutine GFS_rrtmgp_pre_run (Model, Grid, Sfcprop, Statein, & ! input + Tbd, Cldprop, Coupling, & + Radtend, & ! input/output + lm, im, lmk, lmp, & ! input + kd, kt, kb, raddt, delp, dz, plvl, plyr, & ! output + tlvl, tlyr, tsfg, tsfa, qlyr, olyr, & + gasvmr_co2, gasvmr_n2o, gasvmr_ch4, gasvmr_o2, & + gasvmr_co, gasvmr_cfc11, gasvmr_cfc12, & + gasvmr_cfc22, gasvmr_ccl4, gasvmr_cfc113, & + faersw1, faersw2, faersw3, & + faerlw1, faerlw2, faerlw3, aerodp, & + clouds1, clouds2, clouds3, clouds4, clouds5, clouds6, & + clouds7, clouds8, clouds9, cldsa, & + mtopa, mbota, de_lgth, alb1d, errmsg, errflg) + + use machine, only: kind_phys + use GFS_typedefs, only: GFS_statein_type, & + GFS_stateout_type, & + GFS_sfcprop_type, & + GFS_coupling_type, & + GFS_control_type, & + GFS_grid_type, & + GFS_tbd_type, & + GFS_cldprop_type, & + GFS_radtend_type, & + GFS_diag_type + use physparam + use physcons, only: eps => con_eps, & + & epsm1 => con_epsm1, & + & fvirt => con_fvirt & + &, rog => con_rog & + &, rocp => con_rocp + use radcons, only: itsfc,ltp, lextop, qmin, & + qme5, qme6, epsq, prsmin + use funcphys, only: fpvs + + use module_radiation_astronomy,only: coszmn ! sol_init, sol_update + use module_radiation_gases, only: NF_VGAS, getgases, getozn ! gas_init, gas_update, + use module_radiation_aerosols, only: NF_AESW, NF_AELW, setaer, & ! aer_init, aer_update, + & NSPC1 + use module_radiation_clouds, only: NF_CLDS, & ! cld_init + & progcld1, progcld3, & + & progcld4, progcld5, & + & progclduni + use module_radsw_parameters, only: topfsw_type, sfcfsw_type, & + & profsw_type, NBDSW + use module_radlw_parameters, only: topflw_type, sfcflw_type, & + & proflw_type + use rrtmgp_lw, only: NBDLW => nBandsLW + use surface_perturbation, only: cdfnor + + implicit none + + type(GFS_control_type), intent(in) :: Model + type(GFS_grid_type), intent(in) :: Grid + type(GFS_sfcprop_type), intent(in) :: Sfcprop + type(GFS_statein_type), intent(in) :: Statein + type(GFS_radtend_type), intent(inout) :: Radtend + type(GFS_tbd_type), intent(in) :: Tbd + type(GFS_cldprop_type), intent(in) :: Cldprop + type(GFS_coupling_type), intent(in) :: Coupling + + integer, intent(in) :: im, lm, lmk, lmp + integer, intent(out) :: kd, kt, kb + real(kind=kind_phys), intent(out) :: raddt + + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: delp + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: dz + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+1+LTP), intent(out) :: plvl + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: plyr + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+1+LTP), intent(out) :: tlvl + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: tlyr + real(kind=kind_phys), dimension(size(Grid%xlon,1)), intent(out) :: tsfg + real(kind=kind_phys), dimension(size(Grid%xlon,1)), intent(out) :: tsfa + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: qlyr + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: olyr + + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_co2 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_n2o + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_ch4 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_o2 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_co + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_cfc11 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_cfc12 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_cfc22 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_ccl4 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: gasvmr_cfc113 + + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NBDSW), intent(out) :: faersw1 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NBDSW), intent(out) :: faersw2 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NBDSW), intent(out) :: faersw3 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NBDLW), intent(out) :: faerlw1 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NBDLW), intent(out) :: faerlw2 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NBDLW), intent(out) :: faerlw3 + + real(kind=kind_phys), dimension(size(Grid%xlon,1),NSPC1), intent(out) :: aerodp + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: clouds1 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: clouds2 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: clouds3 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: clouds4 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: clouds5 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: clouds6 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: clouds7 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: clouds8 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP), intent(out) :: clouds9 + real(kind=kind_phys), dimension(size(Grid%xlon,1),5), intent(out) :: cldsa + integer, dimension(size(Grid%xlon,1),3), intent(out) :: mbota + integer, dimension(size(Grid%xlon,1),3), intent(out) :: mtopa + real(kind=kind_phys), dimension(size(Grid%xlon,1)), intent(out) :: de_lgth + real(kind=kind_phys), dimension(size(Grid%xlon,1)), intent(out) :: alb1d + + character(len=*), intent(out) :: errmsg + integer, intent(out) :: errflg + + ! Local variables + integer :: me, nfxr, ntrac, ntcw, ntiw, ncld, ntrw, ntsw, ntgl + + integer :: i, j, k, k1, k2, lsk, lv, n, itop, ibtc, LP1, lla, llb, lya, lyb + + real(kind=kind_phys) :: es, qs, delt, tem0d + + real(kind=kind_phys), dimension(size(Grid%xlon,1)) :: cvt1, cvb1, tem1d, tskn + + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP) :: & + htswc, htlwc, gcice, grain, grime, htsw0, htlw0, & + rhly, tvly,qstl, vvel, clw, ciw, prslk1, tem2da, & + cldcov, deltaq, cnvc, cnvw, & + effrl, effri, effrr, effrs + real (kind=kind_phys) :: clwmin, clwm, clwt, onemrh, value, tem1, tem2, tem3 + real (kind=kind_phys), parameter :: xrc3 = 100. + + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP+1) :: tem2db +! real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP+1) :: hz + + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,Model%ncnd) :: ccnd + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,2:Model%ntrac) :: tracer1 + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NF_CLDS) :: clouds + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NF_VGAS) :: gasvmr + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NBDSW,NF_AESW)::faersw + real(kind=kind_phys), dimension(size(Grid%xlon,1),Model%levr+LTP,NBDLW,NF_AELW)::faerlw +! +!===> ... begin here +! + ! Initialize CCPP error handling variables + errmsg = '' + errflg = 0 + + if (.not. (Model%lsswr .or. Model%lslwr)) return + + !--- set commonly used integers + me = Model%me + NFXR = Model%nfxr + NTRAC = Model%ntrac ! tracers in grrad strip off sphum - start tracer1(2:NTRAC) + ntcw = Model%ntcw + ntiw = Model%ntiw + ncld = Model%ncld + ntrw = Model%ntrw + ntsw = Model%ntsw + ntgl = Model%ntgl + + LP1 = LM + 1 ! num of in/out levels + + +! --- ... set local /level/layer indexes corresponding to in/out +! variables + + if ( lextop ) then + if ( ivflip == 1 ) then ! vertical from sfc upward + kd = 0 ! index diff between in/out and local + kt = 1 ! index diff between lyr and upper bound + kb = 0 ! index diff between lyr and lower bound + lla = LMK ! local index at the 2nd level from top + llb = LMP ! local index at toa level + lya = LM ! local index for the 2nd layer from top + lyb = LP1 ! local index for the top layer + else ! vertical from toa downward + kd = 1 ! index diff between in/out and local + kt = 0 ! index diff between lyr and upper bound + kb = 1 ! index diff between lyr and lower bound + lla = 2 ! local index at the 2nd level from top + llb = 1 ! local index at toa level + lya = 2 ! local index for the 2nd layer from top + lyb = 1 ! local index for the top layer + endif ! end if_ivflip_block + else + kd = 0 + if ( ivflip == 1 ) then ! vertical from sfc upward + kt = 1 ! index diff between lyr and upper bound + kb = 0 ! index diff between lyr and lower bound + else ! vertical from toa downward + kt = 0 ! index diff between lyr and upper bound + kb = 1 ! index diff between lyr and lower bound + endif ! end if_ivflip_block + endif ! end if_lextop_block + + raddt = min(Model%fhswr, Model%fhlwr) +! print *,' in grrad : raddt=',raddt + + +!> -# Setup surface ground temperature and ground/air skin temperature +!! if required. + + if ( itsfc == 0 ) then ! use same sfc skin-air/ground temp + do i = 1, IM + tskn(i) = Sfcprop%tsfc(i) + tsfg(i) = Sfcprop%tsfc(i) + enddo + else ! use diff sfc skin-air/ground temp + do i = 1, IM + tskn(i) = Sfcprop%tsfc(i) + tsfg(i) = Sfcprop%tsfc(i) + enddo + endif + + +!> -# Prepare atmospheric profiles for radiation input. +! + + lsk = 0 + if (ivflip == 0 .and. lm < Model%levs) lsk = Model%levs - lm + +! convert pressure unit from pa to mb + do k = 1, LM + k1 = k + kd + k2 = k + lsk + do i = 1, IM + plvl(i,k1+kb) = Statein%prsi(i,k2+kb) * 0.01 ! pa to mb (hpa) + plyr(i,k1) = Statein%prsl(i,k2) * 0.01 ! pa to mb (hpa) + tlyr(i,k1) = Statein%tgrs(i,k2) + prslk1(i,k1) = Statein%prslk(i,k2) + +!> - Compute relative humidity. + es = min( Statein%prsl(i,k2), fpvs( Statein%tgrs(i,k2) ) ) ! fpvs and prsl in pa + qs = max( QMIN, eps * es / (Statein%prsl(i,k2) + epsm1*es) ) + rhly(i,k1) = max( 0.0, min( 1.0, max(QMIN, Statein%qgrs(i,k2,1))/qs ) ) + qstl(i,k1) = qs + enddo + enddo + + !--- recast remaining all tracers (except sphum) forcing them all to be positive + do j = 2, NTRAC + do k = 1, LM + k1 = k + kd + k2 = k + lsk + tracer1(:,k1,j) = max(0.0, Statein%qgrs(:,k2,j)) + enddo + enddo +! + if (ivflip == 0) then ! input data from toa to sfc + do i = 1, IM + plvl(i,1+kd) = 0.01 * Statein%prsi(i,1) ! pa to mb (hpa) + enddo + if (lsk /= 0) then + do i = 1, IM + plvl(i,1+kd) = 0.5 * (plvl(i,2+kd) + plvl(i,1+kd)) + enddo + endif + else ! input data from sfc to top + do i = 1, IM + plvl(i,LP1+kd) = 0.01 * Statein%prsi(i,LP1+lsk) ! pa to mb (hpa) + enddo + if (lsk /= 0) then + do i = 1, IM + plvl(i,LM+kd) = 0.5 * (plvl(i,LP1+kd) + plvl(i,LM+kd)) + enddo + endif + endif + + if ( lextop ) then ! values for extra top layer + do i = 1, IM + plvl(i,llb) = prsmin + if ( plvl(i,lla) <= prsmin ) plvl(i,lla) = 2.0*prsmin + plyr(i,lyb) = 0.5 * plvl(i,lla) + tlyr(i,lyb) = tlyr(i,lya) + prslk1(i,lyb) = (plyr(i,lyb)*0.00001) ** rocp ! plyr in Pa + rhly(i,lyb) = rhly(i,lya) + qstl(i,lyb) = qstl(i,lya) + enddo + +! --- note: may need to take care the top layer amount + tracer1(:,lyb,:) = tracer1(:,lya,:) + endif + + +!> - Get layer ozone mass mixing ratio (if use ozone climatology data, +!! call getozn()). + + if (Model%ntoz > 0) then ! interactive ozone generation + do k=1,lmk + do i=1,im + olyr(i,k) = max( QMIN, tracer1(i,k,Model%ntoz) ) + enddo + enddo + else ! climatological ozone + call getozn (prslk1, Grid%xlat, IM, LMK, & ! --- inputs + olyr) ! --- outputs + endif ! end_if_ntoz + +!> - Call coszmn(), to compute cosine of zenith angle (only when SW is called) + if (Model%lsswr) then + call coszmn (Grid%xlon,Grid%sinlat, & ! --- inputs + Grid%coslat,Model%solhr, IM, me, & + Radtend%coszen, Radtend%coszdg) ! --- outputs + endif + +!> - Call getgases(), to set up non-prognostic gas volume mixing +!! ratioes (gasvmr). +! - gasvmr(:,:,1) - co2 volume mixing ratio +! - gasvmr(:,:,2) - n2o volume mixing ratio +! - gasvmr(:,:,3) - ch4 volume mixing ratio +! - gasvmr(:,:,4) - o2 volume mixing ratio +! - gasvmr(:,:,5) - co volume mixing ratio +! - gasvmr(:,:,6) - cf11 volume mixing ratio +! - gasvmr(:,:,7) - cf12 volume mixing ratio +! - gasvmr(:,:,8) - cf22 volume mixing ratio +! - gasvmr(:,:,9) - ccl4 volume mixing ratio +! - gasvmr(:,:,10) - cfc113 volumne mixing ratio + +! --- ... set up non-prognostic gas volume mixing ratioes + + call getgases (plvl, Grid%xlon, Grid%xlat, IM, LMK, & ! --- inputs + gasvmr) ! --- outputs + +!CCPP: re-assign gasvmr(:,:,NF_VGAS) to gasvmr_X(:,:) + do k = 1, LMK + do i = 1, IM + gasvmr_co2 (i,k) = gasvmr(i,k,1) + gasvmr_n2o (i,k) = gasvmr(i,k,2) + gasvmr_ch4 (i,k) = gasvmr(i,k,3) + gasvmr_o2 (i,k) = gasvmr(i,k,4) + gasvmr_co (i,k) = gasvmr(i,k,5) + gasvmr_cfc11 (i,k) = gasvmr(i,k,6) + gasvmr_cfc12 (i,k) = gasvmr(i,k,7) + gasvmr_cfc22 (i,k) = gasvmr(i,k,8) + gasvmr_ccl4 (i,k) = gasvmr(i,k,9) + gasvmr_cfc113 (i,k) = gasvmr(i,k,10) + enddo + enddo + +!> - Get temperature at layer interface, and layer moisture. + do k = 2, LMK + do i = 1, IM + tem2da(i,k) = log( plyr(i,k) ) + tem2db(i,k) = log( plvl(i,k) ) + enddo + enddo + + if (ivflip == 0) then ! input data from toa to sfc + do i = 1, IM + tem1d (i) = QME6 + tem2da(i,1) = log( plyr(i,1) ) + tem2db(i,1) = log( max(prsmin, plvl(i,1)) ) + tem2db(i,LMP) = log( plvl(i,LMP) ) + tsfa (i) = tlyr(i,LMK) ! sfc layer air temp + tlvl(i,1) = tlyr(i,1) + tlvl(i,LMP) = tskn(i) + enddo + + do k = 1, LM + k1 = k + kd + do i = 1, IM + qlyr(i,k1) = max( tem1d(i), Statein%qgrs(i,k,1) ) + tem1d(i) = min( QME5, qlyr(i,k1) ) + tvly(i,k1) = Statein%tgrs(i,k) * (1.0 + fvirt*qlyr(i,k1)) ! virtual T (K) + delp(i,k1) = plvl(i,k1+1) - plvl(i,k1) + enddo + enddo + + if ( lextop ) then + do i = 1, IM + qlyr(i,lyb) = qlyr(i,lya) + tvly(i,lyb) = tvly(i,lya) + delp(i,lyb) = plvl(i,lla) - plvl(i,llb) + enddo + endif + + do k = 2, LMK + do i = 1, IM + tlvl(i,k) = tlyr(i,k) + (tlyr(i,k-1) - tlyr(i,k)) & + & * (tem2db(i,k) - tem2da(i,k)) & + & / (tem2da(i,k-1) - tem2da(i,k)) + enddo + enddo + +! --- ... level height and layer thickness (km) + + tem0d = 0.001 * rog + do i = 1, IM + do k = 1, LMK + dz(i,k) = tem0d * (tem2db(i,k+1) - tem2db(i,k)) * tvly(i,k) + enddo + +! hz(i,LMP) = 0.0 +! do k = LMK, 1, -1 +! hz(i,k) = hz(i,k+1) + dz(i,k) +! enddo + enddo + + else ! input data from sfc to toa + + do i = 1, IM + tem1d (i) = QME6 + tem2da(i,1) = log( plyr(i,1) ) + tem2db(i,1) = log( plvl(i,1) ) + tem2db(i,LMP) = log( max(prsmin, plvl(i,LMP)) ) + tsfa (i) = tlyr(i,1) ! sfc layer air temp + tlvl(i,1) = tskn(i) + tlvl(i,LMP) = tlyr(i,LMK) + enddo + + do k = LM, 1, -1 + do i = 1, IM + qlyr(i,k) = max( tem1d(i), Statein%qgrs(i,k,1) ) + tem1d(i) = min( QME5, qlyr(i,k) ) + tvly(i,k) = Statein%tgrs(i,k) * (1.0 + fvirt*qlyr(i,k)) ! virtual T (K) + delp(i,k) = plvl(i,k) - plvl(i,k+1) + enddo + enddo + + if ( lextop ) then + do i = 1, IM + qlyr(i,lyb) = qlyr(i,lya) + tvly(i,lyb) = tvly(i,lya) + delp(i,lyb) = plvl(i,lla) - plvl(i,llb) + enddo + endif + + do k = 1, LMK-1 + do i = 1, IM + tlvl(i,k+1) = tlyr(i,k) + (tlyr(i,k+1) - tlyr(i,k)) & + & * (tem2db(i,k+1) - tem2da(i,k)) & + & / (tem2da(i,k+1) - tem2da(i,k)) + enddo + enddo + +! --- ... level height and layer thickness (km) + + tem0d = 0.001 * rog + do i = 1, IM + do k = LMK, 1, -1 + dz(i,k) = tem0d * (tem2db(i,k) - tem2db(i,k+1)) * tvly(i,k) + enddo + +! hz(i,1) = 0.0 +! do k = 1, LMP +! hz(i,k+1) = hz(i,k) + dz(i,k) +! enddo + enddo + + endif ! end_if_ivflip + +!> - Call module_radiation_aerosols::setaer(),to setup aerosols +!! property profile for radiation. + +!check print *,' in grrad : calling setaer ' + + call setaer (plvl, plyr, prslk1, tvly, rhly, Sfcprop%slmsk, & ! --- inputs + tracer1, Grid%xlon, Grid%xlat, IM, LMK, LMP, & + Model%lsswr, Model%lslwr, & + faersw, faerlw, aerodp) ! --- outputs + +! CCPP + do j = 1,NBDSW + do k = 1, LMK + do i = 1, IM + ! NF_AESW = 3 + faersw1(i,k,j) = faersw(i,k,j,1) + faersw2(i,k,j) = faersw(i,k,j,2) + faersw3(i,k,j) = faersw(i,k,j,3) + enddo + enddo + enddo + + do j = 1,NBDLW + do k = 1, LMK + do i = 1, IM + ! NF_AELW = 3 + faerlw1(i,k,j) = faerlw(i,k,j,1) + faerlw2(i,k,j) = faerlw(i,k,j,2) + faerlw3(i,k,j) = faerlw(i,k,j,3) + enddo + enddo + enddo + +!> - Obtain cloud information for radiation calculations +!! (clouds,cldsa,mtopa,mbota) +!!\n for prognostic cloud: +!! - For Zhao/Moorthi's prognostic cloud scheme, +!! call module_radiation_clouds::progcld1() +!! - For Zhao/Moorthi's prognostic cloud+pdfcld, +!! call module_radiation_clouds::progcld3() +!! call module_radiation_clouds::progclduni() for unified cloud and ncld=2 + +! --- ... obtain cloud information for radiation calculations + + write(58,*) "NCND: ",Model%ncnd +! if (ntcw > 0) then ! prognostic cloud schemes + ccnd = 0.0_kind_phys + if (Model%ncnd == 1) then ! Zhao_Carr_Sundqvist + do k=1,LMK + do i=1,IM + ccnd(i,k,1) = tracer1(i,k,ntcw) ! liquid water/ice + enddo + enddo + elseif (Model%ncnd == 2) then ! MG + do k=1,LMK + do i=1,IM + ccnd(i,k,1) = tracer1(i,k,ntcw) ! liquid water + ccnd(i,k,2) = tracer1(i,k,ntiw) ! ice water + enddo + enddo + elseif (Model%ncnd == 4) then ! MG2 + do k=1,LMK + do i=1,IM + ccnd(i,k,1) = tracer1(i,k,ntcw) ! liquid water + ccnd(i,k,2) = tracer1(i,k,ntiw) ! ice water + ccnd(i,k,3) = tracer1(i,k,ntrw) ! rain water + ccnd(i,k,4) = tracer1(i,k,ntsw) ! snow water + enddo + enddo + elseif (Model%ncnd == 5) then ! GFDL MP, Thompson, MG3 + do k=1,LMK + do i=1,IM + ccnd(i,k,1) = tracer1(i,k,ntcw) ! liquid water + ccnd(i,k,2) = tracer1(i,k,ntiw) ! ice water + ccnd(i,k,3) = tracer1(i,k,ntrw) ! rain water + ccnd(i,k,4) = tracer1(i,k,ntsw) + tracer1(i,k,ntgl) ! snow + grapuel + enddo + enddo + endif + do n=1,Model%ncnd + do k=1,LMK + do i=1,IM + if (ccnd(i,k,n) < epsq) ccnd(i,k,n) = 0.0 + enddo + enddo + enddo + if (Model%imp_physics == 11 ) then + if (.not. Model%lgfdlmprad) then + + +! rsun the summation methods and order make the difference in calculation + +! clw(:,:) = clw(:,:) + tracer1(:,1:LMK,Model%ntcw) & +! + tracer1(:,1:LMK,Model%ntiw) & +! + tracer1(:,1:LMK,Model%ntrw) & +! + tracer1(:,1:LMK,Model%ntsw) & +! + tracer1(:,1:LMK,Model%ntgl) + ccnd(:,:,1) = tracer1(:,1:LMK,ntcw) + ccnd(:,:,1) = ccnd(:,:,1) + tracer1(:,1:LMK,ntrw) + ccnd(:,:,1) = ccnd(:,:,1) + tracer1(:,1:LMK,ntiw) + ccnd(:,:,1) = ccnd(:,:,1) + tracer1(:,1:LMK,ntsw) + ccnd(:,:,1) = ccnd(:,:,1) + tracer1(:,1:LMK,ntgl) + +! else +! do j=1,Model%ncld +! ccnd(:,:,1) = ccnd(:,:,1) + tracer1(:,1:LMK,ntcw+j-1) ! cloud condensate amount +! enddo + endif + do k=1,LMK + do i=1,IM + if (ccnd(i,k,1) < EPSQ ) ccnd(i,k,1) = 0.0 + enddo + enddo + endif +! + +! +! --- add suspended convective cloud water to grid-scale cloud water +! only for cloud fraction & radiation computation +! it is to enhance cloudiness due to suspended convec cloud water +! for zhao/moorthi's (imp_phys=99) & +! ferrier's (imp_phys=5) microphysics schemes + + if ((Model%num_p3d == 4) .and. (Model%npdf3d == 3)) then ! same as Model%imp_physics = 99 + do k=1,lm + k1 = k + kd + do i=1,im + deltaq(i,k1) = Tbd%phy_f3d(i,k,5) + cnvw (i,k1) = Tbd%phy_f3d(i,k,6) + cnvc (i,k1) = Tbd%phy_f3d(i,k,7) + enddo + enddo + elseif ((Model%npdf3d == 0) .and. (Model%ncnvcld3d == 1)) then ! same as MOdel%imp_physics=98 + do k=1,lm + k1 = k + kd + do i=1,im + deltaq(i,k1) = 0.0 + cnvw (i,k1) = Tbd%phy_f3d(i,k,Model%num_p3d+1) + cnvc (i,k1) = 0.0 + enddo + enddo + else ! all the rest + do k=1,lmk + do i=1,im + deltaq(i,k) = 0.0 + cnvw (i,k) = 0.0 + cnvc (i,k) = 0.0 + enddo + enddo + endif + + if (lextop) then + do i=1,im + cldcov(i,lyb) = cldcov(i,lya) + deltaq(i,lyb) = deltaq(i,lya) + cnvw (i,lyb) = cnvw (i,lya) + cnvc (i,lyb) = cnvc (i,lya) + enddo + if (Model%effr_in) then + do i=1,im + effrl(i,lyb) = effrl(i,lya) + effri(i,lyb) = effri(i,lya) + effrr(i,lyb) = effrr(i,lya) + effrs(i,lyb) = effrs(i,lya) + enddo + endif + endif + + if (Model%imp_physics == 99) then + ccnd(1:IM,1:LMK,1) = ccnd(1:IM,1:LMK,1) + cnvw(1:IM,1:LMK) + endif + + if (Model%imp_physics == 10) then + ccnd(1:IM,1:LMK,1) = ccnd(1:IM,1:LMK,1) + cnvw(1:IM,1:LMK) + ccnd(1:IM,1:LMK,2) + endif + +! DJS2019: START + ! Compute layer cloud fraction. + clwmin = 0.0 + if (.not. Model%lmfshal) then + do k = 1, LMK + do i = 1, IM + clwt = 1.0e-6 * (plyr(i,k)*0.001) + if (ccnd(i,k,1) > 0.) then + onemrh= max( 1.e-10, 1.0-rhly(i,k) ) + clwm = clwmin / max( 0.01, plyr(i,k)*0.001 ) + tem1 = min(max(sqrt(sqrt(onemrh*qstl(i,k))),0.0001),1.0) + tem1 = 2000.0 / tem1 + value = max( min( tem1*(ccnd(i,k,1)-clwm), 50.0 ), 0.0 ) + tem2 = sqrt( sqrt(rhly(i,k)) ) + cldcov(i,k) = max( tem2*(1.0-exp(-value)), 0.0 ) + endif + enddo + enddo + else + do k = 1, LMK + do i = 1, IM + clwt = 1.0e-6 * (plyr(i,k)*0.001) + if (ccnd(i,k,1) .gt. 0) then + onemrh= max( 1.e-10, 1.0-rhly(i,k) ) + clwm = clwmin / max( 0.01, plyr(i,k)*0.001 ) + tem1 = min(max((onemrh*qstl(i,k))**0.49,0.0001),1.0) !jhan + if (Model%lmfdeep2) then + tem1 = xrc3 / tem1 + else + tem1 = 100.0 / tem1 + endif + value = max( min( tem1*(ccnd(i,k,1)-clwm), 50.0 ), 0.0 ) + tem2 = sqrt( sqrt(rhly(i,k)) ) + cldcov(i,k) = max( tem2*(1.0-exp(-value)), 0.0 ) + endif + enddo + enddo + endif +! DJS2019: END + + if (Model%uni_cld) then + if (Model%effr_in) then + do k=1,lm + k1 = k + kd + do i=1,im + cldcov(i,k1) = Tbd%phy_f3d(i,k,Model%indcld) + effrl(i,k1) = Tbd%phy_f3d(i,k,2) + effri(i,k1) = Tbd%phy_f3d(i,k,3) + effrr(i,k1) = Tbd%phy_f3d(i,k,4) + effrs(i,k1) = Tbd%phy_f3d(i,k,5) + enddo + enddo + else + do k=1,lm + k1 = k + kd + do i=1,im + !cldcov(i,k1) = Tbd%phy_f3d(i,k,Model%indcld) + !if (tracer1(i,k,ntcw) .gt. 0 .or. tracer1(i,k,ntiw) .gt. 0) then + ! cldcov(i,k1) = 0.1 + !else + ! cldcov(i,k1) = 0.0 + !endif + enddo + enddo + endif + elseif (Model%imp_physics == Model%imp_physics_gfdl) then ! GFDL MP + cldcov(1:IM,1+kd:LM+kd) = tracer1(1:IM,1:LM,Model%ntclamt) + else ! neither of the other two cases + ! cldcov = 0.0 + endif + + write(58,*) "Model%imp_physics: ",Model%imp_physics + write(58,*) "Model%uni_cld: ",Model%uni_cld + write(58,*) "Model%ncld: ",Model%ncld + write(58,*) "Model%lgfdlmprad: ",Model%lgfdlmprad + write(58,*) "Model%lmfshal: ",Model%lmfshal + write(58,*) "Model%lmfdeep2: ",Model%lmfdeep2 + + if (Model%imp_physics == 99 .or. Model%imp_physics == 10) then ! zhao/moorthi's prognostic cloud scheme + ! or unified cloud and/or with MG microphysics + + if (Model%uni_cld .and. Model%ncld >= 2) then + call progclduni (plyr, plvl, tlyr, tvly, ccnd, Model%ncnd, & ! --- inputs + Grid%xlat, Grid%xlon, Sfcprop%slmsk,dz,delp, & + IM, LMK, LMP, cldcov, & + effrl, effri, effrr, effrs, Model%effr_in, & + clouds, cldsa, mtopa, mbota, de_lgth) ! --- outputs + else + call progcld1 (plyr ,plvl, tlyr, tvly, qlyr, qstl, rhly, & ! --- inputs + ccnd(1:IM,1:LMK,1), Grid%xlat,Grid%xlon, & + Sfcprop%slmsk, dz, delp, IM, LMK, LMP, & + Model%uni_cld, Model%lmfshal, & + Model%lmfdeep2, cldcov, & + effrl, effri, effrr, effrs, Model%effr_in, & + clouds, cldsa, mtopa, mbota, de_lgth) ! --- outputs + endif + + elseif(Model%imp_physics == 98) then ! zhao/moorthi's prognostic cloud+pdfcld + + call progcld3 (plyr, plvl, tlyr, tvly, qlyr, qstl, rhly, & ! --- inputs + ccnd(1:IM,1:LMK,1), & + cnvw, cnvc, Grid%xlat, Grid%xlon, & + Sfcprop%slmsk, dz, delp, im, lmk, lmp, deltaq, & + Model%sup, Model%kdt, me, & + clouds, cldsa, mtopa, mbota, de_lgth) ! --- outputs + + elseif (Model%imp_physics == 11) then ! GFDL cloud scheme + + if (.not.Model%lgfdlmprad) then + call progcld4 (plyr, plvl, tlyr, tvly, qlyr, qstl, rhly, & ! --- inputs + ccnd(1:IM,1:LMK,1), cnvw, cnvc, & + Grid%xlat, Grid%xlon, Sfcprop%slmsk, & + cldcov, dz, delp, im, lmk, lmp, & + clouds, cldsa, mtopa, mbota, de_lgth) ! --- outputs + else + + call progclduni (plyr, plvl, tlyr, tvly, ccnd, Model%ncnd, & ! --- inputs + Grid%xlat, Grid%xlon, Sfcprop%slmsk, dz,delp, & + IM, LMK, LMP, cldcov, & + effrl, effri, effrr, effrs, Model%effr_in, & + clouds, cldsa, mtopa, mbota, de_lgth) ! --- outputs +! call progcld4o (plyr, plvl, tlyr, tvly, qlyr, qstl, rhly, & ! --- inputs +! tracer1, Grid%xlat, Grid%xlon, Sfcprop%slmsk, & +! dz, delp, & +! ntrac-1, Model%ntcw-1,Model%ntiw-1,Model%ntrw-1,& +! Model%ntsw-1,Model%ntgl-1,Model%ntclamt-1, & +! im, lmk, lmp, & +! clouds, cldsa, mtopa, mbota, de_lgth) ! --- outputs + endif + + elseif(Model%imp_physics == 8 .or. Model%imp_physics == 6) then ! Thompson / WSM6 cloud micrphysics scheme + + if (Model%kdt == 1) then + Tbd%phy_f3d(:,:,1) = 10. + Tbd%phy_f3d(:,:,2) = 50. + Tbd%phy_f3d(:,:,3) = 250. + endif + + call progcld5 (plyr,plvl,tlyr,qlyr,qstl,rhly,tracer1, & ! --- inputs + Grid%xlat,Grid%xlon,Sfcprop%slmsk,dz,delp, & + ntrac-1, ntcw-1,ntiw-1,ntrw-1, & + ntsw-1,ntgl-1, & + im, lmk, lmp, Model%uni_cld, & + Model%lmfshal,Model%lmfdeep2, & + cldcov(:,1:LMK),Tbd%phy_f3d(:,:,1), & + Tbd%phy_f3d(:,:,2), Tbd%phy_f3d(:,:,3), & + clouds,cldsa,mtopa,mbota, de_lgth) ! --- outputs + + endif ! end if_imp_physics + +! endif ! end_if_ntcw + +! CCPP + do k = 1, LMK + do i = 1, IM + clouds1(i,k) = clouds(i,k,1) + clouds2(i,k) = clouds(i,k,2) + clouds3(i,k) = clouds(i,k,3) + clouds4(i,k) = clouds(i,k,4) + clouds5(i,k) = clouds(i,k,5) + clouds6(i,k) = clouds(i,k,6) + clouds7(i,k) = clouds(i,k,7) + clouds8(i,k) = clouds(i,k,8) + clouds9(i,k) = clouds(i,k,9) + enddo + enddo + + write(58,*) "#" + do k=1,Model%levr+LTP + write(58,"(5F15.8)") plyr(1,k),tlyr(1,k),clouds2(1,k), & + & clouds4(1,k), clouds1(1,k) + enddo + + +! mg, sfc-perts +! --- scale random patterns for surface perturbations with +! perturbation size +! --- turn vegetation fraction pattern into percentile pattern + alb1d(:) = 0. + if (Model%do_sfcperts) then + if (Model%pertalb(1) > 0.) then + do i=1,im + call cdfnor(Coupling%sfc_wts(i,5),alb1d(i)) + enddo + endif + endif +! mg, sfc-perts + + end subroutine GFS_rrtmgp_pre_run + +!> \section arg_table_GFS_rrtmgp_pre_finalize Argument Table +!! + subroutine GFS_rrtmgp_pre_finalize () + close(58) + end subroutine GFS_rrtmgp_pre_finalize + +!! @} + end module GFS_rrtmgp_pre diff --git a/physics/GFS_rrtmgp_pre.xml b/physics/GFS_rrtmgp_pre.xml new file mode 100644 index 000000000..a20630a25 --- /dev/null +++ b/physics/GFS_rrtmgp_pre.xml @@ -0,0 +1,656 @@ + + + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + GFS_sfcprop_type_instance + Fortran DDT containing FV3-GFS surface fields + DDT + Sfcprop + GFS_sfcprop_type + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + GFS_statein_type_instance + Fortran DDT containing FV3-GFS prognostic state data in from dycore + DDT + Statein + GFS_statein_type + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + GFS_tbd_type_instance + Fortran DDT containing FV3-GFS data not yet assigned to a defined container + DDT + Tbd + GFS_tbd_type + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + GFS_cldprop_type_instance + Fortran DDT containing FV3-GFS cloud fields needed by radiation from physics + DDT + Cldprop + GFS_cldprop_type + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + GFS_coupling_type_instance + Fortran DDT containing FV3-GFS fields needed for coupling + DDT + Coupling + GFS_coupling_type + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + GFS_radtend_type_instance + Fortran DDT containing FV3-GFS radiation tendencies + DDT + Radtend + GFS_radtend_type + + inout + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + vertical_layer_dimension_for_radiation + number of vertical layers for radiation calculation + count + lm + integer + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + adjusted_vertical_layer_dimension_for_radiation + number of vertical layers for radiation + count + lmk + integer + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + adjusted_vertical_level_dimension_for_radiation + number of vertical levels for radiation + count + lmp + integer + + in + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + vertical_index_difference_between_inout_and_local + vertical index difference between in/out and local + index + kd + integer + + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + vertical_index_difference_between_layer_and_upper_bound + vertical index difference between layer and upper bound + index + kt + integer + + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + vertical_index_difference_between_layer_and_lower_bound + vertical index difference between layer and lower bound + index + kb + integer + + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + time_step_for_radiation + radiation time step + s + raddt + real + + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + layer_pressure_thickness_for_radiation + layer pressure thickness on radiation levels + hPa + delp + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + layer_thickness_for_radiation + layer thickness on radiation levels + km + dz + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + air_pressure_at_interface_for_radiation_in_hPa + air pressure at vertical interface for radiation calculation + hPa + plvl + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + air_pressure_at_layer_for_radiation_in_hPa + air pressure at vertical layer for radiation calculation + hPa + plyr + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + air_temperature_at_interface_for_radiation + air temperature at vertical interface for radiation calculation + K + tlvl + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + air_temperature_at_layer_for_radiation + air temperature at vertical layer for radiation calculation + K + tlyr + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + surface_ground_temperature_for_radiation + surface ground temperature for radiation + K + tsfg + real + (:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + surface_air_temperature_for_radiation + lowest model layer air temperature for radiation + K + tsfa + real + (:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + water_vapor_specific_humidity_at_layer_for_radiation + water vapor specific humidity at vertical layer for radiation calculation + kg kg-1 + qlyr + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + ozone_concentration_at_layer_for_radiation + ozone concentration + kg kg-1 + olyr + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_co2 + CO2 volume mixing ratio + kg kg-1 + gasvmr_co2 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_n2o + N2O volume mixing ratio + kg kg-1 + gasvmr_n2o + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_ch4 + CH4 volume mixing ratio + kg kg-1 + gasvmr_ch4 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_o2 + O2 volume mixing ratio + kg kg-1 + gasvmr_o2 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_co + CO volume mixing ratio + kg kg-1 + gasvmr_co + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_cfc11 + CFC11 volume mixing ratio + kg kg-1 + gasvmr_cfc11 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_cfc12 + CFC12 volume mixing ratio + kg kg-1 + gasvmr_cfc12 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_cfc22 + CFC22 volume mixing ratio + kg kg-1 + gasvmr_cfc22 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_ccl4 + CCL4 volume mixing ratio + kg kg-1 + gasvmr_ccl4 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + volume_mixing_ratio_cfc113 + CFC113 volume mixing ratio + kg kg-1 + gasvmr_cfc113 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + aerosol_optical_depth_for_shortwave_bands_01-16 + aerosol optical depth for shortwave bands 01-16 + none + faersw1 + real + (:,:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + aerosol_single_scattering_albedo_for_shortwave_bands_01-16 + aerosol single scattering albedo for shortwave bands 01-16 + frac + faersw2 + real + (:,:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + aerosol_asymmetry_parameter_for_shortwave_bands_01-16 + aerosol asymmetry parameter for shortwave bands 01-16 + none + faersw3 + real + (:,:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + aerosol_optical_depth_for_longwave_bands_01-16 + aerosol optical depth for longwave bands 01-16 + none + faerlw1 + real + (:,:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + aerosol_single_scattering_albedo_for_longwave_bands_01-16 + aerosol single scattering albedo for longwave bands 01-16 + frac + faerlw2 + real + (:,:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + aerosol_asymmetry_parameter_for_longwave_bands_01-16 + aerosol asymmetry parameter for longwave bands 01-16 + none + faerlw3 + real + (:,:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + atmosphere_optical_thickness_due_to_ambient_aerosol_particles + vertical integrated optical depth for various aerosol species + none + aerodp + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + total_cloud_fraction + layer total cloud fraction + frac + clouds1 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + cloud_liquid_water_path + layer cloud liquid water path + g m-2 + clouds2 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + mean_effective_radius_for_liquid_cloud + mean effective radius for liquid cloud + micron + clouds3 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + cloud_ice_water_path + layer cloud ice water path + g m-2 + clouds4 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + mean_effective_radius_for_ice_cloud + mean effective radius for ice cloud + micron + clouds5 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + cloud_rain_water_path + cloud rain water path + g m-2 + clouds6 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + mean_effective_radius_for_rain_drop + mean effective radius for rain drop + micron + clouds7 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + cloud_snow_water_path + cloud snow water path + g m-2 + clouds8 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + mean_effective_radius_for_snow_flake + mean effective radius for snow flake + micron + clouds9 + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + cloud_area_fraction_for_radiation + fraction of clouds for low, middle,high, total and BL + frac + cldsa + real + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + model_layer_number_at_cloud_top + vertical indices for low, middle and high cloud tops + index + mtopa + integer + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + model_layer_number_at_cloud_base + vertical indices for low, middle and high cloud bases + index + mbota + integer + (:,:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + cloud_decorrelation_length + cloud decorrelation length + km + de_lgth + real + (:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + surface_albedo_perturbation + surface albedo perturbation + frac + alb1d + real + (:) + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmgp_pre SCHEME_GFS_rrtmgp_pre SUBROUTINE_GFS_rrtmgp_pre_run + + + diff --git a/physics/GFS_rrtmgp_setup.F90 b/physics/GFS_rrtmgp_setup.F90 new file mode 100644 index 000000000..9ae84063b --- /dev/null +++ b/physics/GFS_rrtmgp_setup.F90 @@ -0,0 +1,869 @@ +!> \file GFS_rrtmgp_setup.f90 +!! This file contains +module GFS_rrtmgp_setup + + use physparam, only : isolar , ictmflg, ico2flg, ioznflg, iaerflg,& +! & iaermdl, laswflg, lalwflg, lavoflg, icldflg, & + & iaermdl, icldflg, & + & iovrsw , iovrlw , lcrick , lcnorm , lnoprec, & + & ialbflg, iemsflg, isubcsw, isubclw, ivflip , ipsd0, & + & iswcliq, & + & kind_phys + + use radcons, only: ltp, lextop + + implicit none + + public GFS_rrtmgp_setup_init, GFS_rrtmgp_setup_run, GFS_rrtmgp_setup_finalize + + private + + logical :: is_initialized = .false. + + ! --- version tag and last revision date + character(40), parameter :: & + & VTAGRAD='NCEP-Radiation_driver v5.2 Jan 2013 ' + ! & VTAGRAD='NCEP-Radiation_driver v5.1 Nov 2012 ' + ! & VTAGRAD='NCEP-Radiation_driver v5.0 Aug 2012 ' + + !> new data input control variables (set/reset in subroutines radinit/radupdate): + integer :: month0 = 0 + integer :: iyear0 = 0 + integer :: monthd = 0 + + !> control flag for the first time of reading climatological ozone data + !! (set/reset in subroutines radinit/radupdate, it is used only if the + !! control parameter ioznflg=0) + logical :: loz1st = .true. + + contains + +!> \defgroup GFS_rrtmgp_setup GFS RRTMGP Scheme Setup +!! @{ +!! \section arg_table_GFS_rrtmgp_setup_init Argument Table +!! | local_name | standard_name | long_name | units | rank | type | kind | intent | optional | +!! |--------------------------|-------------------------------------------------------------------------------|---------------------------------------------------------------|---------------|------|-----------|-----------|--------|----------| +!! | si | vertical_sigma_coordinate_for_radiation_initialization | vertical sigma coordinate for radiation initialization | none | 1 | real | kind_phys | in | F | +!! | levr | number_of_vertical_layers_for_radiation_calculations | number of vertical levels for radiation calculations | count | 0 | integer | | in | F | +!! | ictm | flag_for_initial_time-date_control | flag for initial conditions and forcing | flag | 0 | integer | | in | F | +!! | isol | flag_for_solar_constant | use prescribed solar constant | flag | 0 | integer | | in | F | +!! | ico2 | flag_for_using_prescribed_global_mean_co2_value | prescribed global mean value (old opernl) | flag | 0 | integer | | in | F | +!! | iaer | flag_for_default_aerosol_effect_in_shortwave_radiation | default aerosol effect in sw only | flag | 0 | integer | | in | F | +!! | ialb | flag_for_using_climatology_albedo | flag for using climatology alb, based on sfc type | flag | 0 | integer | | in | F | +!! | iems | flag_for_surface_emissivity_control | surface emissivity control flag, use fixed value of 1 | flag | 0 | integer | | in | F | +!! | ntcw | index_for_liquid_cloud_condensate | tracer index for cloud condensate (or liquid water) | index | 0 | integer | | in | F | +!! | num_p2d | array_dimension_of_2d_arrays_for_microphysics | number of 2D arrays needed for microphysics | count | 0 | integer | | in | F | +!! | num_p3d | array_dimension_of_3d_arrays_for_microphysics | number of 3D arrays needed for microphysics | count | 0 | integer | | in | F | +!! | npdf3d | number_of_3d_arrays_associated_with_pdf-based_clouds | number of 3d arrays associated with pdf based clouds/mp | count | 0 | integer | | in | F | +!! | ntoz | index_for_ozone | tracer index for ozone mixing ratio | index | 0 | integer | | in | F | +!! | iovr_sw | flag_for_max-random_overlap_clouds_for_shortwave_radiation | sw: max-random overlap clouds | flag | 0 | integer | | in | F | +!! | iovr_lw | flag_for_max-random_overlap_clouds_for_longwave_radiation | lw: max-random overlap clouds | flag | 0 | integer | | in | F | +!! | isubc_sw | flag_for_sw_clouds_without_sub-grid_approximation | flag for sw clouds without sub-grid approximation | flag | 0 | integer | | in | F | +!! | isubc_lw | flag_for_lw_clouds_without_sub-grid_approximation | flag for lw clouds without sub-grid approximation | flag | 0 | integer | | in | F | +!! | icliq_sw | flag_for_optical_property_for_liquid_clouds_for_shortwave_radiation | sw optical property for liquid clouds | flag | 0 | integer | | in | F | +!! | crick_proof | flag_for_CRICK-proof_cloud_water | flag for CRICK-Proof cloud water | flag | 0 | logical | | in | F | +!! | ccnorm | flag_for_cloud_condensate_normalized_by_cloud_cover | flag for cloud condensate normalized by cloud cover | flag | 0 | logical | | in | F | +!! | imp_physics | flag_for_microphysics_scheme | choice of microphysics scheme | flag | 0 | integer | | in | F | +!! | norad_precip | flag_for_precipitation_effect_on_radiation | radiation precip flag for Ferrier/Moorthi | flag | 0 | logical | | in | F | +!! | idate | date_and_time_at_model_initialization_reordered | initialization date and time | none | 1 | integer | | in | F | +!! | iflip | flag_for_vertical_index_direction_control | flag for vertical index direction control | flag | 0 | integer | | in | F | +!! | im | horizontal_loop_extent | horizontal loop extent | count | 0 | integer | | in | F | +!! | faerlw | aerosol_optical_properties_for_longwave_bands_01-16 | optical properties for longwave bands 01-16 | various | 4 | real | kind_phys | in | F | +!! | faersw | aerosol_optical_properties_for_shortwave_bands_01-16 | aerosol optical properties for shortwave bands 01-16 | various | 4 | real | kind_phys | in | F | +!! | aerodp | atmosphere_optical_thickness_due_to_ambient_aerosol_particles | vertical integrated optical depth for various aerosol species | none | 2 | real | kind_phys | in | F | +!! | me | mpi_rank | current MPI-rank | index | 0 | integer | | in | F | +!! | errmsg | ccpp_error_message | error message for error handling in CCPP | none | 0 | character | len=* | out | F | +!! | errflg | ccpp_error_flag | error flag for error handling in CCPP | flag | 0 | integer | | out | F | +!! + subroutine GFS_rrtmgp_setup_init ( & + si, levr, ictm, isol, ico2, iaer, ialb, iems, ntcw, num_p2d, & + num_p3d, npdf3d, ntoz, iovr_sw, iovr_lw, isubc_sw, isubc_lw, & + icliq_sw, crick_proof, ccnorm, & + imp_physics, & + norad_precip, idate, iflip, & + im, faerlw, faersw, aerodp, & ! for consistency checks + me, errmsg, errflg) +! ================= subprogram documentation block ================ ! +! ! +! subprogram: GFS_rrtmgp_setup_init - a subprogram to initialize radiation ! +! ! +! usage: call GFS_rrtmgp_setup_init ! +! ! +! attributes: ! +! language: fortran 90 ! +! ! +! program history: ! +! mar 2012 - yu-tai hou create the program to initialize fixed ! +! control variables for radiaion processes. this ! +! subroutine is called at the start of model run. ! +! nov 2012 - yu-tai hou modified control parameter through ! +! module 'physparam'. ! +! mar 2014 - sarah lu iaermdl is determined from iaer ! +! jul 2014 - s moorthi add npdf3d for pdf clouds ! +! ! +! ==================== defination of variables ==================== ! +! ! +! input parameters: ! +! si : model vertical sigma interface or equivalence ! +! levr : number of model vertical layers ! +! ictm :=yyyy#, external data time/date control flag ! +! = -2: same as 0, but superimpose seasonal cycle ! +! from climatology data set. ! +! = -1: use user provided external data for the ! +! forecast time, no extrapolation. ! +! = 0: use data at initial cond time, if not ! +! available, use latest, no extrapolation. ! +! = 1: use data at the forecast time, if not ! +! available, use latest and extrapolation. ! +! =yyyy0: use yyyy data for the forecast time, ! +! no further data extrapolation. ! +! =yyyy1: use yyyy data for the fcst. if needed, do ! +! extrapolation to match the fcst time. ! +! isol := 0: use the old fixed solar constant in "physcon"! +! =10: use the new fixed solar constant in "physcon"! +! = 1: use noaa ann-mean tsi tbl abs-scale data tabl! +! = 2: use noaa ann-mean tsi tbl tim-scale data tabl! +! = 3: use cmip5 ann-mean tsi tbl tim-scale data tbl! +! = 4: use cmip5 mon-mean tsi tbl tim-scale data tbl! +! ico2 :=0: use prescribed global mean co2 (old oper) ! +! =1: use observed co2 annual mean value only ! +! =2: use obs co2 monthly data with 2-d variation ! +! iaer : 4-digit aerosol flag (dabc for aermdl,volc,lw,sw)! +! d: =0 or none, opac-climatology aerosol scheme ! +! =1 use gocart climatology aerosol scheme ! +! =2 use gocart progostic aerosol scheme ! +! a: =0 use background stratospheric aerosol ! +! =1 incl stratospheric vocanic aeros ! +! b: =0 no topospheric aerosol in lw radiation ! +! =1 include tropspheric aerosols for lw ! +! c: =0 no topospheric aerosol in sw radiation ! +! =1 include tropspheric aerosols for sw ! +! ialb : control flag for surface albedo schemes ! +! =0: climatology, based on surface veg types ! +! =1: modis retrieval based surface albedo scheme ! +! iems : ab 2-digit control flag ! +! a: =0 set sfc air/ground t same for lw radiation ! +! =1 set sfc air/ground t diff for lw radiation ! +! b: =0 use fixed sfc emissivity=1.0 (black-body) ! +! =1 use varying climtology sfc emiss (veg based)! +! =2 future development (not yet) ! +! ntcw :=0 no cloud condensate calculated ! +! >0 array index location for cloud condensate ! +! num_p3d :=3: ferrier's microphysics cloud scheme ! +! =4: zhao/carr/sundqvist microphysics cloud ! +! npdf3d =0 no pdf clouds ! +! =3 (when num_p3d=4) pdf clouds with zhao/carr/ ! +! sundqvist scheme ! +! ntoz : ozone data control flag ! +! =0: use climatological ozone profile ! +! >0: use interactive ozone profile ! +! icliq_sw : sw optical property for liquid clouds ! +! =0:input cld opt depth, ignoring iswcice setting ! +! =1:cloud optical property scheme based on Hu and ! +! Stamnes(1993) \cite hu_and_stamnes_1993 method ! +! =2:cloud optical property scheme based on Hu and ! +! Stamnes(1993) -updated ! +! iovr_sw/iovr_lw : control flag for cloud overlap (sw/lw rad) ! +! =0: random overlapping clouds ! +! =1: max/ran overlapping clouds ! +! =2: maximum overlap clouds (mcica only) ! +! =3: decorrelation-length overlap (mcica only) ! +! isubc_sw/isubc_lw: sub-column cloud approx control flag (sw/lw rad) ! +! =0: with out sub-column cloud approximation ! +! =1: mcica sub-col approx. prescribed random seed ! +! =2: mcica sub-col approx. provided random seed ! +! crick_proof : control flag for eliminating CRICK ! +! ccnorm : control flag for in-cloud condensate mixing ratio! +! norad_precip : control flag for not using precip in radiation ! +! idate(4) : ncep absolute date and time of initial condition ! +! (hour, month, day, year) ! +! iflip : control flag for direction of vertical index ! +! =0: index from toa to surface ! +! =1: index from surface to toa ! +! me : print control flag ! +! ! +! subroutines called: radinit ! +! ! +! =================================================================== ! +! + use module_radsw_parameters, only: NBDSW + use module_radlw_parameters, only: NBDLW + use module_radiation_aerosols,only: NF_AELW, NF_AESW, NSPC1 + use module_radiation_clouds, only: NF_CLDS + use module_radiation_gases, only: NF_VGAS + use module_radiation_surface, only: NF_ALBD + + implicit none + + ! interface variables + real (kind=kind_phys), intent(in) :: si(levr+1) + integer, intent(in) :: levr + integer, intent(in) :: ictm + integer, intent(in) :: isol + integer, intent(in) :: ico2 + integer, intent(in) :: iaer + integer, intent(in) :: ialb + integer, intent(in) :: iems + integer, intent(in) :: ntcw + integer, intent(in) :: num_p2d + integer, intent(in) :: num_p3d + integer, intent(in) :: npdf3d + integer, intent(in) :: ntoz + integer, intent(in) :: iovr_sw + integer, intent(in) :: iovr_lw + integer, intent(in) :: isubc_sw + integer, intent(in) :: isubc_lw + integer, intent(in) :: icliq_sw + logical, intent(in) :: crick_proof + logical, intent(in) :: ccnorm + integer, intent(in) :: imp_physics + logical, intent(in) :: norad_precip + integer, intent(in) :: idate(4) + integer, intent(in) :: iflip + ! For consistency checks + integer, intent(in) :: im + real(kind_phys), intent(in) :: faerlw(:,:,:,:) + real(kind_phys), intent(in) :: faersw(:,:,:,:) + real(kind_phys), intent(in) :: aerodp(:,:) + ! End for consistency checks + integer, intent(in) :: me + character(len=*), intent(out) :: errmsg + integer, intent(out) :: errflg + + ! For consistency checks + real(kind_phys), dimension(im,levr+ltp,NBDLW,NF_AELW) :: faerlw_check + real(kind_phys), dimension(im,levr+ltp,NBDSW,NF_AESW) :: faersw_check + real(kind_phys), dimension(im,NSPC1) :: aerodp_check + ! End for consistency checks + + ! Initialize the CCPP error handling variables + errmsg = '' + errflg = 0 + + if (is_initialized) return + + ! Consistency checks for dimensions of arrays, this is required + ! to detect differences in FV3's parameters that are used to + ! dimension certain arrays and the values in ccpp-physics + if (size(faerlw(1,:,:,:)).ne.size(faerlw_check(1,:,:,:))) then + write(errmsg,"(3a,4i4,a,4i4)") & + "Runtime error: dimension mismatch for faerlw,", & + " check definitions of levr, ltp, nbdlw, nf_aelw:", & + " expected shape ", shape(faerlw_check(:,:,:,:)), & + " but got ", shape(faerlw(:,:,:,:)) + errflg = 1 + return + end if + if (size(faersw(1,:,:,:)).ne.size(faersw_check(1,:,:,:))) then + write(errmsg,"(3a,4i4,a,4i4)") & + "Runtime error: dimension mismatch for faersw,", & + " check definitions of levr, ltp, nbdsw, nf_aesw:", & + " expected shape ", shape(faersw_check(:,:,:,:)), & + " but got ", shape(faersw(:,:,:,:)) + errflg = 1 + return + end if + if (size(aerodp(1,:)).ne.size(aerodp_check(1,:))) then + write(errmsg,"(3a,2i4,a,2i4)") & + "Runtime error: dimension mismatch for aerodp,", & + " check definitions of nspc1:", & + " expected shape ", shape(aerodp_check(:,:)), & + " but got ", shape(aerodp(:,:)) + errflg = 1 + return + end if + + ! End of consistency checks + + isolar = isol ! solar constant control flag + + ictmflg= ictm ! data ic time/date control flag + ico2flg= ico2 ! co2 data source control flag + ioznflg= ntoz ! ozone data source control flag + + if ( ictm==0 .or. ictm==-2 ) then + iaerflg = mod(iaer, 100) ! no volcanic aerosols for clim hindcast + else + iaerflg = mod(iaer, 1000) + endif + iaermdl = iaer/1000 ! control flag for aerosol scheme selection + if ( iaermdl < 0 .or. (iaermdl>2 .and. iaermdl/=5) ) then + print *, ' Error -- IAER flag is incorrect, Abort' + stop 7777 + endif + +! if ( ntcw > 0 ) then + icldflg = 1 ! prognostic cloud optical prop scheme +! else +! icldflg = 0 ! no support for diag cloud opt prop scheme +! endif + + iswcliq = icliq_sw ! optical property for liquid clouds for sw + + iovrsw = iovr_sw ! cloud overlapping control flag for sw + iovrlw = iovr_lw ! cloud overlapping control flag for lw + + lcrick = crick_proof ! control flag for eliminating CRICK + lcnorm = ccnorm ! control flag for in-cld condensate + lnoprec = norad_precip ! precip effect on radiation flag (ferrier microphysics) + isubcsw = isubc_sw ! sub-column cloud approx flag in sw radiation + isubclw = isubc_lw ! sub-column cloud approx flag in lw radiation + + ialbflg= ialb ! surface albedo control flag + iemsflg= iems ! surface emissivity control flag + + ivflip = iflip ! vertical index direction control flag + +! --- assign initial permutation seed for mcica cloud-radiation + if ( isubc_sw>0 .or. isubc_lw>0 ) then +! ipsd0 = 17*idate(1)+43*idate(2)+37*idate(3)+23*idate(4) + ipsd0 + ipsd0 = 17*idate(1)+43*idate(2)+37*idate(3)+23*idate(4) + endif + + if ( me == 0 ) then + print *,' In rad_initialize (GFS_rrtmgp_setup_init), before calling radinit' + print *,' si =',si + print *,' levr=',levr,' ictm=',ictm,' isol=',isol,' ico2=',ico2,& + & ' iaer=',iaer,' ialb=',ialb,' iems=',iems,' ntcw=',ntcw + print *,' np3d=',num_p3d,' ntoz=',ntoz,' iovr_sw=',iovr_sw, & + & ' iovr_lw=',iovr_lw,' isubc_sw=',isubc_sw, & + & ' isubc_lw=',isubc_lw,' icliq_sw=',icliq_sw, & + & ' iflip=',iflip,' me=',me + print *,' crick_proof=',crick_proof, & + & ' ccnorm=',ccnorm,' norad_precip=',norad_precip + endif + + call radinit & +! --- inputs: + & ( si, levr, imp_physics, me ) +! --- outputs: +! ( none ) + + if ( me == 0 ) then + print *,' Radiation sub-cloud initial seed =',ipsd0, & + & ' IC-idate =',idate + print *,' return from rad_initialize (GFS_rrtmgp_setup_init) - after calling radinit' + endif +! + is_initialized = .true. +! + return + + end subroutine GFS_rrtmgp_setup_init + +!> \section arg_table_GFS_rrtmgp_setup_run Argument Table +!! | local_name | standard_name | long_name | units | rank | type | kind | intent | optional | +!! |--------------------------|-------------------------------------------------------------------------------|---------------------------------------------------------|---------------|------|-----------|-----------|--------|----------| +!! | idate | date_and_time_at_model_initialization | initialization date and time | none | 1 | integer | | in | F | +!! | jdate | forecast_date_and_time | current forecast date and time | none | 1 | integer | | in | F | +!! | deltsw | frequency_for_shortwave_radiation | frequency for shortwave radiation | s | 0 | real | kind_phys | in | F | +!! | deltim | time_step_for_dynamics | dynamics timestep | s | 0 | real | kind_phys | in | F | +!! | lsswr | flag_to_calc_sw | logical flags for sw radiation calls | flag | 0 | logical | | in | F | +!! | me | mpi_rank | current MPI-rank | index | 0 | integer | | in | F | +!! | slag | equation_of_time | equation of time (radian) | radians | 0 | real | kind_phys | out | F | +!! | sdec | sine_of_solar_declination_angle | sin of the solar declination angle | none | 0 | real | kind_phys | out | F | +!! | cdec | cosine_of_solar_declination_angle | cos of the solar declination angle | none | 0 | real | kind_phys | out | F | +!! | solcon | solar_constant | solar constant (sun-earth distant adjusted) | W m-2 | 0 | real | kind_phys | out | F | +!! | errmsg | ccpp_error_message | error message for error handling in CCPP | none | 0 | character | len=* | out | F | +!! | errflg | ccpp_error_flag | error flag for error handling in CCPP | flag | 0 | integer | | out | F | +!! + subroutine GFS_rrtmgp_setup_run ( & + idate, jdate, deltsw, deltim, lsswr, me, & + slag, sdec, cdec, solcon, errmsg, errflg) + + implicit none + + ! interface variables + integer, intent(in) :: idate(:) + integer, intent(in) :: jdate(:) + real(kind=kind_phys), intent(in) :: deltsw + real(kind=kind_phys), intent(in) :: deltim + logical, intent(in) :: lsswr + integer, intent(in) :: me + real(kind=kind_phys), intent(out) :: slag + real(kind=kind_phys), intent(out) :: sdec + real(kind=kind_phys), intent(out) :: cdec + real(kind=kind_phys), intent(out) :: solcon + character(len=*), intent(out) :: errmsg + integer, intent(out) :: errflg + + ! Check initialization state + if (.not.is_initialized) then + write(errmsg, fmt='((a))') 'GFS_rrtmgp_setup_run called before GFS_rrtmgp_setup_init' + errflg = 1 + return + end if + + ! Initialize the CCPP error handling variables + errmsg = '' + errflg = 0 + + call radupdate(idate,jdate,deltsw,deltim,lsswr,me, & + slag,sdec,cdec,solcon) + + end subroutine GFS_rrtmgp_setup_run + +!> \section arg_table_GFS_rrtmgp_setup_finalize Argument Table +!! | local_name | standard_name | long_name | units | rank | type | kind | intent | optional | +!! |--------------------------|-------------------------------------------------------------------------------|---------------------------------------------------------|---------------|------|-----------|-----------|--------|----------| +!! | errmsg | ccpp_error_message | error message for error handling in CCPP | none | 0 | character | len=* | out | F | +!! | errflg | ccpp_error_flag | error flag for error handling in CCPP | flag | 0 | integer | | out | F | +!! + subroutine GFS_rrtmgp_setup_finalize (errmsg, errflg) + + implicit none + + character(len=*), intent( out) :: errmsg + integer, intent( out) :: errflg + + ! Initialize the CCPP error handling variables + errmsg = '' + errflg = 0 + + if (.not.is_initialized) return + + ! do finalization stuff if needed + + is_initialized = .false. + + end subroutine GFS_rrtmgp_setup_finalize + + +! Private functions + + + subroutine radinit( si, NLAY, imp_physics, me ) +!................................... + +! --- inputs: +! & ( si, NLAY, imp_physics, me ) +! --- outputs: +! ( none ) + +! ================= subprogram documentation block ================ ! +! ! +! subprogram: radinit initialization of radiation calculations ! +! ! +! usage: call radinit ! +! ! +! attributes: ! +! language: fortran 90 ! +! machine: wcoss ! +! ! +! ==================== definition of variables ==================== ! +! ! +! input parameters: ! +! si : model vertical sigma interface ! +! NLAY : number of model vertical layers ! +! imp_physics : MP identifier ! +! me : print control flag ! +! ! +! outputs: (none) ! +! ! +! external module variables: (in module physparam) ! +! isolar : solar constant cntrol flag ! +! = 0: use the old fixed solar constant in "physcon" ! +! =10: use the new fixed solar constant in "physcon" ! +! = 1: use noaa ann-mean tsi tbl abs-scale with cycle apprx! +! = 2: use noaa ann-mean tsi tbl tim-scale with cycle apprx! +! = 3: use cmip5 ann-mean tsi tbl tim-scale with cycl apprx! +! = 4: use cmip5 mon-mean tsi tbl tim-scale with cycl apprx! +! iaerflg : 3-digit aerosol flag (abc for volc, lw, sw) ! +! a:=0 use background stratospheric aerosol ! +! =1 include stratospheric vocanic aeros ! +! b:=0 no topospheric aerosol in lw radiation ! +! =1 compute tropspheric aero in 1 broad band for lw ! +! =2 compute tropspheric aero in multi bands for lw ! +! c:=0 no topospheric aerosol in sw radiation ! +! =1 include tropspheric aerosols for sw ! +! ico2flg : co2 data source control flag ! +! =0: use prescribed global mean co2 (old oper) ! +! =1: use observed co2 annual mean value only ! +! =2: use obs co2 monthly data with 2-d variation ! +! ictmflg : =yyyy#, external data ic time/date control flag ! +! = -2: same as 0, but superimpose seasonal cycle ! +! from climatology data set. ! +! = -1: use user provided external data for the ! +! forecast time, no extrapolation. ! +! = 0: use data at initial cond time, if not ! +! available, use latest, no extrapolation. ! +! = 1: use data at the forecast time, if not ! +! available, use latest and extrapolation. ! +! =yyyy0: use yyyy data for the forecast time, ! +! no further data extrapolation. ! +! =yyyy1: use yyyy data for the fcst. if needed, do ! +! extrapolation to match the fcst time. ! +! ioznflg : ozone data source control flag ! +! =0: use climatological ozone profile ! +! =1: use interactive ozone profile ! +! ialbflg : albedo scheme control flag ! +! =0: climatology, based on surface veg types ! +! =1: modis retrieval based surface albedo scheme ! +! iemsflg : emissivity scheme cntrl flag (ab 2-digit integer) ! +! a:=0 set sfc air/ground t same for lw radiation ! +! =1 set sfc air/ground t diff for lw radiation ! +! b:=0 use fixed sfc emissivity=1.0 (black-body) ! +! =1 use varying climtology sfc emiss (veg based) ! +! =2 future development (not yet) ! +! icldflg : cloud optical property scheme control flag ! +! =0: use diagnostic cloud scheme ! +! =1: use prognostic cloud scheme (default) ! +! imp_physics : cloud microphysics scheme control flag ! +! =99 zhao/carr/sundqvist microphysics scheme ! +! =98 zhao/carr/sundqvist microphysics+pdf cloud&cnvc,cnvw ! +! =11 GFDL cloud microphysics ! +! =8 Thompson microphysics scheme ! +! =6 WSM6 microphysics scheme ! +! =10 MG microphysics scheme ! +! iovrsw : control flag for cloud overlap in sw radiation ! +! iovrlw : control flag for cloud overlap in lw radiation ! +! =0: random overlapping clouds ! +! =1: max/ran overlapping clouds ! +! isubcsw : sub-column cloud approx control flag in sw radiation ! +! isubclw : sub-column cloud approx control flag in lw radiation ! +! =0: with out sub-column cloud approximation ! +! =1: mcica sub-col approx. prescribed random seed ! +! =2: mcica sub-col approx. provided random seed ! +! lcrick : control flag for eliminating CRICK ! +! =t: apply layer smoothing to eliminate CRICK ! +! =f: do not apply layer smoothing ! +! lcnorm : control flag for in-cld condensate ! +! =t: normalize cloud condensate ! +! =f: not normalize cloud condensate ! +! lnoprec : precip effect in radiation flag (ferrier microphysics) ! +! =t: snow/rain has no impact on radiation ! +! =f: snow/rain has impact on radiation ! +! ivflip : vertical index direction control flag ! +! =0: index from toa to surface ! +! =1: index from surface to toa ! +! ! +! subroutines called: sol_init, aer_init, gas_init, cld_init, ! +! sfc_init, rlwinit, rswinit ! +! ! +! usage: call radinit ! +! ! +! =================================================================== ! +! + + use module_radiation_astronomy, only : sol_init + use module_radiation_aerosols, only : aer_init + use module_radiation_gases, only : gas_init + use module_radiation_surface, only : sfc_init + use module_radiation_clouds, only : cld_init + ! DH* these should be called by rrtmgp_lw_init and rrtmgp_sw_init! + use rrtmg_sw, only : rswinit + + implicit none + +! --- inputs: + integer, intent(in) :: NLAY, me, imp_physics + + real (kind=kind_phys), intent(in) :: si(:) + +! --- outputs: (none, to module variables) + +! --- locals: + +! +!===> ... begin here +! +!> -# Set up control variables and external module variables in +!! module physparam +#if 0 + ! GFS_radiation_driver.F90 may in the future initialize air/ground + ! temperature differently; however, this is not used at the moment + ! and as such we avoid the difficulty of dealing with exchanging + ! itsfc between GFS_rrtmgp_setup and a yet-to-be-created/-used + ! interstitial routine (or GFS_radiation_driver.F90) + itsfc = iemsflg / 10 ! sfc air/ground temp control +#endif + loz1st = (ioznflg == 0) ! first-time clim ozone data read flag + month0 = 0 + iyear0 = 0 + monthd = 0 + + if (me == 0) then +! print *,' NEW RADIATION PROGRAM STRUCTURES -- SEP 01 2004' + print *,' NEW RADIATION PROGRAM STRUCTURES BECAME OPER. ', & + & ' May 01 2007' + print *, VTAGRAD !print out version tag + print *,' - Selected Control Flag settings: ICTMflg=',ictmflg, & + & ' ISOLar =',isolar, ' ICO2flg=',ico2flg,' IAERflg=',iaerflg, & + & ' IALBflg=',ialbflg,' IEMSflg=',iemsflg,' ICLDflg=',icldflg, & + & ' IMP_PHYSICS=',imp_physics,' IOZNflg=',ioznflg + print *,' IVFLIP=',ivflip,' IOVRSW=',iovrsw,' IOVRLW=',iovrlw, & + & ' ISUBCSW=',isubcsw,' ISUBCLW=',isubclw +! write(0,*)' IVFLIP=',ivflip,' IOVRSW=',iovrsw,' IOVRLW=',iovrlw,& +! & ' ISUBCSW=',isubcsw,' ISUBCLW=',isubclw + print *,' LCRICK=',lcrick,' LCNORM=',lcnorm,' LNOPREC=',lnoprec + print *,' LTP =',ltp,', add extra top layer =',lextop + + if ( ictmflg==0 .or. ictmflg==-2 ) then + print *,' Data usage is limited by initial condition!' + print *,' No volcanic aerosols' + endif + + if ( isubclw == 0 ) then + print *,' - ISUBCLW=',isubclw,' No McICA, use grid ', & + & 'averaged cloud in LW radiation' + elseif ( isubclw == 1 ) then + print *,' - ISUBCLW=',isubclw,' Use McICA with fixed ', & + & 'permutation seeds for LW random number generator' + elseif ( isubclw == 2 ) then + print *,' - ISUBCLW=',isubclw,' Use McICA with random ', & + & 'permutation seeds for LW random number generator' + else + print *,' - ERROR!!! ISUBCLW=',isubclw,' is not a ', & + & 'valid option ' + stop + endif + + if ( isubcsw == 0 ) then + print *,' - ISUBCSW=',isubcsw,' No McICA, use grid ', & + & 'averaged cloud in SW radiation' + elseif ( isubcsw == 1 ) then + print *,' - ISUBCSW=',isubcsw,' Use McICA with fixed ', & + & 'permutation seeds for SW random number generator' + elseif ( isubcsw == 2 ) then + print *,' - ISUBCSW=',isubcsw,' Use McICA with random ', & + & 'permutation seeds for SW random number generator' + else + print *,' - ERROR!!! ISUBCSW=',isubcsw,' is not a ', & + & 'valid option ' + stop + endif + + if ( isubcsw /= isubclw ) then + print *,' - *** Notice *** ISUBCSW /= ISUBCLW !!!', & + & isubcsw, isubclw + endif + endif + +!> -# Initialization +!! - astronomy initialization routine: +!! call module_radiation_astronomy::sol_init() +!! - aerosols initialization routine: +!! call module_radiation_aerosols::aer_init() +!! - CO2 and other gases intialization routine: +!! call module_radiation_gases::gas_init() +!! - surface intialization routine: +!! call module_radiation_surface::sfc_init() +!! - cloud initialization routine: +!! call module_radiation_clouds::cld_init() +!! - LW radiation initialization routine: +!! call module_radlw_main::rlwinit() +!! - SW radiation initialization routine: +!! call module_radsw_main::rswinit() +! Initialization + + call sol_init ( me ) ! --- ... astronomy initialization routine + + call aer_init ( NLAY, me ) ! --- ... aerosols initialization routine + + call gas_init ( me ) ! --- ... co2 and other gases initialization routine + + call sfc_init ( me ) ! --- ... surface initialization routine + + call cld_init ( si, NLAY, imp_physics, me) ! --- ... cloud initialization routine + + !call rlwinit ( me ) ! --- ... lw radiation initialization routine + + call rswinit ( me ) ! --- ... sw radiation initialization routine +! + return +!................................... + end subroutine radinit + !----------------------------------- + +!> This subroutine checks and updates time sensitive data used by +!! radiation computations. This subroutine needs to be placed inside +!! the time advancement loop but outside of the horizontal grid loop. +!! It is invoked at radiation calling frequncy but before any actual +!! radiative transfer computations. +!! \param idate NCEP absolute date and time of intial condition +!! (year,month,day,time-zone,hour,minute,second, +!! mil-second) +!! \param jdate NCEP absolute date and time at forecast time +!! (year,month,day,time-zone,hour,minute,second, +!! mil-second) +!! \param deltsw SW radiation calling time interval in seconds +!! \param deltim model advancing time-step duration in seconds +!! \param lsswr logical control flag for SW radiation calculations +!! \param me print control flag +!! \param slag equation of time in radians +!! \param sdec,cdec sine and cosine of the solar declination angle +!! \param solcon solar constant adjusted by sun-earth distance \f$(W/m^2)\f$ +!> \section gen_radupdate General Algorithm +!> @{ +!----------------------------------- + subroutine radupdate( idate,jdate,deltsw,deltim,lsswr, me, & + & slag,sdec,cdec,solcon) +!................................... + +! ================= subprogram documentation block ================ ! +! ! +! subprogram: radupdate calls many update subroutines to check and ! +! update radiation required but time varying data sets and module ! +! variables. ! +! ! +! usage: call radupdate ! +! ! +! attributes: ! +! language: fortran 90 ! +! machine: ibm sp ! +! ! +! ==================== definition of variables ==================== ! +! ! +! input parameters: ! +! idate(8) : ncep absolute date and time of initial condition ! +! (yr, mon, day, t-zone, hr, min, sec, mil-sec) ! +! jdate(8) : ncep absolute date and time at fcst time ! +! (yr, mon, day, t-zone, hr, min, sec, mil-sec) ! +! deltsw : sw radiation calling frequency in seconds ! +! deltim : model timestep in seconds ! +! lsswr : logical flags for sw radiation calculations ! +! me : print control flag ! +! ! +! outputs: ! +! slag : equation of time in radians ! +! sdec, cdec : sin and cos of the solar declination angle ! +! solcon : sun-earth distance adjusted solar constant (w/m2) ! +! ! +! external module variables: ! +! isolar : solar constant cntrl (in module physparam) ! +! = 0: use the old fixed solar constant in "physcon" ! +! =10: use the new fixed solar constant in "physcon" ! +! = 1: use noaa ann-mean tsi tbl abs-scale with cycle apprx! +! = 2: use noaa ann-mean tsi tbl tim-scale with cycle apprx! +! = 3: use cmip5 ann-mean tsi tbl tim-scale with cycl apprx! +! = 4: use cmip5 mon-mean tsi tbl tim-scale with cycl apprx! +! ictmflg : =yyyy#, external data ic time/date control flag ! +! = -2: same as 0, but superimpose seasonal cycle ! +! from climatology data set. ! +! = -1: use user provided external data for the ! +! forecast time, no extrapolation. ! +! = 0: use data at initial cond time, if not ! +! available, use latest, no extrapolation. ! +! = 1: use data at the forecast time, if not ! +! available, use latest and extrapolation. ! +! =yyyy0: use yyyy data for the forecast time, ! +! no further data extrapolation. ! +! =yyyy1: use yyyy data for the fcst. if needed, do ! +! extrapolation to match the fcst time. ! +! ! +! module variables: ! +! loz1st : first-time clim ozone data read flag ! +! ! +! subroutines called: sol_update, aer_update, gas_update ! +! ! +! =================================================================== ! +! + use module_radiation_astronomy, only : sol_update + use module_radiation_aerosols, only : aer_update + use module_radiation_gases, only : gas_update + + implicit none + +! --- inputs: + integer, intent(in) :: idate(:), jdate(:), me + logical, intent(in) :: lsswr + + real (kind=kind_phys), intent(in) :: deltsw, deltim + +! --- outputs: + real (kind=kind_phys), intent(out) :: slag, sdec, cdec, solcon + +! --- locals: + integer :: iyear, imon, iday, ihour + integer :: kyear, kmon, kday, khour + + logical :: lmon_chg ! month change flag + logical :: lco2_chg ! cntrl flag for updating co2 data + logical :: lsol_chg ! cntrl flag for updating solar constant +! +!===> ... begin here +! +!> -# Set up time stamp at fcst time and that for green house gases +!! (currently co2 only) +! --- ... time stamp at fcst time + + iyear = jdate(1) + imon = jdate(2) + iday = jdate(3) + ihour = jdate(5) + +! --- ... set up time stamp used for green house gases (** currently co2 only) + + if ( ictmflg==0 .or. ictmflg==-2 ) then ! get external data at initial condition time + kyear = idate(1) + kmon = idate(2) + kday = idate(3) + khour = idate(5) + else ! get external data at fcst or specified time + kyear = iyear + kmon = imon + kday = iday + khour = ihour + endif ! end if_ictmflg_block + + if ( month0 /= imon ) then + lmon_chg = .true. + month0 = imon + else + lmon_chg = .false. + endif + +!> -# Call module_radiation_astronomy::sol_update(), yearly update, no +!! time interpolation. + if (lsswr) then + + if ( isolar == 0 .or. isolar == 10 ) then + lsol_chg = .false. + elseif ( iyear0 /= iyear ) then + lsol_chg = .true. + else + lsol_chg = ( isolar==4 .and. lmon_chg ) + endif + iyear0 = iyear + + call sol_update & +! --- inputs: + & ( jdate,kyear,deltsw,deltim,lsol_chg, me, & +! --- outputs: + & slag,sdec,cdec,solcon & + & ) + + endif ! end_if_lsswr_block + +!> -# Call module_radiation_aerosols::aer_update(), monthly update, no +!! time interpolation + if ( lmon_chg ) then + call aer_update ( iyear, imon, me ) + endif + +!> -# Call co2 and other gases update routine: +!! module_radiation_gases::gas_update() + if ( monthd /= kmon ) then + monthd = kmon + lco2_chg = .true. + else + lco2_chg = .false. + endif + + call gas_update ( kyear,kmon,kday,khour,loz1st,lco2_chg, me ) + + if ( loz1st ) loz1st = .false. + +!> -# Call surface update routine (currently not needed) +! call sfc_update ( iyear, imon, me ) + +!> -# Call clouds update routine (currently not needed) +! call cld_update ( iyear, imon, me ) +! + return +!................................... + end subroutine radupdate +!----------------------------------- + +!! @} +end module GFS_rrtmgp_setup diff --git a/physics/GFS_rrtmgp_setup.xml b/physics/GFS_rrtmgp_setup.xml new file mode 100644 index 000000000..721534e4d --- /dev/null +++ b/physics/GFS_rrtmgp_setup.xml @@ -0,0 +1,504 @@ + + + + + date_and_time_at_model_initialization + initialization date and time + none + idate + integer + (:) + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + forecast_date_and_time + current forecast date and time + none + jdate + integer + (:) + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + frequency_for_shortwave_radiation + frequency for shortwave radiation + s + deltsw + real + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + time_step_for_dynamics + dynamics timestep + s + deltim + real + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + flag_to_calc_sw + logical flags for sw radiation calls + flag + lsswr + logical + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + mpi_rank + current MPI-rank + index + me + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + equation_of_time + equation of time (radian) + radians + slag + real + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + sine_of_solar_declination_angle + sin of the solar declination angle + none + sdec + real + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + cosine_of_solar_declination_angle + cos of the solar declination angle + none + cdec + real + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + solar_constant + solar constant (sun-earth distant adjusted) + W m-2 + solcon + real + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_run + + + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_finalize + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_finalize + + + + + vertical_sigma_coordinate_for_radiation_initialization + vertical sigma coordinate for radiation initialization + none + si + real + (:) + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + number_of_vertical_layers_for_radiation_calculations + number of vertical levels for radiation calculations + count + levr + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_initial_time-date_control + flag for initial conditions and forcing + flag + ictm + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_solar_constant + use prescribed solar constant + flag + isol + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_using_prescribed_global_mean_co2_value + prescribed global mean value (old opernl) + flag + ico2 + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_default_aerosol_effect_in_shortwave_radiation + default aerosol effect in sw only + flag + iaer + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_using_climatology_albedo + flag for using climatology alb, based on sfc type + flag + ialb + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_surface_emissivity_control + surface emissivity control flag, use fixed value of 1 + flag + iems + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + array_dimension_of_2d_arrays_for_microphysics + number of 2D arrays needed for microphysics + count + num_p2d + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + array_dimension_of_3d_arrays_for_microphysics + number of 3D arrays needed for microphysics + count + num_p3d + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + number_of_3d_arrays_associated_with_pdf-based_clouds + number of 3d arrays associated with pdf based clouds/mp + count + npdf3d + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + index_for_ozone + tracer index for ozone mixing ratio + index + ntoz + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_max-random_overlap_clouds_for_shortwave_radiation + sw: max-random overlap clouds + flag + iovr_sw + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_max-random_overlap_clouds_for_longwave_radiation + lw: max-random overlap clouds + flag + iovr_lw + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_sw_clouds_without_sub-grid_approximation + flag for sw clouds without sub-grid approximation + flag + isubc_sw + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_lw_clouds_without_sub-grid_approximation + flag for lw clouds without sub-grid approximation + flag + isubc_lw + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_optical_property_for_liquid_clouds_for_shortwave_radiation + sw optical property for liquid clouds + flag + icliq_sw + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_CRICK-proof_cloud_water + flag for CRICK-Proof cloud water + flag + crick_proof + logical + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_cloud_condensate_normalized_by_cloud_cover + flag for cloud condensate normalized by cloud cover + flag + ccnorm + logical + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_precipitation_effect_on_radiation + radiation precip flag for Ferrier/Moorthi + flag + norad_precip + logical + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + date_and_time_at_model_initialization_reordered + initialization date and time + none + idate + integer + (:) + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + flag_for_vertical_index_direction_control + flag for vertical index direction control + flag + iflip + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + aerosol_optical_properties_for_longwave_bands_01-16 + optical properties for longwave bands 01-16 + various + faerlw + real + (:,:,:,:) + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + aerosol_optical_properties_for_shortwave_bands_01-16 + aerosol optical properties for shortwave bands 01-16 + various + faersw + real + (:,:,:,:) + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + atmosphere_optical_thickness_due_to_ambient_aerosol_particles + vertical integrated optical depth for various aerosol species + none + aerodp + real + (:,:) + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + mpi_rank + current MPI-rank + index + me + integer + + in + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_rrtmgp_setup SCHEME_GFS_rrtmgp_setup SUBROUTINE_GFS_rrtmgp_setup_init + + + diff --git a/physics/GFS_suite_interstitial_1.xml b/physics/GFS_suite_interstitial_1.xml new file mode 100644 index 000000000..75b62c906 --- /dev/null +++ b/physics/GFS_suite_interstitial_1.xml @@ -0,0 +1,304 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + critical_relative_humidity_at_sfc_pbltop_toa + critical relative humidity at SFC, PBL top and TOA + frac + crtrh + real + (:) + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + time_step_for_dynamics + dynamics timestep + s + dtf + real + + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + time_step_for_physics + physics timestep + s + dtp + real + + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + sea_land_ice_mask_real + landmask: sea/land/ice=0/1/2 + flag + slmsk + real + (:) + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + cell_area + area of the grid cell + m2 + area + real + (:) + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + minimum_scaling_factor_for_critical_relative_humidity + minimum scaling factor for critical relative humidity + m2 rad-2 + dxmin + real + + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + inverse_scaling_factor_for_critical_relative_humidity + inverse scaling factor for critical relative humidity + rad2 m-2 + dxinv + real + + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + surface_air_pressure + surface pressure + Pa + pgr + real + (:) + in + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + critical_relative_humidity_at_surface + critical relative humidity at the surface + frac + rhbbot + real + + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + critical_relative_humidity_at_PBL_top + critical relative humidity at the PBL top + frac + rhpbl + real + + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + critical_relative_humidity_at_top_of_atmosphere + critical relative humidity at the top of atmosphere + frac + rhbtop + real + + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + dynamics_to_physics_timestep_ratio + ratio of dynamics timestep to physics timestep + none + frain + real + + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islmsk + integer + (:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + land_area_fraction + land area fraction + frac + frland + real + (:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes + grid size related coefficient used in scale-sensitive schemes + none + work1 + real + (:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes_complement + complement to work1 + none + work2 + real + (:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + surface_air_pressure_diag + surface air pressure diagnostic + Pa + psurf + real + (:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + tendency_of_x_wind_due_to_model_physics + updated tendency of the x wind + m s-2 + dudt + real + (:,:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + tendency_of_y_wind_due_to_model_physics + updated tendency of the y wind + m s-2 + dvdt + real + (:,:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + tendency_of_air_temperature_due_to_model_physics + updated tendency of the temperature + K s-1 + dtdt + real + (:,:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + tendency_of_air_temperature_due_to_radiative_heating_assuming_clear_sky + clear sky radiative (shortwave + longwave) heating rate at current time + K s-1 + dtdtc + real + (:,:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + tendency_of_tracers_due_to_model_physics + updated tendency of the tracers + kg kg-1 s-1 + dqdt + real + (:,:,:) + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_suite_interstitial_1 SCHEME_GFS_suite_interstitial_1 SUBROUTINE_GFS_suite_interstitial_1_run + + + diff --git a/physics/GFS_suite_interstitial_2.xml b/physics/GFS_suite_interstitial_2.xml new file mode 100644 index 000000000..0ca462da8 --- /dev/null +++ b/physics/GFS_suite_interstitial_2.xml @@ -0,0 +1,546 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_diagnostics + logical flag for storing diagnostics + flag + lssav + logical + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_diagnostics_3D + flag for 3d diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_idealized_physics + flag for idealized physics + flag + lsidea + logical + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_for_flux_coupling + flag controlling cplflx collection (default off) + flag + cplflx + logical + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_for_cice + flag for cice + flag + flag_cice + logical + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_for_shallow_convection + flag for calling shallow convection + flag + shal_cnv + logical + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_for_old_PBL_scheme + flag for using old PBL schemes + flag + old_monin + logical + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_for_moorthi_stratus + flag for moorthi approach for stratus + flag + mstrat + logical + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_for_shoc + flag for SHOC + flag + do_shoc + logical + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + flag_for_mass_flux_shallow_convection_scheme + flag for mass-flux shallow convection scheme + flag + imfshalcnv + integer + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + time_step_for_dynamics + dynamics timestep + s + dtf + real + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + instantaneous_cosine_of_zenith_angle + cosine of zenith angle at current time + none + xcosz + real + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + surface_downwelling_shortwave_flux + surface downwelling shortwave flux at current time + W m-2 + adjsfcdsw + real + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + surface_downwelling_longwave_flux + surface downwelling longwave flux at current time + W m-2 + adjsfcdlw + real + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + surface_air_pressure + surface pressure + Pa + pgr + real + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + surface_upwelling_longwave_flux_for_cice + surface upwelling longwave flux for cice + W m-2 + ulwsfc_cice + real + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + tendency_of_air_temperature_due_to_longwave_heating_for_idea + idea sky lw heating rates + K s-1 + lwhd + real + (:,:,:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + tendency_of_air_temperature_due_to_shortwave_heating_on_radiation_timestep + total sky sw heating rate + K s-1 + htrsw + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_timestep + total sky lw heating rate + K s-1 + htrlw + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + zenith_angle_temporal_adjustment_factor_for_shortwave_fluxes + zenith angle temporal adjustment factor for shortwave fluxes + none + xmu + real + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + critical_cloud_top_entrainment_instability_criteria + critical cloud top entrainment instability criteria + none + ctei_rm + real + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes + grid size related coefficient used in scale-sensitive schemes + none + work1 + real + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes_complement + complement to work1 + none + work2 + real + (:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + air_pressure_at_interface + air pressure at model layer interfaces + Pa + prsi + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + air_temperature + model layer mean temperature + K + tgrs + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + water_vapor_specific_humidity + water vapor specific humidity + kg kg-1 + qgrs_water_vapor + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cloud_condensed_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) + kg kg-1 + qgrs_cloud_water + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + latent_heat_of_vaporization_of_water_at_0C + latent heat of evaporation/sublimation + J kg-1 + hvap + real + + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + dimensionless_exner_function_at_model_layers + dimensionless Exner function at model layer centers + none + prslk + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + duration_of_sunshine + sunshine duration time + s + suntim + real + (:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + surface_upwelling_longwave_flux + surface upwelling longwave flux at current time + W m-2 + adjsfculw + real + (:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cumulative_surface_downwelling_longwave_flux_multiplied_by_timestep + cumulative surface downwelling LW flux multiplied by timestep + W m-2 s + dlwsfc + real + (:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cumulative_surface_upwelling_longwave_flux_multiplied_by_timestep + cumulative surface upwelling LW flux multiplied by timestep + W m-2 s + ulwsfc + real + (:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cumulative_surface_pressure_multiplied_by_timestep + cumulative surface pressure multiplied by timestep + Pa s + psmean + real + (:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cumulative_change_in_temperature_due_to_longwave_radiation + cumulative change in temperature due to longwave radiation + K + dt3dt_lw + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cumulative_change_in_temperature_due_to_shortwave_radiation_and_orographic_gravity_wave_drag + cumulative change in temperature due to SW rad and oro. GWD + K + dt3dt_sw + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cumulative_change_in_temperature_due_to_PBL + cumulative change in temperature due to PBL + K + dt3dt_pbl + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cumulative_change_in_temperature_due_to_deep_convection + cumulative change in temperature due to deep conv. + K + dt3dt_dcnv + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cumulative_change_in_temperature_due_to_shal_convection + cumulative change in temperature due to shal conv. + K + dt3dt_scnv + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cumulative_change_in_temperature_due_to_microphysics + cumulative change in temperature due to microphysics + K + dt3dt_mp + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + grid_sensitive_critical_cloud_top_entrainment_instability_criteria + grid sensitive critical cloud top entrainment instability criteria + none + ctei_rml + real + (:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + cloud_top_entrainment_instability_value + cloud top entrainment instability value + none + ctei_r + real + (:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + index_of_highest_temperature_inversion + index of highest temperature inversion + index + kinver + integer + (:) + inout + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_suite_interstitial_2 SCHEME_GFS_suite_interstitial_2 SUBROUTINE_GFS_suite_interstitial_2_run + + + diff --git a/physics/GFS_suite_interstitial_3.xml b/physics/GFS_suite_interstitial_3.xml new file mode 100644 index 000000000..0d86c6ca9 --- /dev/null +++ b/physics/GFS_suite_interstitial_3.xml @@ -0,0 +1,491 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + number_of_tracers_for_convective_transport + number of tracers for convective transport + count + nn + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_Chikira_Sugiyama_deep_convection + flag for Chikira-Sugiyama convection + flag + cscnv + logical + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_scale_aware_TKE_moist_EDMF_PBL + flag for scale-aware TKE moist EDMF PBL scheme + flag + satmedmf + logical + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_convective_transport_of_tracers + flag for convective transport of tracers + flag + trans_trac + logical + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_shoc + flag for SHOC + flag + do_shoc + logical + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_aerosol_physics + flag for aerosol physics + flag + ltaerosol + logical + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + index_for_ice_cloud_condensate + tracer index for ice water + index + ntiw + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + index_for_cloud_amount + tracer index for cloud amount integer + index + ntclamt + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + index_for_rain_water + tracer index for rain water + index + ntrw + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + index_for_snow_water + tracer index for snow water + index + ntsw + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + index_for_rain_number_concentration + tracer index for rain number concentration + index + ntrnc + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + index_for_snow_number_concentration + tracer index for snow number concentration + index + ntsnc + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + index_for_graupel + tracer index for graupel + index + ntgl + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + index_for_graupel_number_concentration + tracer index for graupel number concentration + index + ntgnc + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + latitude + latitude + radians + xlat + real + (:) + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + tracer_concentration_updated_by_physics + tracer concentration updated by physics + kg kg-1 + gq0 + real + (:,:,:) + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_morrison_gettelman_microphysics_scheme + choice of Morrison-Gettelman rmicrophysics scheme + flag + imp_physics_mg + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_zhao_carr_microphysics_scheme + choice of Zhao-Carr microphysics scheme + flag + imp_physics_zhao_carr + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_zhao_carr_pdf_microphysics_scheme + choice of Zhao-Carr microphysics scheme with PDF clouds + flag + imp_physics_zhao_carr_pdf + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_gfdl_microphysics_scheme + choice of GFDL microphysics scheme + flag + imp_physics_gfdl + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_thompson_microphysics_scheme + choice of Thompson microphysics scheme + flag + imp_physics_thompson + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + flag_for_wsm6_microphysics_scheme + choice of WSM6 microphysics scheme + flag + imp_physics_wsm6 + integer + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + air_pressure_at_interface + air pressure at model layer interfaces + Pa + prsi + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + dimensionless_exner_function_at_model_layers + dimensionless Exner function at model layer centers + none + prslk + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + critical_relative_humidity_at_surface + critical relative humidity at the surface + frac + rhcbot + real + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + critical_relative_humidity_at_PBL_top + critical relative humidity at the PBL top + frac + rhcpbl + real + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + critical_relative_humidity_at_top_of_atmosphere + critical relative humidity at the top of atmosphere + frac + rhctop + real + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + maximum_critical_relative_humidity + maximum critical relative humidity + frac + rhcmax + real + + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + sea_land_ice_mask + sea/land/ice mask (=0/1/2) + flag + islmsk + integer + (:) + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes + grid size related coefficient used in scale-sensitive schemes + none + work1 + real + (:) + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes_complement + complement to work1 + none + work2 + real + (:) + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + vertical_index_at_top_of_atmosphere_boundary_layer + vertical index at top atmospheric boundary layer + index + kpbl + integer + (:) + in + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + convective_transportable_tracers + array to contain cloud water and other convective trans. tracers + kg kg-1 + clw + real + (:,:,:) + inout + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + critical_relative_humidity + critical relative humidity + frac + rhc + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + cloud_condensed_water_mixing_ratio_save + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) before entering a physics scheme + kg kg-1 + save_qc + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + ice_water_mixing_ratio_save + cloud ice water mixing ratio before entering a physics scheme + kg kg-1 + save_qi + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_suite_interstitial_3 SCHEME_GFS_suite_interstitial_3 SUBROUTINE_GFS_suite_interstitial_3_run + + + + + diff --git a/physics/GFS_suite_interstitial_4.xml b/physics/GFS_suite_interstitial_4.xml new file mode 100644 index 000000000..55f20f091 --- /dev/null +++ b/physics/GFS_suite_interstitial_4.xml @@ -0,0 +1,359 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + flag_for_aerosol_physics + flag for aerosol physics + flag + ltaerosol + logical + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + flag_gocart + flag for 3d diagnostic fields for gocart 1 + flag + lgocart + logical + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + number_of_total_tracers + total number of tracers + count + tracers_total + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_ice_cloud_condensate + tracer index for ice water + index + ntiw + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_cloud_amount + tracer index for cloud amount integer + index + ntclamt + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_rain_water + tracer index for rain water + index + ntrw + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_snow_water + tracer index for snow water + index + ntsw + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_rain_number_concentration + tracer index for rain number concentration + index + ntrnc + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_snow_number_concentration + tracer index for snow number concentration + index + ntsnc + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_graupel + tracer index for graupel + index + ntgl + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_graupel_number_concentration + tracer index for graupel number concentration + index + ntgnc + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_liquid_cloud_number_concentration + tracer index for liquid number concentration + index + ntlnc + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + index_for_ice_cloud_number_concentration + tracer index for ice number concentration + index + ntinc + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + number_of_tracers_for_convective_transport + number of tracers for convective transport + count + nn + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + flag_for_gfdl_microphysics_scheme + choice of GFDL microphysics scheme + flag + imp_physics_gfdl + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + flag_for_thompson_microphysics_scheme + choice of Thompson microphysics scheme + flag + imp_physics_thompson + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + flag_for_zhao_carr_microphysics_scheme + choice of Zhao-Carr microphysics scheme + flag + imp_physics_zhao_carr + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + flag_for_zhao_carr_pdf_microphysics_scheme + choice of Zhao-Carr microphysics scheme with PDF clouds + flag + imp_physics_zhao_carr_pdf + integer + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + time_step_for_dynamics + dynamics timestep + s + dtf + real + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + cloud_condensed_water_mixing_ratio_save + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) before entering a physics scheme + kg kg-1 + save_qc + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + ice_water_mixing_ratio_save + cloud ice water mixing ratio before entering a physics scheme + kg kg-1 + save_qi + real + (:,:) + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + pi + ratio of a circle's circumference to its diameter + radians + con_pi + real + + in + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + tracer_concentration_updated_by_physics + tracer concentration updated by physics + kg kg-1 + gq0 + real + (:,:,:) + inout + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + convective_transportable_tracers + array to contain cloud water and other convective trans. tracers + kg kg-1 + clw + real + (:,:,:) + inout + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + instantaneous_water_vapor_specific_humidity_tendency_due_to_convection + instantaneous moisture tendency due to convection + kg kg-1 s-1 + dqdti + real + (:,:) + inout + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_suite_interstitial_4 SCHEME_GFS_suite_interstitial_4 SUBROUTINE_GFS_suite_interstitial_4_run + + + + diff --git a/physics/GFS_suite_interstitial_phys_reset.xml b/physics/GFS_suite_interstitial_phys_reset.xml new file mode 100644 index 000000000..d4b859976 --- /dev/null +++ b/physics/GFS_suite_interstitial_phys_reset.xml @@ -0,0 +1,51 @@ + + + + + + GFS_interstitial_type_instance + derived type GFS_interstitial_type in FV3 + DDT + Interstitial + GFS_interstitial_type + + inout + F + MODULE_GFS_suite_interstitial_phys_reset SCHEME_GFS_suite_interstitial_phys_reset SUBROUTINE_GFS_suite_interstitial_phys_reset_run + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_GFS_suite_interstitial_phys_reset SCHEME_GFS_suite_interstitial_phys_reset SUBROUTINE_GFS_suite_interstitial_phys_reset_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_suite_interstitial_phys_reset SCHEME_GFS_suite_interstitial_phys_reset SUBROUTINE_GFS_suite_interstitial_phys_reset_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_suite_interstitial_phys_reset SCHEME_GFS_suite_interstitial_phys_reset SUBROUTINE_GFS_suite_interstitial_phys_reset_run + + + + diff --git a/physics/GFS_suite_interstitial_rad_reset.xml b/physics/GFS_suite_interstitial_rad_reset.xml new file mode 100644 index 000000000..d4c661151 --- /dev/null +++ b/physics/GFS_suite_interstitial_rad_reset.xml @@ -0,0 +1,40 @@ + + + + + + GFS_interstitial_type_instance + derived type GFS_interstitial_type in FV3 + DDT + Interstitial + GFS_interstitial_type + + inout + F + MODULE_GFS_suite_interstitial_rad_reset SCHEME_GFS_suite_interstitial_rad_reset SUBROUTINE_GFS_suite_interstitial_rad_reset_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_suite_interstitial_rad_reset SCHEME_GFS_suite_interstitial_rad_reset SUBROUTINE_GFS_suite_interstitial_rad_reset_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_suite_interstitial_rad_reset SCHEME_GFS_suite_interstitial_rad_reset SUBROUTINE_GFS_suite_interstitial_rad_reset_run + + + + diff --git a/physics/GFS_suite_stateout_reset.xml b/physics/GFS_suite_stateout_reset.xml new file mode 100644 index 000000000..000c35641 --- /dev/null +++ b/physics/GFS_suite_stateout_reset.xml @@ -0,0 +1,150 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + air_temperature + model layer mean temperature + K + tgrs + real + (:,:) + in + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + x_wind + zonal wind + m s-1 + ugrs + real + (:,:) + in + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + y_wind + meridional wind + m s-1 + vgrs + real + (:,:) + in + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + tracer_concentration + model layer mean tracer concentration + kg kg-1 + qgrs + real + (:,:,:) + in + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + out + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + x_wind_updated_by_physics + zonal wind updated by physics + m s-1 + gu0 + real + (:,:) + out + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + y_wind_updated_by_physics + meridional wind updated by physics + m s-1 + gv0 + real + (:,:) + out + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + tracer_concentration_updated_by_physics + tracer concentration updated by physics + kg kg-1 + gq0 + real + (:,:,:) + out + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_suite_stateout_reset SCHEME_GFS_suite_stateout_reset SUBROUTINE_GFS_suite_stateout_reset_run + + + diff --git a/physics/GFS_suite_stateout_update.xml b/physics/GFS_suite_stateout_update.xml new file mode 100644 index 000000000..2c049e822 --- /dev/null +++ b/physics/GFS_suite_stateout_update.xml @@ -0,0 +1,205 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + time_step_for_physics + physics timestep + s + dtp + real + + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + air_temperature + model layer mean temperature + K + tgrs + real + (:,:) + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + x_wind + zonal wind + m s-1 + ugrs + real + (:,:) + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + y_wind + meridional wind + m s-1 + vgrs + real + (:,:) + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + tracer_concentration + model layer mean tracer concentration + kg kg-1 + qgrs + real + (:,:,:) + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + tendency_of_x_wind_due_to_model_physics + updated tendency of the x wind + m s-2 + dudt + real + (:,:) + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + tendency_of_y_wind_due_to_model_physics + updated tendency of the y wind + m s-2 + dvdt + real + (:,:) + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + tendency_of_air_temperature_due_to_model_physics + updated tendency of the temperature + K s-1 + dtdt + real + (:,:) + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + tendency_of_tracers_due_to_model_physics + updated tendency of the tracers + kg kg-1 s-1 + dqdt + real + (:,:,:) + in + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + out + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + x_wind_updated_by_physics + zonal wind updated by physics + m s-1 + gu0 + real + (:,:) + out + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + y_wind_updated_by_physics + meridional wind updated by physics + m s-1 + gv0 + real + (:,:) + out + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + tracer_concentration_updated_by_physics + tracer concentration updated by physics + kg kg-1 + gq0 + real + (:,:,:) + out + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_suite_stateout_update SCHEME_GFS_suite_stateout_update SUBROUTINE_GFS_suite_stateout_update_run + + + + diff --git a/physics/GFS_surface_generic_post.xml b/physics/GFS_surface_generic_post.xml new file mode 100644 index 000000000..e71131bcb --- /dev/null +++ b/physics/GFS_surface_generic_post.xml @@ -0,0 +1,942 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + flag_for_flux_coupling + flag controlling cplflx collection (default off) + flag + cplflx + logical + + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + flag_diagnostics + logical flag for storing diagnostics + flag + lssav + logical + + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islmsk + integer + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + time_step_for_dynamics + dynamics timestep + s + dtf + real + + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_upward_potential_latent_heat_flux + surface upward potential latent heat flux + W m-2 + ep1d + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + upward_heat_flux_in_soil + upward soil heat flux + W m-2 + gflx + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + air_temperature_at_lowest_model_layer + mean temperature at lowest model layer + K + tgrs_1 + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + water_vapor_specific_humidity_at_lowest_model_layer + specific humidity at lowest model layer + kg kg-1 + qgrs_1 + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + x_wind_at_lowest_model_layer + zonal wind at lowest model layer + m s-1 + ugrs_1 + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + y_wind_at_lowest_model_layer + meridional wind at lowest model layer + m s-1 + vgrs_1 + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_downwelling_longwave_flux + surface downwelling longwave flux at current time + W m-2 + adjsfcdlw + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_downwelling_shortwave_flux + surface downwelling shortwave flux at current time + W m-2 + adjsfcdsw + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_downwelling_direct_near_infrared_shortwave_flux + surface downwelling beam near-infrared shortwave flux at current time + W m-2 + adjnirbmd + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_downwelling_diffuse_near_infrared_shortwave_flux + surface downwelling diffuse near-infrared shortwave flux at current time + W m-2 + adjnirdfd + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_downwelling_direct_ultraviolet_and_visible_shortwave_flux + surface downwelling beam ultraviolet plus visible shortwave flux at current time + W m-2 + adjvisbmd + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_downwelling_diffuse_ultraviolet_and_visible_shortwave_flux + surface downwelling diffuse ultraviolet plus visible shortwave flux at current time + W m-2 + adjvisdfd + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_upwelling_longwave_flux + surface upwelling longwave flux at current time + W m-2 + adjsfculw + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_upwelling_direct_near_infrared_shortwave_flux + surface upwelling beam near-infrared shortwave flux at current time + W m-2 + adjnirbmu + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_upwelling_diffuse_near_infrared_shortwave_flux + surface upwelling diffuse near-infrared shortwave flux at current time + W m-2 + adjnirdfu + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_upwelling_direct_ultraviolet_and_visible_shortwave_flux + surface upwelling beam ultraviolet plus visible shortwave flux at current time + W m-2 + adjvisbmu + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_upwelling_diffuse_ultraviolet_and_visible_shortwave_flux + surface upwelling diffuse ultraviolet plus visible shortwave flux at current time + W m-2 + adjvisdfu + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + temperature_at_2m + 2 meter temperature + K + t2m + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + specific_humidity_at_2m + 2 meter specific humidity + kg kg-1 + q2m + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + x_wind_at_10m + 10 meter u wind speed + m s-1 + u10m + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + y_wind_at_10m + 10 meter v wind speed + m s-1 + v10m + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_skin_temperature + surface skin temperature + K + tsfc + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_air_pressure + surface pressure + Pa + pgr + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_cosine_of_zenith_angle + cosine of zenith angle at current time + none + xcosz + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + soil_upward_latent_heat_flux + soil upward latent heat flux + W m-2 + evbs + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + canopy_upward_latent_heat_flux + canopy upward latent heat flux + W m-2 + evcw + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + transpiration_flux + total plant transpiration rate + kg m-2 s-1 + trans + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + snow_deposition_sublimation_upward_latent_heat_flux + latent heat flux from snow depo/subl + W m-2 + sbsno + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_snow_area_fraction + surface snow area fraction + frac + snowc + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + snow_freezing_rain_upward_latent_heat_flux + latent heat flux due to snow and frz rain + W m-2 + snohf + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_potential_evaporation + instantaneous sfc potential evaporation + W m-2 + epi + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_ground_heat_flux + instantaneous sfc ground heat flux + W m-2 + gfluxi + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + air_temperature_at_lowest_model_layer_for_diag + layer 1 temperature for diag + K + t1 + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + water_vapor_specific_humidity_at_lowest_model_layer_for_diag + layer 1 specific humidity for diag + kg kg-1 + q1 + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + x_wind_at_lowest_model_layer_for_diag + layer 1 x wind for diag + m s-1 + u1 + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + y_wind_at_lowest_model_layer_for_diag + layer 1 y wind for diag + m s-1 + v1 + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_downwelling_longwave_flux_for_coupling + instantaneous sfc downward lw flux + W m-2 + dlwsfci_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_downwelling_shortwave_flux_for_coupling + instantaneous sfc downward sw flux + W m-2 + dswsfci_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_downwelling_longwave_flux_for_coupling_multiplied_by_timestep + cumulative sfc downward lw flux mulitplied by timestep + W m-2 s + dlwsfc_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_downwelling_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative sfc downward sw flux multiplied by timestep + W m-2 s + dswsfc_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_downwelling_direct_near_infrared_shortwave_flux_for_coupling + instantaneous sfc nir beam downward sw flux + W m-2 + dnirbmi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_downwelling_diffuse_near_infrared_shortwave_flux_for_coupling + instantaneous sfc nir diff downward sw flux + W m-2 + dnirdfi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_downwelling_direct_ultraviolet_and_visible_shortwave_flux_for_coupling + instantaneous sfc uv+vis beam downward sw flux + W m-2 + dvisbmi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_downwelling_diffuse_ultraviolet_and_visible_shortwave_flux_for_coupling + instantaneous sfc uv+vis diff downward sw flux + W m-2 + dvisdfi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_downwelling_direct_near_infrared_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative sfc nir beam downward sw flux multiplied by timestep + W m-2 s + dnirbm_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_downwelling_diffuse_near_infrared_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative sfc nir diff downward sw flux multiplied by timestep + W m-2 s + dnirdf_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_downwelling_direct_ultraviolet_and_visible_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative sfc uv+vis beam dnwd sw flux multiplied by timestep + W m-2 s + dvisbm_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_downwelling_diffuse_ultraviolet_and_visible_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative sfc uv+vis diff dnwd sw flux multiplied by timestep + W m-2 s + dvisdf_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_net_downward_longwave_flux_for_coupling + instantaneous net sfc downward lw flux + W m-2 + nlwsfci_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_net_downward_longwave_flux_for_coupling_multiplied_by_timestep + cumulative net downward lw flux multiplied by timestep + W m-2 s + nlwsfc_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_temperature_at_2m_for_coupling + instantaneous T2m + K + t2mi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_specific_humidity_at_2m_for_coupling + instantaneous Q2m + kg kg-1 + q2mi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_x_wind_at_10m_for_coupling + instantaneous U10m + m s-1 + u10mi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_y_wind_at_10m_for_coupling + instantaneous V10m + m s-1 + v10mi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_skin_temperature_for_coupling + instantaneous sfc temperature + K + tsfci_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_air_pressure_for_coupling + instantaneous sfc pressure + Pa + psurfi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_net_downward_direct_near_infrared_shortwave_flux_for_coupling + instantaneous net nir beam sfc downward sw flux + W m-2 + nnirbmi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_net_downward_diffuse_near_infrared_shortwave_flux_for_coupling + instantaneous net nir diff sfc downward sw flux + W m-2 + nnirdfi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_net_downward_direct_ultraviolet_and_visible_shortwave_flux_for_coupling + instantaneous net uv+vis beam downward sw flux + W m-2 + nvisbmi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_net_downward_diffuse_ultraviolet_and_visible_shortwave_flux_for_coupling + instantaneous net uv+vis diff downward sw flux + W m-2 + nvisdfi_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + instantaneous_surface_net_downward_shortwave_flux_for_coupling + instantaneous net sfc downward sw flux + W m-2 + nswsfci_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_net_downward_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative net downward sw flux multiplied by timestep + W m-2 s + nswsfc_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_net_downward_direct_near_infrared_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative net nir beam downward sw flux multiplied by timestep + W m-2 s + nnirbm_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_net_downward_diffuse_near_infrared_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative net nir diff downward sw flux multiplied by timestep + W m-2 s + nnirdf_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_net_downward_direct_ultraviolet_and_visible_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative net uv+vis beam downward sw rad flux multiplied by timestep + W m-2 s + nvisbm_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_net_downward_diffuse_ultraviolet_and_visible_shortwave_flux_for_coupling_multiplied_by_timestep + cumulative net uv+vis diff downward sw rad flux multiplied by timestep + W m-2 s + nvisdf_cpl + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_ground_heat_flux_multiplied_by_timestep + cumulative groud conductive heat flux multiplied by timestep + W m-2 s + gflux + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_soil_upward_latent_heat_flux_multiplied_by_timestep + cumulative soil upward latent heat flux multiplied by timestep + W m-2 s + evbsa + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_canopy_upward_latent_heat_flu_multiplied_by_timestep + cumulative canopy upward latent heat flux multiplied by timestep + W m-2 s + evcwa + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_transpiration_flux_multiplied_by_timestep + cumulative total plant transpiration rate multiplied by timestep + kg m-2 + transa + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_snow_deposition_sublimation_upward_latent_heat_flux_multiplied_by_timestep + cumulative latent heat flux from snow depo/subl multiplied by timestep + W m-2 s + sbsnoa + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_snow_area_fraction_multiplied_by_timestep + cumulative surface snow area fraction multiplied by timestep + s + snowca + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_snow_freezing_rain_upward_latent_heat_flux_multiplied_by_timestep + cumulative latent heat flux due to snow and frz rain multiplied by timestep + W m-2 s + snohfa + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + cumulative_surface_upward_potential_latent_heat_flux_multiplied_by_timestep + cumulative surface upward potential latent heat flux multiplied by timestep + W m-2 s + ep + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + total_runoff + total water runoff + kg m-2 + runoff + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_runoff + surface water runoff (from lsm) + kg m-2 + srunoff + real + (:) + inout + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + surface_runoff_flux + surface runoff flux + g m-2 s-1 + runof + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + subsurface_runoff_flux + subsurface runoff flux + g m-2 s-1 + drain + real + (:) + in + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_surface_generic_post SCHEME_GFS_surface_generic_post SUBROUTINE_GFS_surface_generic_post_run + + + + + diff --git a/physics/GFS_surface_generic_pre.xml b/physics/GFS_surface_generic_pre.xml new file mode 100644 index 000000000..fa8a5f525 --- /dev/null +++ b/physics/GFS_surface_generic_pre.xml @@ -0,0 +1,502 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + vertical_dimension + number of vertical levels + count + levs + integer + + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + vegetation_area_fraction + areal fractional cover of green vegetation + frac + vfrac + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islmsk + integer + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + soil_type_dataset_choice + soil type dataset choice + index + isot + integer + + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + vegetation_type_dataset_choice + land use dataset choice + index + ivegsrc + integer + + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + soil_type_classification_real + soil type for lsm + index + stype + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + vegetation_type_classification_real + vegetation type for lsm + index + vtype + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + surface_slope_classification_real + sfc slope type for lsm + index + slope + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + dimensionless_exner_function_at_lowest_model_interface + dimensionless Exner function at lowest model interface + none + prsik_1 + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + dimensionless_exner_function_at_lowest_model_layer + dimensionless Exner function at lowest model layer + none + prslk_1 + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + surface_longwave_emissivity + surface lw emissivity in fraction + frac + semis + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + surface_downwelling_longwave_flux + surface downwelling longwave flux at current time + W m-2 + adjsfcdlw + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + surface_skin_temperature + surface skin temperature + K + tsfc + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + geopotential + geopotential at model layer centers + m2 s-2 + phil + real + (:,:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + bounded_vegetation_area_fraction + areal fractional cover of green vegetation bounded on the bottom + frac + sigmaf + real + (:) + inout + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + soil_type_classification + soil type at each grid cell + index + soiltyp + integer + (:) + inout + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + vegetation_type_classification + vegetation type at each grid cell + index + vegtype + integer + (:) + inout + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + surface_slope_classification + surface slope type at each grid cell + index + slopetyp + integer + (:) + inout + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + ratio_of_exner_function_between_midlayer_and_interface_at_lowest_model_layer + Exner function ratio bt midlayer and interface at 1st layer + ratio + work3 + real + (:) + inout + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + surface_downwelling_longwave_flux_absorbed_by_ground + total sky surface downward longwave flux absorbed by the ground + W m-2 + gabsbdlw + real + (:) + inout + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + surface_skin_temperature_after_iteration + surface skin temperature after iteration + K + tsurf + real + (:) + inout + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + height_above_ground_at_lowest_model_layer + layer 1 height above ground (not MSL) + m + zlvl + real + (:) + inout + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + flag_for_stochastic_surface_physics_perturbations + flag for stochastic surface physics perturbations + flag + do_sppt + logical + + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + tendency_of_air_temperature_due_to_radiative_heating_on_physics_time_step + temp. change due to radiative heating per time step + K + dtdtr + real + (:,:) + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + tendency_of_lwe_thickness_of_precipitation_amount_for_coupling + change in rain_cpl (coupling_type) + m + drain_cpl + real + (:) + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + tendency_of_lwe_thickness_of_snow_amount_for_coupling + change in show_cpl (coupling_type) + m + dsnow_cpl + real + (:) + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + lwe_thickness_of_precipitation_amount_for_coupling + total rain precipitation + m + rain_cpl + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + lwe_thickness_of_snow_amount_for_coupling + total snow precipitation + m + snow_cpl + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + flag_for_stochastic_surface_perturbations + flag for stochastic surface perturbations option + flag + do_sfcperts + logical + + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + number_of_surface_perturbations + number of surface perturbations + count + nsfcpert + integer + + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + weights_for_stochastic_surface_physics_perturbation + weights for stochastic surface physics perturbation + none + sfc_wts + real + (:,:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + magnitude_of_perturbation_of_momentum_roughness_length + magnitude of perturbation of momentum roughness length + frac + pertz0 + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + magnitude_of_perturbation_of_heat_to_momentum_roughness_length_ratio + magnitude of perturbation of heat to momentum roughness length r. + frac + pertzt + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + magnitude_of_perturbation_of_soil_type_b_parameter + magnitude of perturbation of soil type b parameter + frac + pertshc + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + magnitude_of_perturbation_of_leaf_area_index + magnitude of perturbation of leaf area index + frac + pertlai + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + magnitude_of_perturbation_of_vegetation_fraction + magnitude of perturbation of vegetation fraction + frac + pertvegf + real + (:) + in + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + perturbation_of_momentum_roughness_length + perturbation of momentum roughness length + frac + z01d + real + (:) + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + perturbation_of_heat_to_momentum_roughness_length_ratio + perturbation of heat to momentum roughness length ratio + frac + zt1d + real + (:) + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + perturbation_of_soil_type_b_parameter + perturbation of soil type "b" parameter + frac + bexp1d + real + (:) + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + perturbation_of_leaf_area_index + perturbation of leaf area index + frac + xlai1d + real + (:) + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + perturbation_of_vegetation_fraction + perturbation of vegetation fraction + frac + vegf1d + real + (:) + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_surface_generic_pre SCHEME_GFS_surface_generic_pre SUBROUTINE_GFS_surface_generic_pre_run + + + + diff --git a/physics/GFS_surface_loop_control_part1.xml b/physics/GFS_surface_loop_control_part1.xml new file mode 100644 index 000000000..8e07f979d --- /dev/null +++ b/physics/GFS_surface_loop_control_part1.xml @@ -0,0 +1,73 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_surface_loop_control_part1 SCHEME_GFS_surface_loop_control_part1 SUBROUTINE_GFS_surface_loop_control_part1_run + + + ccpp_loop_counter + loop counter for subcycling loops in CCPP + index + iter + integer + + in + F + MODULE_GFS_surface_loop_control_part1 SCHEME_GFS_surface_loop_control_part1 SUBROUTINE_GFS_surface_loop_control_part1_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + wind + real + (:) + in + F + MODULE_GFS_surface_loop_control_part1 SCHEME_GFS_surface_loop_control_part1 SUBROUTINE_GFS_surface_loop_control_part1_run + + + flag_for_guess_run + flag for guess run + flag + flag_guess + logical + (:) + inout + F + MODULE_GFS_surface_loop_control_part1 SCHEME_GFS_surface_loop_control_part1 SUBROUTINE_GFS_surface_loop_control_part1_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_surface_loop_control_part1 SCHEME_GFS_surface_loop_control_part1 SUBROUTINE_GFS_surface_loop_control_part1_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_surface_loop_control_part1 SCHEME_GFS_surface_loop_control_part1 SUBROUTINE_GFS_surface_loop_control_part1_run + + + + + diff --git a/physics/GFS_surface_loop_control_part2.xml b/physics/GFS_surface_loop_control_part2.xml new file mode 100644 index 000000000..8c2287f13 --- /dev/null +++ b/physics/GFS_surface_loop_control_part2.xml @@ -0,0 +1,106 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_GFS_surface_loop_control_part2 SCHEME_GFS_surface_loop_control_part2 SUBROUTINE_GFS_surface_loop_control_part2_run + + + ccpp_loop_counter + loop counter for subcycling loops in CCPP + index + iter + integer + + in + F + MODULE_GFS_surface_loop_control_part2 SCHEME_GFS_surface_loop_control_part2 SUBROUTINE_GFS_surface_loop_control_part2_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + wind + real + (:) + in + F + MODULE_GFS_surface_loop_control_part2 SCHEME_GFS_surface_loop_control_part2 SUBROUTINE_GFS_surface_loop_control_part2_run + + + flag_for_guess_run + flag for guess run + flag + flag_guess + logical + (:) + inout + F + MODULE_GFS_surface_loop_control_part2 SCHEME_GFS_surface_loop_control_part2 SUBROUTINE_GFS_surface_loop_control_part2_run + + + flag_for_iteration + flag for iteration + flag + flag_iter + logical + (:) + inout + F + MODULE_GFS_surface_loop_control_part2 SCHEME_GFS_surface_loop_control_part2 SUBROUTINE_GFS_surface_loop_control_part2_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islmsk + integer + (:) + in + F + MODULE_GFS_surface_loop_control_part2 SCHEME_GFS_surface_loop_control_part2 SUBROUTINE_GFS_surface_loop_control_part2_run + + + flag_for_nsstm_run + NSSTM flag: off/uncoupled/coupled=0/1/2 + flag + nstf_name1 + integer + + in + F + MODULE_GFS_surface_loop_control_part2 SCHEME_GFS_surface_loop_control_part2 SUBROUTINE_GFS_surface_loop_control_part2_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_surface_loop_control_part2 SCHEME_GFS_surface_loop_control_part2 SUBROUTINE_GFS_surface_loop_control_part2_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_surface_loop_control_part2 SCHEME_GFS_surface_loop_control_part2 SUBROUTINE_GFS_surface_loop_control_part2_run + + + + + diff --git a/physics/GFS_time_vary_pre.xml b/physics/GFS_time_vary_pre.xml new file mode 100644 index 000000000..db6dba340 --- /dev/null +++ b/physics/GFS_time_vary_pre.xml @@ -0,0 +1,86 @@ + + + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_time_vary_pre SCHEME_GFS_time_vary_pre SUBROUTINE_GFS_time_vary_pre_finalize + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_time_vary_pre SCHEME_GFS_time_vary_pre SUBROUTINE_GFS_time_vary_pre_finalize + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + inout + F + MODULE_GFS_time_vary_pre SCHEME_GFS_time_vary_pre SUBROUTINE_GFS_time_vary_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_time_vary_pre SCHEME_GFS_time_vary_pre SUBROUTINE_GFS_time_vary_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_time_vary_pre SCHEME_GFS_time_vary_pre SUBROUTINE_GFS_time_vary_pre_run + + + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_GFS_time_vary_pre SCHEME_GFS_time_vary_pre SUBROUTINE_GFS_time_vary_pre_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_GFS_time_vary_pre SCHEME_GFS_time_vary_pre SUBROUTINE_GFS_time_vary_pre_init + + + diff --git a/physics/cnvc90.xml b/physics/cnvc90.xml new file mode 100644 index 000000000..9d51a629d --- /dev/null +++ b/physics/cnvc90.xml @@ -0,0 +1,183 @@ + + + + + + + convective_cloud_switch + switch for saving convective clouds + none + clstp + real + + in + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + lwe_thickness_of_convective_precipitation_amount_on_dynamics_timestep + convective rainfall amount on dynamics timestep + m + rn + real + (:) + in + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + vertical_index_at_cloud_base + vertical index at cloud base + index + kbot + integer + (:) + in + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + vertical_index_at_cloud_top + vertical index at cloud top + index + ktop + integer + (:) + in + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + vertical_dimension + number of vertical layers + count + km + integer + + in + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + air_pressure_at_interface + interface pressure + Pa + prsi + real + (:,:) + in + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + accumulated_lwe_thickness_of_convective_precipitation_amount_cnvc90 + accumulated convective rainfall amount for cnvc90 only + m + acv + real + (:) + inout + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + smallest_cloud_base_vertical_index_encountered_thus_far + smallest cloud base vertical index encountered thus far + index + acvb + real + (:) + inout + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + largest_cloud_top_vertical_index_encountered_thus_far + largest cloud top vertical index encountered thus far + index + acvt + real + (:) + inout + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + fraction_of_convective_cloud + fraction of convective cloud + frac + cv + real + (:) + inout + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + pressure_at_bottom_of_convective_cloud + pressure at bottom of convective cloud + Pa + cvb + real + (:) + inout + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + pressure_at_top_of_convective_cloud + pressure at top of convective cloud + Pa + cvt + real + (:) + inout + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_cnvc90 SCHEME_cnvc90 SUBROUTINE_cnvc90_run + + + diff --git a/physics/cs_conv.xml b/physics/cs_conv.xml new file mode 100644 index 000000000..ac9dbb5f4 --- /dev/null +++ b/physics/cs_conv.xml @@ -0,0 +1,590 @@ + + + + + + + horizontal_dimension + horizontal dimension + count + im + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + horizontal_loop_extent + horizontal loop extent + count + ijsdim + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + vertical_dimension + number of veritcal levels + count + kmax + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + number_of_tracers_plus_one + number of tracers plus one + count + ntracp1 + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + number_of_tracers_for_convective_transport + number of tracers for convective transport (used to dimension clw) + count + nn + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + number_of_tracers_for_CS + number of convectively transported tracers in Chikira-Sugiyama deep conv. scheme + count + ntr + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + number_of_cloud_types_CS + number of cloud types in Chikira-Sugiyama scheme + count + nctp + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + flag_convective_tracer_transport + flag to enable tracer transport by updrafts/downdrafts[(:,1)] or subsidence [(:,2)] + flag + otspt + logical + (:,:) + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + latitude_index_in_debug_printouts + latitude index in debug printouts + index + lat + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + index_of_time_step + current forecast iteration + index + kdt + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + air_temperature_updated_by_physics + mid-layer temperature + K + t + real + (:,:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + water_vapor_specific_humidity_updated_by_physics + mid-layer specific humidity of water vapor + kg kg-1 + q + real + (:,:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + lwe_thickness_of_deep_convective_precipitation_amount + deep convective rainfall amount on physics timestep + m + rain1 + real + (:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + convective_transportable_tracers + array to contain cloud water and other convective trans. tracers + kg kg-1 + clw + real + (:,:,:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + geopotential + mid-layer geopotential + m2 s-2 + zm + real + (:,:) + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + geopotential_at_interface + interface geopotential + m2 s-2 + zi + real + (:,:) + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + air_pressure + mid-layer pressure + Pa + pap + real + (:,:) + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + air_pressure_at_interface + interface pressure + Pa + paph + real + (:,:) + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + time_step_for_physics + physics time step + s + delta + real + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + time_step_for_dynamics + dynamics time step + s + delti + real + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + instantaneous_atmosphere_updraft_convective_mass_flux + (updraft mass flux) * delt + kg m-2 + ud_mf + real + (:,:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + instantaneous_atmosphere_downdraft_convective_mass_flux + (downdraft mass flux) * delt + kg m-2 + dd_mf + real + (:,:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + instantaneous_atmosphere_detrainment_convective_mass_flux + (detrainment mass flux) * delt + kg m-2 + dt_mf + real + (:,:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + x_wind_updated_by_physics + mid-layer zonal wind + m s-1 + u + real + (:,:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + y_wind_updated_by_physics + mid-layer meridional wind + m s-1 + v + real + (:,:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + fraction_of_tracer_scavenged + fraction of the tracer (aerosols) that is scavenged by convection + km-1 + fscav + real + (:) + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + fraction_of_cloud_top_water_scavenged + fraction of the tracer (cloud top water) that is scavenged by convection + km-1 + fswtr + real + (:) + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + cloud_base_mass_flux + cloud base mass flux + kg m-2 s-1 + cbmfx + real + (:,:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + mpi_rank + current MPI rank + index + mype + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + maximum_updraft_velocity_at_cloud_base + maximum updraft velocity at cloud base + m s-1 + wcbmaxm + real + (:) + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + detrainment_and_precipitation_tunable_parameter_3_CS + partition water between detrainment and precipitation (decrease for more precipitation) + m + precz0in + real + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + detrainment_and_precipitation_tunable_parameter_4_CS + partition water between detrainment and precipitation (decrease for more precipitation) + m + preczhin + real + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + entrainment_efficiency_tunable_parameter_9_CS + entrainment efficiency + none + clmdin + real + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + convective_updraft_area_fraction_at_model_interfaces + convective updraft area fraction at model interfaces + frac + sigma + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + flag_for_Arakawa_Wu_adjustment + flag for Arakawa Wu scale-aware adjustment + flag + do_aw + logical + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + flag_arakawa_wu_downdraft + flag to enable treating convective tendencies following Arakwaw-Wu for downdrafts (2013) + flag + do_awdd + logical + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + flag_flux_form_CS + flag to enable using the flux form of the equations in CS scheme + flag + flx_form + logical + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + flag_print + control flag for diagnostic print out + flag + lprnt + logical + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + horizontal_index_of_printed_column + horizontal index of printed column + index + ipr + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + flag_deep_convection + flag indicating whether convection occurs in column + flag + kcnv + integer + (:) + inout + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + mass_fraction_of_convective_cloud_liquid_water + mass fraction of convective cloud liquid water + kg kg-1 + qlcn + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + mass_fraction_of_convective_cloud_ice + mass fraction of convective cloud ice water + kg kg-1 + qicn + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + vertical_velocity_for_updraft + vertical velocity for updraft + m s-1 + w_upi + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + convective_cloud_fraction_for_microphysics + convective cloud fraction for microphysics + frac + cf_upi + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + detrained_mass_flux + detrained mass flux + kg m-2 s-1 + cnv_mfd + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + tendency_of_cloud_water_due_to_convective_microphysics + tendency of cloud water due to convective microphysics + kg m-2 s-1 + cnv_dqldt + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + convective_cloud_volume_fraction + convective cloud volume fraction + frac + clcn + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + ice_fraction_in_convective_tower + ice fraction in convective tower + frac + cnv_fice + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + number_concentration_of_cloud_liquid_water_particles_for_detrainment + droplet number concentration in convective detrainment + m-3 + cnv_ndrop + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + number_concentration_of_ice_crystals_for_detrainment + crystal number concentration in convective detrainment + m-3 + cnv_nice + real + (:,:) + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + flag_for_microphysics_scheme + flag for microphysics scheme + flag + mp_phys + integer + + in + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_cs_conv SCHEME_cs_conv SUBROUTINE_cs_conv_run + + + diff --git a/physics/cs_conv_aw_adj.xml b/physics/cs_conv_aw_adj.xml new file mode 100644 index 000000000..ec232caa8 --- /dev/null +++ b/physics/cs_conv_aw_adj.xml @@ -0,0 +1,249 @@ + + + + + horizontal_dimension + horizontal dimension + count + im + integer + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + vertical_dimension + number of veritcal levels + count + levs + integer + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + flag_for_Chikira_Sugiyama_deep_convection + flag for Chikira-Sugiyama convection + flag + do_cscnv + logical + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + flag_for_Arakawa_Wu_adjustment + flag for Arakawa Wu scale-aware adjustment + flag + do_aw + logical + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + flag_for_shoc + flag for SHOC + flag + do_shoc + logical + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + number_of_hydrometeors + number of hydrometeors + count + ncld + integer + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + index_for_cloud_amount + tracer index for cloud amount integer + index + ntclamt + integer + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + number_of_tracers_for_cloud_condensate + number of tracers for cloud condensate + count + nncl + integer + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + convective_updraft_area_fraction + convective updraft area fraction + frac + sigmafrac + real + (:,:) + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + inout + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + tracer_concentration_updated_by_physics + tracer concentration updated by physics + kg kg-1 + gq0 + real + (:,:,:) + inout + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + air_temperature_save + air temperature before entering a physics scheme + K + save_t + real + (:,:) + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + tracer_concentration_save + tracer concentration before entering a physics scheme + kg kg-1 + save_q + real + (:,:,:) + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + air_pressure_at_interface + air pressure at model layer interfaces + Pa + prsi + real + (:,:) + in + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + cloud_fraction_for_MG + cloud fraction used by Morrison-Gettelman MP + frac + cldfrac + real + (:,:) + inout + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + subgrid_scale_cloud_fraction_from_shoc + subgrid-scale cloud fraction from the SHOC scheme + frac + subcldfrac + real + (:,:) + inout + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + lwe_thickness_of_explicit_precipitation_amount + explicit precipitation (rain, ice, snow, graupel, ...) on physics timestep + m + prcp + real + (:) + inout + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_cs_conv_aw_adj SCHEME_cs_conv_aw_adj SUBROUTINE_cs_conv_aw_adj_run + + + + + diff --git a/physics/cs_conv_post.xml b/physics/cs_conv_post.xml new file mode 100644 index 000000000..c91f5427c --- /dev/null +++ b/physics/cs_conv_post.xml @@ -0,0 +1,84 @@ + + + + + + + horizontal_dimension + horizontal dimension + count + im + integer + + in + F + MODULE_cs_conv_post SCHEME_cs_conv_post SUBROUTINE_cs_conv_post_run + + + vertical_dimension + number of veritcal levels + count + kmax + integer + + in + F + MODULE_cs_conv_post SCHEME_cs_conv_post SUBROUTINE_cs_conv_post_run + + + flag_for_Arakawa_Wu_adjustment + flag for Arakawa Wu scale-aware adjustment + flag + do_aw + logical + + in + F + MODULE_cs_conv_post SCHEME_cs_conv_post SUBROUTINE_cs_conv_post_run + + + convective_updraft_area_fraction_at_model_interfaces + convective updraft area fraction at model interfaces + frac + sigmatot + real + (:,:) + in + F + MODULE_cs_conv_post SCHEME_cs_conv_post SUBROUTINE_cs_conv_post_run + + + convective_updraft_area_fraction + convective updraft area fraction + frac + sigmafrac + real + (:,:) + out + F + MODULE_cs_conv_post SCHEME_cs_conv_post SUBROUTINE_cs_conv_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_cs_conv_post SCHEME_cs_conv_post SUBROUTINE_cs_conv_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_cs_conv_post SCHEME_cs_conv_post SUBROUTINE_cs_conv_post_run + + + diff --git a/physics/cs_conv_pre.xml b/physics/cs_conv_pre.xml new file mode 100644 index 000000000..779bbeb5c --- /dev/null +++ b/physics/cs_conv_pre.xml @@ -0,0 +1,216 @@ + + + + + horizontal_dimension + horizontal dimension + count + im + integer + + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + vertical_dimension + number of veritcal levels + count + levs + integer + + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + number_of_tracers + number of tracers + count + ntrac + integer + + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + number_of_hydrometeors + number of hydrometeors + count + ncld + integer + + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + q + real + (:,:) + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + ice_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of ice water in the convectively transported tracer array + kg kg-1 + clw1 + real + (:,:) + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + cloud_condensed_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) in the convectively transported tracer array + kg kg-1 + clw2 + real + (:,:) + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes + grid size related coefficient used in scale-sensitive schemes + none + work1 + real + (:) + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes_complement + complement to work1 + none + work2 + real + (:) + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + updraft_velocity_tunable_parameter_1_CS + tunable parameter 1 for Chikira-Sugiyama convection + m s-1 + cs_parm1 + real + + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + updraft_velocity_tunable_parameter_2_CS + tunable parameter 2 for Chikira-Sugiyama convection + m s-1 + cs_parm2 + real + + in + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + maximum_updraft_velocity_at_cloud_base + maximum updraft velocity at cloud base + m s-1 + wcbmax + real + (:) + out + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + fraction_of_cloud_top_water_scavenged + fraction of the tracer (cloud top water) that is scavenged by convection + km-1 + fswtr + real + (:) + out + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + fraction_of_tracer_scavenged + fraction of the tracer (aerosols) that is scavenged by convection + km-1 + fscav + real + (:) + out + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + water_vapor_specific_humidity_save + water vapor specific humidity before entering a physics scheme + kg kg-1 + save_q1 + real + (:,:) + out + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + cloud_condensed_water_mixing_ratio_save + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) before entering a physics scheme + kg kg-1 + save_q2 + real + (:,:) + out + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + ice_water_mixing_ratio_save + cloud ice water mixing ratio before entering a physics scheme + kg kg-1 + save_q3 + real + (:,:) + out + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_cs_conv_pre SCHEME_cs_conv_pre SUBROUTINE_cs_conv_pre_run + + + + + diff --git a/physics/cu_gf_driver.xml b/physics/cu_gf_driver.xml new file mode 100644 index 000000000..f515db4e0 --- /dev/null +++ b/physics/cu_gf_driver.xml @@ -0,0 +1,470 @@ + + + + + number_of_total_tracers + number of total tracers + count + tottracer + integer + + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + number_of_vertical_diffusion_tracers + number of tracers to diffuse vertically + count + ntrac + integer + + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + cell_area + grid cell area + m2 + garea + real + (:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + vertical_dimension + vertical layer dimension + count + km + integer + + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + time_step_for_physics + physics time step + s + dt + real + + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + conv_activity_counter + convective activity memory + none + cactiv + integer + (:) + inout + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + temperature_tendency_due_to_dynamics + temperature tendency due to dynamics only + K s-1 + forcet + real + (:,:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + moisture_tendency_due_to_dynamics + moisture tendency due to dynamics only + kg kg-1 s-1 + forceqv_spechum + real + (:,:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + geopotential + layer geopotential + m2 s-2 + phil + real + (:,:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + lwe_thickness_of_deep_convective_precipitation_amount + deep convective rainfall amount on physics timestep + m + raincv + real + (:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + qv_spechum + real + (:,:) + inout + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + air_temperature_updated_by_physics + updated temperature + K + t + real + (:,:) + inout + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + cloud_work_function + cloud work function + m2 s-2 + cld1d + real + (:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + x_wind_updated_by_physics + updated x-direction wind + m s-1 + us + real + (:,:) + inout + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + y_wind_updated_by_physics + updated y-direction wind + m s-1 + vs + real + (:,:) + inout + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + air_temperature + mid-layer temperature + K + t2di + real + (:,:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + omega + layer mean vertical velocity + Pa s-1 + w + real + (:,:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + water_vapor_specific_humidity + water vapor specific humidity + kg kg-1 + qv2di_spechum + real + (:,:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + air_pressure + mean layer pressure + Pa + p2di + real + (:,:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + surface_air_pressure + surface pressure + Pa + psuri + real + (:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + vertical_index_at_cloud_base + index for cloud base + index + hbot + integer + (:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + vertical_index_at_cloud_top + index for cloud top + index + htop + integer + (:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + flag_deep_convection + deep convection: 0=no, 1=yes + flag + kcnv + integer + (:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + xland + integer + (:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic surface upward sensible heat flux + K m s-1 + hfx2 + real + (:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + kinematic_surface_upward_latent_heat_flux + kinematic surface upward latent heat flux + kg kg-1 m s-1 + qfx2 + real + (:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + convective_transportable_tracers + cloud water and other convective trans. tracers + kg kg-1 + clw + real + (:,:,:) + inout + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + atmosphere_boundary_layer_thickness + PBL thickness + m + pbl + real + (:) + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + instantaneous_atmosphere_updraft_convective_mass_flux + (updraft mass flux) * delt + kg m-2 + ud_mf + real + (:,:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + instantaneous_atmosphere_downdraft_convective_mass_flux + (downdraft mass flux) * delt + kg m-2 + dd_mf + real + (:,:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + instantaneous_atmosphere_detrainment_convective_mass_flux + (detrainment mass flux) * delt + kg m-2 + dt_mf + real + (:,:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + convective_cloud_water_mixing_ratio + moist convective cloud water mixing ratio + kg kg-1 + cnvw_moist + real + (:,:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + convective_cloud_cover + convective cloud cover + frac + cnvc + real + (:,:) + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + flag_for_mass_flux_shallow_convection_scheme + flag for mass-flux shallow convection scheme + flag + imfshalcnv + integer + + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_run + + + + + mpi_rank + current MPI-rank + index + mpirank + integer + + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_init + + + mpi_root + master MPI-rank + index + mpiroot + integer + + in + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_cu_gf_driver SCHEME_cu_gf_driver SUBROUTINE_cu_gf_driver_init + + + + diff --git a/physics/cu_gf_driver_post.xml b/physics/cu_gf_driver_post.xml new file mode 100644 index 000000000..e1504f676 --- /dev/null +++ b/physics/cu_gf_driver_post.xml @@ -0,0 +1,106 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_cu_gf_driver_post SCHEME_cu_gf_driver_post SUBROUTINE_cu_gf_driver_post_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + t + real + (:,:) + in + F + MODULE_cu_gf_driver_post SCHEME_cu_gf_driver_post SUBROUTINE_cu_gf_driver_post_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + q + real + (:,:) + in + F + MODULE_cu_gf_driver_post SCHEME_cu_gf_driver_post SUBROUTINE_cu_gf_driver_post_run + + + temperature_from_previous_timestep + temperature from previous time step + K + prevst + real + (:,:) + out + F + MODULE_cu_gf_driver_post SCHEME_cu_gf_driver_post SUBROUTINE_cu_gf_driver_post_run + + + moisture_from_previous_timestep + moisture from previous time step + kg kg-1 + prevsq + real + (:,:) + out + F + MODULE_cu_gf_driver_post SCHEME_cu_gf_driver_post SUBROUTINE_cu_gf_driver_post_run + + + conv_activity_counter + convective activity memory + none + cactiv + integer + (:) + in + F + MODULE_cu_gf_driver_post SCHEME_cu_gf_driver_post SUBROUTINE_cu_gf_driver_post_run + + + gf_memory_counter + Memory counter for GF + none + conv_act + real + (:) + out + F + MODULE_cu_gf_driver_post SCHEME_cu_gf_driver_post SUBROUTINE_cu_gf_driver_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_cu_gf_driver_post SCHEME_cu_gf_driver_post SUBROUTINE_cu_gf_driver_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_cu_gf_driver_post SCHEME_cu_gf_driver_post SUBROUTINE_cu_gf_driver_post_run + + + + diff --git a/physics/cu_gf_driver_pre.xml b/physics/cu_gf_driver_pre.xml new file mode 100644 index 000000000..2fcbca746 --- /dev/null +++ b/physics/cu_gf_driver_pre.xml @@ -0,0 +1,172 @@ + + + + + + + flag_for_first_time_step + flag signaling first time step for time integration loop + flag + flag_init + logical + + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + flag_for_restart + flag for restart (warmstart) or coldstart + flag + flag_restart + logical + + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + index_of_time_step + current forecast iteration + index + kdt + integer + + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + forecast_time + curent forecast time + h + fhour + real + + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + time_step_for_physics + physics timestep + s + dtp + real + + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + air_temperature + model layer mean temperature + K + t + real + (:,:) + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + water_vapor_specific_humidity + water vapor specific humidity + kg kg-1 + q + real + (:,:) + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + temperature_from_previous_timestep + temperature from previous time step + K + prevst + real + (:,:) + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + moisture_from_previous_timestep + moisture from previous time step + kg kg-1 + prevsq + real + (:,:) + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + temperature_tendency_due_to_dynamics + temperature tendency due to dynamics only + K s-1 + forcet + real + (:,:) + out + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + moisture_tendency_due_to_dynamics + moisture tendency due to dynamics only + kg kg-1 s-1 + forceq + real + (:,:) + out + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + conv_activity_counter + convective activity memory + none + cactiv + integer + (:) + out + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + gf_memory_counter + Memory counter for GF + none + conv_act + real + (:) + in + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_cu_gf_driver_pre SCHEME_cu_gf_driver_pre SUBROUTINE_cu_gf_driver_pre_run + + + diff --git a/physics/dcyc2t3.xml b/physics/dcyc2t3.xml new file mode 100644 index 000000000..934c4dbd4 --- /dev/null +++ b/physics/dcyc2t3.xml @@ -0,0 +1,546 @@ + + + + + + + forecast_hour + forecast time in 24-hour form + h + solhr + real + + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + equation_of_time + equation of time + radians + slag + real + + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + sine_of_solar_declination_angle + sine of solar declination angle + none + sdec + real + + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + cosine_of_solar_declination_angle + cosine of solar declination angle + none + cdec + real + + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + sine_of_latitude + sine of latitude + none + sinlat + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + cosine_of_latitude + cosine of latitude + none + coslat + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + longitude + longitude of grid box + radians + xlon + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + cosine_of_zenith_angle + average of cosine of zenith angle over daytime shortwave call time interval + none + coszen + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_skin_temperature + surface skin temperature + K + tsea + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + air_temperature_at_lowest_model_layer + air temperature at lowest model layer + K + tf + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_midlayer_air_temperature_in_longwave_radiation + surface (first layer) air temperature saved in longwave radiation call + K + tsflw + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_longwave_emissivity + surface emissivity + frac + sfcemis + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_shortwave_flux_on_radiation_time_step + total sky surface downwelling shortwave flux on radiation time step + W m-2 + sfcdsw + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_net_downwelling_shortwave_flux_on_radiation_time_step + total sky surface net downwelling shortwave flux on radiation time step + W m-2 + sfcnsw + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_longwave_flux_on_radiation_time_step + total sky surface downwelling longwave flux on radiation time step + W m-2 + sfcdlw + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + tendency_of_air_temperature_due_to_shortwave_heating_on_radiation_time_step + total sky shortwave heating rate on radiation time step + K s-1 + swh + real + (:,:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + tendency_of_air_temperature_due_to_shortwave_heating_assuming_clear_sky_on_radiation_time_step + clear sky shortwave heating rate on radiation time step + K s-1 + swhc + real + (:,:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_time_step + total sky longwave heating rate on radiation time step + K s-1 + hlw + real + (:,:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + tendency_of_air_temperature_due_to_longwave_heating_assuming_clear_sky_on_radiation_time_step + clear sky longwave heating rate on radiation time step + K s-1 + hlwc + real + (:,:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_upwelling_direct_near_infrared_shortwave_flux_on_radiation_time_step + total sky surface upwelling beam near-infrared shortwave flux on radiation time step + W m-2 + sfcnirbmu + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_upwelling_diffuse_near_infrared_shortwave_flux_on_radiation_time_step + total sky surface upwelling diffuse near-infrared shortwave flux on radiation time step + W m-2 + sfcnirdfu + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_upwelling_direct_ultraviolet_and_visible_shortwave_flux_on_radiation_time_step + total sky surface upwelling beam ultraviolet plus visible shortwave flux on radiation time step + W m-2 + sfcvisbmu + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_upwelling_diffuse_ultraviolet_and_visible_shortwave_flux_on_radiation_time_step + total sky surface upwelling diffuse ultraviolet plus visible shortwave flux on radiation time step + W m-2 + sfcvisdfu + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_direct_near_infrared_shortwave_flux_on_radiation_time_step + total sky surface downwelling beam near-infrared shortwave flux on radiation time step + W m-2 + sfcnirbmd + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_diffuse_near_infrared_shortwave_flux_on_radiation_time_step + total sky surface downwelling diffuse near-infrared shortwave flux on radiation time step + W m-2 + sfcnirdfd + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_direct_ultraviolet_and_visible_shortwave_flux_on_radiation_time_step + total sky surface downwelling beam ultraviolet plus visible shortwave flux on radiation time step + W m-2 + sfcvisbmd + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_diffuse_ultraviolet_and_visible_shortwave_flux_on_radiation_time_step + total sky surface downwelling diffuse ultraviolet plus visible shortwave flux on radiation time step + W m-2 + sfcvisdfd + real + (:) + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + time_step_for_dynamics + dynamics timestep + s + deltim + real + + in + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + tendency_of_air_temperature_due_to_model_physics + total radiative heating rate at current time + K s-1 + dtdt + real + (:,:) + inout + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + tendency_of_air_temperature_due_to_radiative_heating_assuming_clear_sky + clear sky radiative (shortwave + longwave) heating rate at current time + K s-1 + dtdtc + real + (:,:) + inout + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_shortwave_flux + surface downwelling shortwave flux at current time + W m-2 + adjsfcdsw + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_net_downwelling_shortwave_flux + surface net downwelling shortwave flux at current time + W m-2 + adjsfcnsw + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_longwave_flux + surface downwelling longwave flux at current time + W m-2 + adjsfcdlw + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_upwelling_longwave_flux + surface upwelling longwave flux at current time + W m-2 + adjsfculw + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + zenith_angle_temporal_adjustment_factor_for_shortwave_fluxes + zenith angle temporal adjustment factor for shortwave fluxes + none + xmu + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + instantaneous_cosine_of_zenith_angle + cosine of zenith angle at current time + none + xcosz + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_upwelling_direct_near_infrared_shortwave_flux + surface upwelling beam near-infrared shortwave flux at current time + W m-2 + adjnirbmu + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_upwelling_diffuse_near_infrared_shortwave_flux + surface upwelling diffuse near-infrared shortwave flux at current time + W m-2 + adjnirdfu + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_upwelling_direct_ultraviolet_and_visible_shortwave_flux + surface upwelling beam ultraviolet plus visible shortwave flux at current time + W m-2 + adjvisbmu + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_upwelling_diffuse_ultraviolet_and_visible_shortwave_flux + surface upwelling diffuse ultraviolet plus visible shortwave flux at current time + W m-2 + adjvisdfu + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_direct_near_infrared_shortwave_flux + surface downwelling beam near-infrared shortwave flux at current time + W m-2 + adjnirbmd + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_diffuse_near_infrared_shortwave_flux + surface downwelling diffuse near-infrared shortwave flux at current time + W m-2 + adjnirdfd + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_direct_ultraviolet_and_visible_shortwave_flux + surface downwelling beam ultraviolet plus visible shortwave flux at current time + W m-2 + adjvisbmd + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + surface_downwelling_diffuse_ultraviolet_and_visible_shortwave_flux + surface downwelling diffuse ultraviolet plus visible shortwave flux at current time + W m-2 + adjvisdfd + real + (:) + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_dcyc2t3 SCHEME_dcyc2t3 SUBROUTINE_dcyc2t3_run + + + diff --git a/physics/dcyc2t3_post.xml b/physics/dcyc2t3_post.xml new file mode 100644 index 000000000..1c49d2b18 --- /dev/null +++ b/physics/dcyc2t3_post.xml @@ -0,0 +1,73 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_dcyc2t3_post SCHEME_dcyc2t3_post SUBROUTINE_dcyc2t3_post_run + + + surface_downwelling_shortwave_flux + surface downwelling shortwave flux at current time + W m-2 + adjsfcdsw + real + (:) + in + F + MODULE_dcyc2t3_post SCHEME_dcyc2t3_post SUBROUTINE_dcyc2t3_post_run + + + surface_net_downwelling_shortwave_flux + surface net downwelling shortwave flux at current time + W m-2 + adjsfcnsw + real + (:) + in + F + MODULE_dcyc2t3_post SCHEME_dcyc2t3_post SUBROUTINE_dcyc2t3_post_run + + + surface_upwelling_shortwave_flux + surface upwelling shortwave flux at current time + W m-2 + adjsfcusw + real + (:) + out + F + MODULE_dcyc2t3_post SCHEME_dcyc2t3_post SUBROUTINE_dcyc2t3_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_dcyc2t3_post SCHEME_dcyc2t3_post SUBROUTINE_dcyc2t3_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_dcyc2t3_post SCHEME_dcyc2t3_post SUBROUTINE_dcyc2t3_post_run + + + + + diff --git a/physics/get_phi_fv3.xml b/physics/get_phi_fv3.xml new file mode 100644 index 000000000..12bd103e5 --- /dev/null +++ b/physics/get_phi_fv3.xml @@ -0,0 +1,106 @@ + + + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_get_phi_fv3 SCHEME_get_phi_fv3 SUBROUTINE_get_phi_fv3_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_get_phi_fv3 SCHEME_get_phi_fv3 SUBROUTINE_get_phi_fv3_run + + + air_temperature_updated_by_physics + updated air temperature + K + gt0 + real + (:,:) + in + F + MODULE_get_phi_fv3 SCHEME_get_phi_fv3 SUBROUTINE_get_phi_fv3_run + + + water_vapor_specific_humidity_updated_by_physics + mid-layer specific humidity of water vapor + kg kg-1 + gq01 + real + (:,:) + in + F + MODULE_get_phi_fv3 SCHEME_get_phi_fv3 SUBROUTINE_get_phi_fv3_run + + + geopotential_difference_between_midlayers_divided_by_midlayer_virtual_temperature + difference between mid-layer geopotentials divided by mid-layer virtual temperature + m2 s-2 K-1 + del_gz + real + (:,:) + inout + F + MODULE_get_phi_fv3 SCHEME_get_phi_fv3 SUBROUTINE_get_phi_fv3_run + + + geopotential_at_interface + interface geopotential + m2 s-2 + phii + real + (:,:) + out + F + MODULE_get_phi_fv3 SCHEME_get_phi_fv3 SUBROUTINE_get_phi_fv3_run + + + geopotential + mid-layer geopotential + m2 s-2 + phil + real + (:,:) + out + F + MODULE_get_phi_fv3 SCHEME_get_phi_fv3 SUBROUTINE_get_phi_fv3_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_get_phi_fv3 SCHEME_get_phi_fv3 SUBROUTINE_get_phi_fv3_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_get_phi_fv3 SCHEME_get_phi_fv3 SUBROUTINE_get_phi_fv3_run + + + diff --git a/physics/get_prs_fv3.xml b/physics/get_prs_fv3.xml new file mode 100644 index 000000000..adf943a06 --- /dev/null +++ b/physics/get_prs_fv3.xml @@ -0,0 +1,117 @@ + + + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + geopotential_at_interface + interface geopotential + m2 s-2 + phii + real + (:,:) + in + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + air_pressure_at_interface + interface pressure + Pa + prsi + real + (:,:) + in + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + air_temperature + mid-layer temperature + K + tgrs + real + (:,:) + in + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + water_vapor_specific_humidity + mid-layer specific humidity of water vapor + kg kg-1 + qgrs1 + real + (:,:) + in + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + air_pressure_difference_between_midlayers + difference between mid-layer pressures + Pa + del + real + (:,:) + out + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + geopotential_difference_between_midlayers_divided_by_midlayer_virtual_temperature + difference between mid-layer geopotentials divided by mid-layer virtual temperature + m2 s-2 K-1 + del_gz + real + (:,:) + out + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_get_prs_fv3 SCHEME_get_prs_fv3 SUBROUTINE_get_prs_fv3_run + + + diff --git a/physics/gfdl_cloud_microphys.xml b/physics/gfdl_cloud_microphys.xml new file mode 100644 index 000000000..9aa7100a5 --- /dev/null +++ b/physics/gfdl_cloud_microphys.xml @@ -0,0 +1,504 @@ + + + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_finalize + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_finalize + + + + + vertical_dimension + number of vertical levels + count + levs + integer + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + ratio_of_vapor_to_dry_air_gas_constants_minus_one + rv/rd - 1 (rv = ideal gas constant for water vapor) + none + con_fvirt + real + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + con_rd + real + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + land_area_fraction + land area fraction + frac + frland + real + (:) + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + cell_area + area of grid cell + m2 + garea + real + (:) + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + gq0 + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + cloud_condensed_water_mixing_ratio_updated_by_physics + cloud condensed water mixing ratio updated by physics + kg kg-1 + gq0_ntcw + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + rain_water_mixing_ratio_updated_by_physics + moist mixing ratio of rain updated by physics + kg kg-1 + gq0_ntrw + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + ice_water_mixing_ratio_updated_by_physics + moist mixing ratio of cloud ice updated by physics + kg kg-1 + gq0_ntiw + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + snow_water_mixing_ratio_updated_by_physics + moist mixing ratio of snow updated by physics + kg kg-1 + gq0_ntsw + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + graupel_mixing_ratio_updated_by_physics + moist mixing ratio of graupel updated by physics + kg kg-1 + gq0_ntgl + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + cloud_fraction_updated_by_physics + cloud fraction updated by physics + frac + gq0_ntclamt + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + air_temperature_updated_by_physics + air temperature updated by physics + K + gt0 + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + x_wind_updated_by_physics + zonal wind updated by physics + m s-1 + gu0 + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + y_wind_updated_by_physics + meridional wind updated by physics + m s-1 + gv0 + real + (:,:) + inout + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + omega + layer mean vertical velocity + Pa s-1 + vvl + real + (:,:) + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + air_pressure_difference_between_midlayers + air pressure difference between mid-layers + Pa + del + real + (:,:) + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + lwe_thickness_of_explicit_rain_amount + explicit rain on physics timestep + m + rain0 + real + (:) + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + lwe_thickness_of_ice_amount + ice fall on physics timestep + m + ice0 + real + (:) + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + lwe_thickness_of_snow_amount + snow fall on physics timestep + m + snow0 + real + (:) + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + lwe_thickness_of_graupel_amount + graupel fall on physics timestep + m + graupel0 + real + (:) + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + lwe_thickness_of_explicit_precipitation_amount + explicit precipitation (rain, ice, snow, graupel) on physics timestep + m + prcp0 + real + (:) + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + ratio_of_snowfall_to_rainfall + snow ratio: ratio of snow to total precipitation + frac + sr + real + (:) + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + time_step_for_physics + physics timestep + s + dtp + real + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + flag_for_hydrostatic_solver + flag indicating hydrostatic solver + flag + hydrostatic + logical + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + flag_for_hydrostatic_heating_from_physics + flag indicating hydrostatic heating from physics + flag + phys_hydrostatic + logical + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_run + + + + + mpi_rank + MPI rank of current process + index + me + integer + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + mpi_root + MPI rank of master process + index + master + integer + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + iounit_namelist + fortran unit number for opening nameliust file + none + nlunit + integer + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + namelist_filename_for_internal_file_reads + character string to store full namelist contents + none + input_nml_file + character + (:) + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + iounit_log + fortran unit number for writing logfile + none + logunit + integer + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + namelist_filename + namelist filename + none + fn_nml + character + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + flag_for_gfdl_microphysics_scheme + choice of GFDL microphysics scheme + flag + imp_physics_gfdl + integer + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + flag_for_shoc + flag to indicate use of SHOC + flag + do_shoc + logical + + in + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gfdl_cloud_microphys SCHEME_gfdl_cloud_microphys SUBROUTINE_gfdl_cloud_microphys_init + + + diff --git a/physics/gmtb_scm_sfc_flux_spec.xml b/physics/gmtb_scm_sfc_flux_spec.xml new file mode 100644 index 000000000..fa23ff323 --- /dev/null +++ b/physics/gmtb_scm_sfc_flux_spec.xml @@ -0,0 +1,381 @@ + + + + + + x_wind_at_lowest_model_layer + x component of 1st model layer wind + m s-1 + u1 + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + y_wind_at_lowest_model_layer + y component of 1st model layer wind + m s-1 + v1 + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + height_above_ground_at_lowest_model_layer + height above ground at 1st model layer + m + z1 + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + air_temperature_at_lowest_model_layer + 1st model layer air temperature + K + t1 + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + water_vapor_specific_humidity_at_lowest_model_layer + 1st model layer specific humidity + kg kg-1 + q1 + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + air_pressure_at_lowest_model_layer + Model layer 1 mean pressure + Pa + p1 + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + surface_roughness_length + surface roughness length + cm + roughness_length + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + specified_kinematic_surface_upward_sensible_heat_flux + specified kinematic surface upward sensible heat flux + K m s-1 + spec_sh_flux + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + specified_kinematic_surface_upward_latent_heat_flux + specified kinematic surface upward latent heat flux + kg kg-1 m s-1 + spec_lh_flux + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + ratio_of_exner_function_between_midlayer_and_interface_at_lowest_model_layer + Exner function ratio bt midlayer and interface at 1st layer + ratio + exner_inverse + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + surface_skin_temperature + surface skin temperature + K + T_surf + real + (:) + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + grav + real + + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + latent_heat_of_vaporization_of_water_at_0C + latent heat of vaporization of water at 0C + J kg-1 + hvap + real + + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + rd + real + + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + ratio_of_vapor_to_dry_air_gas_constants_minus_one + rv/rd - 1 (rv = ideal gas constant for water vapor) + none + fvirt + real + + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + vonKarman_constant + vonKarman constant + none + vonKarman + real + + in + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + kinematic_surface_upward_sensible_heat_flux + surface upward sensible heat flux + K m s-1 + sh_flux + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + kinematic_surface_upward_latent_heat_flux + surface upward evaporation flux + kg kg-1 m s-1 + lh_flux + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + surface_friction_velocity + boundary layer parameter + m s-1 + u_star + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + surface_wind_stress + surface wind stress + m2 s-2 + sfc_stress + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + surface_drag_coefficient_for_momentum_in_air + surface exchange coeff for momentum + none + cm + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + surface_drag_coefficient_for_heat_and_moisture_in_air + surface exchange coeff heat moisture + none + ch + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + Monin-Obukhov_similarity_function_for_momentum + Monin-Obukhov similarity function for momentum + none + fm + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + Monin-Obukhov_similarity_function_for_heat + Monin-Obukhov similarity function for heat + none + fh + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + bulk_richardson_number_at_lowest_model_level + bulk Richardson number at the surface + none + rb + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + x_wind_at_10m + 10 meter u wind speed + m s-1 + u10m + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + y_wind_at_10m + 10 meter v wind speed + m s-1 + v10m + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + wind1 + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + surface_specific_humidity + surface air saturation specific humidity + kg kg-1 + qss + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + temperature_at_2m + 2 meter temperature + K + t2m + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + specific_humidity_at_2m + 2 meter specific humidity + kg kg-1 + q2m + real + (:) + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gmtb_scm_sfc_flux_spec SCHEME_gmtb_scm_sfc_flux_spec SUBROUTINE_gmtb_scm_sfc_flux_spec_run + + + + diff --git a/physics/gwdc.xml b/physics/gwdc.xml new file mode 100644 index 000000000..28023d915 --- /dev/null +++ b/physics/gwdc.xml @@ -0,0 +1,359 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + vertical_dimension + number of vertical layers + count + km + integer + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + latitude_index_in_debug_printouts + latitude index in debug printouts + index + lat + integer + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + x_wind + zonal wind + m s-1 + u1 + real + (:,:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + y_wind + meridional wind + m s-1 + v1 + real + (:,:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + air_temperature + mid-layer temperature + K + t1 + real + (:,:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + water_vapor_specific_humidity + mid-layer specific humidity of water vapor + kg kg-1 + q1 + real + (:,:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + time_step_for_physics + physics time step + s + deltim + real + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + air_pressure + mid-layer pressure + Pa + pmid1 + real + (:,:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + air_pressure_at_interface + interface pressure + Pa + pint1 + real + (:,:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + air_pressure_difference_between_midlayers + difference between mid-layer pressures + Pa + dpmid1 + real + (:,:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + maximum_column_heating_rate + maximum heating rate in column + K s-1 + qmax + real + (:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + vertical_index_at_cloud_top + vertical index at cloud top + index + ktop + integer + (:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + vertical_index_at_cloud_base + vertical index at cloud base + index + kbot + integer + (:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + flag_deep_convection + flag indicating whether convection occurs in column (0 or 1) + flag + kcnv + integer + (:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + cloud_area_fraction + fraction of grid box area in which updrafts occur + frac + cldf + real + (:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + grav + real + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + rd + real + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + ratio_of_vapor_to_dry_air_gas_constants_minus_one + rv/rd - 1 (rv = ideal gas constant for water vapor) + none + fv + real + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + pi + ratio of a circle's circumference to its diameter + radians + pi + real + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + characteristic_grid_length_scale + representative horizontal length scale of grid box + m + dlength + real + (:) + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + flag_print + flag for debugging printouts + flag + lprnt + logical + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + horizontal_index_of_printed_column + horizontal index of column used in debugging printouts + index + ipr + integer + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + forecast_time + forecast hour + h + fhour + real + + in + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + tendency_of_x_wind_due_to_convective_gravity_wave_drag + zonal wind tendency due to convective gravity wave drag + m s-2 + utgwc + real + (:,:) + out + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + tendency_of_y_wind_due_to_convective_gravity_wave_drag + meridional wind tendency due to convective gravity wave drag + m s-2 + vtgwc + real + (:,:) + out + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + instantaneous_x_stress_due_to_gravity_wave_drag + zonal stress at cloud top due to convective gravity wave drag + Pa + tauctx + real + (:) + out + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + instantaneous_y_stress_due_to_gravity_wave_drag + meridional stress at cloud top due to convective gravity wave drag + Pa + taucty + real + (:) + out + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gwdc SCHEME_gwdc SUBROUTINE_gwdc_run + + + + + diff --git a/physics/gwdc_post.xml b/physics/gwdc_post.xml new file mode 100644 index 000000000..9ac2fd3c2 --- /dev/null +++ b/physics/gwdc_post.xml @@ -0,0 +1,227 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + flag_diagnostics + flag for calculating diagnostic fields + flag + lssav + logical + + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + flag_diagnostics_3D + flag for calculating 3-D diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + time_step_for_dynamics + dynamics time step + s + dtf + real + + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + time_step_for_physics + physics time step + s + dtp + real + + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + con_cp + real + + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + instantaneous_x_stress_due_to_gravity_wave_drag + zonal stress at cloud top due to convective gravity wave drag + Pa + tauctx + real + (:) + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + instantaneous_y_stress_due_to_gravity_wave_drag + meridional stress at cloud top due to convective gravity wave drag + Pa + taucty + real + (:) + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + tendency_of_x_wind_due_to_convective_gravity_wave_drag + zonal wind tendency due to convective gravity wave drag + m s-2 + gwdcu + real + (:,:) + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + tendency_of_y_wind_due_to_convective_gravity_wave_drag + meridional wind tendency due to convective gravity wave drag + m s-2 + gwdcv + real + (:,:) + in + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + time_integral_of_x_stress_due_to_gravity_wave_drag + integral over time of zonal stress due to gravity wave drag + Pa s + dugwd + real + (:) + inout + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + time_integral_of_y_stress_due_to_gravity_wave_drag + integral over time of meridional stress due to gravity wave drag + Pa s + dvgwd + real + (:) + inout + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + cumulative_change_in_x_wind_due_to_convective_gravity_wave_drag + cumulative change in zonal wind due to convective gravity wave drag + m s-1 + du3dt + real + (:,:) + inout + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + cumulative_change_in_y_wind_due_to_convective_gravity_wave_drag + cumulative change in meridional wind due to convective gravity wave drag + m s-1 + dv3dt + real + (:,:) + inout + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + x_wind_updated_by_physics + updated zonal wind + m s-1 + gu0 + real + (:,:) + inout + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + y_wind_updated_by_physics + updated meridional wind + m s-1 + gv0 + real + (:,:) + inout + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + air_temperature_updated_by_physics + updated air temperature + K + gt0 + real + (:,:) + inout + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gwdc_post SCHEME_gwdc_post SUBROUTINE_gwdc_post_run + + + diff --git a/physics/gwdc_pre.xml b/physics/gwdc_pre.xml new file mode 100644 index 000000000..89d7fb9bf --- /dev/null +++ b/physics/gwdc_pre.xml @@ -0,0 +1,194 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + multiplication_factors_for_convective_gravity_wave_drag + multiplication factors for convective gravity wave drag + none + cgwf + real + (:) + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + cell_size + grid size in zonal direction + m + dx + real + (:) + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes + grid size related coefficient used in scale-sensitive schemes + none + work1 + real + (:) + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes_complement + complement to work1 + none + work2 + real + (:) + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + characteristic_grid_length_scale + representative horizontal length scale of grid box + m + dlength + real + (:) + out + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + cloud_area_fraction + fraction of grid box area in which updrafts occur + frac + cldf + real + (:) + out + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + vertical_index_at_cloud_base + vertical index at cloud base + index + kbot + integer + (:) + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + vertical_index_at_cloud_top + vertical index at cloud top + index + ktop + integer + (:) + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + time_step_for_physics + physics time step + s + dtp + real + + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + air_temperature_updated_by_physics + updated air temperature + K + gt0 + real + (:,:) + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + air_temperature_save + air temperature before entering convection scheme + K + gt0_init + real + (:,:) + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + air_pressure_difference_between_midlayers + difference between mid-layer pressures + Pa + del + real + (:,:) + in + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + maximum_column_heating_rate + maximum heating rate in column + K s-1 + cumabs + real + (:) + out + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gwdc_pre SCHEME_gwdc_pre SUBROUTINE_gwdc_pre_run + + + diff --git a/physics/gwdps.xml b/physics/gwdps.xml new file mode 100644 index 000000000..e6098a444 --- /dev/null +++ b/physics/gwdps.xml @@ -0,0 +1,469 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + vertical_dimension + number of vertical layers + count + km + integer + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + tendency_of_y_wind_due_to_model_physics + meridional wind tendency due to model physics + m s-2 + A + real + (:,:) + inout + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + tendency_of_x_wind_due_to_model_physics + zonal wind tendency due to model physics + m s-2 + B + real + (:,:) + inout + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + tendency_of_air_temperature_due_to_model_physics + air temperature tendency due to model physics + K s-1 + C + real + (:,:) + inout + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + x_wind + zonal wind + m s-1 + u1 + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + y_wind + meridional wind + m s-1 + v1 + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + air_temperature + mid-layer temperature + K + t1 + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + water_vapor_specific_humidity + mid-layer specific humidity of water vapor + kg kg-1 + q1 + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + vertical_index_at_top_of_atmosphere_boundary_layer + vertical index at top atmospheric boundary layer + index + kpbl + integer + (:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + air_pressure_at_interface + interface pressure + Pa + prsi + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + air_pressure_difference_between_midlayers + difference between mid-layer pressures + Pa + del + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + air_pressure + mid-layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + dimensionless_exner_function_at_model_layers + mid-layer Exner function + none + prslk + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + geopotential_at_interface + interface geopotential + m2 s-2 + phii + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + geopotential + mid-layer geopotential + m2 s-2 + phil + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + time_step_for_physics + physics time step + s + deltim + real + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + index_of_time_step + current time step index + index + kdt + integer + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + standard_deviation_of_subgrid_orography + standard deviation of subgrid orography + m + hprime + real + (:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + convexity_of_subgrid_orography + convexity of subgrid orography + none + oc + real + (:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + asymmetry_of_subgrid_orography + asymmetry of subgrid orography + none + oa4 + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + fraction_of_grid_box_with_subgrid_orography_higher_than_critical_height + horizontal fraction of grid box covered by subgrid orography higher than critical height + frac + clx4 + real + (:,:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + angle_from_east_of_maximum_subgrid_orographic_variations + angle with respect to east of maximum subgrid orographic variations + degrees + theta + real + (:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + slope_of_subgrid_orography + slope of subgrid orography + none + sigma + real + (:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + anisotropy_of_subgrid_orography + anisotropy of subgrid orography + none + gamma + real + (:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + maximum_subgrid_orography + maximum of subgrid orography + m + elvmax + real + (:) + inout + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + instantaneous_x_stress_due_to_gravity_wave_drag + zonal surface stress due to orographic gravity wave drag + Pa + dusfc + real + (:) + out + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + instantaneous_y_stress_due_to_gravity_wave_drag + meridional surface stress due to orographic gravity wave drag + Pa + dvsfc + real + (:) + out + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + g + real + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + rd + real + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + gas_constant_water_vapor + ideal gas constant for water vapor + J kg-1 K-1 + rv + real + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + number_of_equatorial_longitude_points + number of longitude points along the equator + count + imx + integer + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + number_of_statistical_measures_of_subgrid_orography + number of statistical measures of subgrid orography + count + nmtvr + integer + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + multiplication_factors_for_mountain_blocking_and_orographic_gravity_wave_drag + multiplic. factors for (1) mountain blocking drag coeff. and (2) ref. level orographic gravity wave drag + none + cdmbgwd + real + (:) + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + mpi_rank + rank of the current MPI task + index + me + integer + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + flag_print + flag for debugging printouts + flag + lprnt + logical + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + horizontal_index_of_printed_column + horizontal index of column used in debugging printouts + index + ipr + integer + + in + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + level_of_dividing_streamline + level of the dividing streamline + none + rdxzb + real + (:) + out + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gwdps SCHEME_gwdps SUBROUTINE_gwdps_run + + + + diff --git a/physics/gwdps_post.xml b/physics/gwdps_post.xml new file mode 100644 index 000000000..2fd8a6306 --- /dev/null +++ b/physics/gwdps_post.xml @@ -0,0 +1,172 @@ + + + + + + + flag_diagnostics + flag for calculating diagnostic fields + flag + lssav + logical + + in + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + flag_diagnostics_3D + flag for calculating 3-D diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + time_step_for_dynamics + dynamics time step + s + dtf + real + + in + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + instantaneous_x_stress_due_to_gravity_wave_drag + zonal surface stress due to orographic gravity wave drag + Pa + dusfcg + real + (:) + in + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + instantaneous_y_stress_due_to_gravity_wave_drag + meridional surface stress due to orographic gravity wave drag + Pa + dvsfcg + real + (:) + in + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + tendency_of_x_wind_due_to_model_physics + zonal wind tendency due to model physics + m s-2 + dudt + real + (:,:) + in + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + tendency_of_y_wind_due_to_model_physics + meridional wind tendency due to model physics + m s-2 + dvdt + real + (:,:) + in + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + tendency_of_air_temperature_due_to_model_physics + air temperature tendency due to model physics + K s-1 + dtdt + real + (:,:) + in + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + time_integral_of_x_stress_due_to_gravity_wave_drag + integral over time of zonal stress due to gravity wave drag + Pa s + dugwd + real + (:) + inout + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + time_integral_of_y_stress_due_to_gravity_wave_drag + integral over time of meridional stress due to gravity wave drag + Pa s + dvgwd + real + (:) + inout + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + cumulative_change_in_x_wind_due_to_orographic_gravity_wave_drag + cumulative change in zonal wind due to orographic gravity wave drag + m s-1 + du3dt + real + (:,:) + inout + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + cumulative_change_in_y_wind_due_to_orographic_gravity_wave_drag + cumulative change in meridional wind due to orographic gravity wave drag + m s-1 + dv3dt + real + (:,:) + inout + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + cumulative_change_in_temperature_due_to_shortwave_radiation_and_orographic_gravity_wave_drag + cumulative change in temperature due to SW rad and oro. GWD + K + dt3dt + real + (:,:) + inout + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gwdps_post SCHEME_gwdps_post SUBROUTINE_gwdps_post_run + + + diff --git a/physics/gwdps_pre.xml b/physics/gwdps_pre.xml new file mode 100644 index 000000000..52acc6362 --- /dev/null +++ b/physics/gwdps_pre.xml @@ -0,0 +1,150 @@ + + + + + horizontal_loop_extent + horizontal dimension + count + im + integer + + in + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + number_of_statistical_measures_of_subgrid_orography + number of statistical measures of subgrid orography + count + nmtvr + integer + + in + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + statistical_measures_of_subgrid_orography + array of statistical measures of subgrid orography + various + mntvar + real + (:,:) + in + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + standard_deviation_of_subgrid_orography + standard deviation of subgrid orography + m + hprime + real + (:) + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + convexity_of_subgrid_orography + convexity of subgrid orography + none + oc + real + (:) + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + asymmetry_of_subgrid_orography + asymmetry of subgrid orography + none + oa4 + real + (:,:) + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + fraction_of_grid_box_with_subgrid_orography_higher_than_critical_height + horizontal fraction of grid box covered by subgrid orography higher than critical height + frac + clx + real + (:,:) + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + angle_from_east_of_maximum_subgrid_orographic_variations + angle with_respect to east of maximum subgrid orographic variations + degrees + theta + real + (:) + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + slope_of_subgrid_orography + slope of subgrid orography + none + sigma + real + (:) + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + anisotropy_of_subgrid_orography + anisotropy of subgrid orography + none + gamma + real + (:) + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + maximum_subgrid_orography + maximum of subgrid orography + m + elvmax + real + (:) + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_gwdps_pre SCHEME_gwdps_pre SUBROUTINE_gwdps_pre_run + + + + + diff --git a/physics/h2ophys.xml b/physics/h2ophys.xml new file mode 100644 index 000000000..4af3f8c5e --- /dev/null +++ b/physics/h2ophys.xml @@ -0,0 +1,161 @@ + + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + vertical_dimension_of_h2o_forcing_data + number of vertical layers in h2o forcing data + count + kh2o + integer + + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + time_step_for_physics + physics time step + s + dt + real + + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + h2o + real + (:,:) + inout + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + natural_log_of_h2o_forcing_data_pressure_levels + natural log of h2o forcing data pressure levels + log(Pa) + ph2o + real + (:) + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + air_pressure + mid-layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + h2o_forcing + water forcing data + various + h2opltc + real + (:,:,:) + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + number_of_coefficients_in_h2o_forcing_data + number of coefficients in h2o forcing data + index + h2o_coeff + integer + + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + flag_diagnostics_3D + flag for calculating 3-D diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + mpi_rank + rank of the current MPI task + index + me + integer + + in + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_h2ophys SCHEME_h2ophys SUBROUTINE_h2ophys_run + + + + diff --git a/physics/hedmf.xml b/physics/hedmf.xml new file mode 100644 index 000000000..ac2452c1f --- /dev/null +++ b/physics/hedmf.xml @@ -0,0 +1,612 @@ + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + vertical_dimension + vertical layer dimension + count + km + integer + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + number_of_vertical_diffusion_tracers + number of tracers to diffuse vertically + count + ntrac + integer + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + index_for_liquid_cloud_condensate + cloud condensate index in tracer array + index + ntcw + integer + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + tendency_of_y_wind_due_to_model_physics + updated tendency of the y wind + m s-2 + dv + real + (:,:) + inout + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + tendency_of_x_wind_due_to_model_physics + updated tendency of the x wind + m s-2 + du + real + (:,:) + inout + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + tendency_of_air_temperature_due_to_model_physics + updated tendency of the temperature + K s-1 + tau + real + (:,:) + inout + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + tendency_of_vertically_diffused_tracer_concentration + updated tendency of the tracers due to vertical diffusion in PBL scheme + kg kg-1 s-1 + rtg + real + (:,:,:) + inout + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + x_wind + x component of layer wind + m s-1 + u1 + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + y_wind + y component of layer wind + m s-1 + v1 + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + air_temperature + layer mean air temperature + K + t1 + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + vertically_diffused_tracer_concentration + tracer concentration diffused by PBL scheme + kg kg-1 + q1 + real + (:,:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + tendency_of_air_temperature_due_to_shortwave_heating_on_radiation_time_step + total sky shortwave heating rate + K s-1 + swh + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_time_step + total sky longwave heating rate + K s-1 + hlw + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + zenith_angle_temporal_adjustment_factor_for_shortwave_fluxes + zenith angle temporal adjustment factor for shortwave + none + xmu + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + dimensionless_exner_function_at_lowest_model_interface + dimensionless Exner function at the surface interface + none + psk + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + bulk_richardson_number_at_lowest_model_level + bulk Richardson number at the surface + none + rbsoil + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + surface_roughness_length + surface roughness length in cm + cm + zorl + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + x_wind_at_10m + x component of wind at 10 m + m s-1 + u10m + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + y_wind_at_10m + y component of wind at 10 m + m s-1 + v10m + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + Monin-Obukhov_similarity_function_for_momentum + Monin-Obukhov similarity function for momentum + none + fm + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + Monin-Obukhov_similarity_function_for_heat + Monin-Obukhov similarity function for heat + none + fh + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + surface_skin_temperature + surface skin temperature + K + tsea + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic surface upward sensible heat flux + K m s-1 + heat + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + kinematic_surface_upward_latent_heat_flux + kinematic surface upward latent heat flux + kg kg-1 m s-1 + evap + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + surface_wind_stress + surface wind stress + m2 s-2 + stress + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + spd1 + real + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + vertical_index_at_top_of_atmosphere_boundary_layer + PBL top model level index + index + kpbl + integer + (:) + out + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + air_pressure_at_interface + air pressure at model layer interfaces + Pa + prsi + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + air_pressure_difference_between_midlayers + pres(k) - pres(k+1) + Pa + del + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + dimensionless_exner_function_at_model_layers + Exner function at layers + none + prslk + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + geopotential + geopotential at model layer centers + m2 s-2 + phil + real + (:,:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + time_step_for_physics + time step for physics + s + delt + real + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + flag_TKE_dissipation_heating + flag for using TKE dissipation heating + flag + dspheat + logical + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + instantaneous_surface_x_momentum_flux + x momentum flux + Pa + dusfc + real + (:) + out + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + instantaneous_surface_y_momentum_flux + y momentum flux + Pa + dvsfc + real + (:) + out + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + instantaneous_surface_upward_sensible_heat_flux + surface upward sensible heat flux + W m-2 + dtsfc + real + (:) + out + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + instantaneous_surface_upward_latent_heat_flux + surface upward latent heat flux + W m-2 + dqsfc + real + (:) + out + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + atmosphere_boundary_layer_thickness + PBL thickness + m + hpbl + real + (:) + out + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + countergradient_mixing_term_for_temperature + countergradient mixing term for temperature + K + hgamt + real + (:) + inout + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + countergradient_mixing_term_for_water_vapor + countergradient mixing term for water vapor + kg kg-1 + hgamq + real + (:) + inout + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + atmosphere_heat_diffusivity + diffusivity for heat + m2 s-1 + dkt + real + (:,:) + out + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + index_of_highest_temperature_inversion + index of highest temperature inversion + index + kinver + integer + (:) + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + atmosphere_momentum_diffusivity_background + background value of momentum diffusivity + m2 s-1 + xkzm_m + real + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + atmosphere_heat_diffusivity_background + background value of heat diffusivity + m2 s-1 + xkzm_h + real + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + diffusivity_background_sigma_level + sigma level threshold for background diffusivity + none + xkzm_s + real + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + flag_print + flag for printing diagnostics to output + flag + lprnt + logical + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + horizontal_index_of_printed_column + horizontal index of printed column + index + ipr + integer + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + atmosphere_heat_diffusivity_background_maximum + maximum background value of heat diffusivity + m2 s-1 + xkzminv + real + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + atmosphere_diffusivity_coefficient_factor + multiplicative constant for atmospheric diffusivities + none + moninq_fac + real + + in + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_hedmf SCHEME_hedmf SUBROUTINE_hedmf_run + + + + + diff --git a/physics/lsm_noah.xml b/physics/lsm_noah.xml new file mode 100644 index 000000000..70879f1ce --- /dev/null +++ b/physics/lsm_noah.xml @@ -0,0 +1,856 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + soil_vertical_dimension + soil vertical layer dimension + count + km + integer + + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_air_pressure + surface pressure + Pa + ps + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + x_wind_at_lowest_model_layer + x component of 1st model layer wind + m s-1 + u1 + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + y_wind_at_lowest_model_layer + y component of 1st model layer wind + m s-1 + v1 + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + air_temperature_at_lowest_model_layer + 1st model layer air temperature + K + t1 + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + water_vapor_specific_humidity_at_lowest_model_layer + 1st model layer specific humidity + kg kg-1 + q1 + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + soil_type_classification + soil type at each grid cell + index + soiltyp + integer + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + vegetation_type_classification + vegetation type at each grid cell + index + vegtype + integer + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + bounded_vegetation_area_fraction + areal fractional cover of green vegetation bounded on the bottom + frac + sigmaf + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_longwave_emissivity + surface longwave emissivity + frac + sfcemis + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_downwelling_longwave_flux_absorbed_by_ground + total sky surface downward longwave flux absorbed by the ground + W m-2 + dlwflx + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_downwelling_shortwave_flux + total sky surface downward shortwave flux + W m-2 + dswsfc + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_net_downwelling_shortwave_flux + total sky surface net shortwave flux + W m-2 + snet + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + time_step_for_dynamics + dynamics time step + s + delt + real + + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + deep_soil_temperature + bottom soil temperature + K + tg3 + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_drag_coefficient_for_momentum_in_air + surface exchange coeff for momentum + none + cm + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_drag_coefficient_for_heat_and_moisture_in_air + surface exchange coeff heat moisture + none + ch + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + air_pressure_at_lowest_model_layer + Model layer 1 mean pressure + Pa + prsl1 + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + ratio_of_exner_function_between_midlayer_and_interface_at_lowest_model_layer + Exner function ratio bt midlayer and interface at 1st layer + ratio + prslki + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + height_above_ground_at_lowest_model_layer + height above ground at 1st model layer + m + zf + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islimsk + integer + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_wind_enhancement_due_to_convection + surface wind enhancement due to convection + m s-1 + ddvel + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_slope_classification + surface slope type at each grid cell + index + slopetyp + integer + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + minimum_vegetation_area_fraction + min fractional coverage of green veg + frac + shdmin + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + maximum_vegetation_area_fraction + max fractnl cover of green veg (not used) + frac + shdmax + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + upper_bound_on_max_albedo_over_deep_snow + upper bound on max albedo over deep snow + frac + snoalb + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_diffused_shortwave_albedo + mean surface diffused shortwave albedo + frac + sfalb + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + flag_for_iteration + flag for iteration + flag + flag_iter + logical + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + flag_for_guess_run + flag for guess run + flag + flag_guess + logical + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + soil_type_dataset_choice + soil type dataset choice + index + isot + integer + + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + vegetation_type_dataset_choice + land use dataset choice + index + ivegsrc + integer + + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + perturbation_of_soil_type_b_parameter + perturbation of soil type "b" parameter + frac + bexppert + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + perturbation_of_leaf_area_index + perturbation of leaf area index + frac + xlaipert + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + perturbation_of_vegetation_fraction + perturbation of vegetation fraction + frac + vegfpert + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + magnitude_of_perturbation_of_vegetation_fraction + magnitude of perturbation of vegetation fraction + frac + pertvegf + real + (:) + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + water_equivalent_accumulated_snow_depth + water equivalent accumulated snow depth + mm + weasd + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_snow_thickness_water_equivalent + water equivalent snow depth over land + mm + snwdph + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_skin_temperature + surface skin temperature + K + tskin + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + nonnegative_lwe_thickness_of_precipitation_amount_on_dynamics_timestep + nonnegative precipitation amount in one dynamics time step + m + tprcp + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + flag_for_precipitation_type + flag for snow or rain precipitation + flag + srflag + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + volume_fraction_of_soil_moisture + volumetric fraction of soil moisture + frac + smc + real + (:,:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + soil_temperature + soil temperature + K + stc + real + (:,:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + volume_fraction_of_unfrozen_soil_moisture + volume fraction of unfrozen soil moisture + frac + slc + real + (:,:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + canopy_water_amount + canopy moisture content + kg m-2 + canopy + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + transpiration_flux + total plant transpiration rate + kg m-2 s-1 + trans + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_skin_temperature_after_iteration + surface skin temperature after iteration + K + tsurf + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_roughness_length + surface roughness length + cm + zorl + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_snow_area_fraction_for_diagnostics + surface snow area fraction + frac + sncovr1 + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_specific_humidity + surface specific humidity + kg kg-1 + qsurf + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + upward_heat_flux_in_soil + upward soil heat flux + W m-2 + gflux + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + subsurface_runoff_flux + subsurface runoff flux + g m-2 s-1 + drain + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + kinematic_surface_upward_latent_heat_flux + surface upward evaporation flux + kg kg-1 m s-1 + evap + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + kinematic_surface_upward_sensible_heat_flux + surface upward sensible heat flux + K m s-1 + hflx + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_upward_potential_latent_heat_flux + surface upward potential latent heat flux + W m-2 + ep + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_runoff_flux + surface runoff flux + g m-2 s-1 + runoff + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_drag_wind_speed_for_momentum_in_air + surf mom exch coef time mean surf wind + m s-1 + cmm + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_drag_mass_flux_for_heat_and_moisture_in_air + surf h m exch coef time surf wind density + kg m-2 s-1 + chh + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + soil_upward_latent_heat_flux + soil upward latent heat flux + W m-2 + evbs + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + canopy_upward_latent_heat_flux + canopy upward latent heat flux + W m-2 + evcw + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + snow_deposition_sublimation_upward_latent_heat_flux + latent heat flux from snow depo/subl + W m-2 + sbsno + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + surface_snow_area_fraction + surface snow area fraction + frac + snowc + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + soil_moisture_content + soil moisture content + kg m-2 + stm + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + snow_freezing_rain_upward_latent_heat_flux + latent heat flux due to snow and frz rain + W m-2 + snohf + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + volume_fraction_of_condensed_water_in_soil_at_wilting_point + soil water fraction at wilting point + frac + smcwlt2 + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + threshold_volume_fraction_of_condensed_water_in_soil + soil moisture threshold + frac + smcref2 + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + normalized_soil_wetness + normalized soil wetness + frac + wet1 + real + (:) + inout + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_run + + + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_finalize + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_finalize + + + + + mpi_rank + current MPI-rank + index + me + integer + + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_init + + + soil_type_dataset_choice + soil type dataset choice + index + isot + integer + + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_init + + + vegetation_type_dataset_choice + land use dataset choice + index + ivegsrc + integer + + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_init + + + iounit_namelist + fortran unit number for file opens + none + nlunit + integer + + in + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_lsm_noah SCHEME_lsm_noah SUBROUTINE_lsm_noah_init + + + diff --git a/physics/lsm_ruc.xml b/physics/lsm_ruc.xml new file mode 100644 index 000000000..d5631ba21 --- /dev/null +++ b/physics/lsm_ruc.xml @@ -0,0 +1,1230 @@ + + + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_finalize + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_finalize + + + + + time_step_for_dynamics + physics time step + s + delt + real + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + mpi_rank + current MPI-rank + index + me + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + index_of_time_step + current number of time steps + index + kdt + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + ccpp_loop_counter + loop counter for subcycling loops in CCPP + index + iter + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + vertical_dimension + number of vertical levels + count + nlev + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + flag_for_ruc_land_surface_scheme + flag for RUC land surface model + flag + lsm_ruc + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + flag_for_land_surface_scheme + flag for land surface model + flag + lsm + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + do_mynnsfclay + flag to activate MYNN surface layer + flag + do_mynnsfclay + logical + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + soil_vertical_dimension_for_land_surface_model + number of soil layers internal to land surface model + count + lsoil_ruc + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + soil_vertical_dimension + soil vertical layer dimension + count + lsoil + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + depth_of_soil_levels_for_land_surface_model + depth of soil levels for land surface model + m + zs + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islmsk + integer + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat !of dry air at constant pressure + J kg-1 K-1 + con_cp + real + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + pi + ratio of a circle's circumference to its diameter + radians + con_pi + real + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + con_rd + real + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + gas_constant_water_vapor + ideal gas constant for water vapor + J kg-1 K-1 + con_rv + real + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + latent_heat_of_vaporization_of_water_at_0C + latent heat of vaporization/sublimation (hvap) + J kg-1 + con_hvap + real + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + ratio_of_vapor_to_dry_air_gas_constants_minus_one + rv/rd - 1 (rv = ideal gas constant for water vapor) + none + con_fvirt + real + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + lwe_thickness_of_explicit_rainfall_amount_from_previous_timestep + explicit rainfall from previous timestep + m + rainnc + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + lwe_thickness_of_convective_precipitation_amount_from_previous_timestep + convective_precipitation_amount from previous timestep + m + rainc + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + lwe_thickness_of_ice_amount_from_previous_timestep + ice amount from previous timestep + m + ice + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + lwe_thickness_of_snow_amount_from_previous_timestep + snow amount from previous timestep + m + snow + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + lwe_thickness_of_graupel_amount_from_previous_timestep + graupel amount from previous timestep + m + graupel + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + flag_for_precipitation_type + snow/rain flag for precipitation + flag + srflag + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_snow_area_fraction_for_diagnostics + surface snow area fraction + frac + sncovr1 + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_snow_area_fraction + surface snow area fraction + frac + snowc + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + water_equivalent_accumulated_snow_depth + water equiv of acc snow depth over land and sea ice + mm + weasd + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_snow_thickness_water_equivalent + water equivalent snow depth over land + mm + snwdph + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + ratio_of_snowfall_to_rainfall + snow ratio: ratio of snow to total precipitation + frac + sr + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + density_of_frozen_precipitation + density of frozen precipitation + kg m-3 + rhosnf + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + height_above_ground_at_lowest_model_layer + layer 1 height above ground (not MSL) + m + zf + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + x_wind_at_lowest_model_layer + zonal wind at lowest model layer + m s-1 + u1 + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + y_wind_at_lowest_model_layer + meridional wind at lowest model layer + m s-1 + v1 + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + air_pressure_at_lowest_model_layer + mean pressure at lowest model layer + Pa + prsl1 + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_wind_enhancement_due_to_convection + surface wind enhancement due to convection + m s-1 + ddvel + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + air_temperature_at_lowest_model_layer + mean temperature at lowest model layer + K + t1 + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + water_vapor_specific_humidity_at_lowest_model_layer + water vapor specific humidity at lowest model layer + kg kg-1 + q1 + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + cloud_condensed_water_mixing_ratio_at_lowest_model_layer + moist (dry+vapor, no condensates) mixing ratio of cloud water at lowest model layer + kg kg-1 + qc + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_downwelling_longwave_flux + surface downwelling longwave flux at current time + W m-2 + dlwflx + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_downwelling_shortwave_flux + surface downwelling shortwave flux at current time + W m-2 + dswsfc + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_net_downwelling_shortwave_flux + surface net downwelling shortwave flux at current time + W m-2 + snet + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_longwave_emissivity + surface lw emissivity in fraction + frac + sfcemis + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + wspd + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_drag_coefficient_for_momentum_in_air + surface exchange coeff for momentum + none + cm + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_drag_coefficient_for_heat_and_moisture_in_air + surface exchange coeff heat moisture + none + ch + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_drag_mass_flux_for_heat_and_moisture_in_air + surf h m exch coef time surf wind density + kg m-2 s-1 + chh + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_drag_wind_speed_for_momentum_in_air + surf mom exch coef time mean surf wind + m s-1 + cmm + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + normalized_soil_wetness + normalized soil wetness + frac + wet1 + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + canopy_water_amount + canopy water amount + kg m-2 + canopy + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + vegetation_area_fraction + areal fractional cover of green vegetation + frac + sigmaf + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_diffused_shortwave_albedo + mean surface diffused sw albedo + frac + sfalb + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + mean_vis_albedo_with_weak_cosz_dependency + mean vis albedo with weak cosz dependency + frac + alvwf + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + mean_nir_albedo_with_weak_cosz_dependency + mean nir albedo with weak cosz dependency + frac + alnwf + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + upper_bound_on_max_albedo_over_deep_snow + maximum snow albedo + frac + snoalb + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_roughness_length + surface roughness length + cm + zorl + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_specific_humidity + surface air saturation specific humidity + kg kg-1 + qsurf + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + cloud_condensed_water_mixing_ratio_at_surface + moist cloud water mixing ratio at surface + kg kg-1 + sfcqc + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + water_vapor_mixing_ratio_at_surface + water vapor mixing ratio at surface + kg kg-1 + sfcqv + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_condensation_mass + surface condensation mass + kg m-2 + sfcdew + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + deep_soil_temperature + deep soil temperature + K + tg3 + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + volume_fraction_of_soil_moisture + total soil moisture + frac + smc + real + (:,:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + volume_fraction_of_unfrozen_soil_moisture + liquid soil moisture + frac + slc + real + (:,:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + soil_temperature + soil temperature + K + stc + real + (:,:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + volume_fraction_of_condensed_water_in_soil_at_wilting_point + soil water fraction at wilting point + frac + smcwlt2 + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + threshold_volume_fraction_of_condensed_water_in_soil + soil moisture threshold + frac + smcref2 + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + vegetation_type_classification + vegetation type at each grid cell + index + vegtype + integer + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + soil_type_classification + soil type at each grid cell + index + soiltyp + integer + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + soil_type_dataset_choice + soil type dataset choice + index + isot + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + vegetation_type_dataset_choice + land use dataset choice + index + ivegsrc + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + sea_ice_concentration + ice fraction over open water + frac + fice + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + flag_for_frozen_soil_physics + flag for frozen soil physics (RUC) + flag + keepfr + real + (:,:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + volume_fraction_of_soil_moisture_for_land_surface_model + volumetric fraction of soil moisture for lsm + frac + smois + real + (:,:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + volume_fraction_of_unfrozen_soil_moisture_for_land_surface_model + volume fraction of unfrozen soil moisture for lsm + frac + sh2o + real + (:,:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + volume_fraction_of_frozen_soil_moisture_for_land_surface_model + volume fraction of frozen soil moisture for lsm + frac + smfrkeep + real + (:,:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + soil_temperature_for_land_surface_model + soil temperature for land surface model + K + tslb + real + (:,:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + soil_moisture_content + soil moisture content + kg m-2 + stm + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_skin_temperature + surface skin temperature + K + tskin + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_skin_temperature_after_iteration + surface skin temperature after iteration + K + tsurf + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + sea_ice_temperature + sea ice surface skin temperature + K + tice + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + snow_temperature_bottom_first_layer + snow temperature at the bottom of first snow layer + K + tsnow + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + total_accumulated_snowfall + run-total snow accumulation on the ground + kg m-2 + snowfallac + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + accumulated_water_equivalent_of_frozen_precip + snow water equivalent of run-total frozen precip + kg m-2 + acsnow + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + kinematic_surface_upward_latent_heat_flux + kinematic surface upward evaporation flux + kg kg-1 m s-1 + evap + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic surface upward sensible heat flux + K m s-1 + hflx + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + soil_upward_latent_heat_flux + soil upward latent heat flux + W m-2 + evbs + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + canopy_upward_latent_heat_flux + canopy upward latent heat flux + W m-2 + evcw + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + snow_deposition_sublimation_upward_latent_heat_flux + latent heat flux from snow depo/subl + W m-2 + sbsno + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + transpiration_flux + total plant transpiration rate + kg m-2 s-1 + trans + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_runoff_flux + surface runoff flux + g m-2 s-1 + runof + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + subsurface_runoff_flux + subsurface runoff flux + g m-2 s-1 + drain + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + total_runoff + total water runoff + kg m-2 + runoff + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + surface_runoff + surface water runoff (from lsm) + kg m-2 + srunoff + real + (:) + inout + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + upward_heat_flux_in_soil + soil heat flux + W m-2 + gflux + real + (:) + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + minimum_vegetation_area_fraction + min fractional coverage of green vegetation + frac + shdmin + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + maximum_vegetation_area_fraction + max fractional coverage of green vegetation + frac + shdmax + real + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + flag_for_iteration + flag for iteration + flag + flag_iter + logical + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + flag_for_guess_run + flag for guess run + flag + flag_guess + logical + (:) + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + flag_for_first_time_step + flag signaling first time step for time integration loop + flag + flag_init + logical + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + flag_for_restart + flag for restart (warmstart) or coldstart + flag + flag_restart + logical + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_run + + + + + mpi_rank + current MPI-rank + index + me + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_init + + + soil_type_dataset_choice + soil type dataset choice + index + isot + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_init + + + vegetation_type_dataset_choice + land use dataset choice + index + ivegsrc + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_init + + + iounit_namelist + fortran unit number for file opens + none + nlunit + integer + + in + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_lsm_ruc SCHEME_lsm_ruc SUBROUTINE_lsm_ruc_init + + + diff --git a/physics/m_micro.xml b/physics/m_micro.xml new file mode 100644 index 000000000..b86b66b84 --- /dev/null +++ b/physics/m_micro.xml @@ -0,0 +1,1152 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + vertical_dimension + vertical layer dimension + count + lm + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + flag_flip + vertical flip logical + flag + flipv + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + time_step_for_physics + physics time step + s + dt_i + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + air_pressure + layer mean pressure + Pa + prsl_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + air_pressure_at_interface + air pressure at model layer interfaces + Pa + prsi_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + geopotential + geopotential at model layer centers + m2 s-2 + phil + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + omega + layer mean vertical velocity + Pa s-1 + omega_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + cloud_condensed_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) in the convectively transported tracer array + kg kg-1 + qlls_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + mass_fraction_of_convective_cloud_liquid_water + mass fraction of convective cloud liquid water + kg kg-1 + qlcn_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + ice_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of ice water in the convectively transported tracer array + kg kg-1 + qils_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + mass_fraction_of_convective_cloud_ice + mass fraction of convective cloud ice water + kg kg-1 + qicn_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_timestep + total sky lw heating rate + K s-1 + lwheat_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + tendency_of_air_temperature_due_to_shortwave_heating_on_radiation_timestep + total sky sw heating rate + K s-1 + swheat_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + vertical_velocity_for_updraft + vertical velocity for updraft + m s-1 + w_upi + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + convective_cloud_fraction_for_microphysics + convective cloud fraction for microphysics + frac + cf_upi + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + land_area_fraction + land area fraction + frac + frland + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + atmosphere_boundary_layer_thickness + pbl height + m + zpbl + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + detrained_mass_flux + detrained mass flux + kg m-2 s-1 + cnv_mfd_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + tendency_of_cloud_water_due_to_convective_microphysics + tendency of cloud water due to convective microphysics + kg m-2 s-1 + cnv_dqldt_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + convective_cloud_volume_fraction + convective cloud volume fraction + frac + clcn_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + x_wind_updated_by_physics + zonal wind updated by physics + m s-1 + u_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + y_wind_updated_by_physics + meridional wind updated by physics + m s-1 + v_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + cumulative_surface_x_momentum_flux_for_diag_multiplied_by_timestep + cumulative sfc x momentum flux multiplied by timestep + Pa s + taugwx + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + cumulative_surface_y_momentum_flux_for_diag_multiplied_by_timestep + cumulative sfc y momentum flux multiplied by timestep + Pa s + taugwy + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + instantaneous_surface_x_momentum_flux + x momentum flux + Pa + tauorox + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + instantaneous_surface_y_momentum_flux + y momentum flux + Pa + tauoroy + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + ice_fraction_in_convective_tower + ice fraction in convective tower + frac + cnv_fice_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + number_concentration_of_cloud_liquid_water_particles_for_detrainment + droplet number concentration in convective detrainment + m-3 + cnv_ndrop_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + number_concentration_of_ice_crystals_for_detrainment + crystal number concentration in convective detrainment + m-3 + cnv_nice_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + q_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + cloud_condensed_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of cloud condensed water updated by physics + kg kg-1 + lwm_o + real + (:,:) + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + ice_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of ice water updated by physics + kg kg-1 + qi_o + real + (:,:) + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + t_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + lwe_thickness_of_explicit_precipitation_amount + explicit precipitation (rain, ice, snow, graupel, ...) on physics timestep + m + rn_o + real + (:) + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + ratio_of_snowfall_to_rainfall + snow ratio: ratio of snow to total precipitation + frac + sr_o + real + (:) + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + cloud_droplet_number_concentration_updated_by_physics + number concentration of cloud droplets updated by physics + kg-1 + ncpl_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + ice_number_concentration_updated_by_physics + number concentration of ice updated by physics + kg-1 + ncpi_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + number_of_frozen_precipitation_species + number of frozen precipitation species + count + fprcp + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + local_rain_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of rain water local to physics + kg kg-1 + rnw_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + local_snow_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of snow water local to physics + kg kg-1 + snw_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + local_graupel_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of graupel local to physics + kg kg-1 + qgl_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + local_rain_number_concentration + number concentration of rain local to physics + kg-1 + ncpr_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + local_snow_number_concentration + number concentration of snow local to physics + kg-1 + ncps_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + local_graupel_number_concentration + number concentration of graupel local to physics + kg-1 + ncgl_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + cloud_fraction_for_MG + cloud fraction used by Morrison-Gettelman MP + frac + clls_io + real + (:,:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + vertical_index_at_cloud_base + vertical index at cloud base + index + kcbl + integer + (:) + inout + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + effective_radius_of_stratiform_cloud_liquid_water_particle_in_um + effective radius of cloud liquid water particle in micrometer + um + cldreffl + real + (:,:) + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + effective_radius_of_stratiform_cloud_ice_particle_in_um + effective radius of cloud ice water particle in micrometers + um + cldreffi + real + (:,:) + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + effective_radius_of_stratiform_cloud_rain_particle_in_um + effective radius of cloud rain particle in micrometers + um + cldreffr + real + (:,:) + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + effective_radius_of_stratiform_cloud_snow_particle_in_um + effective radius of cloud snow particle in micrometers + um + cldreffs + real + (:,:) + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + effective_radius_of_stratiform_cloud_graupel_particle_in_um + effective radius of cloud graupel particle in micrometers + um + cldreffg + real + (:,:) + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + aerosol_number_concentration_from_gocart_aerosol_climatology + GOCART aerosol climatology number concentration + kg-1? + aerfld_i + real + (:,:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + flag_for_aerosol_input_MG + flag for using aerosols in Morrison-Gettelman microphysics + flag + aero_in + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + in_number_concentration + IN number concentration + kg-1? + naai_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + ccn_number_concentration + CCN number concentration + kg-1? + npccn_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + flag_for_in_ccn_forcing_for_morrison_gettelman_microphysics + flag for IN and CCN forcing for morrison gettelman microphysics + flag + iccn + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + flag_skip_macro + flag to skip cloud macrophysics in Morrison scheme + flag + skip_macro + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + flag_print + control flag for diagnostic print out + flag + lprnt + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + mg_tuning_factor_for_alphas + tuning factor for alphas (alpha = 1 - critical relative humidity) + none + alf_fac + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + mg_minimum_cloud_condensed_water_and_ice_mixing_ratio + minimum cloud condensed water and ice mixing ratio in MG macro clouds + kg kg-1 + qc_min + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + flag_for_pdf_for_morrison_gettelman_microphysics_scheme + pdf flag for MG macrophysics + flag + pdfflag + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + horizontal_index_of_printed_column + horizontal index of printed column + index + ipr + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + index_of_time_step + current forecast iteration + index + kdt + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + latitude + latitude + radians + xlat + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + longitude + longitude + radians + xlon + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + critical_relative_humidity + critical relative humidity + frac + rhc_i + real + (:,:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_run + + + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + flag_for_morrison_gettelman_microphysics_scheme + choice of Morrison-Gettelman rmicrophysics scheme + flag + imp_physics_mg + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + number_of_frozen_precipitation_species + number of frozen precipitation species + count + fprcp + integer + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + gravitational_acceleration + gravitational acceleration + m s-2 + gravit + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + rair + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + gas_constant_water_vapor + ideal gas constant for water vapor + J kg-1 K-1 + rh2o + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cpair + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + triple_point_temperature_of_water + triple point temperature of water + K + tmelt + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + latent_heat_of_vaporization_of_water_at_0C + latent heat of evaporation/sublimation + J kg-1 + latvap + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + latent_heat_of_fusion_of_water_at_0C + latent heat of fusion + J kg-1 + latice + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_autoconversion_size_threshold_ice_snow + autoconversion size threshold for cloud ice to snow for MG microphysics + um + mg_dcs + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_cloud_water_variance + cloud water relative variance for MG microphysics + + mg_qcvar + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_time_scale_for_autoconversion_of_ice + autoconversion time scale for ice for MG microphysics + s + mg_ts_auto_ice + real + (:) + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_minimum_rh_for_ice + relative humidity threshold parameter for nucleating ice for MG microphysics + none + mg_rhmini + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_for_uniform_subcolumns + flag for uniform subcolumns for MG microphysics + flag + microp_uniform + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_for_cloud_ice_processes + flag for cloud ice processes for MG microphysics + flag + do_cldice + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_for_heterogeneous_freezing + flag for heterogeneous freezing for MG microphysics + flag + hetfrz_classnuc + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_type_of_precip_fraction_method + type of precip fraction method for MG microphysics (in_cloud or max_overlap) + none + mg_precip_frac_method + character + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_bergeron_efficiency_factor + bergeron efficiency factor for MG microphysics + frac + mg_berg_eff_factor + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_allow_supersat_after_sed + allow supersaturation after sedimentation for MG microphysics + flag + sed_supersat + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_for_sb2001_autoconversion + flag for SB 2001 autoconversion or accretion for MG microphysics + flag + do_sb_physics + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_for_hail + flag for hail for MG microphysics (graupel possible if false) + flag + mg_do_hail + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_for_graupel + flag for graupel for MG microphysics (hail possible if false) + flag + mg_do_graupel + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_drop_concentration_constant + flag for constant droplet concentration for MG microphysics + flag + mg_nccons + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_ice_concentration_constant + flag for constant ice concentration for MG microphysics + flag + mg_nicons + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_graupel_concentration_constant + flag for constant graupel concentration for MG microphysics + flag + mg_ngcons + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_drop_concentration_constant + droplet concentration constant for MG microphysics + m-3 + mg_ncnst + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_ice_concentration_constant + ice concentration constant for MG microphysics + m-3 + mg_ninst + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_graupel_concentration_constant + graupel concentration constant for MG microphysics + m-3 + mg_ngnst + real + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_for_gmao_ice_formulation + flag for gmao ice formulation + flag + mg_do_ice_gmao + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + mg_flag_for_liu_liquid_treatment + flag for liu liquid treatment + flag + mg_do_liq_liu + logical + + in + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_m_micro SCHEME_m_micro SUBROUTINE_m_micro_init + + + + diff --git a/physics/m_micro_post.xml b/physics/m_micro_post.xml new file mode 100644 index 000000000..4b0089790 --- /dev/null +++ b/physics/m_micro_post.xml @@ -0,0 +1,205 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + number_of_frozen_precipitation_species + number of frozen precipitation species + count + fprcp + integer + + in + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + flag_mg3_as_mg2 + flag for controlling prep for Morrison-Gettelman microphysics + flag + mg3_as_mg2 + logical + + in + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + local_rain_number_concentration + number concentration of rain local to physics + kg-1 + ncpr + real + (:,:) + in + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + local_snow_number_concentration + number concentration of snow local to physics + kg-1 + ncps + real + (:,:) + in + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + local_graupel_number_concentration + number concentration of graupel local to physics + kg-1 + ncgl + real + (:,:) + in + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + local_rain_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of rain water local to physics + kg kg-1 + qrn + real + (:,:) + inout + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + local_snow_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of snow water local to physics + kg kg-1 + qsnw + real + (:,:) + inout + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + local_graupel_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of graupel local to physics + kg kg-1 + qgl + real + (:,:) + inout + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + rain_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of rain water updated by physics + kg kg-1 + gq0_rain + real + (:,:) + out + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + snow_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of snow water updated by physics + kg kg-1 + gq0_snow + real + (:,:) + out + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + graupel_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of graupel updated by physics + kg kg-1 + gq0_graupel + real + (:,:) + out + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + rain_number_concentration_updated_by_physics + number concentration of rain updated by physics + kg-1 + gq0_rain_nc + real + (:,:) + out + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + snow_number_concentration_updated_by_physics + number concentration of snow updated by physics + kg-1 + gq0_snow_nc + real + (:,:) + out + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + graupel_number_concentration_updated_by_physics + number concentration of graupel updated by physics + kg-1 + gq0_graupel_nc + real + (:,:) + out + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_m_micro_post SCHEME_m_micro_post SUBROUTINE_m_micro_post_run + + + + diff --git a/physics/m_micro_pre.xml b/physics/m_micro_pre.xml new file mode 100644 index 000000000..a9baa1979 --- /dev/null +++ b/physics/m_micro_pre.xml @@ -0,0 +1,381 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + flag_for_shoc + flag for SHOC + flag + do_shoc + logical + + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + number_of_frozen_precipitation_species + number of frozen precipitation species + count + fprcp + integer + + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + flag_mg3_as_mg2 + flag for controlling prep for Morrison-Gettelman microphysics + flag + mg3_as_mg2 + logical + + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + ice_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of ice water updated by physics + kg kg-1 + gq0_ice + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + cloud_condensed_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of cloud condensed water updated by physics + kg kg-1 + gq0_water + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + rain_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of rain water updated by physics + kg kg-1 + gq0_rain + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + snow_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of snow water updated by physics + kg kg-1 + gq0_snow + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + graupel_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of graupel updated by physics + kg kg-1 + gq0_graupel + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + rain_number_concentration_updated_by_physics + number concentration of rain updated by physics + kg-1 + gq0_rain_nc + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + snow_number_concentration_updated_by_physics + number concentration of snow updated by physics + kg-1 + gq0_snow_nc + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + graupel_number_concentration_updated_by_physics + number concentration of graupel updated by physics + kg-1 + gq0_graupel_nc + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + subgrid_scale_cloud_fraction_from_shoc + subgrid-scale cloud fraction from the SHOC scheme + frac + cld_shoc + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + convective_cloud_cover + convective cloud cover + frac + cnvc + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + convective_cloud_water_mixing_ratio + moist convective cloud water mixing ratio + kg kg-1 + cnvw + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + cloud_phase_transition_threshold_temperature + threshold temperature below which cloud starts to freeze + K + tcr + real + + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + cloud_phase_transition_denominator + denominator in cloud phase transition = 1/(tcr-tf) + K-1 + tcrf + real + + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + local_rain_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of rain water local to physics + kg kg-1 + qrn + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + local_snow_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of snow water local to physics + kg kg-1 + qsnw + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + local_graupel_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of graupel local to physics + kg kg-1 + qgl + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + local_rain_number_concentration + number concentration of rain local to physics + kg-1 + ncpr + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + local_snow_number_concentration + number concentration of snow local to physics + kg-1 + ncps + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + local_graupel_number_concentration + number concentration of graupel local to physics + kg-1 + ncgl + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + cloud_fraction_for_MG + cloud fraction used by Morrison-Gettelman MP + frac + cld_frc_MG + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + mass_fraction_of_convective_cloud_liquid_water + mass fraction of convective cloud liquid water + kg kg-1 + qlcn + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + mass_fraction_of_convective_cloud_ice + mass fraction of convective cloud ice water + kg kg-1 + qicn + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + convective_cloud_fraction_for_microphysics + convective cloud fraction for microphysics + frac + cf_upi + real + (:,:) + inout + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + cloud_condensed_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) in the convectively transported tracer array + kg kg-1 + clw_water + real + (:,:) + out + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + ice_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of ice water in the convectively transported tracer array + kg kg-1 + clw_ice + real + (:,:) + out + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + convective_cloud_volume_fraction + convective cloud volume fraction + frac + clcn + real + (:,:) + in + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_m_micro_pre SCHEME_m_micro_pre SUBROUTINE_m_micro_pre_run + + + diff --git a/physics/machine.xml b/physics/machine.xml new file mode 100644 index 000000000..cd06d9827 --- /dev/null +++ b/physics/machine.xml @@ -0,0 +1,36 @@ + + + + kind_dyn + definition of kind_dyn + none + kind_dyn + integer + + none + F + MODULE_machine + + + kind_grid + definition of kind_grid + none + kind_grid + integer + + none + F + MODULE_machine + + + kind_phys + definition of kind_phys + none + kind_phys + integer + + none + F + MODULE_machine + + diff --git a/physics/moninshoc.xml b/physics/moninshoc.xml new file mode 100644 index 000000000..608f48dbe --- /dev/null +++ b/physics/moninshoc.xml @@ -0,0 +1,634 @@ + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + vertical_dimension + vertical layer dimension + count + km + integer + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + number_of_vertical_diffusion_tracers + number of tracers to diffuse vertically + count + ntrac + integer + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + index_for_liquid_cloud_condensate + cloud condensate index in tracer array + index + ntcw + integer + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + number_of_tracers_for_cloud_condensate + number of tracers for cloud condensate + count + ncnd + integer + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + tendency_of_y_wind_due_to_model_physics + updated tendency of the y wind + m s-2 + dv + real + (:,:) + inout + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + tendency_of_x_wind_due_to_model_physics + updated tendency of the x wind + m s-2 + du + real + (:,:) + inout + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + tendency_of_air_temperature_due_to_model_physics + updated tendency of the temperature + K s-1 + tau + real + (:,:) + inout + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + tendency_of_vertically_diffused_tracer_concentration + updated tendency of the tracers due to vertical diffusion in PBL scheme + kg kg-1 s-1 + rtg + real + (:,:,:) + inout + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + x_wind + x component of layer wind + m s-1 + u1 + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + y_wind + y component of layer wind + m s-1 + v1 + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + air_temperature + layer mean air temperature + K + t1 + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + vertically_diffused_tracer_concentration + tracer concentration diffused by PBL scheme + kg kg-1 + q1 + real + (:,:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + atmosphere_heat_diffusivity_from_shoc + diffusivity for heat from the SHOC scheme + m2 s-1 + tkh + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + prandtl_number + turbulent Prandtl number + none + prnum + real + (:,:) + inout + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + index_for_turbulent_kinetic_energy + tracer index for turbulent kinetic energy + index + ntke + integer + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + dimensionless_exner_function_at_lowest_model_interface + dimensionless Exner function at the surface interface + none + psk + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + bulk_richardson_number_at_lowest_model_level + bulk Richardson number at the surface + none + rbsoil + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + surface_roughness_length + surface roughness length in cm + cm + zorl + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + x_wind_at_10m + x component of wind at 10 m + m s-1 + u10m + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + y_wind_at_10m + y component of wind at 10 m + m s-1 + v10m + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + Monin-Obukhov_similarity_function_for_momentum + Monin-Obukhov similarity function for momentum + none + fm + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + Monin-Obukhov_similarity_function_for_heat + Monin-Obukhov similarity function for heat + none + fh + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + surface_skin_temperature + surface skin temperature + K + tsea + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic surface upward sensible heat flux + K m s-1 + heat + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + kinematic_surface_upward_latent_heat_flux + kinematic surface upward latent heat flux + kg kg-1 m s-1 + evap + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + surface_wind_stress + surface wind stress + m2 s-2 + stress + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + spd1 + real + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + vertical_index_at_top_of_atmosphere_boundary_layer + PBL top model level index + index + kpbl + integer + (:) + out + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + air_pressure_at_interface + air pressure at model layer interfaces + Pa + prsi + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + air_pressure_difference_between_midlayers + pres(k) - pres(k+1) + Pa + del + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + dimensionless_exner_function_at_model_layers + Exner function at layers + none + prslk + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + geopotential + geopotential at model layer centers + m2 s-2 + phil + real + (:,:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + time_step_for_physics + time step for physics + s + delt + real + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + instantaneous_surface_x_momentum_flux + x momentum flux + Pa + dusfc + real + (:) + out + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + instantaneous_surface_y_momentum_flux + y momentum flux + Pa + dvsfc + real + (:) + out + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + instantaneous_surface_upward_sensible_heat_flux + surface upward sensible heat flux + W m-2 + dtsfc + real + (:) + out + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + instantaneous_surface_upward_latent_heat_flux + surface upward latent heat flux + W m-2 + dqsfc + real + (:) + out + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + atmosphere_heat_diffusivity + diffusivity for heat + m2 s-1 + dkt + real + (:,:) + out + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + atmosphere_boundary_layer_thickness + PBL thickness + m + hpbl + real + (:) + out + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + index_of_highest_temperature_inversion + index of highest temperature inversion + index + kinver + integer + (:) + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + atmosphere_momentum_diffusivity_background + background value of momentum diffusivity + m2 s-1 + xkzm_m + real + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + atmosphere_heat_diffusivity_background + background value of heat diffusivity + m2 s-1 + xkzm_h + real + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + diffusivity_background_sigma_level + sigma level threshold for background diffusivity + none + xkzm_s + real + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + flag_print + flag for printing diagnostics to output + flag + lprnt + logical + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + horizontal_index_of_printed_column + horizontal index of printed column + index + ipr + integer + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + mpi_rank + current MPI-rank + index + me + integer + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + grav + real + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + rd + real + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + latent_heat_of_vaporization_of_water_at_0C + latent heat of evaporation/sublimation + J kg-1 + hvap + real + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + ratio_of_vapor_to_dry_air_gas_constants_minus_one + (rv/rd) - 1 (rv = ideal gas constant for water vapor) + none + fv + real + + in + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_moninshoc SCHEME_moninshoc SUBROUTINE_moninshoc_run + + + + + diff --git a/physics/mp_thompson_hrrr.xml b/physics/mp_thompson_hrrr.xml new file mode 100644 index 000000000..4d03acc23 --- /dev/null +++ b/physics/mp_thompson_hrrr.xml @@ -0,0 +1,625 @@ + + + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_finalize + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_finalize + + + + + horizontal_loop_extent + horizontal loop extent + count + ncol + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + vertical_dimension + number of vertical levels + count + nlev + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + flag_for_aerosol_physics + flag for aerosol-aware physics + flag + is_aerosol_aware + logical + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + tendency_of_water_friendly_aerosols_at_surface + instantaneous fake water-friendly surface aerosol source + kg-1 s-1 + nwfa2d + real + (:) + inout + T + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + tendency_of_ice_friendly_aerosols_at_surface + instantaneous fake ice-friendly surface aerosol source + kg-1 s-1 + nifa2d + real + (:) + inout + T + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + water_friendly_aerosol_number_concentration + number concentration of water-friendly aerosols + kg-1 + nwfa + real + (:,:) + inout + T + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + ice_friendly_aerosol_number_concentration + number concentration of ice-friendly aerosols + kg-1 + nifa + real + (:,:) + inout + T + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + mpi_comm + MPI communicator + index + mpicomm + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + mpi_rank + current MPI-rank + index + mpirank + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + mpi_root + master MPI-rank + index + mpiroot + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + omp_threads + number of OpenMP threads available to scheme + count + threads + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + flag_for_thompson_microphysics_scheme + choice of Thompson microphysics scheme + flag + imp_physics_thompson + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_init + + + + + horizontal_loop_extent + horizontal loop extent + count + ncol + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + vertical_dimension + number of vertical levels + count + nlev + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + con_rd + real + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity + kg kg-1 + spechum + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + cloud_condensed_water_mixing_ratio_updated_by_physics + cloud water mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qc + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + rain_water_mixing_ratio_updated_by_physics + rain water mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qr + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + ice_water_mixing_ratio_updated_by_physics + ice water mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qi + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + snow_water_mixing_ratio_updated_by_physics + snow water mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qs + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + graupel_mixing_ratio_updated_by_physics + graupel mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qg + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + ice_number_concentration_updated_by_physics + ice number concentration + kg-1 + ni + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + rain_number_concentration_updated_by_physics + rain number concentration + kg-1 + nr + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + flag_for_aerosol_physics + flag for aerosol-aware physics + flag + is_aerosol_aware + logical + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + cloud_droplet_number_concentration_updated_by_physics + cloud droplet number concentration + kg-1 + nc + real + (:,:) + inout + T + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + water_friendly_aerosol_number_concentration_updated_by_physics + number concentration of water-friendly aerosols + kg-1 + nwfa + real + (:,:) + inout + T + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + ice_friendly_aerosol_number_concentration_updated_by_physics + number concentration of ice-friendly aerosols + kg-1 + nifa + real + (:,:) + inout + T + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + tendency_of_water_friendly_aerosols_at_surface + instantaneous fake water-friendly surface aerosol source + kg-1 s-1 + nwfa2d + real + (:) + in + T + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + tendency_of_ice_friendly_aerosols_at_surface + instantaneous fake ice-friendly surface aerosol source + kg-1 s-1 + nifa2d + real + (:) + in + T + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + air_temperature_updated_by_physics + model layer mean temperature + K + tgrs + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + omega + layer mean vertical velocity + Pa s-1 + omega + real + (:,:) + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + time_step_for_physics + physics timestep + s + dtp + real + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + lwe_thickness_of_explicit_precipitation_amount + explicit precipitation (rain, ice, snow, graupel) on physics timestep + m + prcp + real + (:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + lwe_thickness_of_explicit_rain_amount + explicit rain fall on physics timestep + m + rain + real + (:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + lwe_thickness_of_graupel_amount + graupel fall on physics timestep + m + graupel + real + (:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + lwe_thickness_of_ice_amount + ice fall on physics timestep + m + ice + real + (:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + lwe_thickness_of_snow_amount + snow fall on physics timestep + m + snow + real + (:) + inout + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + ratio_of_snowfall_to_rainfall + ratio of snowfall to large-scale rainfall + frac + sr + real + (:) + out + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + radar_reflectivity_10cm + instantaneous refl_10cm + dBZ + refl_10cm + real + (:,:) + out + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + flag_for_radar_reflectivity + flag for radar reflectivity + flag + do_radar_ref + logical + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + effective_radius_of_stratiform_cloud_liquid_water_particle_in_um + eff. radius of cloud liquid water particle in micrometer + um + re_cloud + real + (:,:) + none + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + effective_radius_of_stratiform_cloud_ice_particle_in_um + eff. radius of cloud ice water particle in micrometer + um + re_ice + real + (:,:) + none + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + effective_radius_of_stratiform_cloud_snow_particle_in_um + effective radius of cloud snow particle in micrometers + um + re_snow + real + (:,:) + none + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + mpi_comm + MPI communicator + index + mpicomm + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + mpi_rank + current MPI-rank + index + mpirank + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + mpi_root + master MPI-rank + index + mpiroot + integer + + in + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mp_thompson_hrrr SCHEME_mp_thompson_hrrr SUBROUTINE_mp_thompson_hrrr_run + + + diff --git a/physics/mp_thompson_hrrr_post.xml b/physics/mp_thompson_hrrr_post.xml new file mode 100644 index 000000000..956dd892d --- /dev/null +++ b/physics/mp_thompson_hrrr_post.xml @@ -0,0 +1,207 @@ + + + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_finalize + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_finalize + + + + + horizontal_loop_extent + horizontal loop extent + count + ncol + integer + + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + vertical_dimension + number of vertical levels + count + nlev + integer + + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + air_temperature_save + air temperature before entering a physics scheme + K + tgrs_save + real + (:,:) + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + air_temperature_updated_by_physics + model layer mean temperature + K + tgrs + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + dimensionless_exner_function_at_model_layers + dimensionless Exner function at model layer centers + none + prslk + real + (:,:) + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + time_step_for_physics + physics timestep + s + dtp + real + + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + mpi_comm + MPI communicator + index + mpicomm + integer + + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + mpi_rank + current MPI-rank + index + mpirank + integer + + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + mpi_root + master MPI-rank + index + mpiroot + integer + + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_run + + + + + horizontal_loop_extent + horizontal loop extent + count + ncol + integer + + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_init + + + cell_area + area of the grid cell + m2 + area + real + (:) + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_init + + + limit_for_temperature_tendency_for_microphysics + temperature tendency limiter per physics time step + K s-1 + ttendlim + real + + in + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mp_thompson_hrrr_post SCHEME_mp_thompson_hrrr_post SUBROUTINE_mp_thompson_hrrr_post_init + + + diff --git a/physics/mp_thompson_hrrr_pre.xml b/physics/mp_thompson_hrrr_pre.xml new file mode 100644 index 000000000..3939c1338 --- /dev/null +++ b/physics/mp_thompson_hrrr_pre.xml @@ -0,0 +1,337 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + ncol + integer + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + vertical_dimension + number of vertical levels + count + nlev + integer + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + index_of_time_step + current forecast iteration + index + kdt + integer + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + con_rd + real + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity + kg kg-1 + spechum + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + cloud_condensed_water_mixing_ratio_updated_by_physics + cloud water mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qc + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + rain_water_mixing_ratio_updated_by_physics + rain water mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qr + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + ice_water_mixing_ratio_updated_by_physics + ice water mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qi + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + snow_water_mixing_ratio_updated_by_physics + snow water mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qs + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + graupel_mixing_ratio_updated_by_physics + graupel mixing ratio wrt dry+vapor (no condensates) + kg kg-1 + qg + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + ice_number_concentration_updated_by_physics + ice number concentration + kg-1 + ni + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + rain_number_concentration_updated_by_physics + rain number concentration + kg-1 + nr + real + (:,:) + inout + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + flag_for_aerosol_physics + flag for aerosol-aware physics + flag + is_aerosol_aware + logical + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + cloud_droplet_number_concentration_updated_by_physics + cloud droplet number concentration + kg-1 + nc + real + (:,:) + inout + T + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + water_friendly_aerosol_number_concentration_updated_by_physics + number concentration of water-friendly aerosols + kg-1 + nwfa + real + (:,:) + inout + T + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + ice_friendly_aerosol_number_concentration_updated_by_physics + number concentration of ice-friendly aerosols + kg-1 + nifa + real + (:,:) + inout + T + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + tendency_of_water_friendly_aerosols_at_surface + instantaneous fake water-friendly surface aerosol source + kg-1 s-1 + nwfa2d + real + (:) + inout + T + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + tendency_of_ice_friendly_aerosols_at_surface + instantaneous fake ice-friendly surface aerosol source + kg-1 s-1 + nifa2d + real + (:) + inout + T + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + air_temperature_updated_by_physics + model layer mean temperature + K + tgrs + real + (:,:) + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + air_temperature_save + air temperature before entering a physics scheme + K + tgrs_save + real + (:,:) + out + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + geopotential + geopotential at model layer centers + m2 s-2 + phil + real + (:,:) + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + cell_area + area of the grid cell + m2 + area + real + (:) + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + mpi_comm + MPI communicator + index + mpicomm + integer + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + mpi_rank + current MPI-rank + index + mpirank + integer + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + mpi_root + master MPI-rank + index + mpiroot + integer + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + ccpp_block_number + for explicit data blocking: block number of this block + index + blkno + integer + + in + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mp_thompson_hrrr_pre SCHEME_mp_thompson_hrrr_pre SUBROUTINE_mp_thompson_hrrr_pre_run + + + + diff --git a/physics/mynnedmf_wrapper.xml b/physics/mynnedmf_wrapper.xml new file mode 100644 index 000000000..3735485bd --- /dev/null +++ b/physics/mynnedmf_wrapper.xml @@ -0,0 +1,1052 @@ + + + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + flag_for_first_time_step + flag signaling first time step for time integration loop + flag + flag_init + logical + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + flag_for_restart + flag for restart (warmstart) or coldstart + flag + flag_restart + logical + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + time_step_for_physics + time step for physics + s + delt + real + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + cell_size + size of the grid cell + m + dx + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + surface_roughness_length + surface roughness length in cm + cm + zorl + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + x_wind + x component of layer wind + m s-1 + U + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + y_wind + y component of layer wind + m s-1 + V + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + omega + layer mean vertical velocity + Pa s-1 + omega + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + air_temperature + layer mean air temperature + K + T3D + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + water_vapor_specific_humidity + water vapor specific humidity + kg kg-1 + qgrs_water_vapor + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + cloud_condensed_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) + kg kg-1 + qgrs_liquid_cloud + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + ice_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of ice water + kg kg-1 + qgrs_ice_cloud + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + cloud_droplet_number_concentration + number concentration of cloud droplets (liquid) + kg-1 + qgrs_cloud_droplet_num_conc + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + ice_number_concentration + number concentration of ice + kg-1 + qgrs_cloud_ice_num_conc + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + ozone_mixing_ratio + ozone mixing ratio + kg kg-1 + qgrs_ozone + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + water_friendly_aerosol_number_concentration + number concentration of water-friendly aerosols + kg-1 + qgrs_water_aer_num_conc + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + ice_friendly_aerosol_number_concentration + number concentration of ice-friendly aerosols + kg-1 + qgrs_ice_aer_num_conc + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + dimensionless_exner_function_at_model_layers + Exner function at layers + none + exner + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + sea_land_ice_mask_real + landmask: sea/land/ice=0/1/2 + flag + slmsk + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + surface_skin_temperature + surface temperature + K + tsurf + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + surface_specific_humidity + surface air saturation specific humidity + kg kg-1 + qsfc + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + surface_air_pressure + surface pressure + Pa + ps + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + surface_friction_velocity + boundary layer parameter + m s-1 + ust + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + surface_drag_wind_speed_for_momentum_in_air + momentum exchange coefficient + m s-1 + ch + real + (:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic surface upward sensible heat flux + K m s-1 + hflx + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + kinematic_surface_upward_latent_heat_flux + kinematic surface upward latent heat flux + kg kg-1 m s-1 + qflx + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + wspd + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + bulk_richardson_number_at_lowest_model_level + bulk Richardson number at the surface + none + rb + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + instantaneous_surface_upward_sensible_heat_flux + surface upward sensible heat flux valid for current call + W m-2 + dtsfc1 + real + (:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + instantaneous_surface_upward_latent_heat_flux + surface upward latent heat flux valid for current call + W m-2 + dqsfc1 + real + (:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + instantaneous_surface_upward_sensible_heat_flux_for_diag + instantaneous sfc sensible heat flux multiplied by timestep + W m-2 + dtsfci_diag + real + (:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + instantaneous_surface_upward_latent_heat_flux_for_diag + instantaneous sfc latent heat flux multiplied by timestep + W m-2 + dqsfci_diag + real + (:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + cumulative_surface_upward_sensible_heat_flux_for_diag_multiplied_by_timestep + cumulative sfc sensible heat flux multiplied by timestep + W m-2 s + dtsfc_diag + real + (:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + cumulative_surface_upward_latent_heat_flux_for_diag_multiplied_by_timestep + cumulative sfc latent heat flux multiplied by timestep + W m-2 s + dqsfc_diag + real + (:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + reciprocal_of_obukhov_length + one over obukhov length + m-1 + recmol + real + (:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tke_at_mass_points + 2 x tke at mass points + m2 s-2 + qke + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + turbulent_kinetic_energy + turbulent kinetic energy + J + qke_adv + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + t_prime_squared + temperature fluctuation squared + K2 + tsq + real + (:,:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + q_prime_squared + water vapor fluctuation squared + kg2 kg-2 + qsq + real + (:,:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + t_prime_q_prime + covariance of temperature and moisture + K kg kg-1 + cov + real + (:,:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + mixing_length + mixing length in meters + m + el_pbl + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + stability_function_for_heat + stability function for heat + none + Sh3D + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + atmosphere_heat_diffusivity_for_mynnpbl + diffusivity for heat for MYNN PBL (defined for all mass levels) + m2 s-1 + exch_h + real + (:,:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + atmosphere_momentum_diffusivity_for_mynnpbl + diffusivity for momentum for MYNN PBL (defined for all mass levels) + m2 s-1 + exch_m + real + (:,:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + atmosphere_boundary_layer_thickness + PBL thickness + m + PBLH + real + (:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + vertical_index_at_top_of_atmosphere_boundary_layer + PBL top model level index + index + kpbl + integer + (:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + subgrid_cloud_mixing_ratio_pbl + subgrid cloud cloud mixing ratio from PBL scheme + kg kg-1 + QC_BL + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + subgrid_cloud_fraction_pbl + subgrid cloud fraction from PBL scheme + frac + CLDFRA_BL + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + emdf_updraft_area + updraft area from mass flux scheme + frac + edmf_a + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + emdf_updraft_vertical_velocity + updraft vertical velocity from mass flux scheme + m s-1 + edmf_w + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + emdf_updraft_total_water + updraft total water from mass flux scheme + kg kg-1 + edmf_qt + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + emdf_updraft_theta_l + updraft theta-l from mass flux scheme + K + edmf_thl + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + emdf_updraft_entrainment_rate + updraft entrainment rate from mass flux scheme + s-1 + edmf_ent + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + emdf_updraft_cloud_water + updraft cloud water from mass flux scheme + kg kg-1 + edmf_qc + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + number_of_plumes + number of plumes per grid column + count + nupdraft + integer + (:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + maximum_mass_flux + maximum mass flux within a column + m s-1 + maxMF + real + (:) + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + k_level_of_highest_reaching_plume + k-level of highest reaching plume + count + ktop_shallow + integer + (:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_time_step + total sky longwave heating rate + K s-1 + RTHRATEN + real + (:,:) + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_x_wind_due_to_model_physics + updated tendency of the x wind + m s-2 + dudt + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_y_wind_due_to_model_physics + updated tendency of the y wind + m s-2 + dvdt + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_air_temperature_due_to_model_physics + updated tendency of the temperature + K s-1 + dtdt + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_water_vapor_specific_humidity_due_to_model_physics + water vapor specific humidity tendency due to model physics + kg kg-1 s-1 + dqdt_water_vapor + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_liquid_cloud_water_mixing_ratio_due_to_model_physics + cloud condensed water mixing ratio tendency due to model physics + kg kg-1 s-1 + dqdt_liquid_cloud + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_ice_cloud_water_mixing_ratio_due_to_model_physics + cloud condensed water mixing ratio tendency due to model physics + kg kg-1 s-1 + dqdt_ice_cloud + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_ozone_mixing_ratio_due_to_model_physics + ozone mixing ratio tendency due to model physics + kg kg-1 s-1 + dqdt_ozone + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_cloud_droplet_number_concentration_due_to_model_physics + number conc. of cloud droplets (liquid) tendency due to model physics + kg-1 s-1 + dqdt_cloud_droplet_num_conc + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_ice_number_concentration_due_to_model_physics + number conc. of ice tendency due to model physics + kg-1 s-1 + dqdt_ice_num_conc + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_water_friendly_aerosol_number_concentration_due_to_model_physics + number conc. of water-friendly aerosols tendency due to model physics + kg-1 s-1 + dqdt_water_aer_num_conc + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tendency_of_ice_friendly_aerosol_number_concentration_due_to_model_physics + number conc. of ice-friendly aerosols tendency due to model physics + kg-1 s-1 + dqdt_ice_aer_num_conc + real + (:,:) + inout + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + grav_settling + flag to activate gravitational setting of fog + flag + grav_settling + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tke_budget + flag for activating TKE budget + flag + bl_mynn_tkebudget + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + tke_advect + flag for activating TKE advect + flag + bl_mynn_tkeadvect + logical + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + cloudpdf + flag to determine which cloud PDF to use + flag + bl_mynn_cloudpdf + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + mixing_length_flag + flag to determine which mixing length form to use + flag + bl_mynn_mixlength + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + edmf_flag + flag to activate the mass-flux scheme + flag + bl_mynn_edmf + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + edmf_momentum_transport_flag + flag to activate the transport of momentum + flag + bl_mynn_edmf_mom + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + edmf_tke_transport_flag + flag to activate the transport of TKE + flag + bl_mynn_edmf_tke + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + edmf_partition_flag + flag to partitioning of the MF and ED areas + flag + bl_mynn_edmf_part + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + cloud_specie_mix_flag + flag to activate mixing of cloud species + flag + bl_mynn_cloudmix + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + mix_total_water_flag + flag to mix total water or individual species + flag + bl_mynn_mixqt + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + couple_sgs_clouds_to_radiation_flag + flag for coupling sgs clouds to radiation + flag + icloud_bl + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + do_mynnsfclay + flag to activate MYNN surface layer + flag + do_mynnsfclay + logical + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + flag_for_gfdl_microphysics_scheme + choice of GFDL microphysics scheme + flag + imp_physics_gfdl + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + flag_for_thompson_microphysics_scheme + choice of Thompson microphysics scheme + flag + imp_physics_thompson + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + flag_for_wsm6_microphysics_scheme + choice of WSM6 microphysics scheme + flag + imp_physics_wsm6 + integer + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + flag_for_aerosol_physics + flag for aerosol physics + flag + ltaerosol + logical + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + flag_print + control flag for diagnostic print out + flag + lprnt + logical + + in + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mynnedmf_wrapper SCHEME_mynnedmf_wrapper SUBROUTINE_mynnedmf_wrapper_run + + + diff --git a/physics/mynnrad_post.xml b/physics/mynnrad_post.xml new file mode 100644 index 000000000..eb979fa04 --- /dev/null +++ b/physics/mynnrad_post.xml @@ -0,0 +1,106 @@ + + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_mynnrad_post SCHEME_mynnrad_post SUBROUTINE_mynnrad_post_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_mynnrad_post SCHEME_mynnrad_post SUBROUTINE_mynnrad_post_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_mynnrad_post SCHEME_mynnrad_post SUBROUTINE_mynnrad_post_run + + + cloud_condensed_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) + kg kg-1 + qc + real + (:,:) + out + F + MODULE_mynnrad_post SCHEME_mynnrad_post SUBROUTINE_mynnrad_post_run + + + ice_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of ice water + kg kg-1 + qi + real + (:,:) + out + F + MODULE_mynnrad_post SCHEME_mynnrad_post SUBROUTINE_mynnrad_post_run + + + cloud_condensed_water_mixing_ratio_save + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) before entering a physics scheme + kg kg-1 + qc_save + real + (:,:) + in + F + MODULE_mynnrad_post SCHEME_mynnrad_post SUBROUTINE_mynnrad_post_run + + + ice_water_mixing_ratio_save + moist (dry+vapor, no condensates) mixing ratio of ice water before entering a physics scheme + kg kg-1 + qi_save + real + (:,:) + in + F + MODULE_mynnrad_post SCHEME_mynnrad_post SUBROUTINE_mynnrad_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mynnrad_post SCHEME_mynnrad_post SUBROUTINE_mynnrad_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mynnrad_post SCHEME_mynnrad_post SUBROUTINE_mynnrad_post_run + + + + diff --git a/physics/mynnrad_pre.xml b/physics/mynnrad_pre.xml new file mode 100644 index 000000000..772eda1e6 --- /dev/null +++ b/physics/mynnrad_pre.xml @@ -0,0 +1,216 @@ + + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + cloud_condensed_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) + kg kg-1 + qc + real + (:,:) + inout + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + ice_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of ice water + kg kg-1 + qi + real + (:,:) + inout + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + air_temperature + layer mean air temperature + K + T3D + real + (:,:) + in + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + cloud_condensed_water_mixing_ratio_save + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) before entering a physics scheme + kg kg-1 + qc_save + real + (:,:) + out + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + ice_water_mixing_ratio_save + moist (dry+vapor, no condensates) mixing ratio of ice water before entering a physics scheme + kg kg-1 + qi_save + real + (:,:) + out + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + subgrid_cloud_mixing_ratio_pbl + subgrid cloud cloud mixing ratio from PBL scheme + kg kg-1 + QC_BL + real + (:,:) + in + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + subgrid_cloud_fraction_pbl + subgrid cloud fraction from PBL scheme + frac + CLDFRA_BL + real + (:,:) + in + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + layer_pressure_thickness_for_radiation + layer pressure thickness on radiation levels + hPa + delp + real + (:,:) + out + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + total_cloud_fraction + layer total cloud fraction + frac + clouds1 + real + (:,:) + inout + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + cloud_liquid_water_path + layer cloud liquid water path + g m-2 + clouds2 + real + (:,:) + inout + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + mean_effective_radius_for_liquid_cloud + mean effective radius for liquid cloud + micron + clouds3 + real + (:,:) + inout + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + cloud_ice_water_path + layer cloud ice water path + g m-2 + clouds4 + real + (:,:) + inout + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + mean_effective_radius_for_ice_cloud + mean effective radius for ice cloud + micron + clouds5 + real + (:,:) + inout + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + sea_land_ice_mask_real + landmask: sea/land/ice=0/1/2 + flag + slmsk + real + (:) + in + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mynnrad_pre SCHEME_mynnrad_pre SUBROUTINE_mynnrad_pre_run + + + + diff --git a/physics/mynnsfc_wrapper.xml b/physics/mynnsfc_wrapper.xml new file mode 100644 index 000000000..787799ec9 --- /dev/null +++ b/physics/mynnsfc_wrapper.xml @@ -0,0 +1,700 @@ + + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + ccpp_loop_counter + loop counter for subcycling loops in CCPP + index + iter + integer + + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + flag_for_first_time_step + flag signaling first time step for time integration loop + flag + flag_init + logical + + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + flag_for_restart + flag for restart (warmstart) or coldstart + flag + flag_restart + logical + + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + time_step_for_physics + time step for physics + s + delt + real + + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + cell_size + size of the grid cell + m + dx + real + (:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + x_wind + x component of layer wind + m s-1 + u + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + y_wind + y component of layer wind + m s-1 + v + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + air_temperature + layer mean air temperature + K + t3d + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + water_vapor_specific_humidity + water vapor specific humidity + kg kg-1 + qvsh + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + cloud_condensed_water_mixing_ratio + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) + kg kg-1 + qc + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + dimensionless_exner_function_at_model_layers + Exner function at layers + none + exner + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + t_prime_squared + temperature fluctuation squared + K2 + tsq + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + q_prime_squared + water vapor fluctuation squared + kg2 kg-2 + qsq + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + t_prime_q_prime + covariance of temperature and moisture + K kg kg-1 + cov + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + mixing_length + mixing length in meters + m + el_pbl + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + stability_function_for_heat + stability function for heat + none + Sh3D + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + subgrid_cloud_mixing_ratio_pbl + subgrid cloud cloud mixing ratio from PBL scheme + kg kg-1 + QC_BL + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + subgrid_cloud_fraction_pbl + subgrid cloud fraction from PBL scheme + frac + CLDFRA_BL + real + (:,:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_air_pressure + surface pressure + Pa + ps + real + (:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + atmosphere_boundary_layer_thickness + PBL thickness + m + PBLH + real + (:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + sea_land_ice_mask_real + landmask: sea/land/ice=0/1/2 + flag + slmsk + real + (:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_skin_temperature + surface temperature + K + tsk + real + (:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_specific_humidity + surface air saturation specific humidity + kg kg-1 + qsfc + real + (:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_snow_thickness_water_equivalent + water equivalent snow depth over land + mm + snowd + real + (:) + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_roughness_length + surface roughness length in cm + cm + zorl + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_friction_velocity + boundary layer parameter + m s-1 + ust + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_friction_velocity_drag + friction velocity isolated for momentum only + m s-1 + ustm + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_stability_parameter + monin obukhov surface stability parameter + none + zol + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + theta_star + temperature flux divided by ustar (temperature scale) + K + mol + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + reciprocal_of_obukhov_length + one over obukhov length + m-1 + rmol + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + Monin-Obukhov_similarity_function_for_momentum + Monin-Obukhov similarity parameter for momentum + none + fm + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + Monin-Obukhov_similarity_function_for_heat + Monin-Obukhov similarity parameter for heat + none + fh + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + Monin-Obukhov_similarity_function_for_momentum_at_10m + Monin-Obukhov similarity parameter for momentum + none + fm10 + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + Monin-Obukhov_similarity_function_for_heat_at_2m + Monin-Obukhov similarity parameter for heat + none + fh2 + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + wspd + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + bulk_richardson_number_at_lowest_model_level + bulk Richardson number at the surface + none + br + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_drag_wind_speed_for_momentum_in_air + momentum exchange coefficient + m s-1 + ch + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic surface upward sensible heat flux + K m s-1 + hflx + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + kinematic_surface_upward_latent_heat_flux + kinematic surface upward latent heat flux + kg kg-1 m s-1 + QFX + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_latent_heat + latent heating at the surface (pos = up) + W m-2 + lh + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_exchange_coefficient_for_heat + surface exchange coefficient for heat + W m-2 K-1 + flhc + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_exchange_coefficient_for_moisture + surface exchange coefficient for moisture + kg m-2 s-1 + flqc + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + x_wind_at_10m + 10 meter u wind speed + m s-1 + u10 + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + y_wind_at_10m + 10 meter v wind speed + m s-1 + v10 + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + potential_temperature_at_2m + 2 meter potential temperature + K + th2 + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + temperature_at_2m + 2 meter temperature + K + t2 + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + specific_humidity_at_2m + 2 meter specific humidity + kg kg-1 + q2 + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_wind_enhancement_due_to_convection + surface wind enhancement due to convection + m s-1 + wstar + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_exchange_coefficient_for_heat_at_2m + exchange coefficient for heat at 2 meters + m s-1 + chs2 + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_exchange_coefficient_for_moisture_at_2m + exchange coefficient for moisture at 2 meters + m s-1 + cqs2 + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_drag_coefficient_for_momentum_in_air + surface exchange coeff for momentum + none + cda + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_drag_coefficient_for_heat_and_moisture_in_air + surface exchange coeff heat moisture + none + cka + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + surface_wind_stress + surface wind stress + m2 s-2 + stress + real + (:) + inout + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + cloudpdf + flag to determine which cloud PDF to use + flag + bl_mynn_cloudpdf + integer + + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + couple_sgs_clouds_to_radiation_flag + flag for coupling sgs clouds to radiation + flag + icloud_bl + integer + + in + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + flag_print + control flag for diagnostic print out + flag + lprnt + logical + + none + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_mynnsfc_wrapper SCHEME_mynnsfc_wrapper SUBROUTINE_mynnsfc_wrapper_run + + + + diff --git a/physics/ozphys.xml b/physics/ozphys.xml new file mode 100644 index 000000000..60abfcd51 --- /dev/null +++ b/physics/ozphys.xml @@ -0,0 +1,238 @@ + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + vertical_dimension_of_ozone_forcing_data + number of vertical layers in ozone forcing data + count + ko3 + integer + + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + time_step_for_physics + physics time step + s + dt + real + + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + ozone_concentration_updated_by_physics + ozone concentration updated by physics + kg kg-1 + oz + real + (:,:) + inout + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + air_temperature_updated_by_physics + updated air temperature + K + tin + real + (:,:) + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + natural_log_of_ozone_forcing_data_pressure_levels + natural log of ozone forcing data pressure levels + log(Pa) + po3 + real + (:) + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + air_pressure + mid-layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + ozone_forcing + ozone forcing coefficients + various + prdout + real + (:,:,:) + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + number_of_coefficients_in_ozone_forcing_data + number of coefficients in ozone forcing data + index + oz_coeff + integer + + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + air_pressure_difference_between_midlayers + difference between mid-layer pressures + Pa + delp + real + (:,:) + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + flag_diagnostics_3D + flag for calculating 3-D diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + cumulative_change_in_ozone_concentration_due_to_production_and_loss_rate + cumulative change in ozone concentration due to production and loss rate + kg kg-1 + ozp1 + real + (:,:) + inout + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + cumulative_change_in_ozone_concentration_due_to_ozone_mixing_ratio + cumulative change in ozone concentration due to ozone mixing ratio + kg kg-1 + ozp2 + real + (:,:) + inout + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + cumulative_change_in_ozone_concentration_due_to_temperature + cumulative change in ozone concentration due to temperature + kg kg-1 + ozp3 + real + (:,:) + inout + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + cumulative_change_in_ozone_concentration_due_to_overhead_ozone_column + cumulative change in ozone concentration due to overhead ozone column + kg kg-1 + ozp4 + real + (:,:) + inout + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + mpi_rank + rank of the current MPI task + index + me + integer + + in + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_ozphys SCHEME_ozphys SUBROUTINE_ozphys_run + + + + + diff --git a/physics/ozphys_2015.xml b/physics/ozphys_2015.xml new file mode 100644 index 000000000..5c244b381 --- /dev/null +++ b/physics/ozphys_2015.xml @@ -0,0 +1,238 @@ + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + vertical_dimension + number of vertical layers + count + levs + integer + + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + vertical_dimension_of_ozone_forcing_data + number of vertical layers in ozone forcing data + count + ko3 + integer + + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + time_step_for_physics + physics time step + s + dt + real + + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + ozone_concentration_updated_by_physics + ozone concentration updated by physics + kg kg-1 + oz + real + (:,:) + inout + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + air_temperature_updated_by_physics + updated air temperature + K + tin + real + (:,:) + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + natural_log_of_ozone_forcing_data_pressure_levels + natural log of ozone forcing data pressure levels + log(Pa) + po3 + real + (:) + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + air_pressure + mid-layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + ozone_forcing + ozone forcing data + various + prdout + real + (:,:,:) + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + number_of_coefficients_in_ozone_forcing_data + number of coefficients in ozone forcing data + index + pl_coeff + integer + + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + air_pressure_difference_between_midlayers + difference between mid-layer pressures + Pa + delp + real + (:,:) + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + flag_diagnostics_3D + flag for calculating 3-D diagnostic fields + flag + ldiag3d + logical + + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + cumulative_change_in_ozone_concentration_due_to_production_and_loss_rate + cumulative change in ozone concentration due to production and loss rate + kg kg-1 + ozp1 + real + (:,:) + inout + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + cumulative_change_in_ozone_concentration_due_to_ozone_mixing_ratio + cumulative change in ozone concentration due to ozone mixing ratio + kg kg-1 + ozp2 + real + (:,:) + inout + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + cumulative_change_in_ozone_concentration_due_to_temperature + cumulative change in ozone concentration due to temperature + kg kg-1 + ozp3 + real + (:,:) + inout + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + cumulative_change_in_ozone_concentration_due_to_overhead_ozone_column + cumulative change in ozone concentration due to overhead ozone column + kg kg-1 + ozp4 + real + (:,:) + inout + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + mpi_rank + rank of the current MPI task + index + me + integer + + in + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_ozphys_2015 SCHEME_ozphys_2015 SUBROUTINE_ozphys_2015_run + + + + + diff --git a/physics/rayleigh_damp.xml b/physics/rayleigh_damp.xml new file mode 100644 index 000000000..f3c519cb6 --- /dev/null +++ b/physics/rayleigh_damp.xml @@ -0,0 +1,205 @@ + + + + + + + flag_idealized_physics + flag for idealized physics + flag + lsidea + logical + + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + vertical_dimension + number of vertical layers + count + km + integer + + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + tendency_of_y_wind_due_to_model_physics + meridional wind tendency due to model physics + m s-2 + A + real + (:,:) + inout + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + tendency_of_x_wind_due_to_model_physics + zonal wind tendency due to model physics + m s-2 + B + real + (:,:) + inout + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + tendency_of_air_temperature_due_to_model_physics + air temperature tendency due to model physics + K s-1 + C + real + (:,:) + inout + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + x_wind + zonal wind + m s-1 + u1 + real + (:,:) + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + y_wind + meridional wind + m s-1 + v1 + real + (:,:) + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + time_step_for_physics + physics time step + s + dt + real + + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + number_of_vertical_layers_for_radiation_calculations + number of vertical layers for radiation calculations + count + levr + integer + + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + surface_air_pressure + surface pressure + Pa + pgr + real + (:) + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + air_pressure + mid-layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + pressure_cutoff_for_rayleigh_damping + pressure level above which to apply Rayleigh damping + Pa + prslrd0 + real + + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + time_scale_for_rayleigh_damping + time scale for Rayleigh damping + d + ral_ts + real + + in + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_rayleigh_damp SCHEME_rayleigh_damp SUBROUTINE_rayleigh_damp_run + + + diff --git a/physics/rrtmg_lw.xml b/physics/rrtmg_lw.xml new file mode 100644 index 000000000..ff1545fbb --- /dev/null +++ b/physics/rrtmg_lw.xml @@ -0,0 +1,524 @@ + + + + + + + air_pressure_at_layer_for_radiation_in_hPa + air pressure layer + hPa + plyr + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + air_pressure_at_interface_for_radiation_in_hPa + air pressure level + hPa + plvl + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + air_temperature_at_layer_for_radiation + air temperature layer + K + tlyr + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + air_temperature_at_interface_for_radiation + air temperature level + K + tlvl + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + water_vapor_specific_humidity_at_layer_for_radiation + specific humidity layer + kg kg-1 + qlyr + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + ozone_concentration_at_layer_for_radiation + ozone concentration layer + kg kg-1 + olyr + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + volume_mixing_ratio_co2 + volume mixing ratio co2 + kg kg-1 + gasvmr_co2 + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + volume_mixing_ratio_n2o + volume mixing ratio no2 + kg kg-1 + gasvmr_n2o + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + volume_mixing_ratio_ch4 + volume mixing ratio ch4 + kg kg-1 + gasvmr_ch4 + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + volume_mixing_ratio_o2 + volume mixing ratio o2 + kg kg-1 + gasvmr_o2 + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + volume_mixing_ratio_co + volume mixing ratio co + kg kg-1 + gasvmr_co + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + volume_mixing_ratio_cfc11 + volume mixing ratio cfc11 + kg kg-1 + gasvmr_cfc11 + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + volume_mixing_ratio_cfc12 + volume mixing ratio cfc12 + kg kg-1 + gasvmr_cfc12 + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + volume_mixing_ratio_cfc22 + volume mixing ratio cfc22 + kg kg-1 + gasvmr_cfc22 + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + volume_mixing_ratio_ccl4 + volume mixing ratio ccl4 + kg kg-1 + gasvmr_ccl4 + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + seed_random_numbers_lw + seed for random number generation for longwave radiation + none + icseed + integer + (:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + aerosol_optical_depth_for_longwave_bands_01-16 + aerosol optical depth for longwave bands 01-16 + none + aeraod + real + (:,:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + aerosol_single_scattering_albedo_for_longwave_bands_01-16 + aerosol single scattering albedo for longwave bands 01-16 + frac + aerssa + real + (:,:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + surface_longwave_emissivity + surface emissivity + frac + sfemis + real + (:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + surface_ground_temperature_for_radiation + surface ground temperature for radiation + K + sfgtmp + real + (:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + layer_thickness_for_radiation + layer thickness + km + dzlyr + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + layer_pressure_thickness_for_radiation + layer pressure thickness + hPa + delpin + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + cloud_decorrelation_length + cloud decorrelation length + km + de_lgth + real + (:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + horizontal_loop_extent + horizontal dimension + count + npts + integer + + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + adjusted_vertical_layer_dimension_for_radiation + number of vertical layers for radiation + count + nlay + integer + + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + adjusted_vertical_level_dimension_for_radiation + number of vertical levels for radiation + count + nlp1 + integer + + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + flag_print + flag to print + flag + lprnt + logical + + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + total_cloud_fraction + total cloud fraction + frac + cld_cf + real + (:,:) + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + flag_to_calc_lw + flag to calculate LW irradiances + flag + lslwr + logical + + in + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_time_step + longwave total sky heating rate + K s-1 + hlwc + real + (:,:) + inout + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + lw_fluxes_top_atmosphere + longwave total sky fluxes at the top of the atm + W m-2 + topflx + topflw_type + (:) + inout + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + lw_fluxes_sfc + longwave total sky fluxes at the Earth surface + W m-2 + sfcflx + sfcflw_type + (:) + inout + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + cloud_optical_depth_layers_at_10mu_band + approx 10mu band layer cloud optical depth + none + cldtau + real + (:,:) + inout + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + tendency_of_air_temperature_due_to_longwave_heating_assuming_clear_sky_on_radiation_time_step + longwave clear sky heating rate + K s-1 + hlw0 + real + (:,:) + inout + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + lw_heating_rate_spectral + longwave total sky heating rate (spectral) + K s-1 + hlwb + real + (:,:,:) + inout + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + lw_fluxes + lw fluxes total sky / csk and up / down at levels + W m-2 + flxprf + proflw_type + (:,:) + inout + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + cloud_liquid_water_path + cloud liquid water path + g m-2 + cld_lwp + real + (:,:) + in + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + mean_effective_radius_for_liquid_cloud + mean effective radius for liquid cloud + micron + cld_ref_liq + real + (:,:) + in + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + cloud_ice_water_path + cloud ice water path + g m-2 + cld_iwp + real + (:,:) + in + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + mean_effective_radius_for_ice_cloud + mean effective radius for ice cloud + micron + cld_ref_ice + real + (:,:) + in + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + cloud_rain_water_path + cloud ice water path + g m-2 + cld_rwp + real + (:,:) + in + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + mean_effective_radius_for_rain_drop + mean effective radius for rain drop + micron + cld_ref_rain + real + (:,:) + in + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + cloud_snow_water_path + cloud snow water path + g m-2 + cld_swp + real + (:,:) + in + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + mean_effective_radius_for_snow_flake + mean effective radius for snow flake + micron + cld_ref_snow + real + (:,:) + in + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + cloud_optical_depth + cloud optical depth + none + cld_od + real + (:,:) + in + T + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_rrtmg_lw SCHEME_rrtmg_lw SUBROUTINE_rrtmg_lw_run + + + diff --git a/physics/rrtmg_lw_post.xml b/physics/rrtmg_lw_post.xml new file mode 100644 index 000000000..c8d7c4f07 --- /dev/null +++ b/physics/rrtmg_lw_post.xml @@ -0,0 +1,150 @@ + + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + in + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + GFS_radtend_type_instance + Fortran DDT containing FV3-GFS fields targetted for diagnostic output + DDT + Radtend + GFS_radtend_type + + inout + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + GFS_coupling_type_instance + Fortran DDT containing FV3-GFS fields to/from coupling with other components + DDT + Coupling + GFS_coupling_type + + inout + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + extra_top_layer + extra top layers + none + ltp + integer + + in + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + vertical_layer_dimension_for_radiation + number of vertical layers for radiation calculation + count + lm + integer + + in + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + vertical_index_difference_between_inout_and_local + vertical index difference between in/out and local + index + kd + integer + + in + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + surface_air_temperature_for_radiation + lowest model layer air temperature for radiation + K + tsfa + real + (:) + in + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_time_step + total sky heating rate due to longwave radiation + K s-1 + htlwc + real + (:,:) + in + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + tendency_of_air_temperature_due_to_longwave_heating_assuming_clear_sky_on_radiation_time_step + clear sky heating rate due to longwave radiation + K s-1 + htlw0 + real + (:,:) + in + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_rrtmg_lw_post SCHEME_rrtmg_lw_post SUBROUTINE_rrtmg_lw_post_run + + + + diff --git a/physics/rrtmg_lw_pre.xml b/physics/rrtmg_lw_pre.xml new file mode 100644 index 000000000..f6b6512ad --- /dev/null +++ b/physics/rrtmg_lw_pre.xml @@ -0,0 +1,106 @@ + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_rrtmg_lw_pre SCHEME_rrtmg_lw_pre SUBROUTINE_rrtmg_lw_pre_run + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + in + F + MODULE_rrtmg_lw_pre SCHEME_rrtmg_lw_pre SUBROUTINE_rrtmg_lw_pre_run + + + GFS_sfcprop_type_instance + Fortran DDT containing FV3-GFS surface fields + DDT + Sfcprop + GFS_sfcprop_type + + in + F + MODULE_rrtmg_lw_pre SCHEME_rrtmg_lw_pre SUBROUTINE_rrtmg_lw_pre_run + + + GFS_radtend_type_instance + Fortran DDT containing FV3-GFS radiation tendencies + DDT + Radtend + GFS_radtend_type + + inout + F + MODULE_rrtmg_lw_pre SCHEME_rrtmg_lw_pre SUBROUTINE_rrtmg_lw_pre_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_rrtmg_lw_pre SCHEME_rrtmg_lw_pre SUBROUTINE_rrtmg_lw_pre_run + + + surface_ground_temperature_for_radiation + surface ground temperature for radiation + K + tsfg + real + (:) + in + F + MODULE_rrtmg_lw_pre SCHEME_rrtmg_lw_pre SUBROUTINE_rrtmg_lw_pre_run + + + surface_air_temperature_for_radiation + lowest model layer air temperature for radiation + K + tsfa + real + (:) + in + F + MODULE_rrtmg_lw_pre SCHEME_rrtmg_lw_pre SUBROUTINE_rrtmg_lw_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_rrtmg_lw_pre SCHEME_rrtmg_lw_pre SUBROUTINE_rrtmg_lw_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_rrtmg_lw_pre SCHEME_rrtmg_lw_pre SUBROUTINE_rrtmg_lw_pre_run + + + + + diff --git a/physics/rrtmg_sw.xml b/physics/rrtmg_sw.xml new file mode 100644 index 000000000..3cb297ce5 --- /dev/null +++ b/physics/rrtmg_sw.xml @@ -0,0 +1,634 @@ + + + + + + air_pressure_at_layer_for_radiation_in_hPa + air pressure layer + hPa + plyr + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + air_pressure_at_interface_for_radiation_in_hPa + air pressure level + hPa + plvl + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + air_temperature_at_layer_for_radiation + air temperature layer + K + tlyr + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + air_temperature_at_interface_for_radiation + air temperature level + K + tlvl + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + water_vapor_specific_humidity_at_layer_for_radiation + specific humidity layer + kg kg-1 + qlyr + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + ozone_concentration_at_layer_for_radiation + ozone concentration layer + kg kg-1 + olyr + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + volume_mixing_ratio_co2 + volume mixing ratio co2 + kg kg-1 + gasvmr_co2 + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + volume_mixing_ratio_n2o + volume mixing ratio no2 + kg kg-1 + gasvmr_n2o + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + volume_mixing_ratio_ch4 + volume mixing ratio ch4 + kg kg-1 + gasvmr_ch4 + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + volume_mixing_ratio_o2 + volume mixing ratio o2 + kg kg-1 + gasvmr_o2 + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + volume_mixing_ratio_co + volume mixing ratio co + kg kg-1 + gasvmr_co + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + volume_mixing_ratio_cfc11 + volume mixing ratio cfc11 + kg kg-1 + gasvmr_cfc11 + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + volume_mixing_ratio_cfc12 + volume mixing ratio cfc12 + kg kg-1 + gasvmr_cfc12 + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + volume_mixing_ratio_cfc22 + volume mixing ratio cfc22 + kg kg-1 + gasvmr_cfc22 + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + volume_mixing_ratio_ccl4 + volume mixing ratio ccl4 + kg kg-1 + gasvmr_ccl4 + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + seed_random_numbers_sw + seed for random number generation for shortwave radiation + none + icseed + integer + (:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + aerosol_optical_depth_for_shortwave_bands_01-16 + aerosol optical depth for shortwave bands 01-16 + none + aeraod + real + (:,:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + aerosol_single_scattering_albedo_for_shortwave_bands_01-16 + aerosol single scattering albedo for shortwave bands 01-16 + frac + aerssa + real + (:,:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + aerosol_asymmetry_parameter_for_shortwave_bands_01-16 + aerosol asymmetry paramter for shortwave bands 01-16 + none + aerasy + real + (:,:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + surface_albedo_due_to_near_IR_direct + surface albedo due to near IR direct beam + frac + sfcalb_nir_dir + real + (:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + surface_albedo_due_to_near_IR_diffused + surface albedo due to near IR diffused beam + frac + sfcalb_nir_dif + real + (:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + surface_albedo_due_to_UV_and_VIS_direct + surface albedo due to UV+VIS direct beam + frac + sfcalb_uvis_dir + real + (:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + surface_albedo_due_to_UV_and_VIS_diffused + surface albedo due to UV+VIS diffused beam + frac + sfcalb_uvis_dif + real + (:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + layer_thickness_for_radiation + layer thickness + km + dzlyr + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + layer_pressure_thickness_for_radiation + layer pressure thickness + hPa + delpin + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cloud_decorrelation_length + cloud decorrelation length + km + de_lgth + real + (:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cosine_of_zenith_angle + cosine of the solar zenit angle + none + cosz + real + (:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + solar_constant + solar constant + W m-2 + solcon + real + + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + daytime_points_dimension + daytime points dimension + count + nday + integer + + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + daytime_points + daytime points + index + idxday + integer + (:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + horizontal_loop_extent + horizontal dimension + count + npts + integer + + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + adjusted_vertical_layer_dimension_for_radiation + number of vertical layers for radiation + count + nlay + integer + + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + adjusted_vertical_level_dimension_for_radiation + number of vertical levels for radiation + count + nlp1 + integer + + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + flag_print + flag to print + flag + lprnt + logical + + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + total_cloud_fraction + total cloud fraction + frac + cld_cf + real + (:,:) + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + flag_to_calc_sw + flag to calculate SW irradiances + flag + lsswr + logical + + in + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + tendency_of_air_temperature_due_to_shortwave_heating_on_radiation_time_step + shortwave total sky heating rate + K s-1 + hswc + real + (:,:) + inout + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + sw_fluxes_top_atmosphere + shortwave total sky fluxes at the top of the atm + W m-2 + topflx + topfsw_type + (:) + inout + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + sw_fluxes_sfc + shortwave total sky fluxes at the Earth surface + W m-2 + sfcflx + sfcfsw_type + (:) + inout + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cloud_optical_depth_layers_at_0.55mu_band + approx .55mu band layer cloud optical depth + none + cldtau + real + (:,:) + inout + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + tendency_of_air_temperature_due_to_shortwave_heating_assuming_clear_sky_on_radiation_time_step + shortwave clear sky heating rate + K s-1 + hsw0 + real + (:,:) + inout + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + sw_heating_rate_spectral + shortwave total sky heating rate (spectral) + K s-1 + hswb + real + (:,:,:) + inout + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + sw_fluxes + sw fluxes total sky / csk and up / down at levels + W m-2 + flxprf + profsw_type + (:,:) + inout + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + components_of_surface_downward_shortwave_fluxes + derived type for special components of surface downward shortwave fluxes + W m-2 + fdncmp + cmpfsw_type + (:) + inout + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cloud_liquid_water_path + cloud liquid water path + g m-2 + cld_lwp + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + mean_effective_radius_for_liquid_cloud + mean effective radius for liquid cloud + micron + cld_ref_liq + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cloud_ice_water_path + cloud ice water path + g m-2 + cld_iwp + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + mean_effective_radius_for_ice_cloud + mean effective radius for ice cloud + micron + cld_ref_ice + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cloud_rain_water_path + cloud rain water path + g m-2 + cld_rwp + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + mean_effective_radius_for_rain_drop + mean effective radius for rain drop + micron + cld_ref_rain + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cloud_snow_water_path + cloud snow water path + g m-2 + cld_swp + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + mean_effective_radius_for_snow_flake + mean effective radius for snow flake + micron + cld_ref_snow + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cloud_optical_depth + cloud optical depth + none + cld_od + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cloud_single_scattering_albedo + cloud single scattering albedo + frac + cld_ssa + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + cloud_asymmetry_parameter + cloud asymmetry parameter + none + cld_asy + real + (:,:) + in + T + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_rrtmg_sw SCHEME_rrtmg_sw SUBROUTINE_rrtmg_sw_run + + + + diff --git a/physics/rrtmg_sw_post.xml b/physics/rrtmg_sw_post.xml new file mode 100644 index 000000000..4e3473ffe --- /dev/null +++ b/physics/rrtmg_sw_post.xml @@ -0,0 +1,216 @@ + + + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + GFS_diag_type_instance + Fortran DDT containing FV3-GFS diagnotics data + DDT + Diag + GFS_diag_type + + inout + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + GFS_radtend_type_instance + Fortran DDT containing FV3-GFS fields targetted for diagnostic output + DDT + Radtend + GFS_radtend_type + + inout + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + GFS_coupling_type_instance + Fortran DDT containing FV3-GFS fields to/from coupling with other components + DDT + Coupling + GFS_coupling_type + + inout + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + extra_top_layer + extra top layers + none + ltp + integer + + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + daytime_points_dimension + daytime points dimension + count + nday + integer + + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + vertical_layer_dimension_for_radiation + number of vertical layers for radiation calculation + count + lm + integer + + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + vertical_index_difference_between_inout_and_local + vertical index difference between in/out and local + index + kd + integer + + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + tendency_of_air_temperature_due_to_shortwave_heating_on_radiation_time_step + total sky heating rate due to shortwave radiation + K s-1 + htswc + real + (:,:) + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + tendency_of_air_temperature_due_to_shortwave_heating_assuming_clear_sky_on_radiation_time_step + clear sky heating rates due to shortwave radiation + K s-1 + htsw0 + real + (:,:) + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + surface_albedo_due_to_near_IR_direct + surface albedo due to near IR direct beam + frac + sfcalb1 + real + (:) + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + surface_albedo_due_to_near_IR_diffused + surface albedo due to near IR diffused beam + frac + sfcalb2 + real + (:) + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + surface_albedo_due_to_UV_and_VIS_direct + surface albedo due to UV+VIS direct beam + frac + sfcalb3 + real + (:) + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + surface_albedo_due_to_UV_and_VIS_diffused + surface albedo due to UV+VIS diffused beam + frac + sfcalb4 + real + (:) + in + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + components_of_surface_downward_shortwave_fluxes + derived type for special components of surface downward shortwave fluxes + W m-2 + scmpsw + cmpfsw_type + (:) + inout + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_rrtmg_sw_post SCHEME_rrtmg_sw_post SUBROUTINE_rrtmg_sw_post_run + + + diff --git a/physics/rrtmg_sw_pre.xml b/physics/rrtmg_sw_pre.xml new file mode 100644 index 000000000..9523a4248 --- /dev/null +++ b/physics/rrtmg_sw_pre.xml @@ -0,0 +1,183 @@ + + + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + GFS_grid_type_instance + Fortran DDT containing FV3-GFS grid and interpolation related data + DDT + Grid + GFS_grid_type + + in + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + GFS_sfcprop_type_instance + Fortran DDT containing FV3-GFS surface fields + DDT + Sfcprop + GFS_sfcprop_type + + in + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + GFS_radtend_type_instance + Fortran DDT containing FV3-GFS radiation tendencies + DDT + Radtend + GFS_radtend_type + + inout + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + daytime_points_dimension + daytime points dimension + count + nday + integer + + out + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + daytime_points + daytime points + index + idxday + integer + (:) + out + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + surface_ground_temperature_for_radiation + surface ground temperature for radiation + K + tsfg + real + (:) + in + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + surface_air_temperature_for_radiation + lowest model layer air temperature for radiation + K + tsfa + real + (:) + in + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + surface_albedo_due_to_near_IR_direct + surface albedo due to near IR direct beam + frac + sfcalb1 + real + (:) + out + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + surface_albedo_due_to_near_IR_diffused + surface albedo due to near IR diffused beam + frac + sfcalb2 + real + (:) + out + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + surface_albedo_due_to_UV_and_VIS_direct + surface albedo due to UV+VIS direct beam + frac + sfcalb3 + real + (:) + out + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + surface_albedo_due_to_UV_and_VIS_diffused + surface albedo due to UV+VIS diffused beam + frac + sfcalb4 + real + (:) + out + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + surface_albedo_perturbation + surface albedo perturbation + frac + alb1d + real + (:) + in + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_rrtmg_sw_pre SCHEME_rrtmg_sw_pre SUBROUTINE_rrtmg_sw_pre_run + + + diff --git a/physics/rrtmgp_lw.xml b/physics/rrtmgp_lw.xml new file mode 100644 index 000000000..618dd72a0 --- /dev/null +++ b/physics/rrtmgp_lw.xml @@ -0,0 +1,547 @@ + + + + + + GFS_control_type_instance + Fortran DDT containing FV3-GFS model control parameters + DDT + Model + GFS_control_type + + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_init + + + mpi_rank + current MPI rank + index + mpirank + integer + + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_init + + + mpi_root + master MPI rank + index + mpiroot + integer + + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_init + + + mpi_comm + MPI communicator + index + mpicomm + integer + + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_init + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_init + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_init + + + + + air_pressure_at_layer_for_radiation_in_hPa + air pressure layer + hPa + p_lay + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + air_pressure_at_interface_for_radiation_in_hPa + air pressure level + hPa + p_lev + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + air_temperature_at_layer_for_radiation + air temperature layer + K + t_lay + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + air_temperature_at_interface_for_radiation + air temperature level + K + t_lev + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + water_vapor_specific_humidity_at_layer_for_radiation + specific humidity layer + kg kg-1 + q_lay + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + ozone_concentration_at_layer_for_radiation + ozone concentration layer + kg kg-1 + o3_lay + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + volume_mixing_ratio_co2 + volume mixing ratio co2 + kg kg-1 + vmr_co2 + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + volume_mixing_ratio_n2o + volume mixing ratio no2 + kg kg-1 + vmr_n2o + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + volume_mixing_ratio_ch4 + volume mixing ratio ch4 + kg kg-1 + vmr_ch4 + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + volume_mixing_ratio_o2 + volume mixing ratio o2 + kg kg-1 + vmr_o2 + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + volume_mixing_ratio_co + volume mixing ratio co + kg kg-1 + vmr_co + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + volume_mixing_ratio_cfc11 + volume mixing ratio cfc11 + kg kg-1 + vmr_cfc11 + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + volume_mixing_ratio_cfc12 + volume mixing ratio cfc12 + kg kg-1 + vmr_cfc12 + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + volume_mixing_ratio_cfc22 + volume mixing ratio cfc22 + kg kg-1 + vmr_cfc22 + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + volume_mixing_ratio_ccl4 + volume mixing ratio ccl4 + kg kg-1 + vmr_ccl4 + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + seed_random_numbers_lw + seed for random number generation for longwave radiation + none + icseed + integer + (:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + aerosol_optical_depth_for_longwave_bands_01-16 + aerosol optical depth for longwave bands 01-16 + none + tau_aer + real + (:,:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + aerosol_single_scattering_albedo_for_longwave_bands_01-16 + aerosol single scattering albedo for longwave bands 01-16 + frac + ssa_aer + real + (:,:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + surface_longwave_emissivity + surface emissivity + frac + sfc_emiss + real + (:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + surface_ground_temperature_for_radiation + surface ground temperature for radiation + K + skt + real + (:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + horizontal_loop_extent + horizontal dimension + count + ncol + integer + + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + adjusted_vertical_layer_dimension_for_radiation + number of vertical layers for radiation + count + nlay + integer + + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + flag_print + flag to print + flag + lprint + logical + + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + total_cloud_fraction + total cloud fraction + frac + cldfrac + real + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + flag_to_calc_lw + flag to calculate LW irradiances + flag + lslwr + logical + + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_time_step + longwave total sky heating rate + K s-1 + hlwc + real + (:,:) + out + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + lw_fluxes_top_atmosphere + longwave total sky fluxes at the top of the atm + W m-2 + topflx + topflw_type + (:) + inout + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + lw_fluxes_sfc + longwave total sky fluxes at the Earth surface + W m-2 + sfcflx + sfcflw_type + (:) + inout + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + tendency_of_air_temperature_due_to_longwave_heating_assuming_clear_sky_on_radiation_time_step + longwave clear sky heating rate + K s-1 + hlw0 + real + (:,:) + inout + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + lw_fluxes + lw fluxes total sky / csk and up / down at levels + W m-2 + flxprf + proflw_type + (:,:) + in + F + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + lw_heating_rate_spectral + longwave total sky heating rate (spectral) + K s-1 + hlwb + real + (:,:,:) + inout + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + lw_fluxes + lw fluxes total sky / csk and up / down at levels + W m-2 + flxprf + proflw_type + (:,:) + inout + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + cloud_liquid_water_path + cloud liquid water path + g m-2 + cld_lwp + real + (:,:) + in + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + mean_effective_radius_for_liquid_cloud + mean effective radius for liquid cloud + micron + cld_ref_liq + real + (:,:) + in + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + cloud_ice_water_path + cloud ice water path + g m-2 + cld_iwp + real + (:,:) + in + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + mean_effective_radius_for_ice_cloud + mean effective radius for ice cloud + micron + cld_ref_ice + real + (:,:) + in + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + cloud_rain_water_path + cloud ice water path + g m-2 + cld_rwp + real + (:,:) + in + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + mean_effective_radius_for_rain_drop + mean effective radius for rain drop + micron + cld_ref_rain + real + (:,:) + in + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + cloud_snow_water_path + cloud snow water path + g m-2 + cld_swp + real + (:,:) + in + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + mean_effective_radius_for_snow_flake + mean effective radius for snow flake + micron + cld_ref_snow + real + (:,:) + in + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + cloud_optical_depth + cloud optical depth + none + cld_od + real + (:,:) + in + T + MODULE_rrtmgp_lw SCHEME_rrtmgp_lw SUBROUTINE_rrtmgp_lw_run + + + diff --git a/physics/rte-rrtmgp b/physics/rte-rrtmgp index 54440ad72..fa305df4d 160000 --- a/physics/rte-rrtmgp +++ b/physics/rte-rrtmgp @@ -1 +1 @@ -Subproject commit 54440ad72cc65f8c368a0c6235157c38d30bd84e +Subproject commit fa305df4d3d88467e541f14db869f42c157013a7 diff --git a/physics/samfdeepcnv.xml b/physics/samfdeepcnv.xml new file mode 100644 index 000000000..5a59a552f --- /dev/null +++ b/physics/samfdeepcnv.xml @@ -0,0 +1,700 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + vertical_dimension + vertical layer dimension + count + km + integer + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + specific_heat_of_liquid_water_at_constant_pressure + specific heat of liquid water at constant pressure + J kg-1 K-1 + cliq + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + specific_heat_of_water_vapor_at_constant_pressure + specific heat of water vapor at constant pressure + J kg-1 K-1 + cvap + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + ratio_of_dry_air_to_water_vapor_gas_constants + rd/rv + none + eps + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + ratio_of_dry_air_to_water_vapor_gas_constants_minus_one + (rd/rv) - 1 + none + epsm1 + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + ratio_of_vapor_to_dry_air_gas_constants_minus_one + (rv/rd) - 1 (rv = ideal gas constant for water vapor) + none + fv + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + grav + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + latent_heat_of_vaporization_of_water_at_0C + latent heat of evaporation/sublimation + J kg-1 + hvap + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + rd + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + gas_constant_water_vapor + ideal gas constant for water vapor + J kg-1 K-1 + rv + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + temperature_at_zero_celsius + temperature at 0 degrees Celsius + K + t0c + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + time_step_for_physics + physics time step + s + delt + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + index_for_turbulent_kinetic_energy_convective_transport_tracer + index for turbulent kinetic energy in the convectively transported tracer array + index + ntk + integer + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + number_of_tracers_for_samf + number of tracers for scale-aware mass flux schemes + count + ntr + integer + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + air_pressure_difference_between_midlayers + pres(k) - pres(k+1) + Pa + delp + real + (:,:) + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + air_pressure + mean layer pressure + Pa + prslp + real + (:,:) + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + surface_air_pressure + surface pressure + Pa + psp + real + (:) + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + geopotential + layer geopotential + m2 s-2 + phil + real + (:,:) + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + convective_transportable_tracers + array to contain cloud water and other convective trans. tracers + kg kg-1 + qtr + real + (:,:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + water_vapor_specific_humidity_updated_by_physics + updated vapor specific humidity + kg kg-1 + q1 + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + air_temperature_updated_by_physics + updated temperature + K + t1 + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + x_wind_updated_by_physics + updated x-direction wind + m s-1 + u1 + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + y_wind_updated_by_physics + updated y-direction wind + m s-1 + v1 + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + cloud_work_function + cloud work function + m2 s-2 + cldwrk + real + (:) + out + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + lwe_thickness_of_deep_convective_precipitation_amount + deep convective rainfall amount on physics timestep + m + rn + real + (:) + out + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + vertical_index_at_cloud_base + index for cloud base + index + kbot + integer + (:) + out + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + vertical_index_at_cloud_top + index for cloud top + index + ktop + integer + (:) + out + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + flag_deep_convection + deep convection: 0=no, 1=yes + flag + kcnv + integer + (:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islimsk + integer + (:) + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + cell_area + grid cell area + m2 + garea + real + (:) + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + omega + layer mean vertical velocity + Pa s-1 + dot + real + (:,:) + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + number_of_hydrometeors + number of hydrometeors + count + ncloud + integer + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + instantaneous_atmosphere_updraft_convective_mass_flux + (updraft mass flux) * delt + kg m-2 + ud_mf + real + (:,:) + out + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + instantaneous_atmosphere_downdraft_convective_mass_flux + (downdraft mass flux) * delt + kg m-2 + dd_mf + real + (:,:) + out + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + instantaneous_atmosphere_detrainment_convective_mass_flux + (detrainment mass flux) * delt + kg m-2 + dt_mf + real + (:,:) + out + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + convective_cloud_water_mixing_ratio + moist convective cloud water mixing ratio + kg kg-1 + cnvw + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + convective_cloud_cover + convective cloud cover + frac + cnvc + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + mass_fraction_of_convective_cloud_liquid_water + mass fraction of convective cloud liquid water + kg kg-1 + qlcn + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + mass_fraction_of_convective_cloud_ice + mass fraction of convective cloud ice water + kg kg-1 + qicn + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + vertical_velocity_for_updraft + vertical velocity for updraft + m s-1 + w_upi + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + convective_cloud_fraction_for_microphysics + convective cloud fraction for microphysics + frac + cf_upi + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + detrained_mass_flux + detrained mass flux + kg m-2 s-1 + cnv_mfd + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + tendency_of_cloud_water_due_to_convective_microphysics + tendency of cloud water due to convective microphysics + kg m-2 s-1 + cnv_dqldt + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + convective_cloud_volume_fraction + convective cloud volume fraction + frac + clcn + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + ice_fraction_in_convective_tower + ice fraction in convective tower + frac + cnv_fice + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + number_concentration_of_cloud_liquid_water_particles_for_detrainment + droplet number concentration in convective detrainment + m-3 + cnv_ndrop + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + number_concentration_of_ice_crystals_for_detrainment + crystal number concentration in convective detrainment + m-3 + cnv_nice + real + (:,:) + inout + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + mp_phys + integer + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + flag_for_morrison_gettelman_microphysics_scheme + choice of Morrison-Gettelman rmicrophysics scheme + flag + mp_phys_mg + integer + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + entrainment_rate_coefficient_deep_convection + entrainment rate coefficient for deep conv. + none + clam + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + rain_conversion_parameter_deep_convection + convective rain conversion parameter for deep conv. + m-1 + c0s + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + detrainment_conversion_parameter_deep_convection + convective detrainment conversion parameter for deep conv. + m-1 + c1 + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + downdraft_fraction_reaching_surface_over_land_deep_convection + downdraft fraction reaching surface over land for deep conv. + frac + betal + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + downdraft_fraction_reaching_surface_over_ocean_deep_convection + downdraft fraction reaching surface over ocean for deep conv. + frac + betas + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + rain_evaporation_coefficient_deep_convection + convective rain evaporation coefficient for deep conv. + frac + evfact + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + rain_evaporation_coefficient_over_land_deep_convection + convective rain evaporation coefficient over land for deep conv. + frac + evfactl + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + momentum_transport_reduction_factor_pgf_deep_convection + reduction factor in momentum transport due to deep conv. induced pressure gradient force + frac + pgcon + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + aerosol_aware_parameter_deep_convection + aerosol-aware parameter inversely proportional to CCN number concentraion from Lim (2011) for deep conv. + none + asolfac + real + + in + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_samfdeepcnv SCHEME_samfdeepcnv SUBROUTINE_samfdeepcnv_run + + + + + diff --git a/physics/samfshalcnv.xml b/physics/samfshalcnv.xml new file mode 100644 index 000000000..c9e4b67a2 --- /dev/null +++ b/physics/samfshalcnv.xml @@ -0,0 +1,513 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + vertical_dimension + vertical layer dimension + count + km + integer + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + specific_heat_of_liquid_water_at_constant_pressure + specific heat of liquid water at constant pressure + J kg-1 K-1 + cliq + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + specific_heat_of_water_vapor_at_constant_pressure + specific heat of water vapor at constant pressure + J kg-1 K-1 + cvap + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + ratio_of_dry_air_to_water_vapor_gas_constants + rd/rv + none + eps + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + ratio_of_dry_air_to_water_vapor_gas_constants_minus_one + (rd/rv) - 1 + none + epsm1 + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + ratio_of_vapor_to_dry_air_gas_constants_minus_one + (rv/rd) - 1 (rv = ideal gas constant for water vapor) + none + fv + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + grav + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + latent_heat_of_vaporization_of_water_at_0C + latent heat of evaporation/sublimation + J kg-1 + hvap + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + rd + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + gas_constant_water_vapor + ideal gas constant for water vapor + J kg-1 K-1 + rv + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + temperature_at_zero_celsius + temperature at 0 degrees Celsius + K + t0c + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + time_step_for_physics + physics time step + s + delt + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + index_for_turbulent_kinetic_energy_convective_transport_tracer + index for turbulent kinetic energy in the convectively transported tracer array + index + ntk + integer + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + number_of_tracers_for_samf + number of tracers for scale-aware mass flux schemes + count + ntr + integer + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + air_pressure_difference_between_midlayers + pres(k) - pres(k+1) + Pa + delp + real + (:,:) + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + air_pressure + mean layer pressure + Pa + prslp + real + (:,:) + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + surface_air_pressure + surface pressure + Pa + psp + real + (:) + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + geopotential + layer geopotential + m2 s-2 + phil + real + (:,:) + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + convective_transportable_tracers + array to contain cloud water and other convective trans. tracers + kg kg-1 + qtr + real + (:,:,:) + inout + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + water_vapor_specific_humidity_updated_by_physics + updated vapor specific humidity + kg kg-1 + q1 + real + (:,:) + inout + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + air_temperature_updated_by_physics + updated temperature + K + t1 + real + (:,:) + inout + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + x_wind_updated_by_physics + updated x-direction wind + m s-1 + u1 + real + (:,:) + inout + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + y_wind_updated_by_physics + updated y-direction wind + m s-1 + v1 + real + (:,:) + inout + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + lwe_thickness_of_shallow_convective_precipitation_amount + shallow convective rainfall amount on physics timestep + m + rn + real + (:) + out + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + vertical_index_at_cloud_base + index at cloud base + index + kbot + integer + (:) + out + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + vertical_index_at_cloud_top + index at cloud top + index + ktop + integer + (:) + out + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + flag_deep_convection + deep convection: 0=no, 1=yes + flag + kcnv + integer + (:) + inout + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islimsk + integer + (:) + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + cell_area + grid cell area + m2 + garea + real + (:) + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + omega + layer mean vertical velocity + Pa s-1 + dot + real + (:,:) + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + number_of_hydrometeors + number of hydrometeors + count + ncloud + integer + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + atmosphere_boundary_layer_thickness + PBL top height + m + hpbl + real + (:) + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + instantaneous_atmosphere_updraft_convective_mass_flux + (updraft mass flux) * delt + kg m-2 + ud_mf + real + (:,:) + out + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + instantaneous_atmosphere_detrainment_convective_mass_flux + (detrainment mass flux) * delt + kg m-2 + dt_mf + real + (:,:) + out + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + convective_cloud_water_mixing_ratio + moist convective cloud water mixing ratio + kg kg-1 + cnvw + real + (:,:) + out + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + convective_cloud_cover + convective cloud cover + frac + cnvc + real + (:,:) + out + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + entrainment_rate_coefficient_shallow_convection + entrainment rate coefficient for shal conv. + none + clam + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + rain_conversion_parameter_shallow_convection + convective rain conversion parameter for shal conv. + m-1 + c0s + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + detrainment_conversion_parameter_shallow_convection + convective detrainment conversion parameter for shal conv. + m-1 + c1 + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + momentum_transport_reduction_factor_pgf_shallow_convection + reduction factor in momentum transport due to shal conv. induced pressure gradient force + frac + pgcon + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + aerosol_aware_parameter_shallow_convection + aerosol-aware parameter inversely proportional to CCN number concentraion from Lim (2011) for shal conv. + none + asolfac + real + + in + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_samfshalcnv SCHEME_samfshalcnv SUBROUTINE_samfshalcnv_run + + + + + diff --git a/physics/samfshalcnv_post.xml b/physics/samfshalcnv_post.xml new file mode 100644 index 000000000..0d196bc95 --- /dev/null +++ b/physics/samfshalcnv_post.xml @@ -0,0 +1,205 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + vertical_dimension + vertical layer dimension + count + levs + integer + + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + flag_diagnostics + logical flag for storing diagnostics + flag + lssav + logical + + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + flag_shallow_convective_cloud + flag for shallow convective cloud + + shcnvcw + logical + + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + dynamics_to_physics_timestep_ratio + ratio of dynamics timestep to physics timestep + none + frain + real + + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + lwe_thickness_of_shallow_convective_precipitation_amount + shallow convective rainfall amount on physics timestep + m + rain1 + real + (:) + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + number_of_3d_arrays_associated_with_pdf-based_clouds + number of 3d arrays associated with pdf based clouds/mp + count + npdf3d + integer + + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + array_dimension_of_3d_arrays_for_microphysics + number of 3D arrays needed for microphysics + count + num_p3d + integer + + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + number_of_convective_3d_cloud_fields + number of convective 3d clouds fields + count + ncnvcld3d + integer + + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + convective_cloud_cover + convective cloud cover + frac + cnvc + real + (:,:) + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + convective_cloud_water_mixing_ratio + moist convective cloud water mixing ratio + kg kg-1 + cnvw + real + (:,:) + in + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + lwe_thickness_of_convective_precipitation_amount_on_dynamics_timestep + convective rain at this time step + m + rainc + real + (:) + inout + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + cumulative_lwe_thickness_of_convective_precipitation_amount + cumulative convective precipitation + m + cnvprcp + real + (:) + inout + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + cumulative_lwe_thickness_of_convective_precipitation_amount_in_bucket + cumulative convective precipitation in bucket + m + cnvprcpb + real + (:) + inout + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + convective_cloud_water_mixing_ratio_in_phy_f3d + convective cloud water mixing ratio in the phy_f3d array + kg kg-1 + cnvw_phy_f3d + real + (:,:) + inout + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + convective_cloud_cover_in_phy_f3d + convective cloud cover in the phy_f3d array + frac + cnvc_phy_f3d + real + (:,:) + inout + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_samfshalcnv_post SCHEME_samfshalcnv_post SUBROUTINE_samfshalcnv_post_run + + + + + diff --git a/physics/satmedmfvdif.xml b/physics/satmedmfvdif.xml new file mode 100644 index 000000000..3b5ec573d --- /dev/null +++ b/physics/satmedmfvdif.xml @@ -0,0 +1,667 @@ + + + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + vertical_dimension + vertical layer dimension + count + km + integer + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + number_of_vertical_diffusion_tracers + number of tracers to diffuse vertically + count + ntrac + integer + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + index_for_liquid_cloud_condensate + tracer index for cloud condensate (or liquid water) + index + ntcw + integer + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + index_for_ice_cloud_condensate_vertical_diffusion_tracer + tracer index for ice water in the vertically diffused tracer array + index + ntiw + integer + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + index_for_turbulent_kinetic_energy_vertical_diffusion_tracer + index for turbulent kinetic energy in the vertically diffused tracer array + index + ntke + integer + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + grav + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + rd + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + gas_constant_water_vapor + ideal gas constant for water vapor + J kg-1 K-1 + rv + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + latent_heat_of_vaporization_of_water_at_0C + latent heat of evaporation/sublimation + J kg-1 + hvap + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + latent_heat_of_fusion_of_water_at_0C + latent heat of fusion + J kg-1 + hfus + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + ratio_of_vapor_to_dry_air_gas_constants_minus_one + (rv/rd) - 1 (rv = ideal gas constant for water vapor) + none + fv + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + ratio_of_dry_air_to_water_vapor_gas_constants + rd/rv + none + eps + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + ratio_of_dry_air_to_water_vapor_gas_constants_minus_one + (rd/rv) - 1 + none + epsm1 + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + tendency_of_y_wind_due_to_model_physics + updated tendency of the y wind + m s-2 + dv + real + (:,:) + inout + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + tendency_of_x_wind_due_to_model_physics + updated tendency of the x wind + m s-2 + du + real + (:,:) + inout + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + tendency_of_air_temperature_due_to_model_physics + updated tendency of the temperature + K s-1 + tdt + real + (:,:) + inout + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + tendency_of_vertically_diffused_tracer_concentration + updated tendency of the tracers due to vertical diffusion in PBL scheme + kg kg-1 s-1 + rtg + real + (:,:,:) + inout + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + x_wind + x component of layer wind + m s-1 + u1 + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + y_wind + y component of layer wind + m s-1 + v1 + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + air_temperature + layer mean air temperature + K + t1 + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + vertically_diffused_tracer_concentration + tracer concentration diffused by PBL scheme + kg kg-1 + q1 + real + (:,:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + tendency_of_air_temperature_due_to_shortwave_heating_on_radiation_time_step + total sky shortwave heating rate + K s-1 + swh + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + tendency_of_air_temperature_due_to_longwave_heating_on_radiation_time_step + total sky longwave heating rate + K s-1 + hlw + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + zenith_angle_temporal_adjustment_factor_for_shortwave_fluxes + zenith angle temporal adjustment factor for shortwave + none + xmu + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + cell_area + area of the grid cell + m2 + garea + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + dimensionless_exner_function_at_lowest_model_interface + dimensionless Exner function at the surface interface + none + psk + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + bulk_richardson_number_at_lowest_model_level + bulk Richardson number at the surface + none + rbsoil + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + surface_roughness_length + surface roughness length in cm + cm + zorl + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + x_wind_at_10m + x component of wind at 10 m + m s-1 + u10m + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + y_wind_at_10m + y component of wind at 10 m + m s-1 + v10m + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + Monin-Obukhov_similarity_function_for_momentum + Monin-Obukhov similarity function for momentum + none + fm + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + Monin-Obukhov_similarity_function_for_heat + Monin-Obukhov similarity function for heat + none + fh + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + surface_skin_temperature + surface skin temperature + K + tsea + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic surface upward sensible heat flux + K m s-1 + heat + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + kinematic_surface_upward_latent_heat_flux + kinematic surface upward latent heat flux + kg kg-1 m s-1 + evap + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + surface_wind_stress + surface wind stress + m2 s-2 + stress + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + spd1 + real + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + vertical_index_at_top_of_atmosphere_boundary_layer + PBL top model level index + index + kpbl + integer + (:) + out + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + air_pressure_at_interface + air pressure at model layer interfaces + Pa + prsi + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + air_pressure_difference_between_midlayers + pres(k) - pres(k+1) + Pa + del + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + dimensionless_exner_function_at_model_layers + Exner function at layers + none + prslk + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + geopotential + geopotential at model layer centers + m2 s-2 + phil + real + (:,:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + time_step_for_physics + time step for physics + s + delt + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + flag_TKE_dissipation_heating + flag for using TKE dissipation heating + flag + dspheat + logical + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + instantaneous_surface_x_momentum_flux + x momentum flux + Pa + dusfc + real + (:) + out + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + instantaneous_surface_y_momentum_flux + y momentum flux + Pa + dvsfc + real + (:) + out + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + instantaneous_surface_upward_sensible_heat_flux + surface upward sensible heat flux + W m-2 + dtsfc + real + (:) + out + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + instantaneous_surface_upward_latent_heat_flux + surface upward latent heat flux + W m-2 + dqsfc + real + (:) + out + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + atmosphere_boundary_layer_thickness + PBL thickness + m + hpbl + real + (:) + out + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + index_of_highest_temperature_inversion + index of highest temperature inversion + index + kinver + integer + (:) + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + atmosphere_momentum_diffusivity_background + background value of momentum diffusivity + m2 s-1 + xkzm_m + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + atmosphere_heat_diffusivity_background + background value of heat diffusivity + m2 s-1 + xkzm_h + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + diffusivity_background_sigma_level + sigma level threshold for background diffusivity + none + xkzm_s + real + + in + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_satmedmfvdif SCHEME_satmedmfvdif SUBROUTINE_satmedmfvdif_run + + + diff --git a/physics/sfc_diag.xml b/physics/sfc_diag.xml new file mode 100644 index 000000000..b5dfc9b6c --- /dev/null +++ b/physics/sfc_diag.xml @@ -0,0 +1,282 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + grav + real + + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + cp + real + + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + ratio_of_dry_air_to_water_vapor_gas_constants + rd/rv + none + eps + real + + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + ratio_of_dry_air_to_water_vapor_gas_constants_minus_one + (rd/rv) - 1 + none + epsm1 + real + + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + surface_air_pressure + surface pressure + Pa + ps + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + x_wind_at_lowest_model_layer_updated_by_physics + x component of 1st model layer wind + m s-1 + u1 + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + y_wind_at_lowest_model_layer_updated_by_physics + y component of 1st model layer wind + m s-1 + v1 + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + air_temperature_at_lowest_model_layer_updated_by_physics + 1st model layer air temperature + K + t1 + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + water_vapor_specific_humidity_at_lowest_model_layer_updated_by_physics + 1st model layer specific humidity + kg kg-1 + q1 + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + surface_skin_temperature + surface skin temperature + K + tskin + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + surface_specific_humidity + surface specific humidity + kg kg-1 + qsurf + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + ratio_of_wind_at_lowest_model_layer_and_wind_at_10m + ratio of fm10 and fm + ratio + f10m + real + (:) + out + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + x_wind_at_10m + x component of wind at 10 m + m s-1 + u10m + real + (:) + out + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + y_wind_at_10m + y component of wind at 10 m + m s-1 + v10m + real + (:) + out + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + temperature_at_2m + temperature at 2 m + K + t2m + real + (:) + out + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + specific_humidity_at_2m + specific humidity at 2 m + kg kg-1 + q2m + real + (:) + out + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + ratio_of_exner_function_between_midlayer_and_interface_at_lowest_model_layer + Exner function ratio bt midlayer and interface at 1st layer + ratio + prslki + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + kinematic_surface_upward_latent_heat_flux + surface upward evaporation flux + kg kg-1 m s-1 + evap + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + Monin-Obukhov_similarity_function_for_momentum + Monin-Obukhov similarity parameter for momentum + none + fm + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + Monin-Obukhov_similarity_function_for_heat + Monin-Obukhov similarity parameter for heat + none + fh + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + Monin-Obukhov_similarity_function_for_momentum_at_10m + Monin-Obukhov similarity parameter for momentum + none + fm10 + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + Monin-Obukhov_similarity_function_for_heat_at_2m + Monin-Obukhov similarity parameter for heat + none + fh2 + real + (:) + in + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_sfc_diag SCHEME_sfc_diag SUBROUTINE_sfc_diag_run + + + diff --git a/physics/sfc_diag_post.xml b/physics/sfc_diag_post.xml new file mode 100644 index 000000000..0029ffa0f --- /dev/null +++ b/physics/sfc_diag_post.xml @@ -0,0 +1,227 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + flag_diagnostics + logical flag for storing diagnostics + flag + lssav + logical + + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + time_step_for_dynamics + dynamics timestep + s + dtf + real + + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + ratio_of_dry_air_to_water_vapor_gas_constants + rd/rv + none + con_eps + real + + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + ratio_of_dry_air_to_water_vapor_gas_constants_minus_one + (rd/rv) - 1 + none + con_epsm1 + real + + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + surface_air_pressure + surface pressure + Pa + pgr + real + (:) + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + temperature_at_2m + 2 meter temperature + K + t2m + real + (:) + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + specific_humidity_at_2m + 2 meter specific humidity + kg kg-1 + q2m + real + (:) + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + x_wind_at_10m + 10 meter u wind speed + m s-1 + u10m + real + (:) + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + y_wind_at_10m + 10 meter v wind speed + m s-1 + v10m + real + (:) + in + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + minimum_temperature_at_2m + min temperature at 2m height + K + tmpmin + real + (:) + inout + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + maximum_temperature_at_2m + max temperature at 2m height + K + tmpmax + real + (:) + inout + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + minimum_specific_humidity_at_2m + minimum specific humidity at 2m height + kg kg-1 + spfhmin + real + (:) + inout + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + maximum_specific_humidity_at_2m + maximum specific humidity at 2m height + kg kg-1 + spfhmax + real + (:) + inout + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + maximum_wind_at_10m + maximum wind speed at 10 m + m s-1 + wind10mmax + real + (:) + inout + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + maximum_x_wind_at_10m + maximum x wind at 10 m + m s-1 + u10mmax + real + (:) + inout + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + maximum_y_wind_at_10m + maximum y wind at 10 m + m s-1 + v10mmax + real + (:) + inout + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + dewpoint_temperature_at_2m + 2 meter dewpoint temperature + K + dpt2m + real + (:) + inout + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_sfc_diag_post SCHEME_sfc_diag_post SUBROUTINE_sfc_diag_post_run + + + + diff --git a/physics/sfc_ex_coef.xml b/physics/sfc_ex_coef.xml new file mode 100644 index 000000000..a5ef62457 --- /dev/null +++ b/physics/sfc_ex_coef.xml @@ -0,0 +1,392 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_air_pressure + surface pressure + Pa + ps + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + x_wind_at_lowest_model_layer + x component of 1st model layer wind + m s-1 + u1 + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + y_wind_at_lowest_model_layer + y component of 1st model layer wind + m s-1 + v1 + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + air_temperature_at_lowest_model_layer + 1st model layer air temperature + K + t1 + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + water_vapor_specific_humidity_at_lowest_model_layer + 1st model layer specific humidity + kg kg-1 + q1 + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + height_above_ground_at_lowest_model_layer + height above ground at 1st model layer + m + z1 + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_snow_thickness_water_equivalent + water equivalent surface snow thickness + mm + snwdph + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_skin_temperature + surface skin temperature + K + tskin + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_roughness_length + surface roughness length + cm + z0rl + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_drag_coefficient_for_momentum_in_air + surface exchange coeff for momentum + none + cm + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_drag_coefficient_for_heat_and_moisture_in_air + surface exchange coeff heat moisture + none + ch + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + bulk_richardson_number_at_lowest_model_level + bulk Richardson number at the surface + none + rb + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + air_pressure_at_lowest_model_layer + Model layer 1 mean pressure + Pa + prsl1 + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + ratio_of_exner_function_between_midlayer_and_interface_at_lowest_model_layer + Exner function ratio bt midlayer and interface at 1st layer + ratio + prslki + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islimsk + integer + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_wind_stress + surface wind stress + m2 s-2 + stress + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + Monin-Obukhov_similarity_function_for_momentum + Monin-Obukhov similarity parameter for momentum + none + fm + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + Monin-Obukhov_similarity_function_for_heat + Monin-Obukhov similarity parameter for heat + none + fh + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_friction_velocity + surface friction velocity + m s-1 + ustar + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + wind_speed_at_lowest_model_layer + wind speed at lowest model level + m s-1 + wind + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_wind_enhancement_due_to_convection + surface wind enhancement due to convection + m s-1 + ddvel + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + Monin-Obukhov_similarity_function_for_momentum_at_10m + Monin-Obukhov similarity parameter for momentum + none + fm10 + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + Monin-Obukhov_similarity_function_for_heat_at_2m + Monin-Obukhov similarity parameter for heat + none + fh2 + real + (:) + inout + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + bounded_vegetation_area_fraction + areal fractional cover of green vegetation bounded on the bottom + frac + sigmaf + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + vegetation_type_classification + vegetation type at each grid cell + index + vegtype + integer + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + maximum_vegetation_area_fraction + max fractnl cover of green veg + frac + shdmax + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + vegetation_type_dataset_choice + land use dataset choice + index + ivegsrc + integer + + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + perturbation_of_momentum_roughness_length + perturbation of momentum roughness length + frac + z0pert + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + perturbation_of_heat_to_momentum_roughness_length_ratio + perturbation of heat to momentum roughness length ratio + frac + ztpert + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + surface_skin_temperature_after_iteration + surface skin temperature after iteration + K + tsurf + real + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + flag_for_iteration + flag for iteration + flag + flag_iter + logical + (:) + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + flag_for_reduced_drag_coefficient_over_sea + flag for reduced drag coefficient over sea + flag + redrag + logical + + in + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_sfc_ex_coef SCHEME_sfc_ex_coef SUBROUTINE_sfc_ex_coef_run + + + + diff --git a/physics/sfc_nst.xml b/physics/sfc_nst.xml new file mode 100644 index 000000000..35051132f --- /dev/null +++ b/physics/sfc_nst.xml @@ -0,0 +1,656 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_air_pressure + surface pressure + Pa + ps + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + x_wind_at_lowest_model_layer + x component of surface layer wind + m s-1 + u1 + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + y_wind_at_lowest_model_layer + y component of surface layer wind + m s-1 + v1 + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + air_temperature_at_lowest_model_layer + surface layer mean temperature + K + t1 + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + water_vapor_specific_humidity_at_lowest_model_layer + surface layer mean specific humidity + kg kg-1 + q1 + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + sea_surface_reference_temperature + reference/foundation temperature + K + tref + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_drag_coefficient_for_momentum_in_air + surface exchange coeff for momentum + none + cm + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_drag_coefficient_for_heat_and_moisture_in_air + surface exchange coeff heat moisture + none + ch + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + air_pressure_at_lowest_model_layer + surface layer mean pressure + Pa + prsl1 + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + ratio_of_exner_function_between_midlayer_and_interface_at_lowest_model_layer + Exner function ratio bt midlayer and interface at 1st layer + ratio + prslki + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islimsk + integer + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + longitude + longitude + radians + xlon + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + sine_of_latitude + sine of latitude + none + sinlat + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_wind_stress + wind stress + m2 s-2 + stress + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_longwave_emissivity + surface longwave emissivity + frac + sfcemis + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_downwelling_longwave_flux_absorbed_by_ground + total sky sfc downward lw flux absorbed by the ocean + W m-2 + dlwflx + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_net_downwelling_shortwave_flux + total sky sfc net sw flx into ocean + W m-2 + sfcnsw + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + nonnegative_lwe_thickness_of_precipitation_amount_on_dynamics_timestep + nonnegative precipitation amount on dyn time step + m + rain + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + time_step_for_dynamics + timestep interval + s + timestep + real + + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + index_of_time_step + current time step index + index + kdt + integer + + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + forecast_hour + fcst hour at the end of prev time step + h + solhr + real + + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + instantaneous_cosine_of_zenith_angle + cosine of solar zenith angle + none + xcosz + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_wind_enhancement_due_to_convection + wind enhancement due to convection + m s-1 + ddvel + real + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + flag_for_iteration + flag for iteration + flag + flag_iter + logical + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + flag_for_guess_run + flag for guess run + flag + flag_guess + logical + (:) + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + flag_for_nsstm_run + NSSTM flag: off/uncoupled/coupled=0/1/2 + flag + nstf_name1 + integer + + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + vertical_temperature_average_range_lower_bound + zsea1 + mm + nstf_name4 + integer + + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + vertical_temperature_average_range_upper_bound + zsea2 + mm + nstf_name5 + integer + + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + flag_print + flag for printing diagnostics to output + flag + lprnt + logical + + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + horizontal_index_of_printed_column + horizontal index of printed column + index + ipr + integer + + in + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_skin_temperature_for_nsst + ocean surface skin temperature + K + tskin + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_skin_temperature_after_iteration + ocean surface skin temperature for guess run + K + tsurf + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + diurnal_thermocline_layer_heat_content + heat content in diurnal thermocline layer + K m + xt + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + sea_water_salinity + salinity content in diurnal thermocline layer + ppt m + xs + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + diurnal_thermocline_layer_x_current + u-current content in diurnal thermocline layer + m2 s-1 + xu + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + diurnal_thermocline_layer_y_current + v-current content in diurnal thermocline layer + m2 s-1 + xv + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + diurnal_thermocline_layer_thickness + diurnal thermocline layer thickness + m + xz + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + ocean_mixed_layer_thickness + mixed layer thickness + m + zm + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + sensitivity_of_dtl_heat_content_to_surface_temperature + d(xt)/d(ts) + m + xtts + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + sensitivity_of_dtl_thickness_to_surface_temperature + d(xz)/d(ts) + m K-1 + xzts + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + sub-layer_cooling_amount + sub-layer cooling amount + K + dt_cool + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + sub-layer_cooling_thickness + sub-layer cooling thickness + m + z_c + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + coefficient_c_0 + coefficient1 to calculate d(tz)/d(ts) + none + c_0 + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + coefficient_c_d + coefficient2 to calculate d(tz)/d(ts) + none + c_d + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + coefficient_w_0 + coefficient3 to calculate d(tz)/d(ts) + none + w_0 + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + coefficient_w_d + coefficient4 to calculate d(tz)/d(ts) + none + w_d + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + free_convection_layer_thickness + thickness of free convection layer + m + d_conv + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + index_of_dtlm_start + index to start dtlm run or not + index + ifd + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + sensible_heat_flux_due_to_rainfall + sensible heat flux due to rainfall + W + qrain + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_specific_humidity + surface air saturation specific humidity + kg kg-1 + qsurf + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + upward_heat_flux_in_soil + soil heat flux + W m-2 + gflux + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_drag_wind_speed_for_momentum_in_air + surf mom exch coef time mean surf wind + m s-1 + cmm + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_drag_mass_flux_for_heat_and_moisture_in_air + surf h m exch coef time surf wind density + kg m-2 s-1 + chh + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + kinematic_surface_upward_latent_heat_flux + kinematic from latent heat flux + kg kg-1 m s-1 + evap + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic sensible heat flux + K m s-1 + hflx + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + surface_upward_potential_latent_heat_flux + potential evaporation + W m-2 + ep + real + (:) + inout + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_sfc_nst SCHEME_sfc_nst SUBROUTINE_sfc_nst_run + + + + diff --git a/physics/sfc_nst_post.xml b/physics/sfc_nst_post.xml new file mode 100644 index 000000000..f7dd20f46 --- /dev/null +++ b/physics/sfc_nst_post.xml @@ -0,0 +1,216 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islimsk + integer + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + orography + orography + m + oro + real + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + orography_unfiltered + unfiltered orography + m + oro_uf + real + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + flag_for_nsstm_run + NSSTM flag: off/uncoupled/coupled=0/1/2 + flag + nstf_name1 + integer + + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + vertical_temperature_average_range_lower_bound + zsea1 + mm + nstf_name4 + integer + + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + vertical_temperature_average_range_upper_bound + zsea2 + mm + nstf_name5 + integer + + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + diurnal_thermocline_layer_heat_content + heat content in diurnal thermocline layer + K m + xt + real + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + diurnal_thermocline_layer_thickness + diurnal thermocline layer thickness + m + xz + real + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + sub-layer_cooling_amount + sub-layer cooling amount + K + dt_cool + real + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + sub-layer_cooling_thickness + sub-layer cooling thickness + m + z_c + real + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + sea_land_ice_mask_real + landmask: sea/land/ice=0/1/2 + flag + rslimsk + real + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + sea_surface_reference_temperature + reference/foundation temperature + K + tref + real + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + longitude + longitude + radians + xlon + real + (:) + in + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + surface_skin_temperature_after_iteration + ocean surface skin temperature for guess run + K + tsurf + real + (:) + inout + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + mean_change_over_depth_in_sea_water_temperature + mean of dT(z) (zsea1 to zsea2) + K + dtzm + real + (:) + out + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + surface_skin_temperature + surface skin temperature + K + tsfc + real + (:) + inout + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_sfc_nst_post SCHEME_sfc_nst_post SUBROUTINE_sfc_nst_post_run + + + + + diff --git a/physics/sfc_nst_pre.xml b/physics/sfc_nst_pre.xml new file mode 100644 index 000000000..cd7931866 --- /dev/null +++ b/physics/sfc_nst_pre.xml @@ -0,0 +1,106 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_sfc_nst_pre SCHEME_sfc_nst_pre SUBROUTINE_sfc_nst_pre_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islimsk + integer + (:) + in + F + MODULE_sfc_nst_pre SCHEME_sfc_nst_pre SUBROUTINE_sfc_nst_pre_run + + + orography + orography + m + oro + real + (:) + in + F + MODULE_sfc_nst_pre SCHEME_sfc_nst_pre SUBROUTINE_sfc_nst_pre_run + + + orography_unfiltered + unfiltered orographyo + m + oro_uf + real + (:) + in + F + MODULE_sfc_nst_pre SCHEME_sfc_nst_pre SUBROUTINE_sfc_nst_pre_run + + + surface_skin_temperature + surface skin temperature + K + tsfc + real + (:) + in + F + MODULE_sfc_nst_pre SCHEME_sfc_nst_pre SUBROUTINE_sfc_nst_pre_run + + + surface_skin_temperature_after_iteration + ocean surface skin temperature for guess run + K + tsurf + real + (:) + inout + F + MODULE_sfc_nst_pre SCHEME_sfc_nst_pre SUBROUTINE_sfc_nst_pre_run + + + surface_skin_temperature_for_nsst + ocean surface skin temperature + K + tskin + real + (:) + out + F + MODULE_sfc_nst_pre SCHEME_sfc_nst_pre SUBROUTINE_sfc_nst_pre_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_sfc_nst_pre SCHEME_sfc_nst_pre SUBROUTINE_sfc_nst_pre_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_sfc_nst_pre SCHEME_sfc_nst_pre SUBROUTINE_sfc_nst_pre_run + + + diff --git a/physics/sfc_ocean.xml b/physics/sfc_ocean.xml new file mode 100644 index 000000000..d36950994 --- /dev/null +++ b/physics/sfc_ocean.xml @@ -0,0 +1,260 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + surface_air_pressure + surface pressure + Pa + ps + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + x_wind_at_lowest_model_layer + x component of surface layer wind + m s-1 + u1 + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + y_wind_at_lowest_model_layer + y component of surface layer wind + m s-1 + v1 + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + air_temperature_at_lowest_model_layer + surface layer mean temperature + K + t1 + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + water_vapor_specific_humidity_at_lowest_model_layer + surface layer mean specific humidity + kg kg-1 + q1 + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + surface_skin_temperature + surface skin temperature + K + tskin + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + surface_drag_coefficient_for_momentum_in_air + surface exchange coeff for momentum + none + cm + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + surface_drag_coefficient_for_heat_and_moisture_in_air + surface exchange coeff heat moisture + none + ch + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + air_pressure_at_lowest_model_layer + surface layer mean pressure + Pa + prsl1 + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + ratio_of_exner_function_between_midlayer_and_interface_at_lowest_model_layer + Exner function ratio bt midlayer and interface at 1st layer + ratio + prslki + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + sea_land_ice_mask + landmask: sea/land/ice=0/1/2 + flag + islimsk + integer + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + surface_wind_enhancement_due_to_convection + wind enhancement due to convection + m s-1 + ddvel + real + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + flag_for_iteration + flag for iteration + flag + flag_iter + logical + (:) + in + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + surface_specific_humidity + surface air saturation specific humidity + kg kg-1 + qsurf + real + (:) + inout + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + surface_drag_wind_speed_for_momentum_in_air + surf mom exch coef time mean surf wind + m s-1 + cmm + real + (:) + inout + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + surface_drag_mass_flux_for_heat_and_moisture_in_air + surf h m exch coef time surf wind density + kg m-2 s-1 + chh + real + (:) + inout + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + upward_heat_flux_in_soil + soil heat flux + W m-2 + gflux + real + (:) + inout + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + kinematic_surface_upward_latent_heat_flux + kinematic from latent heat flux + kg kg-1 m s-1 + evap + real + (:) + inout + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic sensible heat flux + K m s-1 + hflx + real + (:) + inout + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + surface_upward_potential_latent_heat_flux + potential evaporation + W m-2 + ep + real + (:) + inout + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_sfc_ocean SCHEME_sfc_ocean SUBROUTINE_sfc_ocean_run + + + diff --git a/physics/sfc_sice.xml b/physics/sfc_sice.xml new file mode 100644 index 000000000..d6d51a995 --- /dev/null +++ b/physics/sfc_sice.xml @@ -0,0 +1,469 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + soil_vertical_dimension + vertical loop extent for soil levels, start at 1 + count + km + integer + + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_air_pressure + surface pressure + Pa + ps + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + x_wind_at_lowest_model_layer + u component of surface layer wind + m s-1 + u1 + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + y_wind_at_lowest_model_layer + v component of surface layer wind + m s-1 + v1 + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + air_temperature_at_lowest_model_layer + surface layer mean temperature + K + t1 + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + water_vapor_specific_humidity_at_lowest_model_layer + surface layer mean specific humidity + kg kg-1 + q1 + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + time_step_for_dynamics + time step + s + delt + real + + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_longwave_emissivity + sfc lw emissivity + frac + sfcemis + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_downwelling_longwave_flux_absorbed_by_ground + total sky surface downward longwave flux absorbed by the ground + W m-2 + dlwflx + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_net_downwelling_shortwave_flux + total sky sfc netsw flx into ground + W m-2 + sfcnsw + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_downwelling_shortwave_flux + total sky sfc downward sw flux + W m-2 + sfcdsw + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + flag_for_precipitation_type + snow/rain flag for precipitation + flag + srflag + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_drag_coefficient_for_momentum_in_air + surface exchange coeff for momentum + none + cm + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_drag_coefficient_for_heat_and_moisture_in_air + surface exchange coeff heat moisture + none + ch + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + air_pressure_at_lowest_model_layer + surface layer mean pressure + Pa + prsl1 + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + ratio_of_exner_function_between_midlayer_and_interface_at_lowest_model_layer + Exner function ratio bt midlayer and interface at 1st layer + ratio + prslki + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + sea_land_ice_mask + sea/land/ice mask (=0/1/2) + flag + islimsk + integer + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_wind_enhancement_due_to_convection + wind enhancement due to convection + m s-1 + ddvel + real + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + flag_for_iteration + flag for iteration + flag + flag_iter + logical + (:) + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + flag_for_mom4_coupling + flag for Mom4 coupling + flag + mom4ice + logical + + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + flag_for_land_surface_scheme + flag for land sfc scheme =0: osu; =1: noah + flag + lsm + integer + + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + flag_print + switch for printing sample column to stdout + flag + lprnt + logical + + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + horizontal_index_of_printed_column + horizontal index of printed column + index + ipr + integer + + in + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + sea_ice_thickness + sea-ice thickness + m + hice + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + sea_ice_concentration + sea-ice concentration [0,1] + frac + fice + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + sea_ice_temperature + sea-ice surface temperature + K + tice + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + water_equivalent_accumulated_snow_depth + water equivalent accumulated snow depth + mm + weasd + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_skin_temperature + surface skin temperature + K + tskin + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + nonnegative_lwe_thickness_of_precipitation_amount_on_dynamics_timestep + nonnegative precipitation amount in one dynamics time step + m + tprcp + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + soil_temperature + soil temp + K + stc + real + (:,:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_upward_potential_latent_heat_flux + potential evaporation + W m-2 + ep + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_snow_thickness_water_equivalent + water equivalent snow depth + mm + snwdph + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_specific_humidity + sfc air saturation specific humidity + kg kg-1 + qsurf + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_snow_melt + snow melt during timestep + m + snowmt + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + upward_heat_flux_in_soil + soil heat flux + W m-2 + gflux + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_drag_wind_speed_for_momentum_in_air + surf mom exch coef time mean surf wind + m s-1 + cmm + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + surface_drag_mass_flux_for_heat_and_moisture_in_air + surf h m exch coef time surf wind density + kg m-2 s-1 + chh + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + kinematic_surface_upward_latent_heat_flux + evaporative latent heat flux + kg kg-1 m s-1 + evap + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic sensible heat flux + K m s-1 + hflx + real + (:) + inout + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_sfc_sice SCHEME_sfc_sice SUBROUTINE_sfc_sice_run + + + + + diff --git a/physics/sfc_sice_post.xml b/physics/sfc_sice_post.xml new file mode 100644 index 000000000..859b3c121 --- /dev/null +++ b/physics/sfc_sice_post.xml @@ -0,0 +1,95 @@ + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_sfc_sice_post SCHEME_sfc_sice_post SUBROUTINE_sfc_sice_post_run + + + sea_land_ice_mask + sea/land/ice mask (=0/1/2) + flag + islmsk + integer + (:) + in + F + MODULE_sfc_sice_post SCHEME_sfc_sice_post SUBROUTINE_sfc_sice_post_run + + + surface_skin_temperature + surface skin temperature + K + tsfc + real + (:) + in + F + MODULE_sfc_sice_post SCHEME_sfc_sice_post SUBROUTINE_sfc_sice_post_run + + + sea_ice_concentration + sea-ice concentration [0,1] + frac + fice + real + (:) + inout + F + MODULE_sfc_sice_post SCHEME_sfc_sice_post SUBROUTINE_sfc_sice_post_run + + + sea_ice_thickness + sea-ice thickness + m + hice + real + (:) + inout + F + MODULE_sfc_sice_post SCHEME_sfc_sice_post SUBROUTINE_sfc_sice_post_run + + + sea_ice_temperature + sea-ice surface temperature + K + tisfc + real + (:) + inout + F + MODULE_sfc_sice_post SCHEME_sfc_sice_post SUBROUTINE_sfc_sice_post_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_sfc_sice_post SCHEME_sfc_sice_post SUBROUTINE_sfc_sice_post_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_sfc_sice_post SCHEME_sfc_sice_post SUBROUTINE_sfc_sice_post_run + + + + + diff --git a/physics/shoc.xml b/physics/shoc.xml new file mode 100644 index 000000000..34d015867 --- /dev/null +++ b/physics/shoc.xml @@ -0,0 +1,645 @@ + + + + + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + horizontal_loop_extent + horizontal loop extent + count + nx + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + vertical_dimension + vertical layer dimension + count + nzm + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + flag_for_shoc + flag for SHOC + flag + do_shoc + logical + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + flag_for_shoc_after_convection + flag to execute SHOC after convection + flag + shocaftcnv + logical + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + flag_mg3_as_mg2 + flag for controlling prep for Morrison-Gettelman microphysics + flag + mg3_as_mg2 + logical + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + flag_for_microphysics_scheme + choice of microphysics scheme + flag + imp_physics + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + flag_for_gfdl_microphysics_scheme + choice of GFDL microphysics scheme + flag + imp_physics_gfdl + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + flag_for_zhao_carr_microphysics_scheme + choice of Zhao-Carr microphysics scheme + flag + imp_physics_zhao_carr + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + flag_for_zhao_carr_pdf_microphysics_scheme + choice of Zhao-Carr microphysics scheme with PDF clouds + flag + imp_physics_zhao_carr_pdf + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + flag_for_morrison_gettelman_microphysics_scheme + choice of Morrison-Gettelman rmicrophysics scheme + flag + imp_physics_mg + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + number_of_frozen_precipitation_species + number of frozen precipitation species + count + fprcp + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + cloud_phase_transition_threshold_temperature + threshold temperature below which cloud starts to freeze + K + tcr + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + cloud_phase_transition_denominator + denominator in cloud phase transition = 1/(tcr-tf) + K-1 + tcrf + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + specific_heat_of_dry_air_at_constant_pressure + specific heat of dry air at constant pressure + J kg-1 K-1 + con_cp + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + gravitational_acceleration + gravitational acceleration + m s-2 + con_g + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + latent_heat_of_vaporization_of_water_at_0C + latent heat of evaporation/sublimation + J kg-1 + con_hvap + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + latent_heat_of_fusion_of_water_at_0C + latent heat of fusion + J kg-1 + con_hfus + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + gas_constant_water_vapor + ideal gas constant for water vapor + J kg-1 K-1 + con_rv + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + gas_constant_dry_air + ideal gas constant for dry air + J kg-1 K-1 + con_rd + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + pi + ratio of a circle's circumference to its diameter + radians + con_pi + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + ratio_of_vapor_to_dry_air_gas_constants_minus_one + (rv/rd) - 1 (rv = ideal gas constant for water vapor) + none + con_fvirt + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + ice_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of ice water updated by physics + kg kg-1 + gq0_cloud_ice + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + rain_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of rain water updated by physics + kg kg-1 + gq0_rain + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + snow_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of snow water updated by physics + kg kg-1 + gq0_snow + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + graupel_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of graupel updated by physics + kg kg-1 + gq0_graupel + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + time_step_for_physics + time step for physics + s + dtp + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + mpi_rank + current MPI-rank + index + me + integer + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + air_pressure + mean layer pressure + Pa + prsl + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + geopotential_at_interface + geopotential at model layer interfaces + m2 s-2 + phii + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + geopotential + geopotential at model layer centers + m2 s-2 + phil + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + x_wind_updated_by_physics + zonal wind updated by physics + m s-1 + u + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + y_wind_updated_by_physics + meridional wind updated by physics + m s-1 + v + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + omega + layer mean vertical velocity + Pa s-1 + omega + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + critical_relative_humidity + critical relative humidity + frac + rhc + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + ice_supersaturation_threshold + ice supersaturation parameter for PDF clouds + none + supice + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + shoc_tke_dissipatation_pressure_threshold + pressure below which extra TKE diss. is applied in SHOC + Pa + pcrit + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + shoc_tke_dissipation_tunable_parameter + mult. tuning parameter for TKE diss. in SHOC + none + cefac + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + shoc_tke_dissipation_tunable_parameter_near_surface + mult. tuning parameter for TKE diss. at surface in SHOC + none + cesfac + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + shoc_implicit_TKE_integration_uncentering_term + uncentering term for TKE integration in SHOC + none + tkef1 + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + shoc_flag_for_optional_surface_TKE_dissipation + flag for alt. TKE diss. near surface in SHOC (>0 = ON) + none + dis_opt + real + + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + kinematic_surface_upward_sensible_heat_flux + kinematic surface upward sensible heat flux + K m s-1 + hflx + real + (:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + kinematic_surface_upward_latent_heat_flux + kinematic surface upward latent heat flux + kg kg-1 m s-1 + evap + real + (:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + prandtl_number + turbulent Prandtl number + none + prnum + real + (:,:) + in + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + flag_skip_macro + flag to skip cloud macrophysics in Morrison scheme + flag + skip_macro + logical + + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + ice_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of ice water in the convectively transported tracer array + kg kg-1 + clw_ice + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + cloud_condensed_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) in the convectively transported tracer array + kg kg-1 + clw_liquid + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + cloud_condensed_water_mixing_ratio_updated_by_physics + moist (dry+vapor, no condensates) mixing ratio of cloud condensed water updated by physics + kg kg-1 + gq0_cloud_liquid + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + cloud_droplet_number_concentration_updated_by_physics + number concentration of cloud droplets updated by physics + kg-1 + ncpl + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + ice_number_concentration_updated_by_physics + number concentration of ice updated by physics + kg-1 + ncpi + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + air_temperature_updated_by_physics + temperature updated by physics + K + gt0 + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity updated by physics + kg kg-1 + gq0_water_vapor + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + subgrid_scale_cloud_fraction_from_shoc + subgrid-scale cloud fraction from the SHOC scheme + frac + cld_sgs + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + turbulent_kinetic_energy_convective_transport_tracer + turbulent kinetic energy in the convectively transported tracer array + m2 s-2 + tke + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + atmosphere_heat_diffusivity_from_shoc + diffusivity for heat from the SHOC scheme + m2 s-1 + tkh + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + kinematic_buoyancy_flux_from_shoc + upward kinematic buoyancy flux from the SHOC scheme + K m s-1 + wthv_sec + real + (:,:) + inout + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_shoc SCHEME_shoc SUBROUTINE_shoc_run + + + diff --git a/physics/zhaocarr_gscond.xml b/physics/zhaocarr_gscond.xml new file mode 100644 index 000000000..22b925fc7 --- /dev/null +++ b/physics/zhaocarr_gscond.xml @@ -0,0 +1,260 @@ + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + vertical_dimension + vertical layer dimension + count + km + integer + + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + time_step_for_physics + physics time step + s + dt + real + + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + time_step_for_dynamics + dynamics time step + s + dtf + real + + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + air_pressure + layer mean air pressure + Pa + prsl + real + (:,:) + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + surface_air_pressure + surface pressure + Pa + ps + real + (:) + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity + kg kg-1 + q + real + (:,:) + inout + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + ice_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of ice water in the convectively transported tracer array + kg kg-1 + clw1 + real + (:,:) + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + cloud_condensed_water_mixing_ratio_convective_transport_tracer + moist (dry+vapor, no condensates) mixing ratio of cloud water (condensate) in the convectively transported tracer array + kg kg-1 + clw2 + real + (:,:) + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + cloud_condensed_water_mixing_ratio_updated_by_physics + moist cloud condensed water mixing ratio + kg kg-1 + cwm + real + (:,:) + out + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + air_temperature_updated_by_physics + layer mean air temperature + K + t + real + (:,:) + inout + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + air_temperature_two_time_steps_back + air temperature two time steps back + K + tp + real + (:,:) + inout + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + water_vapor_specific_humidity_two_time_steps_back + water vapor specific humidity two time steps back + kg kg-1 + qp + real + (:,:) + inout + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + surface_air_pressure_two_time_steps_back + surface air pressure two time steps back + Pa + psp + real + (:) + inout + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + air_temperature_at_previous_time_step + air temperature at previous time step + K + tp1 + real + (:,:) + inout + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + water_vapor_specific_humidity_at_previous_time_step + water vapor specific humidity at previous time step + kg kg-1 + qp1 + real + (:,:) + inout + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + surface_air_pressure_at_previous_time_step + surface air surface pressure at previous time step + Pa + psp1 + real + (:) + inout + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + critical_relative_humidity + critical relative humidity + frac + u + real + (:,:) + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + flag_print + flag for printing diagnostics to output + flag + lprnt + logical + + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + horizontal_index_of_printed_column + horizontal index of printed column + index + ipr + integer + + in + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_zhaocarr_gscond SCHEME_zhaocarr_gscond SUBROUTINE_zhaocarr_gscond_run + + + + diff --git a/physics/zhaocarr_precpd.xml b/physics/zhaocarr_precpd.xml new file mode 100644 index 000000000..925b7da4f --- /dev/null +++ b/physics/zhaocarr_precpd.xml @@ -0,0 +1,249 @@ + + + + + + + horizontal_loop_extent + horizontal loop extent + count + im + integer + + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + horizontal_dimension + horizontal dimension + count + ix + integer + + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + vertical_dimension + vertical layer dimension + count + km + integer + + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + time_step_for_physics + physics time step + s + dt + real + + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + air_pressure_difference_between_midlayers + pressure level thickness + Pa + del + real + (:,:) + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + air_pressure + layer mean pressure + Pa + prsl + real + (:,:) + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + water_vapor_specific_humidity_updated_by_physics + water vapor specific humidity + kg kg-1 + q + real + (:,:) + inout + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + cloud_condensed_water_mixing_ratio_updated_by_physics + moist cloud condensed water mixing ratio + kg kg-1 + cwm + real + (:,:) + inout + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + air_temperature_updated_by_physics + layer mean air temperature + K + t + real + (:,:) + inout + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + lwe_thickness_of_explicit_precipitation_amount + explicit precipitation amount on physics timestep + m + rn + real + (:) + out + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + ratio_of_snowfall_to_rainfall + ratio of snowfall to large-scale rainfall + frac + sr + real + (:) + out + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + tendency_of_rain_water_mixing_ratio_due_to_microphysics + tendency of rain water mixing ratio due to microphysics + kg kg-1 s-1 + rainp + real + (:,:) + out + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + critical_relative_humidity + critical relative humidity + frac + u00k + real + (:,:) + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + coefficient_from_cloud_ice_to_snow + conversion coefficient from cloud ice to snow + none + psautco + real + (:) + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + coefficient_from_cloud_water_to_rain + conversion coefficient from cloud water to rain + none + prautco + real + (:) + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + coefficient_for_evaporation_of_rainfall + coefficient for evaporation of rainfall + none + evpco + real + + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + cloud_condensed_water_conversion_threshold + conversion coefficient from cloud liquid and ice to precipitation + none + wminco + real + (:) + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + grid_size_related_coefficient_used_in_scale-sensitive_schemes + grid size related coefficient used in scale-sensitive schemes + none + wk1 + real + (:) + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + flag_print + flag for printing diagnostics to output + flag + lprnt + logical + + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + horizontal_index_of_printed_column + horizontal index of printed column + index + jpr + integer + + in + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + ccpp_error_message + error message for error handling in CCPP + none + errmsg + character + + out + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + + ccpp_error_flag + error flag for error handling in CCPP + flag + errflg + integer + + out + F + MODULE_zhaocarr_precpd SCHEME_zhaocarr_precpd SUBROUTINE_zhaocarr_precpd_run + + +