The TELEMAC-MASCARET system  trunk
nomvar_telemac3d.f
Go to the documentation of this file.
1 ! ***************************
2  SUBROUTINE nomvar_telemac3d
3 ! ***************************
4 !
5  &(text3,textp3,mnemo,ntrac,maxtra,nametrac)
6 !
7 !***********************************************************************
8 ! TELEMAC3D V7P1
9 !***********************************************************************
10 !
11 !brief GIVES THE VARIABLE NAMES FOR THE RESULTS AND GEOMETRY
12 !+ FILES (IN TEXTE) AND FOR THE PREVIOUS COMPUTATION
13 !+ RESULTS FILE (IN TEXTPR).
14 !
15 !note TEXTE AND TEXTPR ARE GENERALLY THE SAME EXCEPT IF THE
16 !+ PREVIOUS COMPUTATION COMES FROM ANOTHER SOFTWARE.
17 !
18 !history J-M HERVOUET (LNH)
19 !+ 30/08/2000
20 !+ V5P5
21 !+
22 !
23 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
24 !+ 13/07/2010
25 !+ V6P0
26 !+ Translation of French comments within the FORTRAN sources into
27 !+ English comments
28 !
29 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
30 !+ 21/08/2010
31 !+ V6P0
32 !+ Creation of DOXYGEN tags for automated documentation and
33 !+ cross-referencing of the FORTRAN sources
34 !
35 !history J-M HERVOUET (LNHE)
36 !+ 02/04/2012
37 !+ V6P2
38 !+ New variables added
39 !+
40 !
41 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
42 !| MAXTRA |-->| MAXIMUM NUMBER OF TRACERS
43 !| MNEMO |<->| MNEMOTECHNIC NAME
44 !| NAMETRAC |-->| NAME OF TRACERS
45 !| NTRAC |-->| NUMBER OF ACTIVE TRACERS
46 !| TEXT3 |<->| SEE ABOVE
47 !| TEXTP3 |<->| SEE ABOVE
48 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
49 !
51 !
53  IMPLICIT NONE
54 !
55 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
56 !
57  INTEGER, INTENT(IN) :: NTRAC,MAXTRA
58 ! 140 = MAXVAR IN DECLARATIONS_TELEMAC3D
59  CHARACTER(LEN=32), INTENT(INOUT) :: TEXT3(*),TEXTP3(*)
60  CHARACTER(LEN=32), INTENT(IN) :: NAMETRAC(maxtra)
61  CHARACTER(LEN=8), INTENT(INOUT) :: MNEMO(*)
62 !
63 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
64 !
65  INTEGER I,NEXT
66 !
67  CHARACTER(LEN=2) CHAR2
68 !
69 !-----------------------------------------------------------------------
70 !
71 ! INITIALISES
72 !
73  DO i=1,min(maxvar,maxva3)
74  mnemo(i) ='XXXXXXXX'
75  text3(i) ='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
76  textp3(i)='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
77  ENDDO
78 !
79 ! ENGLISH
80 !
81  IF(lng.EQ.lng_en) THEN
82 !
83  text3(1 ) = 'ELEVATION Z M '
84  text3(2 ) = 'VELOCITY U M/S '
85  text3(3 ) = 'VELOCITY V M/S '
86  text3(4 ) = 'VELOCITY W M/S '
87  text3(5 ) = 'NUX FOR VELOCITYM2/S '
88  text3(6 ) = 'NUY FOR VELOCITYM2/S '
89  text3(7 ) = 'NUZ FOR VELOCITYM2/S '
90  text3(8 ) = 'TURBULENT ENERGYJOULE/KG '
91  text3(9 ) = 'DISSIPATION WATT/KG '
92  text3(10) = 'RICHARDSON NUMB '
93  text3(11) = 'RELATIVE DENSITY '
94  text3(12) = 'DYNAMIC PRESSUREPA '
95  text3(13) = 'HYDROSTATIC PRESPA '
96  text3(14) = 'U ADVECTION M/S '
97  text3(15) = 'V ADVECTION M/S '
98  text3(16) = 'W ADVECTION M/S '
99 ! TEXT3(17) = '????????????????????????????????'
100  text3(18) = 'DM1 '
101  text3(19) = 'DHHN M '
102  text3(20) = 'UCONVC M/S '
103  text3(21) = 'VCONVC M/S '
104  text3(22) = 'UD M/S '
105  text3(23) = 'VD M/S '
106  text3(24) = 'WD M/S '
107  text3(25) = 'PRIVE 1 ? '
108  text3(26) = 'PRIVE 2 ? '
109  text3(27) = 'PRIVE 3 ? '
110  text3(28) = 'PRIVE 4 ? '
111  text3(29) = 'USTOKES M/S '
112  text3(30) = 'VSTOKES M/S '
113  text3(31) = 'WSTOKES M/S '
114 !
115 ! TEXTPR IS USED FOR READING PREVIOUS COMPUTATION FILES.
116 ! IN GENERAL TEXTPR=TEXTE BUT YOU CAN FOLLOW UP A COMPUTATION
117 ! FROM ANOTHER CODE WITH DIFFERENT VARIABLE NAMES, WHICH MUST
118 ! BE GIVEN HERE:
119 !
120  textp3(1 ) = 'ELEVATION Z M '
121  textp3(2 ) = 'VELOCITY U M/S '
122  textp3(3 ) = 'VELOCITY V M/S '
123  textp3(4 ) = 'VELOCITY W M/S '
124  textp3(5 ) = 'NUX FOR VELOCITYM2/S '
125  textp3(6 ) = 'NUY FOR VELOCITYM2/S '
126  textp3(7 ) = 'NUZ FOR VELOCITYM2/S '
127  textp3(8 ) = 'TURBULENT ENERGYJOULE/KG '
128  textp3(9 ) = 'DISSIPATION WATT/KG '
129  textp3(10) = 'RICHARDSON NUMB '
130  textp3(11) = 'RELATIVE DENSITY '
131  textp3(12) = 'DYNAMIC PRESSUREPA '
132  textp3(13) = 'HYDROSTATIC PRESPA '
133  textp3(14) = 'U ADVECTION M/S '
134  textp3(15) = 'V ADVECTION M/S '
135  textp3(16) = 'W ADVECTION M/S '
136 ! TEXTP3(17) = 'OLD VOLUMES M3 '
137  textp3(18) = 'DM1 '
138  textp3(19) = 'DHHN M '
139  textp3(20) = 'UCONVC M/S '
140  textp3(21) = 'VCONVC M/S '
141  textp3(22) = 'UD M/S '
142  textp3(23) = 'VD M/S '
143  textp3(24) = 'WD M/S '
144  textp3(25) = 'PRIVE 1 ? '
145  textp3(26) = 'PRIVE 2 ? '
146  textp3(27) = 'PRIVE 3 ? '
147  textp3(28) = 'PRIVE 4 ? '
148  textp3(29) = 'USTOKES M/S '
149  textp3(30) = 'VSTOKES M/S '
150  textp3(31) = 'WSTOKES M/S '
151 !
152 !-----------------------------------------------------------------------
153 !
154 ! FRANCAIS OU AUTRE
155 !
156  ELSE
157 !
158  text3(1 ) = 'COTE Z M '
159  text3(2 ) = 'VITESSE U M/S '
160  text3(3 ) = 'VITESSE V M/S '
161  text3(4 ) = 'VITESSE W M/S '
162  text3(5 ) = 'NUX POUR VITESSEM2/S '
163  text3(6 ) = 'NUY POUR VITESSEM2/S '
164  text3(7 ) = 'NUZ POUR VITESSEM2/S '
165  text3(8 ) = 'ENERGIE TURBULENJOULE/KG '
166  text3(9 ) = 'DISSIPATION WATT/KG '
167  text3(10) = 'NB DE RICHARDSON '
168  text3(11) = 'DENSITE RELATIVE '
169  text3(12) = 'PRESSION DYNAMIQPA '
170  text3(13) = 'PRESSION HYDROSTPA '
171  text3(14) = 'U CONVECTION M/S '
172  text3(15) = 'V CONVECTION M/S '
173  text3(16) = 'W CONVECTION M/S '
174 ! TEXT3(17) = 'VOLUMES TEMPS N M3 '
175  text3(18) = 'DM1 '
176  text3(19) = 'DHHN M '
177  text3(20) = 'UCONVC M/S '
178  text3(21) = 'VCONVC M/S '
179  text3(22) = 'UD M/S '
180  text3(23) = 'VD M/S '
181  text3(24) = 'WD M/S '
182  text3(25) = 'PRIVE 1 ? '
183  text3(26) = 'PRIVE 2 ? '
184  text3(27) = 'PRIVE 3 ? '
185  text3(28) = 'PRIVE 4 ? '
186  text3(29) = 'USTOKES M/S '
187  text3(30) = 'VSTOKES M/S '
188  text3(31) = 'WSTOKES M/S '
189 !
190 ! TEXTPR SERT A LA LECTURE DES FICHIERS DE CALCULS PRECEDENTS
191 ! A PRIORI TEXTPR=TEXTE MAIS ON PEUT ESSAYER DE FAIRE UNE SUITE
192 ! DE CALCUL A PARTIR D'UN AUTRE CODE.
193 !
194  textp3(1 ) = 'COTE Z M '
195  textp3(2 ) = 'VITESSE U M/S '
196  textp3(3 ) = 'VITESSE V M/S '
197  textp3(4 ) = 'VITESSE W M/S '
198  textp3(5 ) = 'NUX POUR VITESSEM2/S '
199  textp3(6 ) = 'NUY POUR VITESSEM2/S '
200  textp3(7 ) = 'NUZ POUR VITESSEM2/S '
201  textp3(8 ) = 'ENERGIE TURBULENJOULE/KG '
202  textp3(9 ) = 'DISSIPATION WATT/KG '
203  textp3(10) = 'NB DE RICHARDSON '
204  textp3(11) = 'DENSITE RELATIVE '
205  textp3(12) = 'PRESSION DYNAMIQPA '
206  textp3(13) = 'PRESSION HYDROSTPA '
207  textp3(14) = 'U CONVECTION M/S '
208  textp3(15) = 'V CONVECTION M/S '
209  textp3(16) = 'W CONVECTION M/S '
210 ! TEXTP3(17) = 'VOLUMES TEMPS N M3 '
211  textp3(18) = 'DM1 '
212  textp3(19) = 'DHHN M '
213  textp3(20) = 'UCONVC M/S '
214  textp3(21) = 'VCONVC M/S '
215  textp3(22) = 'UD M/S '
216  textp3(23) = 'VD M/S '
217  textp3(24) = 'WD M/S '
218  textp3(25) = 'PRIVE 1 ? '
219  textp3(26) = 'PRIVE 2 ? '
220  textp3(27) = 'PRIVE 3 ? '
221  textp3(28) = 'PRIVE 4 ? '
222  textp3(29) = 'USTOKES M/S '
223  textp3(30) = 'VSTOKES M/S '
224  textp3(31) = 'WSTOKES M/S '
225 !
226  ENDIF
227 !
228 ! WHATEVER THE LANGUAGE: TRACERS
229 !
230  nvar_t3d = 31
231  adr_trac = nvar_t3d + 1
232  next = adr_trac
233 !
234  IF(ntrac.GT.0) THEN
235  DO i=1,ntrac
236  text3(next+i-1) = nametrac(i)
237  WRITE(char2,'(I2)') i
238  mnemo(next+i-1) = 'TA'//adjustl(char2)//' '
239  ENDDO
240  DO i=1,ntrac
241  WRITE(char2,'(I2)') i
242  text3(next+ntrac+3*(i-1) ) = 'NUX '//nametrac(i)(1:12)//
243  & 'M2/S '
244  mnemo(next+ntrac+3*(i-1) ) = 'NAX'//adjustl(char2)//' '
245  text3(next+ntrac+3*(i-1)+1) = 'NUY '//nametrac(i)(1:12)//
246  & 'M2/S '
247  mnemo(next+ntrac+3*(i-1)+1) = 'NAY'//adjustl(char2)//' '
248  text3(next+ntrac+3*(i-1)+2) = 'NUZ '//nametrac(i)(1:12)//
249  & 'M2/S '
250  mnemo(next+ntrac+3*(i-1)+2) = 'NAZ'//adjustl(char2)//' '
251  ENDDO
252  ENDIF
253 !
254  IF(next+4*ntrac-1.GT.min(maxvar,maxva3)) THEN
255  WRITE(lu,99)
256 99 FORMAT(1x,'NOMVAR_TELEMAC3D : MAXVAR OR MAXVA3 TOO SMALL')
257  ENDIF
258 !
259  DO i=next,min(maxvar,maxva3)
260  textp3(i)=text3(i)
261  ENDDO
262 !
263 !-----------------------------------------------------------------------
264 !
265 ! ALIASES FOR THE VARIABLES IN THE STEERING FILE
266 !
267  mnemo(1) = 'Z '
268  mnemo(2) = 'U '
269  mnemo(3) = 'V '
270  mnemo(4) = 'W '
271  mnemo(5) = 'NUX '
272  mnemo(6) = 'NUY '
273  mnemo(7) = 'NUZ '
274  mnemo(8) = 'K '
275  mnemo(9) = 'EPS '
276  mnemo(10) = 'RI '
277  mnemo(11) = 'RHO '
278  mnemo(12) = 'DP '
279  mnemo(13) = 'PH '
280  mnemo(14) = 'UCONV '
281  mnemo(15) = 'VCONV '
282  mnemo(16) = 'WCONV '
283 ! MNEMO(17) = '????????'
284  mnemo(18) = 'DM1 '
285  mnemo(19) = 'DHHN '
286  mnemo(20) = 'UCONVC '
287  mnemo(21) = 'VCONVC '
288  mnemo(22) = 'UD '
289  mnemo(23) = 'VD '
290  mnemo(24) = 'WD '
291  mnemo(25) = 'P1 '
292  mnemo(26) = 'P2 '
293  mnemo(27) = 'P3 '
294  mnemo(28) = 'P4 '
295  mnemo(29) = 'US '
296  mnemo(30) = 'VS '
297  mnemo(31) = 'WS '
298 !
299 ! MNEMO FOR TRACERS IS DONE ABOVE
300 !
301 !-----------------------------------------------------------------------
302 !
303  RETURN
304  END
integer, parameter lng_en
subroutine nomvar_telemac3d(TEXT3, TEXTP3, MNEMO, NTRAC, MAXTRA, NAMETRAC)