CCPP SciDoc for UFS-SRW v2.2.0  SRW v2.2.0
Common Community Physics Package Developed at DTC

◆ clm_lake_run()

subroutine, public clm_lake::clm_lake_run ( logical, intent(in)  flag_restart,
integer, intent(in)  im,
integer, intent(in)  km,
integer, intent(in)  me,
integer, intent(in)  master,
real(kind_phys), intent(in)  fhour,
integer, dimension(4), intent(in)  IDATE,
integer, intent(in)  kdt,
integer, intent(in)  iopt_lake,
integer, intent(in)  iopt_lake_clm,
real(kind_phys), intent(in)  min_lakeice,
real(kind_phys), intent(in)  lakedepth_default,
logical, intent(in)  use_lakedepth,
real(kind_phys), intent(in)  dtp,
integer, dimension(:), intent(in)  use_lake_model,
real(kind_phys), dimension(:), intent(inout)  clm_lake_initialized,
logical, intent(in)  frac_grid,
logical, intent(in)  frac_ice,
integer, intent(in)  lkm,
real(kind_phys), dimension(:), intent(in)  tg3,
real(kind_phys), dimension(:), intent(in)  pgr,
real(kind_phys), dimension(:), intent(in)  zlvl,
real(kind_phys), dimension(:,:), intent(in)  gt0,
real(kind_phys), dimension(:,:), intent(in)  prsi,
real(kind_phys), dimension(:,:), intent(in)  phii,
real(kind_phys), dimension(:), intent(in)  qvcurr,
real(kind_phys), dimension(:,:), intent(in)  gu0,
real(kind_phys), dimension(:,:), intent(in)  gv0,
real(kind_phys), dimension(:), intent(in)  xlat_d,
real(kind_phys), dimension(:), intent(in)  xlon_d,
real(kind_phys), dimension(:), intent(in)  ch,
real(kind_phys), dimension(:), intent(in)  cm,
real(kind_phys), dimension(:), intent(in)  dlwsfci,
real(kind_phys), dimension(:), intent(in)  dswsfci,
real(kind_phys), dimension(:), intent(in)  oro_lakedepth,
real(kind_phys), dimension(:), intent(in)  wind,
real(kind_phys), dimension(:), intent(in)  rho0,
real(kind_phys), dimension(:), intent(inout)  tsfc,
logical, dimension(:), intent(in)  flag_iter,
integer, dimension(:), intent(in)  ISLTYP,
real(kind_phys), dimension(:), intent(in)  rainncprv,
real(kind_phys), dimension(:), intent(in)  raincprv,
real(kind_phys), dimension(:), intent(inout)  evap_wat,
real(kind_phys), dimension(:), intent(inout)  evap_ice,
real(kind_phys), dimension(:), intent(inout)  hflx_wat,
real(kind_phys), dimension(:), intent(inout)  hflx_ice,
real(kind_phys), dimension(:), intent(inout)  gflx_wat,
real(kind_phys), dimension(:), intent(inout)  gflx_ice,
real(kind_phys), dimension(:), intent(inout)  ep1d_water,
real(kind_phys), dimension(:), intent(inout)  ep1d_ice,
real(kind_phys), dimension(:), intent(inout)  tsurf_water,
real(kind_phys), dimension(:), intent(inout)  tsurf_ice,
real(kind_phys), dimension(:), intent(inout)  tsfc_wat,
real(kind_phys), dimension(:), intent(inout)  tisfc,
real(kind_phys), dimension(:), intent(inout)  weasdi,
real(kind_phys), dimension(:), intent(inout)  snodi,
real(kind_phys), dimension(:), intent(inout)  hice,
real(kind_phys), dimension(:), intent(inout)  qss_water,
real(kind_phys), dimension(:), intent(inout)  qss_ice,
real(kind_phys), dimension(:), intent(inout)  cmm_water,
real(kind_phys), dimension(:), intent(inout)  cmm_ice,
real(kind_phys), dimension(:), intent(inout)  chh_water,
real(kind_phys), dimension(:), intent(inout)  chh_ice,
real(kind_phys), dimension(:), intent(inout)  uustar_water,
real(kind_phys), dimension(:), intent(inout)  uustar_ice,
real(kind_phys), dimension(:), intent(inout)  lake_t_snow,
real(kind_phys), dimension(:), intent(inout)  albedo,
real(kind_phys), dimension(:), intent(inout)  zorlw,
real(kind_phys), dimension(:), intent(inout)  zorli,
real(kind_phys), dimension(:), intent(inout)  lake_t2m,
real(kind_phys), dimension(:), intent(inout)  lake_q2m,
real(kind_phys), dimension(:), intent(inout)  weasd,
real(kind_phys), dimension(:), intent(inout)  snowd,
real(kind_phys), dimension(:), intent(inout)  fice,
logical, dimension(:), intent(inout)  icy,
integer, dimension( : ), intent(inout)  salty,
real(kind_phys), dimension(: ), intent(inout)  savedtke12d,
real(kind_phys), dimension(: ), intent(inout)  snowdp2d,
real(kind_phys), dimension(: ), intent(inout)  h2osno2d,
real(kind_phys), dimension(: ), intent(inout)  snl2d,
real(kind_phys), dimension(: ), intent(inout)  t_grnd2d,
real(kind_phys), dimension( :,: ), intent(inout)  t_lake3d,
real(kind_phys), dimension( :,: ), intent(inout)  lake_icefrac3d,
real(kind_phys), dimension( :,-nlevsnow+1: ), intent(inout)  t_soisno3d,
real(kind_phys), dimension( :,-nlevsnow+1: ), intent(inout)  h2osoi_ice3d,
real(kind_phys), dimension( :,-nlevsnow+1: ), intent(inout)  h2osoi_liq3d,
real(kind_phys), dimension( :,-nlevsnow+1: ), intent(inout)  h2osoi_vol3d,
real(kind_phys), dimension( :,-nlevsnow+1: ), intent(inout)  z3d,
real(kind_phys), dimension( :,-nlevsnow+1: ), intent(inout)  dz3d,
real(kind_phys), dimension( :,-nlevsnow+0: ), intent(inout)  zi3d,
real(kind_phys), dimension( :,: ), intent(inout)  z_lake3d,
real(kind_phys), dimension( :,: ), intent(inout)  dz_lake3d,
real(kind_phys), dimension( :,: ), intent(inout)  watsat3d,
real(kind_phys), dimension( :,: ), intent(inout)  csol3d,
real(kind_phys), dimension( :,: ), intent(inout)  sand3d,
real(kind_phys), dimension( :,: ), intent(inout)  clay3d,
real(kind_phys), dimension( :,: ), intent(inout)  tkmg3d,
real(kind_phys), dimension( :,: ), intent(inout)  tkdry3d,
real(kind_phys), dimension( :,: ), intent(inout)  tksatu3d,
real(kind_phys), dimension( : ), intent(inout)  clm_lakedepth,
integer, dimension( : ), intent(inout)  cannot_freeze,
integer, intent(out)  errflg,
character(*), intent(out)  errmsg 
)

