Philippe 02/05/2016: moved all LIBTOOLS files in LIBTOOLS directory
[MNH-git_open_source-lfs.git] / LIBTOOLS / tools / diachro / src / DIAPRO / readmnmx_ft_pvkt.f90
1 !     ######spl
2       MODULE MODI_READMNMX_FT_PVKT
3 !     ############################
4 !
5 INTERFACE
6 !
7 SUBROUTINE READMNMX_FT_PVKT(HCARIN,PMN,PMX)
8 CHARACTER(LEN=*) :: HCARIN
9 REAL             :: PMN, PMX
10 END SUBROUTINE READMNMX_FT_PVKT
11 !
12 END INTERFACE
13 END MODULE MODI_READMNMX_FT_PVKT
14 !     ######spl
15       SUBROUTINE READMNMX_FT_PVKT(HCARIN,PMN,PMX)
16 !     ###########################################
17 !
18 !!****  *READMNMX_FT_PVKT* - 
19 !!
20 !!    PURPOSE
21 !!    -------
22 !      
23 !
24 !!**  METHOD
25 !!    ------
26 !!     
27 !!     N.A.
28 !!
29 !!    EXTERNAL
30 !!    --------
31 !!      None
32 !!
33 !!    IMPLICIT ARGUMENTS
34 !!    ------------------
35 !!      Module
36 !!
37 !!      Module
38 !!
39 !!    REFERENCE
40 !!    ---------
41 !!
42 !!
43 !!    AUTHOR
44 !!    ------
45 !!      J. Duron    * Laboratoire d'Aerologie *
46 !!
47 !!
48 !!    MODIFICATIONS
49 !!    -------------
50 !!      Original       2/09/96
51 !!      Updated   PM   
52 !-------------------------------------------------------------------------------
53 !
54 !*       0.    DECLARATIONS
55 !              ------------
56 !
57 USE MODD_RESOLVCAR
58
59 IMPLICIT NONE
60 !
61 !*       0.1   Dummy arguments
62 !              ---------------
63
64 CHARACTER(LEN=*) :: HCARIN
65 REAL             :: PMN, PMX
66 !
67 !*       0.1   Local variables
68 !              ---------------
69
70 INTEGER           :: IMASK
71 INTEGER           :: J,JM
72 LOGICAL           :: GOKMN, GOKMX
73 !REAL,DIMENSION(:),ALLOCATABLE  :: ZFTMN, ZFTMX
74 !CHARACTER(LEN=100),DIMENSION(:),ALLOCATABLE  :: YFTMN, YFTMX
75 CHARACTER(LEN=LEN(HCARIN)) :: YCARIN, YCARIN2
76
77 !
78 !------------------------------------------------------------------------------
79 GOKMN=.FALSE.
80 GOKMX=.FALSE.
81 YCARIN(1:LEN(YCARIN))=' '
82 HCARIN=ADJUSTL(HCARIN)
83 YCARIN=HCARIN
84 if(nverbia >0)then
85   print *,' **READMNMX_FT_PVKT YCARIN ',YCARIN(1:LEN_TRIM(YCARIN))
86 endif
87 IMASK=INDEX(YCARIN,'MASK')
88 IF(IMASK /=0)THEN
89 DO J=1,LEN(YCARIN)
90  IF(YCARIN(J:J) == ' ')THEN
91    JM=J-1
92    EXIT
93  ENDIF
94 ENDDO
95 YCARIN(1:LEN(YCARIN))=' '
96 YCARIN=HCARIN(JM+2:LEN_TRIM(HCARIN))
97 YCARIN=ADJUSTL(YCARIN)
98 ENDIF
99 JM=0
100 DO J=1,LEN(YCARIN)
101  IF(YCARIN(J:J) == ' ')THEN
102    JM=J-1
103    EXIT
104  ENDIF
105 ENDDO
106 IF(JM /= 0)THEN
107   YCARIN2(1:LEN(YCARIN2))=' '
108   YCARIN2=YCARIN(1:JM)
109   YCARIN(1:LEN(YCARIN))=' '
110   YCARIN=ADJUSTL(YCARIN2)
111 ENDIF
112 !
113
114 if(nverbia >0)then
115   print *,' **READMNMX_FT_PVKT JM,NBFTMN,NBFTMX ',JM,NBFTMN,NBFTMX
116 endif
117 IF(NBFTMN == 0)THEN
118   GOKMN=.FALSE.
119   print *,' AUCUN MIN USER ENREGISTRE POUR :  ',YCARIN(1:LEN_TRIM(YCARIN))
120 ELSE
121   DO J=1,NBFTMN
122 !   IF(YCARIN(1:LEN_TRIM(YCARIN)) == CFTMN(J)(1:LEN_TRIM(YCARIN)))THEN
123     IF(YCARIN(1:LEN_TRIM(YCARIN)) == CFTMN(J))THEN
124       PMN=XFTMN(J)
125       print *,' MIN ENREGISTRE SOUS LA FORME XPVMIN_',YCARIN(1:LEN_TRIM(YCARIN)),' UTILISE: ',PMN
126       GOKMN=.TRUE.
127       EXIT
128     ENDIF
129   ENDDO
130   IF(.NOT.GOKMN)THEN
131     print *,' AUCUN MIN USER ENREGISTRE POUR :  ',YCARIN(1:LEN_TRIM(YCARIN))
132   ENDIF
133 ENDIF
134 !
135 IF(NBFTMX == 0)THEN
136   GOKMX=.FALSE.
137   print *,' AUCUN MAX USER ENREGISTRE POUR :  ',YCARIN(1:LEN_TRIM(YCARIN))
138 ELSE
139   DO J=1,NBFTMX
140 !   IF(YCARIN(1:LEN_TRIM(YCARIN)) == CFTMX(J)(1:LEN_TRIM(YCARIN)))THEN
141     IF(YCARIN(1:LEN_TRIM(YCARIN)) == CFTMX(J))THEN
142       PMX=XFTMX(J)
143       print *,' MAX ENREGISTRE SOUS LA FORME XPVMAX_',YCARIN(1:LEN_TRIM(YCARIN)),' UTILISE: ',PMX
144       GOKMX=.TRUE.
145       EXIT
146     ENDIF
147   ENDDO
148   IF(.NOT.GOKMX)THEN
149     print *,' AUCUN MAX USER ENREGISTRE POUR :  ',YCARIN(1:LEN_TRIM(YCARIN))
150   ENDIF
151 ENDIF
152 IF(.NOT.GOKMN .OR. .NOT.GOKMX)THEN
153   LOK=.FALSE.
154   print *,' CALCUL AUTOMATIQUE DES BORNES POUR : ',YCARIN(1:LEN_TRIM(YCARIN))
155 ELSE
156   LOK=.TRUE.
157 ENDIF
158 if(nverbia >0)then
159   print *,' **READMNMX_FT_PVKT LOK ',LOK
160 endif
161 RETURN
162 END SUBROUTINE READMNMX_FT_PVKT