[ccpp-table-properties] name = GFS_rrtmgp_pre type = scheme dependencies = funcphys.f90,iounitdef.f,machine.F,module_bfmicrophysics.f,physcons.F90,radcons.f90,radiation_aerosols.f dependencies = radiation_astronomy.f,radiation_gases.f,radiation_tools.F90,rrtmg_lw_cloud_optics.F90 ######################################################################## [ccpp-arg-table] name = GFS_rrtmgp_pre_init type = scheme [nGases] standard_name = number_of_active_gases_used_by_RRTMGP long_name = number of gases available used by RRTMGP (Model%nGases) units = count dimensions = () type = integer intent = in [active_gases] standard_name = active_gases_used_by_RRTMGP long_name = active gases used by RRTMGP units = none dimensions = () type = character kind = len=128 intent = in [active_gases_array] standard_name = list_of_active_gases_used_by_RRTMGP long_name = list of active gases used by RRTMGP units = none dimensions = (number_of_active_gases_used_by_RRTMGP) type = character kind = len=128 intent = out [errmsg] standard_name = ccpp_error_message long_name = error message for error handling in CCPP units = none dimensions = () type = character kind = len=* intent = out [errflg] standard_name = ccpp_error_code long_name = error code for error handling in CCPP units = 1 dimensions = () type = integer intent = out ######################################################################## [ccpp-arg-table] name = GFS_rrtmgp_pre_run type = scheme [me] standard_name = mpi_rank long_name = current MPI-rank units = index dimensions = () type = integer intent = in [ncol] standard_name = horizontal_loop_extent long_name = horizontal dimension units = count dimensions = () type = integer intent = in [nLev] standard_name = vertical_layer_dimension long_name = number of vertical levels units = count dimensions = () type = integer intent = in [doSWrad] standard_name = flag_for_calling_shortwave_radiation long_name = logical flags for sw radiation calls units = flag dimensions = () type = logical intent = in [doLWrad] standard_name = flag_for_calling_longwave_radiation long_name = logical flags for lw radiation calls units = flag dimensions = () type = logical intent = in [i_o3] standard_name = index_of_ozone_mixing_ratio_in_tracer_concentration_array long_name = tracer index for ozone mixing ratio units = index dimensions = () type = integer intent = in [fhswr] standard_name = period_of_shortwave_radiation_calls long_name = frequency for shortwave radiation units = s dimensions = () type = real kind = kind_phys intent = in [fhlwr] standard_name = period_of_longwave_radiation_calls long_name = frequency for longwave radiation units = s dimensions = () type = real kind = kind_phys intent = in [xlat] standard_name = latitude long_name = latitude units = radian dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [xlon] standard_name = longitude long_name = longitude units = radian dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [coslat] standard_name = cosine_of_latitude long_name = cosine of latitude units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [sinlat] standard_name = sine_of_latitude long_name = sine of latitude units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [solhr] standard_name = forecast_utc_hour long_name = time in hours after 00z at the current timestep units = h dimensions = () type = real kind = kind_phys intent = in [prsi] standard_name = air_pressure_at_interface long_name = air pressure at model layer interfaces units = Pa dimensions = (horizontal_loop_extent,vertical_interface_dimension) type = real kind = kind_phys intent = in [prslk] standard_name = dimensionless_exner_function long_name = dimensionless Exner function at model layer centers units = none dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [prsl] standard_name = air_pressure long_name = mean layer pressure units = Pa dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [tgrs] standard_name = air_temperature long_name = model layer mean temperature units = K dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [qgrs] standard_name = tracer_concentration long_name = model layer mean tracer concentration units = kg kg-1 dimensions = (horizontal_loop_extent,vertical_layer_dimension,number_of_tracers) type = real kind = kind_phys intent = in [tsfc] standard_name = surface_skin_temperature long_name = surface skin temperature units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [con_g] standard_name = gravitational_acceleration long_name = gravitational acceleration units = m s-2 dimensions = () type = real kind = kind_phys intent = in [con_rd] standard_name = gas_constant_of_dry_air long_name = ideal gas constant for dry air units = J kg-1 K-1 dimensions = () type = real kind = kind_phys intent = in [con_eps] standard_name = ratio_of_dry_air_to_water_vapor_gas_constants long_name = rd/rv units = none dimensions = () type = real kind = kind_phys intent = in [con_epsm1] standard_name = ratio_of_dry_air_to_water_vapor_gas_constants_minus_one long_name = (rd/rv) - 1 units = none dimensions = () type = real kind = kind_phys intent = in [con_fvirt] standard_name = ratio_of_vapor_to_dry_air_gas_constants_minus_one long_name = (rv/rd) - 1 (rv = ideal gas constant for water vapor) units = none dimensions = () type = real kind = kind_phys intent = in [con_epsqs] standard_name = minimum_value_of_saturation_mixing_ratio long_name = floor value for saturation mixing ratio units = kg kg-1 dimensions = () type = real kind = kind_phys intent = in [con_pi] standard_name = pi long_name = ratio of a circle's circumference to its diameter units = none dimensions = () type = real kind = kind_phys intent = in [ico2] standard_name = control_for_co2 long_name = prescribed global mean value (old opernl) units = flag dimensions = () type = integer intent = in [raddt] standard_name = time_step_for_radiation long_name = radiation time step units = s dimensions = () type = real kind = kind_phys intent = inout [p_lay] standard_name = air_pressure_at_layer_for_RRTMGP long_name = air pressure at vertical layer for radiation calculation units = Pa dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [p_lev] standard_name = air_pressure_at_interface_for_RRTMGP long_name = air pressure at vertical interface for radiation calculation units = Pa dimensions = (horizontal_loop_extent,vertical_interface_dimension) type = real kind = kind_phys intent = inout [t_lay] standard_name = air_temperature_at_layer_for_RRTMGP long_name = air temperature at vertical layer for radiation calculation units = K dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [t_lev] standard_name = air_temperature_at_interface_for_RRTMGP long_name = air temperature at vertical interface for radiation calculation units = K dimensions = (horizontal_loop_extent,vertical_interface_dimension) type = real kind = kind_phys intent = inout [deltaZ] standard_name = layer_thickness long_name = layer_thickness units = m dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [deltaZc] standard_name = layer_thickness_from_layer_center long_name = layer_thickness units = m dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [deltaP] standard_name = layer_thickness_in_Pa long_name = layer_thickness_in_Pa units = Pa dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [top_at_1] standard_name = flag_for_vertical_ordering_in_radiation long_name = flag for vertical ordering in radiation units = flag dimensions = () type = logical intent = inout [iSFC] standard_name = vertical_index_for_surface_in_RRTMGP long_name = index for surface layer in RRTMGP units = flag dimensions = () type = integer intent = inout [iTOA] standard_name = vertical_index_for_TOA_in_RRTMGP long_name = index for TOA layer in RRTMGP units = flag dimensions = () type = integer intent = inout [tsfc_radtime] standard_name = surface_skin_temperature_on_radiation_timestep long_name = surface skin temperature on radiation timestep units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [tsfg] standard_name = surface_ground_temperature_for_radiation long_name = surface ground temperature for radiation units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [tsfa] standard_name = surface_air_temperature_for_radiation long_name = lowest model layer air temperature for radiation units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [tv_lay] standard_name = virtual_temperature long_name = layer virtual temperature units = K dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [relhum] standard_name = relative_humidity long_name = layer relative humidity units = frac dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [qs_lay] standard_name = saturation_vapor_pressure long_name = saturation vapor pressure units = Pa dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [q_lay] standard_name = water_vapor_mixing_ratio long_name = water vaport mixing ratio units = kg kg-1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [vmr_o2] standard_name = volume_mixing_ratio_for_o2 long_name = molar mixing ratio of o2 in with respect to dry air units = 1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [vmr_h2o] standard_name = volume_mixing_ratio_for_h2o long_name = molar mixing ratio of h2o in with respect to dry air units = 1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [vmr_o3] standard_name = volume_mixing_ratio_for_o3 long_name = molar mixing ratio of o3 in with respect to dry air units = 1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [vmr_ch4] standard_name = volume_mixing_ratio_for_ch4 long_name = molar mixing ratio of ch4 in with respect to dry air units = 1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [vmr_n2o] standard_name = volume_mixing_ratio_for_n2o long_name = molar mixing ratio of n2o in with respect to dry air units = 1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [vmr_co2] standard_name = volume_mixing_ratio_for_co2 long_name = molar mixing ratio of co2 in with respect to dry air units = 1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [active_gases_array] standard_name = list_of_active_gases_used_by_RRTMGP long_name = list of active gases used by RRTMGP units = none dimensions = (number_of_active_gases_used_by_RRTMGP) type = character kind = len=* intent = in [coszdg] standard_name = cosine_of_solar_zenith_angle_on_radiation_timestep long_name = daytime mean cosz over rad call period units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [coszen] standard_name = cosine_of_solar_zenith_angle_for_daytime_points_on_radiation_timestep long_name = mean cos of zenith angle over rad call period units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [semis] standard_name = surface_longwave_emissivity long_name = surface lw emissivity in fraction units = frac dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [sfc_emiss_byband] standard_name = surface_emissivity_in_each_RRTMGP_LW_band long_name = surface emissivity in each RRTMGP LW band units = none dimensions = (number_of_longwave_bands,horizontal_loop_extent) type = real kind = kind_phys intent = inout [nday] standard_name = daytime_points_dimension long_name = daytime points dimension units = count dimensions = () type = integer intent = inout [idxday] standard_name = daytime_points long_name = daytime points units = index dimensions = (horizontal_loop_extent) type = integer intent = inout [errmsg] standard_name = ccpp_error_message long_name = error message for error handling in CCPP units = none dimensions = () type = character kind = len=* intent = out [errflg] standard_name = ccpp_error_code long_name = error code for error handling in CCPP units = 1 dimensions = () type = integer intent = out