atm2lndType Module



Interfaces

public interface atm2lnd_params_type

  • private function atm2lnd_params_constructor(repartition_rain_snow, glcmec_downscale_longwave, lapse_rate, lapse_rate_longwave, longwave_downscaling_limit, precip_repartition_glc_all_snow_t, precip_repartition_glc_all_rain_t, precip_repartition_nonglc_all_snow_t, precip_repartition_nonglc_all_rain_t) result(params)

    Arguments

    Type IntentOptional Attributes Name
    logical, intent(in) :: repartition_rain_snow
    logical, intent(in) :: glcmec_downscale_longwave
    real(kind=r8), intent(in) :: lapse_rate
    real(kind=r8), intent(in), optional :: lapse_rate_longwave
    real(kind=r8), intent(in), optional :: longwave_downscaling_limit
    real(kind=r8), intent(in), optional :: precip_repartition_glc_all_snow_t
    real(kind=r8), intent(in), optional :: precip_repartition_glc_all_rain_t
    real(kind=r8), intent(in), optional :: precip_repartition_nonglc_all_snow_t
    real(kind=r8), intent(in), optional :: precip_repartition_nonglc_all_rain_t

    Return Value type(atm2lnd_params_type)


Derived Types

type, public ::  atm2lnd_params_type

Components

Type Visibility Attributes Name Initial
logical, public :: repartition_rain_snow
logical, public :: glcmec_downscale_longwave
real(kind=r8), public :: lapse_rate
real(kind=r8), public :: lapse_rate_longwave
real(kind=r8), public :: longwave_downscaling_limit
real(kind=r8), public :: precip_repartition_glc_all_snow_t
real(kind=r8), public :: precip_repartition_glc_frac_rain_slope
real(kind=r8), public :: precip_repartition_nonglc_all_snow_t
real(kind=r8), public :: precip_repartition_nonglc_frac_rain_slope

Constructor

private function atm2lnd_params_constructor (repartition_rain_snow, glcmec_downscale_longwave, lapse_rate, lapse_rate_longwave, longwave_downscaling_limit, precip_repartition_glc_all_snow_t, precip_repartition_glc_all_rain_t, precip_repartition_nonglc_all_snow_t, precip_repartition_nonglc_all_rain_t)

type, public ::  atm2lnd_type

Components

Type Visibility Attributes Name Initial
type(atm2lnd_params_type), public :: params
real(kind=r8), public, pointer :: forc_u_grc(:) => null()
real(kind=r8), public, pointer :: forc_v_grc(:) => null()
real(kind=r8), public, pointer :: forc_wind_grc(:) => null()
real(kind=r8), public, pointer :: forc_hgt_grc(:) => null()
real(kind=r8), public, pointer :: forc_topo_grc(:) => null()
real(kind=r8), public, pointer :: forc_hgt_u_grc(:) => null()
real(kind=r8), public, pointer :: forc_hgt_t_grc(:) => null()
real(kind=r8), public, pointer :: forc_hgt_q_grc(:) => null()
real(kind=r8), public, pointer :: forc_vp_grc(:) => null()
real(kind=r8), public, pointer :: forc_rh_grc(:) => null()
real(kind=r8), public, pointer :: forc_psrf_grc(:) => null()
real(kind=r8), public, pointer :: forc_pco2_grc(:) => null()
real(kind=r8), public, pointer :: forc_pco2_240_patch(:) => null()
real(kind=r8), public, pointer :: forc_solad_grc(:,:) => null()
real(kind=r8), public, pointer :: forc_solai_grc(:,:) => null()
real(kind=r8), public, pointer :: forc_solar_grc(:) => null()
real(kind=r8), public, pointer :: forc_ndep_grc(:) => null()
real(kind=r8), public, pointer :: forc_pc13o2_grc(:) => null()
real(kind=r8), public, pointer :: forc_po2_grc(:) => null()
real(kind=r8), public, pointer :: forc_po2_240_patch(:) => null()
real(kind=r8), public, pointer :: forc_aer_grc(:,:) => null()
real(kind=r8), public, pointer :: forc_pch4_grc(:) => null()
real(kind=r8), public, pointer :: forc_t_not_downscaled_grc(:) => null()
real(kind=r8), public, pointer :: forc_th_not_downscaled_grc(:) => null()
real(kind=r8), public, pointer :: forc_q_not_downscaled_grc(:) => null()
real(kind=r8), public, pointer :: forc_pbot_not_downscaled_grc(:) => null()
real(kind=r8), public, pointer :: forc_pbot240_downscaled_patch(:) => null()
real(kind=r8), public, pointer :: forc_rho_not_downscaled_grc(:) => null()
real(kind=r8), public, pointer :: forc_rain_not_downscaled_grc(:) => null()
real(kind=r8), public, pointer :: forc_snow_not_downscaled_grc(:) => null()
real(kind=r8), public, pointer :: forc_lwrad_not_downscaled_grc(:) => null()
real(kind=r8), public, pointer :: forc_t_downscaled_col(:) => null()
real(kind=r8), public, pointer :: forc_th_downscaled_col(:) => null()
real(kind=r8), public, pointer :: forc_q_downscaled_col(:) => null()
real(kind=r8), public, pointer :: forc_pbot_downscaled_col(:) => null()
real(kind=r8), public, pointer :: forc_rho_downscaled_col(:) => null()
real(kind=r8), public, pointer :: forc_rain_downscaled_col(:) => null()
real(kind=r8), public, pointer :: forc_snow_downscaled_col(:) => null()
real(kind=r8), public, pointer :: forc_lwrad_downscaled_col(:) => null()
real(kind=r8), public, pointer :: forc_flood_grc(:) => null()
real(kind=r8), public, pointer :: volr_grc(:) => null()
real(kind=r8), public, pointer :: volrmch_grc(:) => null()
real(kind=r8), public, pointer :: af_precip_grc(:) => null()
real(kind=r8), public, pointer :: af_uwind_grc(:) => null()
real(kind=r8), public, pointer :: af_vwind_grc(:) => null()
real(kind=r8), public, pointer :: af_tbot_grc(:) => null()
real(kind=r8), public, pointer :: af_pbot_grc(:) => null()
real(kind=r8), public, pointer :: af_shum_grc(:) => null()
real(kind=r8), public, pointer :: af_swdn_grc(:) => null()
real(kind=r8), public, pointer :: af_lwdn_grc(:) => null()
real(kind=r8), public, pointer :: bc_precip_grc(:) => null()
real(kind=r8), public, pointer :: fsd24_patch(:) => null()
real(kind=r8), public, pointer :: fsd240_patch(:) => null()
real(kind=r8), public, pointer :: fsi24_patch(:) => null()
real(kind=r8), public, pointer :: fsi240_patch(:) => null()
real(kind=r8), public, pointer :: prec365_col(:) => null()
real(kind=r8), public, pointer :: prec60_patch(:) => null()
real(kind=r8), public, pointer :: prec10_patch(:) => null()
real(kind=r8), public, pointer :: rh30_patch(:) => null()
real(kind=r8), public, pointer :: prec24_patch(:) => null()
real(kind=r8), public, pointer :: rh24_patch(:) => null()
real(kind=r8), public, pointer :: wind24_patch(:) => null()
real(kind=r8), public, pointer :: t_mo_patch(:) => null()
real(kind=r8), public, pointer :: t_mo_min_patch(:) => null()

Type-Bound Procedures

procedure, public :: Init
procedure, public :: InitForTesting
procedure, public :: InitAccBuffer
procedure, public :: InitAccVars
procedure, public :: UpdateAccVars
procedure, public :: Restart
procedure, public :: Clean