[ccpp-table-properties]
  name = m_micro_pre
  type = scheme
  dependencies = machine.F

########################################################################
[ccpp-arg-table]
  name = m_micro_pre_run
  type = scheme
[im]
  standard_name = horizontal_loop_extent
  long_name = horizontal loop extent
  units = count
  dimensions = ()
  type = integer
  intent = in
[levs]
  standard_name = vertical_layer_dimension
  long_name = number of vertical layers
  units = count
  dimensions = ()
  type = integer
  intent = in
[do_shoc]
  standard_name = flag_for_shoc
  long_name = flag for SHOC
  units = flag
  dimensions = ()
  type = logical
  intent = in
[skip_macro]
  standard_name = flag_skip_macro
  long_name = flag to skip cloud macrophysics in Morrison scheme
  units = flag
  dimensions = ()
  type = logical
  intent = inout
[fprcp]
  standard_name = number_of_frozen_precipitation_species
  long_name = number of frozen precipitation species
  units = count
  dimensions = ()
  type = integer
  intent = in
[mg3_as_mg2]
  standard_name = flag_mg3_as_mg2
  long_name = flag for controlling prep for Morrison-Gettelman microphysics
  units = flag
  dimensions = ()
  type = logical
  intent = in
[gq0_ice]
  standard_name = cloud_ice_mixing_ratio_of_new_state
  long_name = ratio of mass of ice water to mass of dry air plus vapor (without condensates) updated by physics
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[gq0_water]
  standard_name = cloud_liquid_water_mixing_ratio_of_new_state
  long_name = ratio of mass of cloud water to mass of dry air plus vapor (without condensates) updated by physics
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[gq0_rain]
  standard_name = rain_mixing_ratio_of_new_state
  long_name = ratio of mass of rain water to mass of dry air plus vapor (without condensates) updated by physics
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[gq0_snow]
  standard_name = snow_mixing_ratio_of_new_state
  long_name = ratio of mass of snow water to mass of dry air plus vapor (without condensates) updated by physics
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[gq0_graupel]
  standard_name = graupel_mixing_ratio_of_new_state
  long_name = ratio of mass of graupel to mass of dry air plus vapor (without condensates) updated by physics
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[gq0_rain_nc]
  standard_name = mass_number_concentration_of_rain_of_new_state
  long_name = number concentration of rain updated by physics
  units = kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[gq0_snow_nc]
  standard_name = mass_number_concentration_of_snow_of_new_state
  long_name = number concentration of snow updated by physics
  units = kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[gq0_graupel_nc]
  standard_name = mass_number_concentration_of_graupel_of_new_state
  long_name = number concentration of graupel updated by physics
  units = kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[cld_shoc]
  standard_name = subgrid_scale_cloud_fraction_from_shoc
  long_name = subgrid-scale cloud fraction from the SHOC scheme
  units = frac
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[cnvc]
  standard_name = convective_cloud_cover
  long_name = convective cloud cover
  units = frac
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[cnvw]
  standard_name = convective_cloud_water_mixing_ratio
  long_name = moist convective cloud water mixing ratio
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[tcr]
  standard_name = cloud_phase_transition_threshold_temperature
  long_name = threshold temperature below which cloud starts to freeze
  units = K
  dimensions = ()
  type = real
  kind = kind_phys
  intent = in
[tcrf]
  standard_name = reciprocal_of_cloud_phase_transition_temperature_range
  long_name = denominator in cloud phase transition = 1/(tcr-tf)
  units = K-1
  dimensions = ()
  type = real
  kind = kind_phys
  intent = in
[gt0]
  standard_name = air_temperature_of_new_state
  long_name = temperature updated by physics
  units = K
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = in
[qrn]
  standard_name = local_rain_water_mixing_ratio
  long_name = ratio of mass of rain water to mass of dry air plus vapor (without condensates) local to physics
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = inout
[qsnw]
  standard_name = local_snow_water_mixing_ratio
  long_name = ratio of mass of snow water to mass of dry air plus vapor (without condensates) local to physics
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = inout
[qgl]
  standard_name = local_graupel_mixing_ratio
  long_name = ratio of mass of graupel to mass of dry air plus vapor (without condensates) local to physics
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = inout
[ncpr]
  standard_name = local_rain_number_concentration
  long_name = number concentration of rain local to physics
  units = kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = inout
[ncps]
  standard_name = local_snow_number_concentration
  long_name = number concentration of snow local to physics
  units = kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = inout
[ncgl]
  standard_name = local_graupel_number_concentration
  long_name = number concentration of graupel local to physics
  units = kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = inout
[cld_frc_MG]
  standard_name = cloud_fraction_for_MG
  long_name = cloud fraction used by Morrison-Gettelman MP
  units = frac
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = inout
[clw_water]
  standard_name = cloud_condensed_water_mixing_ratio_convective_transport_tracer
  long_name = ratio of mass of cloud water to mass of dry air plus vapor (without condensates) in the convectively transported tracer array
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = out
[clw_ice]
  standard_name = ice_water_mixing_ratio_convective_transport_tracer
  long_name = ratio of mass of ice water to mass of dry air plus vapor (without condensates) in the convectively transported tracer array
  units = kg kg-1
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  intent = out
[clcn]
  standard_name = convective_cloud_volume_fraction
  long_name = convective cloud volume fraction
  units = frac
  dimensions = (horizontal_loop_extent,vertical_layer_dimension)
  type = real
  kind = kind_phys
  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