[ccpp-table-properties] name = drag_suite type = scheme dependencies = ######################################################################## [ccpp-arg-table] name = drag_suite_init type = scheme [gwd_opt] standard_name = control_for_drag_suite_gravity_wave_drag long_name = flag to choose gwd scheme units = flag dimensions = () type = integer intent = in [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 = drag_suite_run type = scheme [im] standard_name = horizontal_loop_extent long_name = horizontal loop extent units = count dimensions = () type = integer intent = in [km] standard_name = vertical_layer_dimension long_name = number of vertical layers units = count dimensions = () type = integer intent = in [dvdt] standard_name = process_split_cumulative_tendency_of_y_wind long_name = meridional wind tendency due to model physics units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dudt] standard_name = process_split_cumulative_tendency_of_x_wind long_name = zonal wind tendency due to model physics units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dtdt] standard_name = process_split_cumulative_tendency_of_air_temperature long_name = air temperature tendency due to model physics units = K s-1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [u1] standard_name = x_wind long_name = zonal wind units = m s-1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [v1] standard_name = y_wind long_name = meridional wind units = m s-1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [t1] standard_name = air_temperature long_name = mid-layer temperature units = K dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [q1] standard_name = specific_humidity long_name = mid-layer specific humidity of water vapor units = kg kg-1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [kpbl] standard_name = vertical_index_at_top_of_atmosphere_boundary_layer long_name = vertical index at top atmospheric boundary layer units = index dimensions = (horizontal_loop_extent) type = integer intent = in [prsi] standard_name = air_pressure_at_interface long_name = interface pressure units = Pa dimensions = (horizontal_loop_extent,vertical_interface_dimension) type = real kind = kind_phys intent = in [del] standard_name = air_pressure_difference_between_midlayers long_name = difference between mid-layer pressures units = Pa dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [prsl] standard_name = air_pressure long_name = mid-layer pressure units = Pa dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [prslk] standard_name = dimensionless_exner_function long_name = mid-layer Exner function units = none dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [phii] standard_name = geopotential_at_interface long_name = interface geopotential units = m2 s-2 dimensions = (horizontal_loop_extent,vertical_interface_dimension) type = real kind = kind_phys intent = in [phil] standard_name = geopotential long_name = mid-layer geopotential units = m2 s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [deltim] standard_name = timestep_for_physics long_name = physics time step units = s dimensions = () type = real kind = kind_phys intent = in [kdt] standard_name = index_of_timestep long_name = current time step index units = index dimensions = () type = integer intent = in [var] standard_name = standard_deviation_of_subgrid_orography long_name = standard deviation of subgrid height_above_mean_sea_level units = m dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [oc1] standard_name = convexity_of_subgrid_orography long_name = convexity of subgrid height_above_mean_sea_level units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [oa4] standard_name = asymmetry_of_subgrid_orography long_name = asymmetry of subgrid height_above_mean_sea_level units = none dimensions = (horizontal_loop_extent,4) type = real kind = kind_phys intent = in [ol4] standard_name = fraction_of_grid_box_with_subgrid_orography_higher_than_critical_height long_name = horizontal fraction of grid box covered by subgrid height_above_mean_sea_level higher than critical height units = frac dimensions = (horizontal_loop_extent,4) type = real kind = kind_phys intent = in [varss] standard_name = standard_deviation_of_subgrid_orography_small_scale long_name = standard deviation of subgrid height_above_mean_sea_level small scale units = m dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [oc1ss] standard_name = convexity_of_subgrid_orography_small_scale long_name = convexity of subgrid height_above_mean_sea_level small scale units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [oa4ss] standard_name = asymmetry_of_subgrid_orography_small_scale long_name = asymmetry of subgrid height_above_mean_sea_level small scale units = none dimensions = (horizontal_loop_extent,4) type = real kind = kind_phys intent = in [ol4ss] standard_name = fraction_of_grid_box_with_subgrid_orography_higher_than_critical_height_small_scale long_name = horizontal fraction of grid box covered by subgrid height_above_mean_sea_level higher than critical height small scale units = frac dimensions = (horizontal_loop_extent,4) type = real kind = kind_phys intent = in [theta] standard_name = angle_from_east_of_maximum_subgrid_orographic_variations long_name = angle with respect to east of maximum subgrid orographic variations units = degree dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [sigma] standard_name = slope_of_subgrid_orography long_name = slope of subgrid height_above_mean_sea_level units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [gamma] standard_name = anisotropy_of_subgrid_orography long_name = anisotropy of subgrid height_above_mean_sea_level units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [elvmax] standard_name = maximum_subgrid_orography long_name = maximum of subgrid height_above_mean_sea_level units = m dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [dtaux2d_ms] standard_name = tendency_of_x_wind_due_to_mesoscale_orographic_gravity_wave_drag long_name = x wind tendency from mesoscale gwd units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dtauy2d_ms] standard_name = tendency_of_y_wind_due_to_mesoscale_orographic_gravity_wave_drag long_name = y wind tendency from mesoscale gwd units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dtaux2d_bl] standard_name = tendency_of_x_wind_due_to_blocking_drag long_name = x wind tendency from blocking drag units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dtauy2d_bl] standard_name = tendency_of_y_wind_due_to_blocking_drag long_name = y wind tendency from blocking drag units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dtaux2d_ss] standard_name = tendency_of_x_wind_due_to_small_scale_gravity_wave_drag long_name = x wind tendency from small scale gwd units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dtauy2d_ss] standard_name = tendency_of_y_wind_due_to_small_scale_gravity_wave_drag long_name = y wind tendency from small scale gwd units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dtaux2d_fd] standard_name = tendency_of_x_wind_due_to_form_drag long_name = x wind tendency from form drag units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dtauy2d_fd] standard_name = tendency_of_y_wind_due_to_form_drag long_name = y wind tendency from form drag units = m s-2 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = inout [dusfc] standard_name = instantaneous_x_stress_due_to_gravity_wave_drag long_name = zonal surface stress due to orographic gravity wave drag units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dvsfc] standard_name = instantaneous_y_stress_due_to_gravity_wave_drag long_name = meridional surface stress due to orographic gravity wave drag units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dusfc_ms] standard_name = vertically_integrated_x_momentum_flux_due_to_mesoscale_orographic_gravity_wave_drag long_name = integrated x momentum flux from mesoscale gwd units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dvsfc_ms] standard_name = vertically_integrated_y_momentum_flux_due_to_mesoscale_orographic_gravity_wave_drag long_name = integrated y momentum flux from mesoscale gwd units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dusfc_bl] standard_name = vertically_integrated_x_momentum_flux_due_to_blocking_drag long_name = integrated x momentum flux from blocking drag units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dvsfc_bl] standard_name = vertically_integrated_y_momentum_flux_due_to_blocking_drag long_name = integrated y momentum flux from blocking drag units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dusfc_ss] standard_name = vertically_integrated_x_momentum_flux_due_to_small_scale_gravity_wave_drag long_name = integrated x momentum flux from small scale gwd units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dvsfc_ss] standard_name = vertically_integrated_y_momentum_flux_due_to_small_scale_gravity_wave_drag long_name = integrated y momentum flux from small scale gwd units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dusfc_fd] standard_name = vertically_integrated_x_momentum_flux_due_to_form_drag long_name = integrated x momentum flux from form drag units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dvsfc_fd] standard_name = vertically_integrated_y_momentum_flux_due_to_form_drag long_name = integrated y momentum flux from form drag units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [slmsk] standard_name = area_type long_name = landmask: sea/land/ice=0/1/2 units = flag dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [br1] standard_name = bulk_richardson_number_at_lowest_model_level long_name = bulk Richardson number at the surface units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [hpbl] standard_name = atmosphere_boundary_layer_thickness long_name = PBL thickness units = m dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [g] standard_name = gravitational_acceleration long_name = gravitational acceleration units = m s-2 dimensions = () type = real kind = kind_phys intent = in [cp] standard_name = specific_heat_of_dry_air_at_constant_pressure long_name = specific heat of dry air at constant pressure units = J kg-1 K-1 dimensions = () type = real kind = kind_phys intent = in [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 [rv] standard_name = gas_constant_water_vapor long_name = ideal gas constant for water vapor units = J kg-1 K-1 dimensions = () type = real kind = kind_phys intent = in [fv] 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 [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 [imx] standard_name = number_of_equatorial_longitude_points long_name = number of longitude points along the equator units = count dimensions = () type = integer intent = in [cdmbgwd] standard_name = multiplicative_tunable_parameters_for_mountain_blocking_and_orographic_gravity_wave_drag long_name = multiplic. factors for (1) mountain blocking drag coeff. and (2) ref. level orographic gravity wave drag units = none dimensions = (4) type = real kind = kind_phys intent = in [me] standard_name = mpi_rank long_name = rank of the current MPI task units = index dimensions = () type = integer intent = in [master] standard_name = mpi_root long_name = master MPI-rank units = index dimensions = () type = integer intent = in [lprnt] standard_name = flag_print long_name = flag for debugging printouts units = flag dimensions = () type = logical intent = in [ipr] standard_name = horizontal_index_of_printed_column long_name = horizontal index of column used in debugging printouts units = index dimensions = () type = integer intent = in [rdxzb] standard_name = level_of_dividing_streamline long_name = level of the dividing streamline units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [dx] standard_name = characteristic_grid_lengthscale long_name = size of the grid cell units = m dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [gwd_opt] standard_name = control_for_drag_suite_gravity_wave_drag long_name = flag to choose gwd scheme units = flag dimensions = () type = integer intent = in [do_gsl_drag_ls_bl] standard_name = do_gsl_drag_suite_mesoscale_orographic_and_blocking_drag long_name = flag to activate GSL drag suite - mesoscale GWD and blocking units = flag dimensions = () type = logical intent = in [do_gsl_drag_ss] standard_name = do_gsl_drag_suite_small_scale_orographic_drag long_name = flag to activate GSL drag suite - small-scale GWD units = flag dimensions = () type = logical intent = in [do_gsl_drag_tofd] standard_name = do_gsl_drag_suite_turbulent_orographic_form_drag long_name = flag to activate GSL drag suite - turb orog form drag units = flag dimensions = () type = logical intent = in [dtend] standard_name = cumulative_change_of_state_variables long_name = diagnostic tendencies for state variables units = mixed dimensions = (horizontal_loop_extent,vertical_layer_dimension,cumulative_change_of_state_variables_outer_index_max) type = real kind = kind_phys active = (flag_for_diagnostics_3D) intent = inout [dtidx] standard_name = cumulative_change_of_state_variables_outer_index long_name = index of state-variable and process in last dimension of diagnostic tendencies array AKA cumulative_change_index units = index dimensions = (number_of_tracers_plus_one_hundred,number_of_cumulative_change_processes) type = integer intent = in [index_of_process_orographic_gwd] standard_name = index_of_orographic_gravity_wave_drag_process_in_cumulative_change_index long_name = index of orographic gravity wave drag process in second dimension of array cumulative change index units = index dimensions = () type = integer intent = in [index_of_temperature] standard_name = index_of_temperature_in_cumulative_change_index long_name = index of temperature in first dimension of array cumulative change index units = index dimensions = () type = integer intent = in [index_of_x_wind] standard_name = index_of_x_wind_in_cumulative_change_index long_name = index of x-wind in first dimension of array cumulative change index units = index dimensions = () type = integer intent = in [index_of_y_wind] standard_name = index_of_y_wind_in_cumulative_change_index long_name = index of x-wind in first dimension of array cumulative change index units = index dimensions = () type = integer intent = in [ldiag3d] standard_name = flag_for_diagnostics_3D long_name = flag for 3d diagnostic fields units = flag dimensions = () type = logical intent = in [ldiag_ugwp] standard_name = flag_for_unified_gravity_wave_physics_diagnostics long_name = flag for CIRES UGWP Diagnostics units = flag dimensions = () type = logical intent = in [ugwp_seq_update] standard_name = do_ugwp_sequential_update long_name = flag for ugwp sequential update units = flag dimensions = () type = logical intent = in [spp_wts_gwd] standard_name = spp_weights_for_gravity_wave_drag_scheme long_name = spp weights for gravity wave drag scheme units = 1 dimensions = (horizontal_loop_extent,vertical_layer_dimension) type = real kind = kind_phys intent = in [spp_gwd] standard_name = control_for_gravity_wave_drag_spp_perturbations long_name = control for gravity wave drag spp perturbations units = count dimensions = () type = integer intent = in [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