Argument Table

clm_lake_run argument table
local_namestandard_namelong_nameunitstypedimensionskindintent
flag_restartflag_for_restartflag for restart (warmstart) or coldstartflaglogical()in
imhorizontal_loop_extenthorizontal loop extentcountinteger()in
kmvertical_layer_dimensionnumber of vertical levelscountinteger()in
mempi_rankcurrent MPI-rankindexinteger()in
mastermpi_rootmaster MPI-rankindexinteger()in
fhourforecast_timecurrent forecast timehreal()kind_physin
idatedate_and_time_at_model_initialization_in_united_states_orderinitial date with different size and orderingnoneinteger(ccpp_constant_one:4)in
kdtindex_of_timestepcurrent forecast iterationindexinteger()in
iopt_lakecontrol_for_lake_model_selectioncontrol for lake model selection1integer()in
iopt_lake_clmclm_lake_model_control_selection_valuevalue that indicates clm lake model in the control for lake model selection1integer()in
min_lakeicemin_lake_ice_area_fractionminimum lake ice valuefracreal()kind_physin
lakedepth_defaultdefault_lake_depth_in_clm_lake_modeldefault lake depth in clm lake modelmreal()kind_physin
use_lakedepthflag_for_initializing_clm_lake_depth_from_lake_depthflag for initializing clm lake depth from lake depthflaglogical()in
dtptimestep_for_physicsphysics timestepsreal()kind_physin
use_lake_modelflag_for_using_lake_modelflag indicating lake points using a lake modelflaginteger(ccpp_constant_one:horizontal_loop_extent)inout
clm_lake_initializedflag_for_clm_lake_initializationset to true in clm_lake_run after likeini is called, as a workaround for ccpp limitationflagreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
frac_gridflag_for_fractional_landmaskflag for fractional gridflaglogical()in
frac_iceflag_for_fractional_ice_when_fractional_landmask_is_disabledflag for fractional ice when fractional landmask is disabledflaglogical()in
lkmcontrol_for_lake_model_execution_methodcontrol for lake model execution: 0=no lake, 1=lake, 2=lake+nsstflaginteger()in
tg3deep_soil_temperaturedeep soil temperatureKreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
pgrsurface_air_pressuresurface pressurePareal(ccpp_constant_one:horizontal_loop_extent)kind_physin
zlvlheight_above_ground_at_lowest_model_layerlayer 1 height above ground (not MSL)mreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
gt0air_temperature_of_new_statetemperature updated by physicsKreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:vertical_layer_dimension)kind_physin
prsiair_pressure_at_interfaceair pressure at model layer interfacesPareal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:vertical_interface_dimension)kind_physin
phiigeopotential_at_interfacegeopotential at model layer interfacesm2 s-2real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:vertical_interface_dimension)kind_physin
qvcurrspecific_humidity_of_new_state_at_surface_adjacent_layerwater vapor specific humidity at lowest model layer updated by physicskg kg-1real(ccpp_constant_one:horizontal_loop_extent)kind_physin
gu0x_wind_of_new_statezonal wind updated by physicsm s-1real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:vertical_layer_dimension)kind_physin
gv0y_wind_of_new_statemeridional wind updated by physicsm s-1real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:vertical_layer_dimension)kind_physin
xlat_dlatitude_in_degreelatitude in degree northdegree_northreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
xlon_dlongitude_in_degreelongitude in degree eastdegree_eastreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
chsurface_drag_coefficient_for_heat_and_moisture_in_air_over_watersurface exchange coeff heat surface exchange coeff heat & moisture over ocean moisture over waternonereal(ccpp_constant_one:horizontal_loop_extent)kind_physin
cmsurface_drag_coefficient_for_momentum_in_air_over_watersurface exchange coeff for momentum over waternonereal(ccpp_constant_one:horizontal_loop_extent)kind_physin
dlwsfcisurface_downwelling_longwave_fluxsurface downwelling longwave flux at current timeW m-2real(ccpp_constant_one:horizontal_loop_extent)kind_physin
dswsfcisurface_downwelling_shortwave_fluxsurface downwelling shortwave flux at current timeW m-2real(ccpp_constant_one:horizontal_loop_extent)kind_physin
raincprvlwe_thickness_of_convective_precipitation_amount_on_previous_timestepconvective_precipitation_amount from previous timestepmreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
rainncprvlwe_thickness_of_explicit_precipitation_amount_on_previous_timestepexplicit rainfall from previous timestepmreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
oro_lakedepthlake_depthlake depthmreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
windwind_speed_at_lowest_model_layerwind speed at lowest model levelm s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physin
rho0air_pressure_at_surface_adjacent_layermean pressure at lowest model layerPareal(ccpp_constant_one:horizontal_loop_extent)kind_physin
tsfcsurface_skin_temperaturesurface skin temperatureKreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
flag_iterflag_for_iterationflag for iterationflaglogical(ccpp_constant_one:horizontal_loop_extent)in
isltypsoil_type_classificationsoil type at each grid cellindexinteger(ccpp_constant_one:horizontal_loop_extent)in
evap_watkinematic_surface_upward_latent_heat_flux_over_waterkinematic surface upward latent heat flux over waterkg kg-1 m s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
evap_icekinematic_surface_upward_latent_heat_flux_over_icekinematic surface upward latent heat flux over icekg kg-1 m s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
hflx_watkinematic_surface_upward_sensible_heat_flux_over_waterkinematic surface upward sensible heat flux over waterK m s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
hflx_icekinematic_surface_upward_sensible_heat_flux_over_icekinematic surface upward sensible heat flux over iceK m s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
gflx_watupward_heat_flux_in_soil_over_watersoil heat flux over waterW m-2real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
gflx_iceupward_heat_flux_in_soil_over_icesoil heat flux over iceW m-2real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
ep1d_watersurface_upward_potential_latent_heat_flux_over_watersurface upward potential latent heat flux over waterW m-2real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
ep1d_icesurface_upward_potential_latent_heat_flux_over_icesurface upward potential latent heat flux over iceW m-2real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
tsurf_watersurface_skin_temperature_after_iteration_over_watersurface skin temperature after iteration over waterKreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
tsurf_icesurface_skin_temperature_after_iteration_over_icesurface skin temperature after iteration over iceKreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
tsfc_watsurface_skin_temperature_over_watersurface skin temperature over waterKreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
tisfcsurface_skin_temperature_over_icesurface skin temperature over iceKreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
weasdiwater_equivalent_accumulated_snow_depth_over_icewater equiv of acc snow depth over landmmreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
snodisurface_snow_thickness_water_equivalent_over_icewater equivalent snow depth over icemmreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
hicesea_ice_thicknesssea ice thicknessmreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
qss_watersurface_specific_humidity_over_watersurface air saturation specific humidity over waterkg kg-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
qss_icesurface_specific_humidity_over_icesurface air saturation specific humidity over icekg kg-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
cmm_watersurface_drag_wind_speed_for_momentum_in_air_over_watermomentum exchange coefficient over waterm s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
cmm_icesurface_drag_wind_speed_for_momentum_in_air_over_icemomentum exchange coefficient over icem s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
chh_watersurface_drag_mass_flux_for_heat_and_moisture_in_air_over_waterthermal exchange coefficient over waterkg m-2 s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
chh_icesurface_drag_mass_flux_for_heat_and_moisture_in_air_over_icethermal exchange coefficient over icekg m-2 s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
uustar_watersurface_friction_velocity_over_watersurface friction velocity over waterm s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
uustar_icesurface_friction_velocity_over_icesurface friction velocity over icem s-1real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
lake_t_snowtemperature_of_snow_on_lakethe temperature of snow on a lakeKreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
albedomid_day_surface_albedo_over_lakemid day surface albedo over lakefractionreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
zorlwsurface_roughness_length_over_watersurface roughness length over watercmreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
zorlisurface_roughness_length_over_icesurface roughness length over icecmreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
lake_t2mtemperature_at_2m_from_clm_laketemperature at 2m from clm lakeKreal(ccpp_constant_one:horizontal_loop_extent)kind_physout
lake_q2mspecific_humidity_at_2m_from_clm_lakespecific humidity at 2m from clm lakefracreal(ccpp_constant_one:horizontal_loop_extent)kind_physout
weasdlwe_thickness_of_surface_snow_amountwater equiv of acc snow depth over land and sea icemmreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
snowdlwe_surface_snowwater equivalent snow depthmmreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
ficesea_ice_area_fraction_of_sea_area_fractionice fraction over open waterfracreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
icyflag_nonzero_sea_ice_surface_fractionflag indicating presence of some sea ice surface area fractionflaglogical(ccpp_constant_one:horizontal_loop_extent)inout
saltyclm_lake_is_saltylake at this point is salty (1) or not (0)1integer(ccpp_constant_one:horizontal_loop_extent)inout
cannot_freezeclm_lake_cannot_freezelake at this point is so salty it cannot freeze1integer(ccpp_constant_one:horizontal_loop_extent)inout
savedtke12dtop_level_eddy_conductivity_from_previous_timestep_in_clm_lake_modeltop level eddy conductivity from previous timestep in clm lake modelkg m-3real(ccpp_constant_one:horizontal_loop_extent)kind_physinout
snowdp2dactual_snow_depth_in_clm_lake_modelactual acc snow depth over lake in clm lake modelmreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
h2osno2dwater_equivalent_accumulated_snow_depth_in_clm_lake_modelwater equiv of acc snow depth over lake in clm lake modelmmreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
snl2dsnow_layers_in_clm_lake_modelsnow layers in clm lake model (treated as integer)countreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
t_grnd2dskin_temperature_from_lake_modelskin_temperature_from_lake_modelKreal(ccpp_constant_one:horizontal_loop_extent)kind_physinout
t_lake3dlake_layer_temperature_from_clm_lake_modellake layer temperature from clm lake modelKreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:lake_vertical_dimension_for_clm_lake_model)kind_physinout
lake_icefrac3dlake_fractional_ice_cover_on_clm_lake_levelslake fractional ice cover on clm lake levelskg m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:lake_vertical_dimension_for_clm_lake_model)kind_physinout
t_soisno3dsoil_or_snow_layer_temperature_from_clm_lake_modelsoil or snow layer temperature from clm lake modelKreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:snow_plus_soil_minus_one_vertical_dimension_for_clm_lake_model)kind_physinout
h2osoi_ice3dsoil_ice_water_content_in_clm_lake_modelsoil ice water content in clm lake modelkg m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:snow_plus_soil_minus_one_vertical_dimension_for_clm_lake_model)kind_physinout
h2osoi_liq3dsoil_liquid_water_content_in_clm_lake_modelsoil liquid water content in clm lake modelkg m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:snow_plus_soil_minus_one_vertical_dimension_for_clm_lake_model)kind_physinout
h2osoi_vol3dvolumetric_soil_water_in_clm_lake_modelvolumetric soil water in clm lake modelm3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:snow_plus_soil_minus_one_vertical_dimension_for_clm_lake_model)kind_physinout
z3dsnow_level_depth_in_clm_lake_modelsnow level depth in clm lake modelmreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:snow_plus_soil_minus_one_vertical_dimension_for_clm_lake_model)kind_physinout
dz3dsnow_level_thickness_in_clm_lake_modelsnow level thickness in clm lake modelmreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:snow_plus_soil_minus_one_vertical_dimension_for_clm_lake_model)kind_physinout
zi3dsnow_interface_depth_in_clm_lake_modelsnow interface_depth in clm lake modelmreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:snow_plus_soil_vertical_dimension_for_clm_lake_model)kind_physinout
z_lake3ddepth_of_lake_interface_layersdepth of lake interface layersfractionreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:lake_vertical_dimension_for_clm_lake_model)kind_physinout
dz_lake3dthickness_of_lake_layersthickness of lake layersfractionreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:lake_vertical_dimension_for_clm_lake_model)kind_physinout
watsat3dsaturated_volumetric_soil_water_in_lake_modelsaturated volumetric soil water in lake modelmreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:lake_vertical_dimension_for_clm_lake_model)kind_physinout
csol3dsoil_heat_capacity_in_lake_modelsoil heat capacity in lake modelmreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:lake_vertical_dimension_for_clm_lake_model)kind_physinout
sand3dclm_lake_percent_sandpercent sand in clm lake modelpercentinteger(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:soil_vertical_dimension_for_clm_lake_model)inout
clay3dclm_lake_percent_claypercent clay in clm lake modelpercentinteger(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:soil_vertical_dimension_for_clm_lake_model)inout
tkmg3dsoil_mineral_thermal_conductivity_in_lake_modelsoil mineral thermal conductivity in lake modelmreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:lake_vertical_dimension_for_clm_lake_model)kind_physinout
tkdry3ddry_soil_thermal_conductivity_in_lake_modeldry soil thermal conductivity in lake modelmreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:lake_vertical_dimension_for_clm_lake_model)kind_physinout
tksatu3dsaturated_soil_thermal_conductivity_in_lake_modelsaturated soil thermal conductivity in lake modelmreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:lake_vertical_dimension_for_clm_lake_model)kind_physinout
clm_lakedepthclm_lake_depthclm internal copy of lake depth with 10.0 replaced by default lake depthmreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
errmsgccpp_error_messageerror message for error handling in CCPPnonecharacter()len=*out
errflgccpp_error_codeerror code for error handling in CCPP1integer()out