SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
modd_teb_canopyn.F90
Go to the documentation of this file.
1 !SFX_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier
2 !SFX_LIC This is part of the SURFEX software governed by the CeCILL-C licence
3 !SFX_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
4 !SFX_LIC for details. version 1.
5 ! ################
7 ! ################
8 !
9 !!**** *MODD_TEB_CANOPY_n - declaration of surface parameters for urban canopy
10 !!
11 !! PURPOSE
12 !! -------
13 ! Declaration of surface parameters
14 !
15 !!
16 !!** IMPLICIT ARGUMENTS
17 !! ------------------
18 !! None
19 !!
20 !! REFERENCE
21 !! ---------
22 !!
23 !! AUTHOR
24 !! ------
25 !! V. Masson *Meteo France*
26 !!
27 !! MODIFICATIONS
28 !! -------------
29 !! Original 07/2006
30 !
31 !* 0. DECLARATIONS
32 ! ------------
33 !
34 !
35 USE yomhook ,ONLY : lhook, dr_hook
36 USE parkind1 ,ONLY : jprb
37 !
38 IMPLICIT NONE
39 
41 !
42  INTEGER :: NLVL ! number of levels in canopy
43  REAL, POINTER, DIMENSION(:,:) :: XZ ! height of middle of each level grid (m)
44  REAL, POINTER, DIMENSION(:,:) :: XU ! wind at each level in canopy (m/s)
45  REAL, POINTER, DIMENSION(:,:) :: XT ! temperature at each level in canopy (m/s)
46  REAL, POINTER, DIMENSION(:,:) :: XQ ! humidity at each level in canopy (kg/m3)
47  REAL, POINTER, DIMENSION(:,:) :: XTKE ! Tke at each level in canopy (m2/s2)
48  REAL, POINTER, DIMENSION(:,:) :: XLMO ! Monin-Obhukov length (m)
49  REAL, POINTER, DIMENSION(:,:) :: XLM ! Mixing lentgh (m)
50  REAL, POINTER, DIMENSION(:,:) :: XLEPS! Dissipative length (m)
51  REAL, POINTER, DIMENSION(:,:) :: XP ! pressure at each level in canopy (kg/m3)
52 !
53  REAL, POINTER, DIMENSION(:,:) :: XDZ ! depth of each level in canopy (m)
54  REAL, POINTER, DIMENSION(:,:) :: XZF ! height of bottom of each level grid (m)
55  REAL, POINTER, DIMENSION(:,:) :: XDZF ! depth between each level in canopy (m)
56 !
57 END TYPE teb_canopy_t
58 
59 
60 
61  CONTAINS
62 
63 !
64 
65 
66 
67 
68 SUBROUTINE teb_canopy_init(YTEB_CANOPY)
69 TYPE(teb_canopy_t), INTENT(INOUT) :: yteb_canopy
70 REAL(KIND=JPRB) :: zhook_handle
71 IF (lhook) CALL dr_hook("MODD_TEB_CANOPY_N:TEB_CANOPY_INIT",0,zhook_handle)
72  nullify(yteb_canopy%XZ)
73  nullify(yteb_canopy%XU)
74  nullify(yteb_canopy%XT)
75  nullify(yteb_canopy%XQ)
76  nullify(yteb_canopy%XTKE)
77  nullify(yteb_canopy%XLMO)
78  nullify(yteb_canopy%XLM)
79  nullify(yteb_canopy%XLEPS)
80  nullify(yteb_canopy%XP)
81  nullify(yteb_canopy%XDZ)
82  nullify(yteb_canopy%XZF)
83  nullify(yteb_canopy%XDZF)
84 yteb_canopy%NLVL=0
85 IF (lhook) CALL dr_hook("MODD_TEB_CANOPY_N:TEB_CANOPY_INIT",1,zhook_handle)
86 END SUBROUTINE teb_canopy_init
87 
88 
89 END MODULE modd_teb_canopy_n
subroutine teb_canopy_init(YTEB_CANOPY)