SURFEX v8.1
General documentation of Surfex
read_nam_trip.F90
Go to the documentation of this file.
1 !#########
2 SUBROUTINE read_nam_trip(KLISTING)
3 !#######################################################
4 !
5 !!**** *READ_NAM_TRIP* - routine to read the configuration for TRIP
6 !!
7 !! PURPOSE
8 !! -------
9 !!
10 !!** METHOD
11 !! ------
12 !!
13 !! EXTERNAL
14 !! --------
15 !!
16 !!
17 !! IMPLICIT ARGUMENTS
18 !! ------------------
19 !!
20 !! REFERENCE
21 !! ---------
22 !!
23 !!
24 !! AUTHOR
25 !! ------
26 !! B. Decharme *Meteo France*
27 !!
28 !! MODIFICATIONS
29 !! -------------
30 !! Original 05/2008
31 !-------------------------------------------------------------------------------
32 !
33 !* 0. DECLARATIONS
34 ! ------------
35 !
36 !
37 USE modn_trip
38 !
39 USE modi_trip_posnam
40 USE modi_abort_trip
41 USE modi_test_nam_var_trip
42 USE modi_open_trip_namelist
43 USE modi_close_trip_namelist
44 !
45 USE yomhook ,ONLY : lhook, dr_hook
46 USE parkind1 ,ONLY : jprb
47 !
48 IMPLICIT NONE
49 !
50 !* 0.1 Declarations of arguments
51 ! -------------------------
52 !
53 INTEGER, INTENT(IN) :: KLISTING
54 !
55 !* 0.2 Declarations of local variables
56 ! -------------------------------
57 !
58 !
59 LOGICAL :: GFOUND ! Return code when searching namelist
60 INTEGER :: INAM ! logical unit of namelist file
61 INTEGER :: IMI
62 !
63 REAL(KIND=JPRB) :: ZHOOK_HANDLE
64 !
65 !-------------------------------------------------------------------------------
66 !
67 IF (lhook) CALL dr_hook('READ_NAM_TRIP',0,zhook_handle)
68 !
69 !* open namelist file
70 !
71  CALL open_trip_namelist(inam)
72 !
73 !* reading of namelist
74 ! -------------------
75 !
76  CALL trip_posnam(inam,'NAM_TRIP',gfound,klisting)
77 IF (gfound) THEN
78  READ(unit=inam,nml=nam_trip)
79 ELSE
80  WRITE(klisting,*)'READ_NAM_TRIP: NAM_TRIP not found in namelist'
81  CALL abort_trip('READ_NAM_TRIP: NAM_TRIP not found in namelist')
82 ENDIF
83 !
84  CALL test_nam_var_trip(klisting,'CGROUNDW',cgroundw,'DEF','CST','DIF')
85  CALL test_nam_var_trip(klisting,'CVIT',cvit,'DEF','VAR')
86 !
87 !* close namelist file
88 !
89  CALL close_trip_namelist(inam)
90 !
91 IF (lhook) CALL dr_hook('READ_NAM_TRIP',1,zhook_handle)
92 !
93 !-------------------------------------------------------------------------------
94 !
95 END SUBROUTINE read_nam_trip
subroutine test_nam_var_trip(KLISTING, HNAME, HVAR, HVALUE1, HVALUE2, HVALUE3, HVALUE4, HVALUE5, HVALUE6, HVALUE7, HVALUE8, HVALUE9)
subroutine read_nam_trip(KLISTING)
integer, parameter jprb
Definition: parkind1.F90:32
character(len=3) cvit
Definition: modn_trip.F90:41
character(len=3) cgroundw
Definition: modn_trip.F90:49
logical lhook
Definition: yomhook.F90:15
subroutine close_trip_namelist(KLUNAM)
subroutine open_trip_namelist(KLUNAM)
subroutine abort_trip(YTEXT)
Definition: abort_trip.F90:3
subroutine trip_posnam(KULNAM, HDNAML, OFOUND, KLISTING)
Definition: trip_posnam.F90:3