The TELEMAC-MASCARET system  trunk
print_header.f
Go to the documentation of this file.
1 ! ***********************
2  SUBROUTINE print_header
3 ! ***********************
4 !
5  &(code,code1)
6 !
7 !***********************************************************************
8 ! SPECIAL V7P2
9 !***********************************************************************
10 !
11 !brief Print the head for a given code name
12 !
13 !
14 !history Y. AUDOUIN (EDF)
15 !+ 11/03/2016
16 !+ V7P2
17 !+ Creation of the file
18 !
19 !history F. HUANG (CLARKSON U.) AND S.E. BOURBAN (HRW)
20 !+ 11/11/2016
21 !+ V7P3
22 !+ Coupling TELEMAC-2D with KHIONE (ice modelling component)
23 !
24 !reference www.chris.com/ascii/
25 !+ SOME OF THE DRAWINGS WERE INSPIRED BY DISPLAYS ON THE ABOVE WEBSITE.
26 !
27 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
28 !| CODE |-->| NAME OF THE CODE FOR WHICH TO PRINT THE HEADER
29 !| CODE1 |-->| NAME OF THE CODE IT IS COUPLED WITH
30 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31 !
33  IMPLICIT NONE
34 !
35 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
36 !
37  CHARACTER(LEN=24), INTENT(IN) :: code
38  CHARACTER(LEN=24), INTENT(IN) :: code1
39 !
40 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
41 !
42  WRITE(lu,*) 'LISTING OF ',trim(code), repeat('-',78)
43 !
44  IF(code(1:7).EQ."ARTEMIS") THEN
45  WRITE(lu,1) version
46  WRITE(lu,2)
47 1 FORMAT(/////,
48  & 16x,' AAA RRRR TTTTT EEEEE M M IIIII SSSS',/,
49  & 16x,'A A R R T E MM MM I S ',/,
50  & 16x,'AAAAA RRRR T EEEEE M M M I SSS ',/,
51  & 16x,'A A R R T E M M I S',/,
52  & 16x,'A A R R T EEEEE M M IIIII SSSS ',/,
53  & 16x,' ',/,
54  & 16x,' VERSION ',a,' FORTRAN 2003 ',/,
55  & 16x,/////)
56 2 FORMAT(/////,
57  & 16x,' . ',/,
58  & 16x,' ____/_ ',/,
59  & 16x," \== .'__===_| ",/,
60  & 16x,' \_ _ _ /',"---' \/ ",/,
61  & 16x,' |_|_|_|_\_______\______ ',/,
62  & 16x,' `.==-------------------|_ ',/,
63  & 16x,' `.___________________/ ',/,
64  & 16x,/////)
65  ELSE IF(code(1:7).EQ."TOMAWAC") THEN
66  WRITE(lu,3) version
67  WRITE(lu,4)
68 3 FORMAT(/////,
69  & 16x,'TTTTT OOOOO M M AAAAA W W AAAAA CCCCC ',/,
70  & 16x,' T O O MM MM A A W W A A C ',/,
71  & 16x,' T O O M W M AAAAA W W W AAAAA C ',/,
72  & 16x,' T O O M M A A WW WW A A C ',/,
73  & 16x,' T OOOOO M M A A W W A A CCCCC ',/,
74  & 16x,' ',/,
75  & 16x,' VERSION ',a,' FORTRAN 2003 ',/,
76  & 16x,/////)
77 4 FORMAT(/,
78  & 15x,' | | | ',/,
79  & 15x,' )_) )_) )_) _ ',/,
80  & 15x,' )___))___))___)\ ',/,
81  & 15x,' )____)____)_____)\\ ',/,
82  & 15x,' _____|____|____|____\\\__ ',/,
83  & 15x,' ---------\ /--------- ',/,
84  & 15x,' ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ',/,
85  & 15x,' ^^^^ ^^^^ ^^^ ^^ ',/,
86  & 15x,' ^^^^ ^^^ ',/,
87  & 15x,/////)
88  ELSE IF(code(1:9).EQ."TELEMAC2D") THEN
89  WRITE(lu,5) version
90  WRITE(lu,6)
91 5 FORMAT(/,
92  &16x,'TTTTT EEEEE L EEEEE M M AAAAA CCCCC',/,
93  &16x,' T E L E MM MM A A C ',/,
94  &16x,' T EEE L EEE M M M AAAAA C ',/,
95  &16x,' T E L E M M A A C ',/,
96  &16x,' T EEEEE LLLLL EEEEE M M A A CCCCC',/,
97  &16x,' ',/,
98  &16x,' 2D VERSION ',a,' FORTRAN 2003 ',/,
99  &16x,/////)
100 6 FORMAT(/,
101  &16x,' ~^~^~^~^~^~^~^~^~^~^~^^~^~^~^~^~^~ ',/,
102  &16x,' ~ ~ ',/,
103  &16x," \ ' o ' ",/,
104  &16x,' /\ o \ o ',/,
105  &16x," >=)'> ' /\ ' ",/,
106  &16x," \/ \ >=)'> ~ ",/,
107  &16x,' / /\ \/ ',/,
108  &16x," ~ >=)'> / . ",/,
109  &16x,' \/ ) ',/,
110  &16x,' / ( ',/,
111  &16x,' ~ ) ) ',/,
112  &16x,' } ~ ( ( ( ',/,
113  &16x,' { ) ) ) ',/,
114  &16x,' } } . ( ( ( ',/,
115  &16x,' { { /^^^^^^^^^^^^ ',/,
116  &16x,' ^^^^^^^^^\ / ',/,
117  &16x,' ^^^^^^^^^ ',/,
118  &16x,/////)
119  ELSE IF(code(1:9).EQ."TELEMAC3D") THEN
120  WRITE(lu,7) version
121  WRITE(lu,8)
122 7 FORMAT(/,
123  &16x,'TTTTT EEEEE L EEEEE M M AAAAA CCCCC',/,
124  &16x,' T E L E MM MM A A C ',/,
125  &16x,' T EEE L EEE M M M AAAAA C ',/,
126  &16x,' T E L E M M A A C ',/,
127  &16x,' T EEEEE LLLLL EEEEE M M A A CCCCC',/,
128  &16x,' ',/,
129  &16x,' 3D VERSION ',a,' FORTRAN 2003 ',/,
130  &16x,/////)
131 8 FORMAT(/////,
132  &16x,' ~^~^~^~^~^~^~^~^~^~^~^^~^~^~^~^~^~ ',/,
133  &16x,' ~ ~ ',/,
134  &16x," \ ' o ' ",/,
135  &16x,' /\ o \ o ',/,
136  &16x," >=)'> ' /\ ' ",/,
137  &16x," \/ \ >=)'> ~ ",/,
138  &16x,' / /\ \/ ',/,
139  &16x," ~ >=)'> / . ",/,
140  &16x,' \/ ) ',/,
141  &16x,' / ( ',/,
142  &16x,' ~ ) ) ',/,
143  &16x,' } ~ ( ( ( ',/,
144  &16x,' { ) ) ) ',/,
145  &16x,' } } . ( ( ( ',/,
146  &16x,' { { /^^^^^^^^^^^^ ',/,
147  &16x,' ^^^^^^^^^\ / ',/,
148  &16x,' ^^^^^^^^^ ',/,
149  &16x,/////)
150  ELSE IF(code(1:7).EQ."SISYPHE") THEN
151  WRITE(lu,9) version
152  WRITE(lu,10)
153 9 FORMAT(/////,
154  &16x,' SSSS I SSSS Y Y PPPP H H EEEEE ',/,
155  &16x,' S I S Y Y P P H H E ',/,
156  &16x,' SSS I SSS Y PPPP HHHHH EEEE ',/,
157  &16x,' S I S Y P H H E ',/,
158  &16x,' SSSS I SSSS Y P H H EEEEE ',/,
159  &16x,' ',/,
160  &16x,' VERSION ',a,' FORTRAN 2003 ',/,
161  &16x,/////)
162 10 FORMAT(/,
163  &16x,' ____ ',/,
164  &16x,' /^\ / -- ) ',/,
165  &16x,' / | \ (____/ ',/,
166  &16x,' / | | \ / / ',/,
167  &16x,' /_|_|_|_/ / ',/,
168  &16x,' | / / ',/,
169  &16x,' __ __ __ | / /__ __ __ ',/,
170  &16x,' [ ]__[ ]__[ ]. / /[ ]__[ ]__[ ] ',/,
171  &16x,' |__ ____/ /___ __| ',/,
172  &16x,' | / .------ ) | ',/,
173  &16x,' | / / / | ',/,
174  &16x,' | / / / | ',/,
175  &16x,' ~~~~~~~~~~~~-----------~~~~~~~~~~~~~~~~~~ ',/,
176  &16x,/////)
177  ELSE IF(code(1:6).EQ."WAQTEL") THEN
178  WRITE(lu,11) version
179  WRITE(lu,12)
180 11 FORMAT(/////,
181  &16x,'W W AAAAA QQQQQ TTTTT EEEEE L ',/,
182  &16x,'W W A A Q Q T E L ',/,
183  &16x,'W W W AAAAA Q Q Q T EEE L ',/,
184  &16x,'WW WW A A Q QQ T E L ',/,
185  &16x,'W W A A QQQQQ T EEEEE LLLLL ',/,
186  &16x,' ',/,
187  &16x,' VERSION ',a,' FORTRAN 2003 ',/,
188  &16x,/////)
189 12 FORMAT(/,
190  &15x," ",/,
191  &15x," ",/,
192  &15x," , , , , ",/,
193  &15x," )\ )\ )\ )\ ",/,
194  &15x," / \ / \ / \ / \ ",/,
195  &15x," ' ' ' ' ' ' ' ' ",/,
196  &15x," ', ,' ', ,' ', ,' ', ,' ",/,
197  &15x," `' `' `' `' ",/,
198  &15x,/////)
199  ELSE IF(code(1:6).EQ."KHIONE") THEN
200  WRITE(lu,13) version
201  WRITE(lu,14)
202 13 FORMAT(/////,
203  &16x,' K K H H III OOO N N EEEE ',/,
204  &16x,' K K H H I O O NN N E ',/,
205  &16x,' KK HHHH I O O N N N EEE ',/,
206  &16x,' K K H H I O O N NN E ',/,
207  &16x,' K K H H III OOO N N EEEE ',/,
208  &16x,' ',/,
209  &16x,' VERSION ',a,' FORTRAN 2003 ',/,
210  &16x,/////)
211 14 FORMAT(/,
212  &9x," _ \ ' ' ' .-~~'\ :::::: ",/,
213  &9x," _\/_/ ' _ \ ' ' / \_ |::::| ",/,
214  &9x,"/ /\_ ' _\/_/ ' ~X .-~__) l~~~~l ",/,
215  &9x," \ ' / /\_ ' \x/.-~__/~-. \ / ",/,
216  &9x," ' \ ' ' _ `-/ \ || ",/,
217  &9x," .__ __, ' || ( o o )|| ",/,
218  &9x," /_/ /\ \_\ ' ' =#:l | < )|| ",/,
219  &9x," .__ \ \/ / __. \\ \ ._/ / (3 ",/,
220  &9x," \_\_\/\/_/_/ \ / ' \\,/^-,___.-'r/|| ",/,
221  &9x," _/\___\_\/_/___/\_ ~V~ }^-\.(o).__.-//|| ",/,
222  &9x," \/ __/_/\_\__ \/ ) / \X/ // ||\ ",/,
223  &9x," /_/ /\/\ \_\ >-~-< / |\ \ X || \ ",/,
224  &9x," ' __/ /\ \__ ,,,,, \ /\,,,,,,,, | ||\ \ || | ",/,
225  &9x," \_\ \/ /_/ | \| |/ || | ",/,
226  &9x," ' ` \ || | ",/,
227  &9x," \ ||/ ",/,
228  &9x," .--.--\ ||--.",/,
229  &9x," `-._________,~`' ",/,
230  &9x,/////)
231  ELSE IF(code(1:6).EQ."STBTEL") THEN
232  WRITE(lu,15) version
233  WRITE(lu,16)
234 15 FORMAT(/////,
235  &14x,' SSSSS TTTTT BBBB TTTTT EEEEE L ',/,
236  &14x,' S T B B T E L ',/,
237  &14x,' SSSSS T BBBB T EEEE L ',/,
238  &14x,' S T B B T E L ',/,
239  &14x,' SSSSS T BBBB T EEEEE LLLLL',/,
240  &14x,' ',/,
241  &14x,' VERSION ',a,' FORTRAN 2003 ',/,
242  &14x,/////)
243 16 FORMAT(/,
244  &14x,' * * * /\__/\ * --- * ',/,
245  &14x,' * / \ / \ ',/,
246  &14x,' * * | - - | | |* ',/,
247  &14x,' * __________| \ /| | | ',/,
248  &14x,' / \ T / | \ / ',/,
249  &14x,' / | * --- ',/,
250  &14x,' | || | | / * ',/,
251  &14x,' | || /______\ / |* * ',/,
252  &14x,' | | \ | / \ / | ',/,
253  &14x,' \/ | |\ \ | | \ \ ',/,
254  &14x,' | | \ \ | | \ \ ',/,
255  &14x,' | | \ \ | | \ \ ',/,
256  &14x," ''' ''' ''' ''' ",/,
257  &14x,/////)
258  ELSE IF(code(1:8).EQ."POSTEL3D") THEN
259  WRITE(lu,17) version
260  WRITE(lu,18)
261 17 FORMAT(/////,
262  &12x,'PPPP OOO SSSS TTTTT EEEEE L 3333 DDDD ',/,
263  &12x,'P P O O S T E L 3 D D',/,
264  &12x,'PPPP O O SSS T EEEE L --- 333 D D',/,
265  &12x,'P O O S T E L 3 D D',/,
266  &12x,'P OOO SSSS T EEEEE LLLLL 3333 DDDD ',/,
267  &16x,' ',/,
268  &16x,' VERSION ',a,' FORTRAN 2003 ',/,
269  &12x,/////)
270 18 FORMAT(/,
271  &15x,' __ ',/,
272  &15x,' / \ , , ',/,
273  &15x,' _._ _ |oo| _ / \__/ \ ',/,
274  &15x,' _|||| ((/ () \)) / \ ',/,
275  &15x,' |||||/| ( ==== ) |oo| ',/,
276  &15x," \____/ _`\ /'_ / \ ",/,
277  &15x," / /.-' /<>/\ `\.( () )_._ ",/,
278  &15x," | ` / \/ \ /`'--'////) ",/,
279  &15x," \__,-'",'`| |. |\/ |/\/\|"\"` ',/,
280  &15x,' | |. | \___/\___/ ',/,
281  &15x,' | |. | ',///)
282 
283  ELSE
284  ENDIF
285  ! Coupling
286  IF(code1(1:1).NE.' ') THEN
287  WRITE(lu,*) repeat(' ',14),
288  & ' COUPLED WITH '//trim(code1)//' INTERNALLY '
289  ENDIF
290 !
291 !-----------------------------------------------------------------------
292 !
293  END SUBROUTINE print_header
character(len=6), parameter version