CCPP SciDoc for UFS-SRW v3.0.0  SRW v3.0.0
Common Community Physics Package Developed at DTC
 
Loading...
Searching...
No Matches

◆ gfs_phys_time_vary_timestep_init()

subroutine, public gfs_phys_time_vary::gfs_phys_time_vary_timestep_init ( integer, intent(in)  me,
integer, intent(in)  master,
integer, intent(in)  cnx,
integer, intent(in)  cny,
integer, intent(in)  isc,
integer, intent(in)  jsc,
integer, intent(in)  nrcm,
integer, intent(in)  im,
integer, intent(in)  levs,
integer, intent(in)  kdt,
integer, dimension(:), intent(in)  idate,
integer, intent(in)  nsswr,
real(kind_phys), intent(in)  fhswr,
logical, intent(in)  lsswr,
real(kind_phys), intent(in)  fhour,
integer, intent(in)  imfdeepcnv,
logical, intent(in)  cal_pre,
logical, intent(in)  random_clds,
integer, intent(in)  nscyc,
integer, intent(in)  ntoz,
logical, intent(in)  h2o_phys,
logical, intent(in)  iaerclm,
integer, intent(in)  iccn,
real(kind_phys), intent(out)  clstp,
integer, dimension(:), intent(in), optional  jindx1_o3,
integer, dimension(:), intent(in), optional  jindx2_o3,
real(kind_phys), dimension(:), intent(in), optional  ddy_o3,
real(kind_phys), dimension(:,:,:), intent(inout)  ozpl,
integer, dimension(:), intent(in), optional  jindx1_h,
integer, dimension(:), intent(in), optional  jindx2_h,
real(kind_phys), dimension(:), intent(in), optional  ddy_h,
real(kind_phys), dimension(:,:,:), intent(inout)  h2opl,
integer, intent(in)  iflip,
integer, dimension(:), intent(in), optional  jindx1_aer,
integer, dimension(:), intent(in), optional  jindx2_aer,
real(kind_phys), dimension(:), intent(in), optional  ddy_aer,
integer, dimension(:), intent(in), optional  iindx1_aer,
integer, dimension(:), intent(in), optional  iindx2_aer,
real(kind_phys), dimension(:), intent(in), optional  ddx_aer,
real(kind_phys), dimension(:,:,:), intent(inout)  aer_nm,
integer, dimension(:), intent(in), optional  jindx1_ci,
integer, dimension(:), intent(in), optional  jindx2_ci,
real(kind_phys), dimension(:), intent(in), optional  ddy_ci,
integer, dimension(:), intent(in), optional  iindx1_ci,
integer, dimension(:), intent(in), optional  iindx2_ci,
real(kind_phys), dimension(:), intent(in), optional  ddx_ci,
real(kind_phys), dimension(:,:), intent(inout)  in_nm,
real(kind_phys), dimension(:,:), intent(inout)  ccn_nm,
character(len=*), intent(in)  fn_nml,
integer, dimension(:), intent(in)  imap,
integer, dimension(:), intent(in)  jmap,
real(kind_phys), dimension(:,:), intent(in)  prsl,
integer, intent(in)  seed0,
real(kind_phys), dimension(:,:), intent(inout)  rann,
integer, intent(in)  nthrds,
integer, intent(in)  nx,
integer, intent(in)  ny,
integer, intent(in)  nsst,
integer, intent(in)  tile_num,
integer, intent(in)  nlunit,
integer, intent(in)  lsoil,
integer, intent(in)  lsoil_lsm,
integer, intent(in)  kice,
integer, intent(in)  ialb,
integer, intent(in)  isot,
integer, intent(in)  ivegsrc,
character(len=*), dimension(:), intent(in)  input_nml_file,
logical, intent(in)  use_ufo,
logical, intent(in)  nst_anl,
logical, intent(in)  frac_grid,
real(kind_phys), intent(in)  fhcyc,
real(kind_phys), intent(in)  phour,
real(kind_phys), dimension(:), intent(in)  lakefrac,
real(kind_phys), intent(in)  min_seaice,
real(kind_phys), intent(in)  min_lakeice,
real(kind_phys), dimension(:,:), intent(inout)  smc,
real(kind_phys), dimension(:,:), intent(inout)  slc,
real(kind_phys), dimension(:,:), intent(inout)  stc,
real(kind_phys), dimension(:,:), intent(inout), optional  smois,
real(kind_phys), dimension(:,:), intent(inout), optional  sh2o,
real(kind_phys), dimension(:,:), intent(inout), optional  tslb,
real(kind_phys), dimension(:,:), intent(inout)  tiice,
real(kind_phys), dimension(:), intent(inout)  tg3,
real(kind_phys), dimension(:), intent(inout), optional  tref,
real(kind_phys), dimension(:), intent(inout)  tsfc,
real(kind_phys), dimension(:), intent(inout)  tsfco,
real(kind_phys), dimension(:), intent(inout)  tisfc,
real(kind_phys), dimension(:), intent(inout)  hice,
real(kind_phys), dimension(:), intent(inout)  fice,
real(kind_phys), dimension(:), intent(inout)  facsf,
real(kind_phys), dimension(:), intent(inout)  facwf,
real(kind_phys), dimension(:), intent(inout)  alvsf,
real(kind_phys), dimension(:), intent(inout)  alvwf,
real(kind_phys), dimension(:), intent(inout)  alnsf,
real(kind_phys), dimension(:), intent(inout)  alnwf,
real(kind_phys), dimension(:), intent(inout)  zorli,
real(kind_phys), dimension(:), intent(inout)  zorll,
real(kind_phys), dimension(:), intent(inout)  zorlo,
real(kind_phys), dimension(:), intent(inout)  weasd,
integer, dimension(:), intent(inout)  slope,
real(kind_phys), dimension(:), intent(inout)  snoalb,
real(kind_phys), dimension(:), intent(inout)  canopy,
real(kind_phys), dimension(:), intent(inout)  vfrac,
integer, dimension(:), intent(inout)  vtype,
integer, dimension(:), intent(inout)  stype,
integer, dimension(:), intent(inout)  scolor,
real(kind_phys), dimension(:), intent(inout)  shdmin,
real(kind_phys), dimension(:), intent(inout)  shdmax,
real(kind_phys), dimension(:), intent(inout)  snowd,
real(kind_phys), dimension(:), intent(inout)  cv,
real(kind_phys), dimension(:), intent(inout)  cvb,
real(kind_phys), dimension(:), intent(inout)  cvt,
real(kind_phys), dimension(:), intent(inout)  oro,
real(kind_phys), dimension(:), intent(inout)  oro_uf,
real(kind_phys), dimension(:), intent(in)  xlat_d,
real(kind_phys), dimension(:), intent(in)  xlon_d,
real(kind_phys), dimension(:), intent(inout)  slmsk,
real(kind_phys), dimension(:), intent(in)  landfrac,
type(ty_ozphys), intent(in)  ozphys,
type(ty_h2ophys), intent(in)  h2ophys,
logical, intent(in)  do_ugwp_v1,
integer, dimension(:), intent(in), optional  jindx1_tau,
integer, dimension(:), intent(in), optional  jindx2_tau,
real(kind_phys), dimension(:), intent(in), optional  ddy_j1tau,
real(kind_phys), dimension(:), intent(in), optional  ddy_j2tau,
real(kind_phys), dimension(:), intent(inout)  tau_amf,
logical, intent(in)  is_initialized,
character(len=*), intent(out)  errmsg,
integer, intent(out)  errflg 
)

