SURFEX v8.1
General documentation of Surfex
modd_trip_grid.F90
Go to the documentation of this file.
1 !##################
3 !##################
4 !
5 !!**** *MODD_TRIP_GRID - declaration of grid for TRIP scheme
6 !!
7 !! PURPOSE
8 !! -------
9 !
10 !!
11 !!** IMPLICIT ARGUMENTS
12 !! ------------------
13 !! None
14 !!
15 !! REFERENCE
16 !! ---------
17 !!
18 !! AUTHOR
19 !! ------
20 !! B. Decharme *Meteo France*
21 !!
22 !! MODIFICATIONS
23 !! -------------
24 !! Original 05/2008
25 !
26 !* 0. DECLARATIONS
27 ! ------------
28 !
29 USE yomhook ,ONLY : lhook, dr_hook
30 USE parkind1 ,ONLY : jprb
31 !
32 IMPLICIT NONE
33 !
35 !-------------------------------------------------------------------------------
36 !
37 INTEGER, POINTER, DIMENSION(:,:) :: ngrcn ! Flow direction (1->8)
38 INTEGER, POINTER, DIMENSION(:,:) :: nseq ! River sequence
39 INTEGER :: nseqmax ! maximum down flow
40 INTEGER, POINTER, DIMENSION(:,:) :: nnextx ! returns x and y point
41 INTEGER, POINTER, DIMENSION(:,:) :: nnexty ! of destination grid:
42 ! 8 1 2
43 ! 7 3
44 ! 6 5 4
45 INTEGER, POINTER, DIMENSION(:,:) :: nbasid ! basin number id
46 INTEGER :: nbasmin ! minimum basin number
47 INTEGER :: nbasmax ! maximum basin number
48 !-------------------------------------------------------------------------------
49 !
50 REAL, POINTER, DIMENSION(:) :: xtrip_grid ! lits of parameters used to define the grid
51 !
52 !-------------------------------------------------------------------------------
53 !
54 REAL, POINTER, DIMENSION(:,:) :: xarea ! 2d grid area [m*m]
55 REAL, POINTER, DIMENSION(:,:) :: xlen ! distance between grids [m]
56 !
57 !-------------------------------------------------------------------------------
58 !
59 LOGICAL, POINTER, DIMENSION(:,:) :: gmask !Logical Mask for TRIP grid
60 LOGICAL, POINTER, DIMENSION(:,:) :: gmask_vel !Logical Mask for variable velocity scheme
61 LOGICAL, POINTER, DIMENSION(:,:) :: gmask_gw !Logical Mask for Groundwater grid
62 LOGICAL, POINTER, DIMENSION(:,:) :: gmask_fld !Logical Mask for floodplain scheme
63 LOGICAL, POINTER, DIMENSION(:,:) :: gmask_gre !Logical Mask for Greenland grid
64 LOGICAL, POINTER, DIMENSION(:,:) :: gmask_ant !Logical Mask for Antartactic grid
65 !
66 !-------------------------------------------------------------------------------
67 !
68 END TYPE trip_grid_t
69 !
70 CONTAINS
71 !
72 SUBROUTINE trip_grid_nullify(YTRIP_GRID)
73 TYPE(trip_grid_t), INTENT(INOUT) :: YTRIP_GRID
74 REAL(KIND=JPRB) :: ZHOOK_HANDLE
75 !
76 IF (lhook) CALL dr_hook("MODD_TRIP_GRID:TRIP_GRID_NULLIFY",0,zhook_handle)
77 !
78 NULLIFY(ytrip_grid%NGRCN)
79 NULLIFY(ytrip_grid%NSEQ)
80 NULLIFY(ytrip_grid%NNEXTX)
81 NULLIFY(ytrip_grid%NNEXTY)
82 NULLIFY(ytrip_grid%NBASID)
83 NULLIFY(ytrip_grid%XTRIP_GRID)
84 NULLIFY(ytrip_grid%XAREA)
85 NULLIFY(ytrip_grid%XLEN)
86 NULLIFY(ytrip_grid%GMASK)
87 NULLIFY(ytrip_grid%GMASK_VEL)
88 NULLIFY(ytrip_grid%GMASK_GW)
89 NULLIFY(ytrip_grid%GMASK_FLD)
90 NULLIFY(ytrip_grid%GMASK_GRE)
91 NULLIFY(ytrip_grid%GMASK_ANT)
92 !
93 ytrip_grid%NSEQMAX=0
94 !
95 IF (lhook) CALL dr_hook("MODD_TRIP_GRID:TRIP_GRID_NULLIFY",1,zhook_handle)
96 !
97 END SUBROUTINE trip_grid_nullify
98 
99 
100 END MODULE modd_trip_grid
integer, parameter jprb
Definition: parkind1.F90:32
subroutine trip_grid_nullify(YTRIP_GRID)
logical lhook
Definition: yomhook.F90:15