[ccpp-table-properties] name = gfdl_sfc_layer type = scheme dependencies = machine.F,module_sf_exchcoef.f90,namelist_soilveg_ruc.F90,noahmp_tables.f90 ######################################################################## [ccpp-arg-table] name = gfdl_sfc_layer_init type = scheme [icoef_sf] standard_name = flag_for_surface_roughness_option_over_water long_name = surface roughness options over water units = flag dimensions = () type = integer intent = in [cplwav] standard_name = flag_for_ocean_wave_coupling long_name = flag controlling cplwav collection (default off) units = flag dimensions = () type = logical intent = in [cplwav2atm] standard_name = flag_for_one_way_ocean_wave_coupling_to_atmosphere long_name = flag controlling ocean wave coupling to the atmosphere (default off) units = flag dimensions = () type = logical intent = in [lcurr_sf] standard_name = flag_for_surface_layer_scheme_ocean_currents long_name = flag for taking ocean currents into account in surface layer scheme units = flag dimensions = () type = logical intent = in [pert_cd] standard_name = flag_for_surface_layer_scheme_surface_drag_coefficient_for_momentum_in_air_perturbations long_name = flag for perturbing the surface drag coefficient for momentum in surface layer scheme units = flag dimensions = () type = logical intent = in [ntsflg] standard_name = control_for_surface_layer_scheme_skin_temperature_update long_name = flag for updating skin temperature in the surface layer 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 = gfdl_sfc_layer_run type = scheme [im] standard_name = horizontal_loop_extent long_name = horizontal loop extent units = count dimensions = () type = integer intent = in [nsoil] standard_name = vertical_dimension_of_soil long_name = soil vertical layer dimension units = count dimensions = () type = integer intent = in [km] standard_name = vertical_layer_dimension long_name = number of vertical levels units = count dimensions = () type = integer intent = in [karman] standard_name = von_karman_constant long_name = von karman constant units = none dimensions = () type = real 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 [flag_iter] standard_name = flag_for_iteration long_name = flag for iteration units = flag dimensions = (horizontal_loop_extent) type = logical intent = in [lsm] standard_name = control_for_land_surface_scheme long_name = flag for land surface model units = flag dimensions = () type = integer intent = in [lsm_noah] standard_name = identifier_for_noah_land_surface_scheme long_name = flag for NOAH land surface model units = flag dimensions = () type = integer intent = in [lsm_noahmp] standard_name = identifier_for_noahmp_land_surface_scheme long_name = flag for NOAH MP land surface model units = flag dimensions = () type = integer intent = in [lsm_ruc] standard_name = identifier_for_ruc_land_surface_scheme long_name = flag for RUC land surface model units = flag dimensions = () type = integer intent = in [icoef_sf] standard_name = flag_for_surface_roughness_option_over_water long_name = surface roughness options over water units = flag dimensions = () type = integer intent = in [cplwav] standard_name = flag_for_ocean_wave_coupling long_name = flag controlling cplwav collection (default off) units = flag dimensions = () type = logical intent = in [cplwav2atm] standard_name = flag_for_one_way_ocean_wave_coupling_to_atmosphere long_name = flag controlling ocean wave coupling to the atmosphere (default off) units = flag dimensions = () type = logical intent = in [lcurr_sf] standard_name = flag_for_surface_layer_scheme_ocean_currents long_name = flag for taking ocean currents into account in surface layer scheme units = flag dimensions = () type = logical intent = in [pert_Cd] standard_name = flag_for_surface_layer_scheme_surface_drag_coefficient_for_momentum_in_air_perturbations long_name = flag for perturbing the surface drag coefficient for momentum in surface layer scheme units = flag dimensions = () type = logical intent = in [ntsflg] standard_name = control_for_surface_layer_scheme_skin_temperature_update long_name = flag for updating skin temperature in the surface layer scheme units = flag dimensions = () type = integer intent = in [sfenth] standard_name = surface_layer_scheme_enthalpy_flux_factor long_name = enthalpy flux factor used in surface layer scheme units = none dimensions = () type = real kind = kind_phys intent = in [z1] standard_name = height_above_ground_at_lowest_model_layer long_name = height above ground at 1st model layer units = m dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [shdmax] standard_name = max_vegetation_area_fraction long_name = max fractnl cover of green veg units = frac dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [ivegsrc] standard_name = control_for_vegetation_dataset long_name = land use dataset choice units = index dimensions = () type = integer intent = in [vegtype] standard_name = vegetation_type_classification long_name = vegetation type at each grid cell units = index dimensions = (horizontal_loop_extent) type = integer intent = in [sigmaf] standard_name = bounded_vegetation_area_fraction long_name = areal fractional cover of green vegetation bounded on the bottom units = frac dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [dt] standard_name = timestep_for_physics long_name = physics timestep units = s dimensions = () type = real kind = kind_phys intent = in [wet] standard_name = flag_nonzero_wet_surface_fraction long_name = flag indicating presence of some ocean or lake surface area fraction units = flag dimensions = (horizontal_loop_extent) type = logical intent = in [dry] standard_name = flag_nonzero_land_surface_fraction long_name = flag indicating presence of some land surface area fraction units = flag dimensions = (horizontal_loop_extent) type = logical intent = in [icy] standard_name = flag_nonzero_sea_ice_surface_fraction long_name = flag indicating presence of some sea ice surface area fraction units = flag dimensions = (horizontal_loop_extent) type = logical intent = in [isltyp] standard_name = soil_type_classification long_name = soil type at each grid cell units = index dimensions = (horizontal_loop_extent) type = integer 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 [grav] standard_name = gravitational_acceleration long_name = gravitational acceleration units = m s-2 dimensions = () type = real kind = kind_phys intent = in [ep1] 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 [ep2] 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 [smois] standard_name = volume_fraction_of_condensed_water_in_soil long_name = total soil moisture units = frac dimensions = (horizontal_loop_extent,vertical_dimension_of_soil) type = real kind = kind_phys intent = in [psfc] standard_name = surface_air_pressure long_name = surface pressure units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [prsl1] standard_name = air_pressure_at_surface_adjacent_layer long_name = mean pressure at lowest model layer units = Pa dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [q1] standard_name = specific_humidity_at_surface_adjacent_layer long_name = water vapor specific humidity at lowest model layer units = kg kg-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [t1] standard_name = air_temperature_at_surface_adjacent_layer long_name = 1st model layer air temperature units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [u1] standard_name = x_wind_at_surface_adjacent_layer long_name = zonal wind at lowest model layer units = m s-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [v1] standard_name = y_wind_at_surface_adjacent_layer long_name = meridional wind at lowest model layer units = m s-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [wspd] standard_name = wind_speed_at_lowest_model_layer long_name = wind speed at lowest model level units = m s-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [u10] standard_name = x_wind_at_10m long_name = 10 meter u wind speed units = m s-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [v10] standard_name = y_wind_at_10m long_name = 10 meter v wind speed units = m s-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [gsw] standard_name = surface_downwelling_shortwave_flux long_name = surface downwelling shortwave flux at current time units = W m-2 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [glw] standard_name = surface_downwelling_longwave_flux long_name = surface downwelling longwave flux at current time units = W m-2 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [tsurf_wat] standard_name = surface_skin_temperature_after_iteration_over_water long_name = surface skin temperature after iteration over water units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [tsurf_lnd] standard_name = surface_skin_temperature_after_iteration_over_land long_name = surface skin temperature after iteration over land units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [tsurf_ice] standard_name = surface_skin_temperature_after_iteration_over_ice long_name = surface skin temperature after iteration over ice units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = in [tskin_wat] standard_name = surface_skin_temperature_over_water long_name = surface skin temperature over water units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [tskin_lnd] standard_name = surface_skin_temperature_over_land long_name = surface skin temperature over land units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [tskin_ice] standard_name = surface_skin_temperature_over_ice long_name = surface skin temperature over ice units = K dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [ustar_wat] standard_name = surface_friction_velocity_over_water long_name = surface friction velocity over water units = m s-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [ustar_lnd] standard_name = surface_friction_velocity_over_land long_name = surface friction velocity over land units = m s-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [ustar_ice] standard_name = surface_friction_velocity_over_ice long_name = surface friction velocity over ice units = m s-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [znt_wat] standard_name = surface_roughness_length_over_water long_name = surface roughness length over water (temporary use as interstitial) units = cm dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [znt_lnd] standard_name = surface_roughness_length_over_land long_name = surface roughness length over land (temporary use as interstitial) units = cm dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [znt_ice] standard_name = surface_roughness_length_over_ice long_name = surface roughness length over ice (temporary use as interstitial) units = cm dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [cdm_wat] standard_name = surface_drag_coefficient_for_momentum_in_air_over_water long_name = surface exchange coeff for momentum over water units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [cdm_lnd] standard_name = surface_drag_coefficient_for_momentum_in_air_over_land long_name = surface exchange coeff for momentum over land units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [cdm_ice] standard_name = surface_drag_coefficient_for_momentum_in_air_over_ice long_name = surface exchange coeff for momentum over ice units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [stress_wat] standard_name = surface_wind_stress_over_water long_name = surface wind stress over water units = m2 s-2 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [stress_lnd] standard_name = surface_wind_stress_over_land long_name = surface wind stress over land units = m2 s-2 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [stress_ice] standard_name = surface_wind_stress_over_ice long_name = surface wind stress over ice units = m2 s-2 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [rib_wat] standard_name = bulk_richardson_number_at_lowest_model_level_over_water long_name = bulk Richardson number at the surface over water units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [rib_lnd] standard_name = bulk_richardson_number_at_lowest_model_level_over_land long_name = bulk Richardson number at the surface over land units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [rib_ice] standard_name = bulk_richardson_number_at_lowest_model_level_over_ice long_name = bulk Richardson number at the surface over ice units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fm_wat] standard_name = Monin_Obukhov_similarity_function_for_momentum_over_water long_name = Monin-Obukhov similarity function for momentum over water units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fm_lnd] standard_name = Monin_Obukhov_similarity_function_for_momentum_over_land long_name = Monin-Obukhov similarity function for momentum over land units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fm_ice] standard_name = Monin_Obukhov_similarity_function_for_momentum_over_ice long_name = Monin-Obukhov similarity function for momentum over ice units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fh_wat] standard_name = Monin_Obukhov_similarity_function_for_heat_over_water long_name = Monin-Obukhov similarity function for heat over water units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fh_lnd] standard_name = Monin_Obukhov_similarity_function_for_heat_over_land long_name = Monin-Obukhov similarity function for heat over land units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fh_ice] standard_name = Monin_Obukhov_similarity_function_for_heat_over_ice long_name = Monin-Obukhov similarity function for heat over ice units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fh2_wat] standard_name = Monin_Obukhov_similarity_function_for_heat_at_2m_over_water long_name = Monin-Obukhov similarity parameter for heat at 2m over water units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fh2_lnd] standard_name = Monin_Obukhov_similarity_function_for_heat_at_2m_over_land long_name = Monin-Obukhov similarity parameter for heat at 2m over land units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fh2_ice] standard_name = Monin_Obukhov_similarity_function_for_heat_at_2m_over_ice long_name = Monin-Obukhov similarity parameter for heat at 2m over ice units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [ch_wat] standard_name = surface_drag_coefficient_for_heat_and_moisture_in_air_over_water long_name = surface exchange coeff heat surface exchange coeff heat & moisture over ocean moisture over water units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [ch_lnd] standard_name = surface_drag_coefficient_for_heat_and_moisture_in_air_over_land long_name = surface exchange coeff heat & moisture over land units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [ch_ice] standard_name = surface_drag_coefficient_for_heat_and_moisture_in_air_over_ice long_name = surface exchange coeff heat & moisture over ice units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fm10_wat] standard_name = Monin_Obukhov_similarity_function_for_momentum_at_10m_over_water long_name = Monin-Obukhov similarity parameter for momentum at 10m over water units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fm10_lnd] standard_name = Monin_Obukhov_similarity_function_for_momentum_at_10m_over_land long_name = Monin-Obukhov similarity parameter for momentum at 10m over land units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [fm10_ice] standard_name = Monin_Obukhov_similarity_function_for_momentum_at_10m_over_ice long_name = Monin-Obukhov similarity parameter for momentum at 10m over ice units = none dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [qss_wat] standard_name = surface_specific_humidity_over_water long_name = surface air saturation specific humidity over water units = kg kg-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [qss_lnd] standard_name = surface_specific_humidity_over_land long_name = surface air saturation specific humidity over land units = kg kg-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys intent = inout [qss_ice] standard_name = surface_specific_humidity_over_ice long_name = surface air saturation specific humidity over ice units = kg kg-1 dimensions = (horizontal_loop_extent) type = real kind = kind_phys 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