3 KLISTING,HFILE,KLON,KLAT,HTITLE,HTIMEUNIT)
43 USE modi_get_lonlat_trip
54 CHARACTER(LEN=*),
INTENT(IN) :: HFILE, HTITLE, HTIMEUNIT
56 INTEGER,
INTENT(IN) :: KLISTING, KLON, KLAT
60 CHARACTER(LEN=NF90_MAX_NAME),
DIMENSION(:),
ALLOCATABLE :: YVNAME
61 CHARACTER(LEN=NF90_MAX_NAME),
DIMENSION(:),
ALLOCATABLE :: YVLNAME
62 CHARACTER(LEN=NF90_MAX_NAME),
DIMENSION(:),
ALLOCATABLE :: YUNIT
64 CHARACTER(LEN=NF90_MAX_NAME) :: YFILE,YTITLE,YTIMEUNIT
66 LOGICAL,
DIMENSION(:),
ALLOCATABLE :: LZLEN
68 REAL,
DIMENSION(:),
ALLOCATABLE :: ZLON
69 REAL,
DIMENSION(:),
ALLOCATABLE :: ZLAT
70 LOGICAL,
DIMENSION(:),
ALLOCATABLE :: LDOUBLE
72 INTEGER :: INPARAM, INCID, INUM
73 REAL(KIND=JPRB) :: ZHOOK_HANDLE
80 IF (
lhook)
CALL dr_hook(
'INIT_PARAM_TRIP',0,zhook_handle)
83 IF(
cgroundw/=
'DEF' )inparam = inparam + 1
84 IF(
cvit==
'VAR' )inparam = inparam + 3
85 IF(
cgroundw==
'DIF' )inparam = inparam + 6
87 IF(
lflood )inparam = inparam + 4
92 ALLOCATE(yvname(inparam))
93 ALLOCATE(yvlname(inparam))
94 ALLOCATE(yunit(inparam))
95 ALLOCATE(lzlen(inparam))
96 ALLOCATE(ldouble(inparam))
103 yvname(1) =
'FLOWDIR ' 104 yvlname(1) =
'Flow direction ' 109 yvname(2) =
'RIVSEQ ' 110 yvlname(2) =
'River sequence ' 115 yvname(3) =
'RIVLEN ' 116 yvlname(3) =
'River length ' 121 yvname(4) =
'NUM_BAS ' 122 yvlname(4) =
'Trip basin reference number' 127 yvname(5) =
'CELL_AREA ' 128 yvlname(5) =
'Trip cell area ' 133 yvname(6) =
'GREEN_ANT ' 134 yvlname(6) =
'Greenland/Antarctic mask ' 139 yvname(7) =
'DR_AREA ' 140 yvlname(7) =
'Trip drainage area ' 151 yvname(inum) =
'TAUG ' 152 yvlname(inum) =
'Groundwater transfert time (0=permafrost area)' 153 yunit(inum) =
'days ' 154 lzlen(inum) = .false.
155 ldouble(inum) = .false.
162 yvname(inum) =
'N_RIV ' 163 yvlname(inum) =
'Manning coefficient ' 165 lzlen(inum) = .false.
166 ldouble(inum) = .false.
169 yvname(inum) =
'WIDTHRIV ' 170 yvlname(inum) =
'Stream river width ' 172 lzlen(inum) = .false.
173 ldouble(inum) = .false.
176 yvname(inum) =
'SLOPERIV ' 177 yvlname(inum) =
'Stream River slope ' 179 lzlen(inum) = .false.
180 ldouble(inum) = .true.
187 yvname(inum) =
'WEFF ' 188 yvlname(inum) =
'Effective porosity ' 190 lzlen(inum) = .false.
191 ldouble(inum) = .false.
194 yvname(inum) =
'TRANS ' 195 yvlname(inum) =
'Transmissivity' 196 yunit(inum) =
'm2/s ' 197 lzlen(inum) = .false.
198 ldouble(inum) = .false.
201 yvname(inum) =
'NUM_AQUI ' 202 yvlname(inum) =
'Numero aquifere ' 204 lzlen(inum) = .false.
205 ldouble(inum) = .false.
208 yvname(inum) =
'TOPO_RIV ' 209 yvlname(inum) =
'River elevation ' 211 lzlen(inum) = .false.
212 ldouble(inum) = .false.
216 yvname(inum) =
'TABGW_F ' 217 yvlname(inum) =
'Potential fraction of wt rise' 220 ldouble(inum) = .false.
224 yvname(inum) =
'TABGW_H ' 225 yvlname(inum) =
'Subgrid elevation height ' 228 ldouble(inum) = .false.
235 yvname(inum) =
'RIVDEPTH ' 236 yvlname(inum) =
'Stream River Depth (Hc) ' 238 lzlen(inum) = .false.
239 ldouble(inum) = .false.
246 yvname(inum) =
'NFLOOD ' 247 yvlname(inum) =
'Manning coef for flood ' 249 lzlen(inum) = .false.
250 ldouble(inum) = .false.
253 yvname(inum) =
'TABF ' 254 yvlname(inum) =
'Potential flood fraction ' 257 ldouble(inum) = .false.
260 yvname(inum)=
'TABH ' 261 yvlname(inum)=
'Topographic height ' 264 ldouble(inum) = .false.
267 yvname(inum)=
'TABVF ' 268 yvlname(inum)=
'Potential flood volume ' 269 yunit(inum)=
'kg/m2 ' 271 ldouble(inum) = .false.
277 yfile = hfile(1:len_trim(hfile))
278 ytitle = htitle(1:len_trim(htitle))
279 ytimeunit = htimeunit(1:len_trim(htimeunit))
284 IF(all(.NOT.lzlen(:)))
THEN 285 CALL nccreate(klisting,yfile,ytitle,ytimeunit,yvname,yvlname,yunit,
288 CALL nccreate(klisting,yfile,ytitle,ytimeunit,yvname,yvlname,yunit,
302 IF (
lhook)
CALL dr_hook(
'INIT_PARAM_TRIP',1,zhook_handle)
subroutine init_param_trip(TPG, KLISTING, HFILE, KLON, KLAT, HTITLE, HTIME
subroutine ncclose(KLISTING, OVERBOSE, HFILENAME, KNCID)
character(len=3) cgroundw
subroutine nccreate(KLISTING, HFILENAME, HTITLE, HTIMEUNIT, HVNAME, HVLNAME, HUNIT, PLON, PLAT, PMISSVAL, OVERBOSE, KNCID, OTIME, KZLEN, OVARZDIM, ODOUBLE)
subroutine get_lonlat_trip(TPG, KLON, KLAT, PLON, PLAT)