7 OSURF_DIAG_ALBEDO, PDIR_ALB, PSCA_ALB, PEMIS_OUT, PTSRAD )
46 USE modd_snow_par
, ONLY : xemissn
68 LOGICAL,
INTENT(OUT) :: OSURF_DIAG_ALBEDO
70 REAL,
DIMENSION(:,:),
INTENT(OUT) :: PDIR_ALB
71 REAL,
DIMENSION(:,:),
INTENT(OUT) :: PSCA_ALB
72 REAL,
DIMENSION(:),
INTENT(OUT) :: PEMIS_OUT
73 REAL,
DIMENSION(:),
INTENT(OUT) :: PTSRAD
80 REAL(KIND=JPRB) :: ZHOOK_HANDLE
100 IF (io%CPHOTO==
'NIT' .OR. io%CPHOTO==
'NCB')
THEN 102 IF(pek%XLAI(ji)/=
xundef)
THEN 103 pek%XLAI (ji) = max(pek%XLAIMIN(ji),pek%XLAI(ji))
104 IF (.NOT.dtv%LIMP_Z0) &
105 pek%XZ0 (ji) =
z0v_from_lai(pek%XLAI(ji),pk%XH_TREE(ji),pk%XVEGTYPE_PATCH(ji,:),io%LAGRI_TO_GRASS)
106 IF (.NOT.dtv%LIMP_VEG) &
107 pek%XVEG (ji) =
veg_from_lai(pek%XLAI(ji),pk%XVEGTYPE_PATCH(ji,:),io%LAGRI_TO_GRASS)
108 IF (.NOT.dtv%LIMP_EMIS) &
109 pek%XEMIS(ji) =
emis_from_veg(pek%XVEG(ji),pk%XVEGTYPE_PATCH(ji,:))
117 ALLOCATE(pek%XFAPARC (pk%NSIZE_P))
118 ALLOCATE(pek%XFAPIRC (pk%NSIZE_P))
119 ALLOCATE(pek%XLAI_EFFC (pk%NSIZE_P))
120 ALLOCATE(pek%XMUS (pk%NSIZE_P))
123 pek%XLAI_EFFC (:) = 0.
126 ALLOCATE(pek%XFAPARC (0))
127 ALLOCATE(pek%XFAPIRC (0))
128 ALLOCATE(pek%XLAI_EFFC (0))
129 ALLOCATE(pek%XMUS (0))
136 ALLOCATE(pek%XALBNIR_SOIL(pk%NSIZE_P))
137 ALLOCATE(pek%XALBVIS_SOIL(pk%NSIZE_P))
138 ALLOCATE(pek%XALBUV_SOIL (pk%NSIZE_P))
139 ALLOCATE(pek%XALBNIR (pk%NSIZE_P))
140 ALLOCATE(pek%XALBVIS (pk%NSIZE_P))
141 ALLOCATE(pek%XALBUV (pk%NSIZE_P))
142 pek%XALBNIR_SOIL(:) =
xundef 143 pek%XALBVIS_SOIL(:) =
xundef 144 pek%XALBUV_SOIL (:) =
xundef 149 osurf_diag_albedo = .true.
153 ALLOCATE(pek%XPSN (pk%NSIZE_P))
154 ALLOCATE(pek%XPSNG(pk%NSIZE_P))
155 ALLOCATE(pek%XPSNV(pk%NSIZE_P))
160 IF(pek%TSNOW%SCHEME==
'EBA')
THEN 161 ALLOCATE(pek%XPSNV_A(pk%NSIZE_P))
164 ALLOCATE(pek%XPSNV_A(0))
subroutine init_veg_n(IO, KK, PK, PEK, DTV, OSURF_DIAG_ALBEDO, PDIR_ALB, PSCA_ALB, PEMIS_OUT, PTSRAD)
subroutine init_snow_lw(PEMISSN, TPSNOW)
integer, parameter nundef