Argument Table

GFS_phys_time_vary_timestep_init argument table
local_namestandard_namelong_nameunitstypedimensionskindintent
mempi_rankcurrent MPI-rankindexinteger()in
mastermpi_rootmaster MPI-rankindexinteger()in
cnxnumber_of_x_points_for_current_cubed_sphere_tilenumber of points in x direction for this cubed sphere facecountinteger()in
cnynumber_of_y_points_for_current_cubed_sphere_tilenumber of points in y direction for this cubed sphere facecountinteger()in
iscstarting_x_index_for_this_mpi_rankstarting index in the x direction for this MPI rankcountinteger()in
jscstarting_y_index_for_this_mpi_rankstarting index in the y direction for this MPI rankcountinteger()in
nrcmnumber_of_random_numberssecond dimension of random number stream for RAScountinteger()in
imhorizontal_dimensionhorizontal dimensioncountinteger()in
levsvertical_layer_dimensionnumber of vertical levelscountinteger()in
kdtindex_of_timestepcurrent forecast iterationindexinteger()in
idatedate_and_time_at_model_initialization_in_united_states_orderinitial date with different size and orderingnoneinteger(ccpp_constant_one:4)in
nsswrnumber_of_timesteps_between_shortwave_radiation_callsnumber of timesteps between shortwave radiation callsinteger()in
fhswrperiod_of_shortwave_radiation_callsfrequency for shortwave radiationsreal()kind_physin
lsswrflag_for_calling_shortwave_radiationlogical flags for sw radiation callsflaglogical()in
fhourforecast_timecurrent forecast timehreal()kind_physin
imfdeepcnvcontrol_for_deep_convection_schemeflag for mass-flux deep convection schemeflaginteger()in
cal_preflag_for_dominant_precipitation_type_partitionflag controls precip type algorithmflaglogical()in
random_cldsflag_for_random_clouds_for_rasflag for using random clouds with the RAS schemeflaglogical()in
ntozindex_of_ozone_mixing_ratio_in_tracer_concentration_arraytracer index for ozone mixing ratioindexinteger()in
h2o_physflag_for_stratospheric_water_vapor_physicsflag for stratospheric water vapor physicsflaglogical()in
iaerclmflag_for_aerosol_input_mg_radiationflag for using aerosols in Morrison-Gettelman MP_radiationflaglogical()in
iccncontrol_for_ice_cloud_condensation_nuclei_forcingflag for IN and CCN forcing for morrison gettelman microphysicsnoneinteger()in
clstpcontrol_for_convective_cloud_diagnosticsindex used by cnvc90 (for convective clouds)nonereal()kind_physout
jindx1_o3lower_latitude_index_of_ozone_forcing_for_interpolationinterpolation low index for ozoneindexinteger(ccpp_constant_one:horizontal_dimension)in
jindx2_o3upper_latitude_index_of_ozone_forcing_for_interpolationinterpolation high index for ozoneindexinteger(ccpp_constant_one:horizontal_dimension)in
ddy_o3latitude_interpolation_weight_for_ozone_forcinginterpolation high index for ozonenonereal(ccpp_constant_one:horizontal_dimension)kind_physin
ozplozone_forcingozone forcing datamixedreal(ccpp_constant_one:horizontal_dimension, ccpp_constant_one:vertical_dimension_of_ozone_forcing_data, ccpp_constant_one:number_of_coefficients_in_ozone_data)kind_physinout
jindx1_hlower_latitude_index_of_stratospheric_water_vapor_forcing_for_interpolationinterpolation low index for stratospheric water vaporindexinteger(ccpp_constant_one:horizontal_dimension)in
jindx2_hupper_latitude_index_of_stratospheric_water_vapor_forcing_for_interpolationinterpolation high index for stratospheric water vaporindexinteger(ccpp_constant_one:horizontal_dimension)in
ddy_hlatitude_interpolation_weight_for_stratospheric_water_vapor_forcinginterpolation high index for stratospheric water vapornonereal(ccpp_constant_one:horizontal_dimension)kind_physin
h2oplstratospheric_water_vapor_forcingwater forcing datamixedreal(ccpp_constant_one:horizontal_dimension, ccpp_constant_one:vertical_dimension_of_h2o_forcing_data, ccpp_constant_one:number_of_coefficients_in_h2o_forcing_data)kind_physinout
iflipcontrol_for_vertical_index_directioniflip - is not the same as flipvflaginteger()in
jindx1_aerlower_latitude_index_of_aerosol_forcing_for_interpolationinterpolation low index for prescribed aerosols in the y directionindexinteger(ccpp_constant_one:horizontal_dimension)in
jindx2_aerupper_latitude_index_of_aerosol_forcing_for_interpolationinterpolation high index for prescribed aerosols in the y directionindexinteger(ccpp_constant_one:horizontal_dimension)in
ddy_aerlatitude_interpolation_weight_for_aerosol_forcinginterpolation high index for prescribed aerosols in the y directionnonereal(ccpp_constant_one:horizontal_dimension)kind_physin
iindx1_aerlower_longitude_index_of_aerosol_forcing_for_interpolationinterpolation low index for prescribed aerosols in the x directionindexinteger(ccpp_constant_one:horizontal_dimension)in
iindx2_aerupper_longitude_index_of_aerosol_forcing_for_interpolationinterpolation high index for prescribed aerosols in the x directionindexinteger(ccpp_constant_one:horizontal_dimension)in
ddx_aerlongitude_interpolation_weight_for_aerosol_forcinginterpolation high index for prescribed aerosols in the x directionnonereal(ccpp_constant_one:horizontal_dimension)kind_physin
aer_nmmass_mixing_ratio_of_aerosol_from_gocart_or_merra2mass mixing ratio of aerosol from gocart or merra2kg kg-1real(ccpp_constant_one:horizontal_dimension, ccpp_constant_one:vertical_layer_dimension, ccpp_constant_one:number_of_aerosol_tracers_MG)kind_physinout
jindx1_cilower_latitude_index_of_cloud_nuclei_forcing_for_interpolationinterpolation low index for ice and cloud condensation nuclei in the y directionindexinteger(ccpp_constant_one:horizontal_dimension)in
jindx2_ciupper_latitude_index_of_cloud_nuclei_forcing_for_interpolationinterpolation high index for ice and cloud condensation nuclei in the y directionindexinteger(ccpp_constant_one:horizontal_dimension)in
ddy_cilatitude_interpolation_weight_for_cloud_nuclei_forcinginterpolation high index for ice and cloud condensation nuclei in the y directionnonereal(ccpp_constant_one:horizontal_dimension)kind_physin
iindx1_cilower_longitude_index_of_cloud_nuclei_forcing_for_interpolationinterpolation low index for ice and cloud condensation nuclei in the x directionindexinteger(ccpp_constant_one:horizontal_dimension)in
iindx2_ciupper_longitude_index_of_cloud_nuclei_forcing_for_interpolationinterpolation high index for ice and cloud condensation nuclei in the x directionindexinteger(ccpp_constant_one:horizontal_dimension)in
ddx_cilongitude_interpolation_weight_for_cloud_nuclei_forcinginterpolation high index for ice and cloud condensation nuclei in the x directionnonereal(ccpp_constant_one:horizontal_dimension)kind_physin
in_nmice_nucleation_number_from_climatologyice nucleation number in MG MPkg-1real(ccpp_constant_one:horizontal_dimension, ccpp_constant_one:vertical_layer_dimension)kind_physinout
ccn_nmtendency_of_activated_cloud_condensation_nuclei_from_climatologytendency of ccn activated numberkg-1 s-1real(ccpp_constant_one:horizontal_dimension, ccpp_constant_one:vertical_layer_dimension)kind_physinout
imapmap_of_block_column_number_to_global_i_indexmap of local index ix to global index i for this blocknoneinteger(ccpp_constant_one:horizontal_dimension)in
jmapmap_of_block_column_number_to_global_j_indexmap of local index ix to global index j for this blocknoneinteger(ccpp_constant_one:horizontal_dimension)in
prslair_pressuremean layer pressurePareal(ccpp_constant_one:horizontal_dimension, ccpp_constant_one:vertical_layer_dimension)kind_physin
seed0seed_random_numbers_rasrandom number seed for the RAS schemenoneinteger()in
rannrandom_numberrandom number array (0-1)nonereal(ccpp_constant_one:horizontal_dimension, ccpp_constant_one:number_of_random_numbers)kind_physinout
do_ugwp_v1flag_for_ugwp_version_1flag to activate ver 1 CIRES UGWPflaglogical()in
jindx1_taulower_latitude_index_of_absolute_momentum_flux_due_to_nonorographic_gravity_wave_drag_for_interpolationindex1 for weight1 for tau NGWsnoneinteger(ccpp_constant_one:horizontal_dimension)in
jindx2_tauupper_latitude_index_of_absolute_momentum_flux_due_to_nonorographic_gravity_wave_drag_for_interpolationindex2 for weight2 for tau NGWsnoneinteger(ccpp_constant_one:horizontal_dimension)in
ddy_j1taulatitude_interpolation_weight_complement_for_absolute_momentum_flux_due_to_nonorographic_gravity_wave_draginterpolation weight1 for tau NGWsnonereal(ccpp_constant_one:horizontal_dimension)kind_physin
ddy_j2taulatitude_interpolation_weight_for_absolute_momentum_flux_due_to_nonorographic_gravity_wave_draginterpolation weight2 for tau NGWsnonereal(ccpp_constant_one:horizontal_dimension)kind_physin
tau_amfabsolute_momentum_flux_due_to_nonorographic_gravity_wave_dragngw_absolute_momentum_fluxmixedreal(ccpp_constant_one:horizontal_dimension)kind_physinout
ozphysdataset_for_ozone_physicsdataset for NRL ozone physicsmixedty_ozphys()ty_ozphysin
h2ophysdataset_for_h2o_photochemistry_physicsdataset for NRL h2o photochemistry physicsmixedty_h2ophys()ty_h2ophysin
nthrdsnumber_of_openmp_threadsnumber of OpenMP threads available for physics schemescountinteger()in
errmsgccpp_error_messageerror message for error handling in CCPPnonecharacter()len=*out
errflgccpp_error_codeerror code for error handling in CCPP1integer()out

GFS_phys_time_vary_timestep_init General Algorithm

  • Compute temporal interpolation indices for updating gas concentrations.
  • Update ozone concentration.
  • Update stratospheric h2o concentration.
  • Call ciinterpol() to make IN and CCN data interpolation
  • Call cires_indx_ugwp to read monthly-mean GW-tau diagnosed from FV3GFS-runs that resolve GW-activ
  • Call aerinterpol() to make aerosol interpolation
  • Call gcycle() to repopulate specific time-varying surface properties for AMIP/forecast runs

References gcycle_mod::gcycle().

Here is the call graph for this function: