Line data Source code
1 : !--------------------------------------------------------------------------------------------------!
2 : ! CP2K: A general program to perform molecular dynamics simulations !
3 : ! Copyright 2000-2024 CP2K developers group <https://cp2k.org> !
4 : ! !
5 : ! SPDX-License-Identifier: GPL-2.0-or-later !
6 : !--------------------------------------------------------------------------------------------------!
7 :
8 : ! **************************************************************************************************
9 : !> \brief Utilities for string manipulations
10 : !> \par History
11 : !> Adapted compress and uppercase for use in CP2K (JGH)
12 : !> string_to_integer and integer_to_string added (06.02.2001, MK)
13 : !> Cleaned (04.01.2004,MK)
14 : !> \author MK & JGH
15 : ! **************************************************************************************************
16 : MODULE string_utilities
17 :
18 : USE ISO_C_BINDING, ONLY: C_CHAR,&
19 : C_NULL_CHAR
20 : USE kinds, ONLY: default_blank_character
21 :
22 : IMPLICIT NONE
23 :
24 : PRIVATE
25 :
26 : CHARACTER(LEN=1), PARAMETER :: backslash = '\\'
27 : CHARACTER(LEN=1), PARAMETER :: star = '*'
28 : CHARACTER(LEN=1), PARAMETER :: question = '?'
29 : CHARACTER(LEN=1), PARAMETER :: newline = ACHAR(10)
30 :
31 : PUBLIC :: ascii_to_string, &
32 : compress, &
33 : integer_to_string, &
34 : is_whitespace, &
35 : lowercase, &
36 : remove_word, &
37 : s2a, a2s, &
38 : str_comp, &
39 : string_to_ascii, &
40 : strip_control_codes, &
41 : substitute_special_xml_tokens, &
42 : typo_match, &
43 : uppercase, &
44 : xstring, &
45 : strlcpy_c2f
46 :
47 : PUBLIC :: newline
48 :
49 : INTERFACE s2a
50 : MODULE PROCEDURE s2a_1, s2a_2, s2a_3, s2a_4, s2a_5, s2a_6, s2a_7, s2a_8, s2a_9, &
51 : s2a_10, s2a_11, s2a_12, s2a_13, s2a_14, s2a_15, s2a_16, s2a_17, s2a_18, s2a_19, &
52 : s2a_20, s2a_21, s2a_22, s2a_23, s2a_24, s2a_25, s2a_26, s2a_27, s2a_28, s2a_29, &
53 : s2a_30, s2a_31, s2a_32, s2a_33, s2a_34, s2a_35, s2a_36, s2a_37, s2a_38, s2a_39, &
54 : s2a_40, s2a_41, s2a_42, s2a_43, s2a_44, s2a_45, s2a_46, s2a_47, s2a_48, s2a_49, &
55 : s2a_50, s2a_51, s2a_52, s2a_53, s2a_54, s2a_55, s2a_56, s2a_57, s2a_58, s2a_59 ! should be clear how to add more
56 : END INTERFACE
57 :
58 : CONTAINS
59 :
60 : ! **************************************************************************************************
61 : !> \brief returns a non-zero positive value if typo_string equals string apart from a few typos.
62 : !> It is case sensitive, apart from typos.
63 : !> \param string ...
64 : !> \param typo_string ...
65 : !> \return ...
66 : !> \par History
67 : !> 02.2006 created [Joost VandeVondele]
68 : !> 09.2020 switch to Levenshtein distance [Ole Schuett]
69 : ! **************************************************************************************************
70 0 : ELEMENTAL FUNCTION typo_match(string, typo_string) RESULT(match)
71 : CHARACTER(LEN=*), INTENT(IN) :: string, typo_string
72 : INTEGER :: match
73 :
74 0 : match = MAX(0, 100 - levenshtein_distance(string, typo_string))
75 :
76 0 : END FUNCTION typo_match
77 :
78 : ! **************************************************************************************************
79 : !> \brief Compute the Levenshtein edit distance between the two given strings.
80 : !> \param s source string
81 : !> \param t target string
82 : !> \return edit distance
83 : !> \author Ole Schuett
84 : ! **************************************************************************************************
85 0 : PURE FUNCTION levenshtein_distance(s, t) RESULT(distance)
86 :
87 : CHARACTER(LEN=*), INTENT(IN) :: s, t
88 : INTEGER :: distance
89 :
90 : INTEGER :: i, j, m, n, substitution_cost
91 0 : INTEGER, ALLOCATABLE, DIMENSION(:, :) :: d
92 :
93 0 : m = LEN_TRIM(s)
94 0 : n = LEN_TRIM(t)
95 :
96 : ! distance between the first i characters of s and the first j characters of t
97 0 : ALLOCATE (d(0:m, 0:n))
98 0 : d(:, :) = 0
99 :
100 : ! source prefixes can be transformed into empty string by dropping all characters
101 0 : DO i = 1, m
102 0 : d(i, 0) = i
103 : END DO
104 :
105 : ! target prefixes can be reached from empty source prefix by inserting every character
106 0 : DO j = 1, n
107 0 : d(0, j) = j
108 : END DO
109 :
110 0 : DO j = 1, n
111 0 : DO i = 1, m
112 0 : IF (s(i:i) == t(j:j)) THEN
113 : substitution_cost = 0
114 : ELSE
115 0 : substitution_cost = 1
116 : END IF
117 : d(i, j) = MIN(d(i - 1, j) + 1, & ! deletion
118 : d(i, j - 1) + 1, & ! insertion
119 0 : d(i - 1, j - 1) + substitution_cost) ! substitution
120 : END DO
121 : END DO
122 :
123 0 : distance = d(m, n)
124 :
125 0 : END FUNCTION levenshtein_distance
126 :
127 : ! **************************************************************************************************
128 : !> \brief Converts a character-array into a string
129 : !> \param array ...
130 : !> \return ...
131 : !> \par History
132 : !> 10.2013 created [Ole Schuett]
133 : ! **************************************************************************************************
134 21 : PURE FUNCTION a2s(array) RESULT(string)
135 : CHARACTER, DIMENSION(:), INTENT(IN) :: array
136 : CHARACTER(LEN=SIZE(array)) :: string
137 :
138 : INTEGER :: i
139 :
140 3109 : DO i = 1, SIZE(array)
141 3109 : string(i:i) = array(i)
142 : END DO
143 21 : END FUNCTION a2s
144 :
145 : ! **************************************************************************************************
146 : !> \brief converts a bunch of strings of different length to an array of
147 : !> strings of the same length
148 : !> \param s1 ...
149 : !> \return ...
150 : !> \par History
151 : !> 11.2004 created [Joost VandeVondele ]
152 : !> \note
153 : !> can be used instead of the illegal (/"12","1234"/) generating
154 : !> s2a("12","1234").EQ.(/"12 ","1234"/)
155 : ! **************************************************************************************************
156 1859395 : PURE FUNCTION s2a_1(s1) RESULT(a)
157 : CHARACTER(LEN=*), INTENT(IN) :: s1
158 : CHARACTER(LEN=1000), DIMENSION(1) :: a
159 :
160 1859395 : a(1) = s1
161 1859395 : END FUNCTION s2a_1
162 : ! **************************************************************************************************
163 : ! **************************************************************************************************
164 : !> \brief ...
165 : !> \param s1 ...
166 : !> \param s2 ...
167 : !> \return ...
168 : ! **************************************************************************************************
169 10615124 : PURE FUNCTION s2a_2(s1, s2) RESULT(a)
170 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2
171 : CHARACTER(LEN=1000), DIMENSION(2) :: a
172 :
173 5307562 : a(1) = s1; a(2) = s2
174 5307562 : END FUNCTION s2a_2
175 : ! **************************************************************************************************
176 : ! **************************************************************************************************
177 : !> \brief ...
178 : !> \param s1 ...
179 : !> \param s2 ...
180 : !> \param s3 ...
181 : !> \return ...
182 : ! **************************************************************************************************
183 35412430 : PURE FUNCTION s2a_3(s1, s2, s3) RESULT(a)
184 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3
185 : CHARACTER(LEN=1000), DIMENSION(3) :: a
186 :
187 17706215 : a(1) = s1; a(2) = s2; a(3) = s3
188 17706215 : END FUNCTION s2a_3
189 : ! **************************************************************************************************
190 : ! **************************************************************************************************
191 : !> \brief ...
192 : !> \param s1 ...
193 : !> \param s2 ...
194 : !> \param s3 ...
195 : !> \param s4 ...
196 : !> \return ...
197 : ! **************************************************************************************************
198 5113408 : PURE FUNCTION s2a_4(s1, s2, s3, s4) RESULT(a)
199 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4
200 : CHARACTER(LEN=1000), DIMENSION(4) :: a
201 :
202 2556704 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4
203 2556704 : END FUNCTION s2a_4
204 : ! **************************************************************************************************
205 : ! **************************************************************************************************
206 : !> \brief ...
207 : !> \param s1 ...
208 : !> \param s2 ...
209 : !> \param s3 ...
210 : !> \param s4 ...
211 : !> \param s5 ...
212 : !> \return ...
213 : ! **************************************************************************************************
214 3508208 : PURE FUNCTION s2a_5(s1, s2, s3, s4, s5) RESULT(a)
215 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5
216 : CHARACTER(LEN=1000), DIMENSION(5) :: a
217 :
218 1754104 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
219 1754104 : END FUNCTION s2a_5
220 : ! **************************************************************************************************
221 : ! **************************************************************************************************
222 : !> \brief ...
223 : !> \param s1 ...
224 : !> \param s2 ...
225 : !> \param s3 ...
226 : !> \param s4 ...
227 : !> \param s5 ...
228 : !> \param s6 ...
229 : !> \return ...
230 : ! **************************************************************************************************
231 2374372 : PURE FUNCTION s2a_6(s1, s2, s3, s4, s5, s6) RESULT(a)
232 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6
233 : CHARACTER(LEN=1000), DIMENSION(6) :: a
234 :
235 1187186 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6
236 1187186 : END FUNCTION s2a_6
237 : ! **************************************************************************************************
238 : ! **************************************************************************************************
239 : !> \brief ...
240 : !> \param s1 ...
241 : !> \param s2 ...
242 : !> \param s3 ...
243 : !> \param s4 ...
244 : !> \param s5 ...
245 : !> \param s6 ...
246 : !> \param s7 ...
247 : !> \return ...
248 : ! **************************************************************************************************
249 12966944 : PURE FUNCTION s2a_7(s1, s2, s3, s4, s5, s6, s7) RESULT(a)
250 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7
251 : CHARACTER(LEN=1000), DIMENSION(7) :: a
252 :
253 6483472 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
254 6483472 : END FUNCTION s2a_7
255 : ! **************************************************************************************************
256 : ! **************************************************************************************************
257 : !> \brief ...
258 : !> \param s1 ...
259 : !> \param s2 ...
260 : !> \param s3 ...
261 : !> \param s4 ...
262 : !> \param s5 ...
263 : !> \param s6 ...
264 : !> \param s7 ...
265 : !> \param s8 ...
266 : !> \return ...
267 : ! **************************************************************************************************
268 894000 : PURE FUNCTION s2a_8(s1, s2, s3, s4, s5, s6, s7, s8) RESULT(a)
269 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8
270 : CHARACTER(LEN=1000), DIMENSION(8) :: a
271 :
272 447000 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
273 447000 : a(8) = s8
274 447000 : END FUNCTION s2a_8
275 : ! **************************************************************************************************
276 : ! **************************************************************************************************
277 : !> \brief ...
278 : !> \param s1 ...
279 : !> \param s2 ...
280 : !> \param s3 ...
281 : !> \param s4 ...
282 : !> \param s5 ...
283 : !> \param s6 ...
284 : !> \param s7 ...
285 : !> \param s8 ...
286 : !> \param s9 ...
287 : !> \return ...
288 : ! **************************************************************************************************
289 978800 : PURE FUNCTION s2a_9(s1, s2, s3, s4, s5, s6, s7, s8, s9) RESULT(a)
290 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9
291 : CHARACTER(LEN=1000), DIMENSION(9) :: a
292 :
293 489400 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
294 489400 : a(8) = s8; a(9) = s9
295 489400 : END FUNCTION s2a_9
296 : ! **************************************************************************************************
297 : ! **************************************************************************************************
298 : !> \brief ...
299 : !> \param s1 ...
300 : !> \param s2 ...
301 : !> \param s3 ...
302 : !> \param s4 ...
303 : !> \param s5 ...
304 : !> \param s6 ...
305 : !> \param s7 ...
306 : !> \param s8 ...
307 : !> \param s9 ...
308 : !> \param s10 ...
309 : !> \return ...
310 : ! **************************************************************************************************
311 290404 : PURE FUNCTION s2a_10(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10) RESULT(a)
312 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10
313 : CHARACTER(LEN=1000), DIMENSION(10) :: a
314 :
315 145202 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
316 145202 : a(8) = s8; a(9) = s9; a(10) = s10
317 145202 : END FUNCTION s2a_10
318 : ! **************************************************************************************************
319 : ! **************************************************************************************************
320 : !> \brief ...
321 : !> \param s1 ...
322 : !> \param s2 ...
323 : !> \param s3 ...
324 : !> \param s4 ...
325 : !> \param s5 ...
326 : !> \param s6 ...
327 : !> \param s7 ...
328 : !> \param s8 ...
329 : !> \param s9 ...
330 : !> \param s10 ...
331 : !> \param s11 ...
332 : !> \return ...
333 : ! **************************************************************************************************
334 17060 : PURE FUNCTION s2a_11(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11) RESULT(a)
335 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
336 : s11
337 : CHARACTER(LEN=1000), DIMENSION(11) :: a
338 :
339 8530 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
340 8530 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11
341 8530 : END FUNCTION s2a_11
342 : ! **************************************************************************************************
343 : ! **************************************************************************************************
344 : !> \brief ...
345 : !> \param s1 ...
346 : !> \param s2 ...
347 : !> \param s3 ...
348 : !> \param s4 ...
349 : !> \param s5 ...
350 : !> \param s6 ...
351 : !> \param s7 ...
352 : !> \param s8 ...
353 : !> \param s9 ...
354 : !> \param s10 ...
355 : !> \param s11 ...
356 : !> \param s12 ...
357 : !> \return ...
358 : ! **************************************************************************************************
359 0 : PURE FUNCTION s2a_12(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12) RESULT(a)
360 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
361 : s11, s12
362 : CHARACTER(LEN=1000), DIMENSION(12) :: a
363 :
364 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
365 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12
366 0 : END FUNCTION s2a_12
367 : ! **************************************************************************************************
368 : ! **************************************************************************************************
369 : !> \brief ...
370 : !> \param s1 ...
371 : !> \param s2 ...
372 : !> \param s3 ...
373 : !> \param s4 ...
374 : !> \param s5 ...
375 : !> \param s6 ...
376 : !> \param s7 ...
377 : !> \param s8 ...
378 : !> \param s9 ...
379 : !> \param s10 ...
380 : !> \param s11 ...
381 : !> \param s12 ...
382 : !> \param s13 ...
383 : !> \return ...
384 : ! **************************************************************************************************
385 273280 : PURE FUNCTION s2a_13(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13) RESULT(a)
386 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
387 : s11, s12, s13
388 : CHARACTER(LEN=1000), DIMENSION(13) :: a
389 :
390 136640 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
391 136640 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13
392 136640 : END FUNCTION s2a_13
393 : ! **************************************************************************************************
394 : ! **************************************************************************************************
395 : !> \brief ...
396 : !> \param s1 ...
397 : !> \param s2 ...
398 : !> \param s3 ...
399 : !> \param s4 ...
400 : !> \param s5 ...
401 : !> \param s6 ...
402 : !> \param s7 ...
403 : !> \param s8 ...
404 : !> \param s9 ...
405 : !> \param s10 ...
406 : !> \param s11 ...
407 : !> \param s12 ...
408 : !> \param s13 ...
409 : !> \param s14 ...
410 : !> \return ...
411 : ! **************************************************************************************************
412 262780 : PURE FUNCTION s2a_14(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14) RESULT(a)
413 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
414 : s11, s12, s13, s14
415 : CHARACTER(LEN=1000), DIMENSION(14) :: a
416 :
417 131390 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
418 131390 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
419 131390 : END FUNCTION s2a_14
420 : ! **************************************************************************************************
421 : ! **************************************************************************************************
422 : !> \brief ...
423 : !> \param s1 ...
424 : !> \param s2 ...
425 : !> \param s3 ...
426 : !> \param s4 ...
427 : !> \param s5 ...
428 : !> \param s6 ...
429 : !> \param s7 ...
430 : !> \param s8 ...
431 : !> \param s9 ...
432 : !> \param s10 ...
433 : !> \param s11 ...
434 : !> \param s12 ...
435 : !> \param s13 ...
436 : !> \param s14 ...
437 : !> \param s15 ...
438 : !> \return ...
439 : ! **************************************************************************************************
440 17060 : PURE FUNCTION s2a_15(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15) RESULT(a)
441 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
442 : s11, s12, s13, s14, s15
443 : CHARACTER(LEN=1000), DIMENSION(15) :: a
444 :
445 8530 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
446 8530 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
447 8530 : a(15) = s15
448 8530 : END FUNCTION s2a_15
449 : ! **************************************************************************************************
450 : ! **************************************************************************************************
451 : !> \brief ...
452 : !> \param s1 ...
453 : !> \param s2 ...
454 : !> \param s3 ...
455 : !> \param s4 ...
456 : !> \param s5 ...
457 : !> \param s6 ...
458 : !> \param s7 ...
459 : !> \param s8 ...
460 : !> \param s9 ...
461 : !> \param s10 ...
462 : !> \param s11 ...
463 : !> \param s12 ...
464 : !> \param s13 ...
465 : !> \param s14 ...
466 : !> \param s15 ...
467 : !> \param s16 ...
468 : !> \return ...
469 : ! **************************************************************************************************
470 0 : PURE FUNCTION s2a_16(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
471 0 : s16) RESULT(a)
472 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
473 : s11, s12, s13, s14, s15, s16
474 : CHARACTER(LEN=1000), DIMENSION(16) :: a
475 :
476 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
477 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
478 0 : a(15) = s15; a(16) = s16
479 0 : END FUNCTION s2a_16
480 : ! **************************************************************************************************
481 : ! **************************************************************************************************
482 : !> \brief ...
483 : !> \param s1 ...
484 : !> \param s2 ...
485 : !> \param s3 ...
486 : !> \param s4 ...
487 : !> \param s5 ...
488 : !> \param s6 ...
489 : !> \param s7 ...
490 : !> \param s8 ...
491 : !> \param s9 ...
492 : !> \param s10 ...
493 : !> \param s11 ...
494 : !> \param s12 ...
495 : !> \param s13 ...
496 : !> \param s14 ...
497 : !> \param s15 ...
498 : !> \param s16 ...
499 : !> \param s17 ...
500 : !> \return ...
501 : ! **************************************************************************************************
502 17092 : PURE FUNCTION s2a_17(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
503 34184 : s16, s17) RESULT(a)
504 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
505 : s11, s12, s13, s14, s15, s16, s17
506 : CHARACTER(LEN=1000), DIMENSION(17) :: a
507 :
508 17092 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
509 17092 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
510 17092 : a(15) = s15; a(16) = s16; a(17) = s17
511 17092 : END FUNCTION s2a_17
512 : ! **************************************************************************************************
513 : ! **************************************************************************************************
514 : !> \brief ...
515 : !> \param s1 ...
516 : !> \param s2 ...
517 : !> \param s3 ...
518 : !> \param s4 ...
519 : !> \param s5 ...
520 : !> \param s6 ...
521 : !> \param s7 ...
522 : !> \param s8 ...
523 : !> \param s9 ...
524 : !> \param s10 ...
525 : !> \param s11 ...
526 : !> \param s12 ...
527 : !> \param s13 ...
528 : !> \param s14 ...
529 : !> \param s15 ...
530 : !> \param s16 ...
531 : !> \param s17 ...
532 : !> \param s18 ...
533 : !> \return ...
534 : ! **************************************************************************************************
535 0 : PURE FUNCTION s2a_18(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
536 0 : s16, s17, s18) RESULT(a)
537 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
538 : s11, s12, s13, s14, s15, s16, s17, s18
539 : CHARACTER(LEN=1000), DIMENSION(18) :: a
540 :
541 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
542 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
543 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18
544 0 : END FUNCTION s2a_18
545 : ! **************************************************************************************************
546 : ! **************************************************************************************************
547 : !> \brief ...
548 : !> \param s1 ...
549 : !> \param s2 ...
550 : !> \param s3 ...
551 : !> \param s4 ...
552 : !> \param s5 ...
553 : !> \param s6 ...
554 : !> \param s7 ...
555 : !> \param s8 ...
556 : !> \param s9 ...
557 : !> \param s10 ...
558 : !> \param s11 ...
559 : !> \param s12 ...
560 : !> \param s13 ...
561 : !> \param s14 ...
562 : !> \param s15 ...
563 : !> \param s16 ...
564 : !> \param s17 ...
565 : !> \param s18 ...
566 : !> \param s19 ...
567 : !> \return ...
568 : ! **************************************************************************************************
569 0 : PURE FUNCTION s2a_19(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
570 0 : s16, s17, s18, s19) RESULT(a)
571 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
572 : s11, s12, s13, s14, s15, s16, s17, &
573 : s18, s19
574 : CHARACTER(LEN=1000), DIMENSION(19) :: a
575 :
576 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
577 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
578 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19
579 0 : END FUNCTION s2a_19
580 : ! **************************************************************************************************
581 : ! **************************************************************************************************
582 : !> \brief ...
583 : !> \param s1 ...
584 : !> \param s2 ...
585 : !> \param s3 ...
586 : !> \param s4 ...
587 : !> \param s5 ...
588 : !> \param s6 ...
589 : !> \param s7 ...
590 : !> \param s8 ...
591 : !> \param s9 ...
592 : !> \param s10 ...
593 : !> \param s11 ...
594 : !> \param s12 ...
595 : !> \param s13 ...
596 : !> \param s14 ...
597 : !> \param s15 ...
598 : !> \param s16 ...
599 : !> \param s17 ...
600 : !> \param s18 ...
601 : !> \param s19 ...
602 : !> \param s20 ...
603 : !> \return ...
604 : ! **************************************************************************************************
605 0 : PURE FUNCTION s2a_20(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
606 0 : s16, s17, s18, s19, s20) RESULT(a)
607 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
608 : s11, s12, s13, s14, s15, s16, s17, &
609 : s18, s19, s20
610 : CHARACTER(LEN=1000), DIMENSION(20) :: a
611 :
612 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
613 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
614 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
615 0 : END FUNCTION s2a_20
616 : ! **************************************************************************************************
617 : ! **************************************************************************************************
618 : !> \brief ...
619 : !> \param s1 ...
620 : !> \param s2 ...
621 : !> \param s3 ...
622 : !> \param s4 ...
623 : !> \param s5 ...
624 : !> \param s6 ...
625 : !> \param s7 ...
626 : !> \param s8 ...
627 : !> \param s9 ...
628 : !> \param s10 ...
629 : !> \param s11 ...
630 : !> \param s12 ...
631 : !> \param s13 ...
632 : !> \param s14 ...
633 : !> \param s15 ...
634 : !> \param s16 ...
635 : !> \param s17 ...
636 : !> \param s18 ...
637 : !> \param s19 ...
638 : !> \param s20 ...
639 : !> \param s21 ...
640 : !> \return ...
641 : ! **************************************************************************************************
642 0 : PURE FUNCTION s2a_21(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
643 0 : s16, s17, s18, s19, s20, s21) RESULT(a)
644 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
645 : s11, s12, s13, s14, s15, s16, s17, &
646 : s18, s19, s20, s21
647 : CHARACTER(LEN=1000), DIMENSION(21) :: a
648 :
649 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
650 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
651 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
652 0 : a(21) = s21
653 0 : END FUNCTION s2a_21
654 : ! **************************************************************************************************
655 : ! **************************************************************************************************
656 : !> \brief ...
657 : !> \param s1 ...
658 : !> \param s2 ...
659 : !> \param s3 ...
660 : !> \param s4 ...
661 : !> \param s5 ...
662 : !> \param s6 ...
663 : !> \param s7 ...
664 : !> \param s8 ...
665 : !> \param s9 ...
666 : !> \param s10 ...
667 : !> \param s11 ...
668 : !> \param s12 ...
669 : !> \param s13 ...
670 : !> \param s14 ...
671 : !> \param s15 ...
672 : !> \param s16 ...
673 : !> \param s17 ...
674 : !> \param s18 ...
675 : !> \param s19 ...
676 : !> \param s20 ...
677 : !> \param s21 ...
678 : !> \param s22 ...
679 : !> \return ...
680 : ! **************************************************************************************************
681 0 : PURE FUNCTION s2a_22(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
682 0 : s16, s17, s18, s19, s20, s21, s22) RESULT(a)
683 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
684 : s11, s12, s13, s14, s15, s16, s17, &
685 : s18, s19, s20, s21, s22
686 : CHARACTER(LEN=1000), DIMENSION(22) :: a
687 :
688 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
689 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
690 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
691 0 : a(21) = s21; a(22) = s22
692 0 : END FUNCTION s2a_22
693 : ! **************************************************************************************************
694 : ! **************************************************************************************************
695 : !> \brief ...
696 : !> \param s1 ...
697 : !> \param s2 ...
698 : !> \param s3 ...
699 : !> \param s4 ...
700 : !> \param s5 ...
701 : !> \param s6 ...
702 : !> \param s7 ...
703 : !> \param s8 ...
704 : !> \param s9 ...
705 : !> \param s10 ...
706 : !> \param s11 ...
707 : !> \param s12 ...
708 : !> \param s13 ...
709 : !> \param s14 ...
710 : !> \param s15 ...
711 : !> \param s16 ...
712 : !> \param s17 ...
713 : !> \param s18 ...
714 : !> \param s19 ...
715 : !> \param s20 ...
716 : !> \param s21 ...
717 : !> \param s22 ...
718 : !> \param s23 ...
719 : !> \return ...
720 : ! **************************************************************************************************
721 0 : PURE FUNCTION s2a_23(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
722 0 : s16, s17, s18, s19, s20, s21, s22, s23) RESULT(a)
723 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
724 : s11, s12, s13, s14, s15, s16, s17, &
725 : s18, s19, s20, s21, s22, s23
726 : CHARACTER(LEN=1000), DIMENSION(23) :: a
727 :
728 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
729 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
730 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
731 0 : a(21) = s21; a(22) = s22; a(23) = s23
732 0 : END FUNCTION s2a_23
733 : ! **************************************************************************************************
734 : ! **************************************************************************************************
735 : !> \brief ...
736 : !> \param s1 ...
737 : !> \param s2 ...
738 : !> \param s3 ...
739 : !> \param s4 ...
740 : !> \param s5 ...
741 : !> \param s6 ...
742 : !> \param s7 ...
743 : !> \param s8 ...
744 : !> \param s9 ...
745 : !> \param s10 ...
746 : !> \param s11 ...
747 : !> \param s12 ...
748 : !> \param s13 ...
749 : !> \param s14 ...
750 : !> \param s15 ...
751 : !> \param s16 ...
752 : !> \param s17 ...
753 : !> \param s18 ...
754 : !> \param s19 ...
755 : !> \param s20 ...
756 : !> \param s21 ...
757 : !> \param s22 ...
758 : !> \param s23 ...
759 : !> \param s24 ...
760 : !> \return ...
761 : ! **************************************************************************************************
762 0 : PURE FUNCTION s2a_24(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
763 0 : s16, s17, s18, s19, s20, s21, s22, s23, s24) RESULT(a)
764 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
765 : s11, s12, s13, s14, s15, s16, s17, &
766 : s18, s19, s20, s21, s22, s23, s24
767 : CHARACTER(LEN=1000), DIMENSION(24) :: a
768 :
769 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
770 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
771 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
772 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24
773 0 : END FUNCTION s2a_24
774 : ! **************************************************************************************************
775 : ! **************************************************************************************************
776 : !> \brief ...
777 : !> \param s1 ...
778 : !> \param s2 ...
779 : !> \param s3 ...
780 : !> \param s4 ...
781 : !> \param s5 ...
782 : !> \param s6 ...
783 : !> \param s7 ...
784 : !> \param s8 ...
785 : !> \param s9 ...
786 : !> \param s10 ...
787 : !> \param s11 ...
788 : !> \param s12 ...
789 : !> \param s13 ...
790 : !> \param s14 ...
791 : !> \param s15 ...
792 : !> \param s16 ...
793 : !> \param s17 ...
794 : !> \param s18 ...
795 : !> \param s19 ...
796 : !> \param s20 ...
797 : !> \param s21 ...
798 : !> \param s22 ...
799 : !> \param s23 ...
800 : !> \param s24 ...
801 : !> \param s25 ...
802 : !> \return ...
803 : ! **************************************************************************************************
804 0 : PURE FUNCTION s2a_25(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
805 0 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25) RESULT(a)
806 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
807 : s11, s12, s13, s14, s15, s16, s17, &
808 : s18, s19, s20, s21, s22, s23, s24, s25
809 : CHARACTER(LEN=1000), DIMENSION(25) :: a
810 :
811 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
812 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
813 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
814 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
815 0 : END FUNCTION s2a_25
816 : ! **************************************************************************************************
817 : ! **************************************************************************************************
818 : !> \brief ...
819 : !> \param s1 ...
820 : !> \param s2 ...
821 : !> \param s3 ...
822 : !> \param s4 ...
823 : !> \param s5 ...
824 : !> \param s6 ...
825 : !> \param s7 ...
826 : !> \param s8 ...
827 : !> \param s9 ...
828 : !> \param s10 ...
829 : !> \param s11 ...
830 : !> \param s12 ...
831 : !> \param s13 ...
832 : !> \param s14 ...
833 : !> \param s15 ...
834 : !> \param s16 ...
835 : !> \param s17 ...
836 : !> \param s18 ...
837 : !> \param s19 ...
838 : !> \param s20 ...
839 : !> \param s21 ...
840 : !> \param s22 ...
841 : !> \param s23 ...
842 : !> \param s24 ...
843 : !> \param s25 ...
844 : !> \param s26 ...
845 : !> \return ...
846 : ! **************************************************************************************************
847 0 : PURE FUNCTION s2a_26(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
848 0 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26) RESULT(a)
849 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
850 : s11, s12, s13, s14, s15, s16, s17, &
851 : s18, s19, s20, s21, s22, s23, s24, &
852 : s25, s26
853 : CHARACTER(LEN=1000), DIMENSION(26) :: a
854 :
855 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
856 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
857 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
858 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
859 0 : END FUNCTION s2a_26
860 : ! **************************************************************************************************
861 : ! **************************************************************************************************
862 : !> \brief ...
863 : !> \param s1 ...
864 : !> \param s2 ...
865 : !> \param s3 ...
866 : !> \param s4 ...
867 : !> \param s5 ...
868 : !> \param s6 ...
869 : !> \param s7 ...
870 : !> \param s8 ...
871 : !> \param s9 ...
872 : !> \param s10 ...
873 : !> \param s11 ...
874 : !> \param s12 ...
875 : !> \param s13 ...
876 : !> \param s14 ...
877 : !> \param s15 ...
878 : !> \param s16 ...
879 : !> \param s17 ...
880 : !> \param s18 ...
881 : !> \param s19 ...
882 : !> \param s20 ...
883 : !> \param s21 ...
884 : !> \param s22 ...
885 : !> \param s23 ...
886 : !> \param s24 ...
887 : !> \param s25 ...
888 : !> \param s26 ...
889 : !> \param s27 ...
890 : !> \return ...
891 : ! **************************************************************************************************
892 0 : PURE FUNCTION s2a_27(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
893 0 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27) RESULT(a)
894 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
895 : s11, s12, s13, s14, s15, s16, s17, &
896 : s18, s19, s20, s21, s22, s23, s24, &
897 : s25, s26, s27
898 : CHARACTER(LEN=1000), DIMENSION(27) :: a
899 :
900 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
901 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
902 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
903 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
904 0 : a(27) = s27
905 0 : END FUNCTION s2a_27
906 : ! **************************************************************************************************
907 : ! **************************************************************************************************
908 : !> \brief ...
909 : !> \param s1 ...
910 : !> \param s2 ...
911 : !> \param s3 ...
912 : !> \param s4 ...
913 : !> \param s5 ...
914 : !> \param s6 ...
915 : !> \param s7 ...
916 : !> \param s8 ...
917 : !> \param s9 ...
918 : !> \param s10 ...
919 : !> \param s11 ...
920 : !> \param s12 ...
921 : !> \param s13 ...
922 : !> \param s14 ...
923 : !> \param s15 ...
924 : !> \param s16 ...
925 : !> \param s17 ...
926 : !> \param s18 ...
927 : !> \param s19 ...
928 : !> \param s20 ...
929 : !> \param s21 ...
930 : !> \param s22 ...
931 : !> \param s23 ...
932 : !> \param s24 ...
933 : !> \param s25 ...
934 : !> \param s26 ...
935 : !> \param s27 ...
936 : !> \param s28 ...
937 : !> \return ...
938 : ! **************************************************************************************************
939 28396 : PURE FUNCTION s2a_28(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
940 56792 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28) RESULT(a)
941 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
942 : s11, s12, s13, s14, s15, s16, s17, &
943 : s18, s19, s20, s21, s22, s23, s24, &
944 : s25, s26, s27, s28
945 : CHARACTER(LEN=1000), DIMENSION(28) :: a
946 :
947 28396 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
948 28396 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
949 28396 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
950 28396 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
951 28396 : a(27) = s27; a(28) = s28
952 28396 : END FUNCTION s2a_28
953 : ! **************************************************************************************************
954 : ! **************************************************************************************************
955 : !> \brief ...
956 : !> \param s1 ...
957 : !> \param s2 ...
958 : !> \param s3 ...
959 : !> \param s4 ...
960 : !> \param s5 ...
961 : !> \param s6 ...
962 : !> \param s7 ...
963 : !> \param s8 ...
964 : !> \param s9 ...
965 : !> \param s10 ...
966 : !> \param s11 ...
967 : !> \param s12 ...
968 : !> \param s13 ...
969 : !> \param s14 ...
970 : !> \param s15 ...
971 : !> \param s16 ...
972 : !> \param s17 ...
973 : !> \param s18 ...
974 : !> \param s19 ...
975 : !> \param s20 ...
976 : !> \param s21 ...
977 : !> \param s22 ...
978 : !> \param s23 ...
979 : !> \param s24 ...
980 : !> \param s25 ...
981 : !> \param s26 ...
982 : !> \param s27 ...
983 : !> \param s28 ...
984 : !> \param s29 ...
985 : !> \return ...
986 : ! **************************************************************************************************
987 0 : PURE FUNCTION s2a_29(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
988 0 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29) RESULT(a)
989 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
990 : s11, s12, s13, s14, s15, s16, s17, &
991 : s18, s19, s20, s21, s22, s23, s24, &
992 : s25, s26, s27, s28, s29
993 : CHARACTER(LEN=1000), DIMENSION(29) :: a
994 :
995 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
996 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
997 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
998 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
999 0 : a(27) = s27; a(28) = s28; a(29) = s29
1000 0 : END FUNCTION s2a_29
1001 : ! **************************************************************************************************
1002 : ! **************************************************************************************************
1003 : !> \brief ...
1004 : !> \param s1 ...
1005 : !> \param s2 ...
1006 : !> \param s3 ...
1007 : !> \param s4 ...
1008 : !> \param s5 ...
1009 : !> \param s6 ...
1010 : !> \param s7 ...
1011 : !> \param s8 ...
1012 : !> \param s9 ...
1013 : !> \param s10 ...
1014 : !> \param s11 ...
1015 : !> \param s12 ...
1016 : !> \param s13 ...
1017 : !> \param s14 ...
1018 : !> \param s15 ...
1019 : !> \param s16 ...
1020 : !> \param s17 ...
1021 : !> \param s18 ...
1022 : !> \param s19 ...
1023 : !> \param s20 ...
1024 : !> \param s21 ...
1025 : !> \param s22 ...
1026 : !> \param s23 ...
1027 : !> \param s24 ...
1028 : !> \param s25 ...
1029 : !> \param s26 ...
1030 : !> \param s27 ...
1031 : !> \param s28 ...
1032 : !> \param s29 ...
1033 : !> \param s30 ...
1034 : !> \return ...
1035 : ! **************************************************************************************************
1036 0 : PURE FUNCTION s2a_30(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1037 0 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30) RESULT(a)
1038 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1039 : s11, s12, s13, s14, s15, s16, s17, &
1040 : s18, s19, s20, s21, s22, s23, s24, &
1041 : s25, s26, s27, s28, s29, s30
1042 : CHARACTER(LEN=1000), DIMENSION(30) :: a
1043 :
1044 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1045 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1046 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1047 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1048 0 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
1049 0 : END FUNCTION s2a_30
1050 : ! **************************************************************************************************
1051 : ! **************************************************************************************************
1052 : !> \brief ...
1053 : !> \param s1 ...
1054 : !> \param s2 ...
1055 : !> \param s3 ...
1056 : !> \param s4 ...
1057 : !> \param s5 ...
1058 : !> \param s6 ...
1059 : !> \param s7 ...
1060 : !> \param s8 ...
1061 : !> \param s9 ...
1062 : !> \param s10 ...
1063 : !> \param s11 ...
1064 : !> \param s12 ...
1065 : !> \param s13 ...
1066 : !> \param s14 ...
1067 : !> \param s15 ...
1068 : !> \param s16 ...
1069 : !> \param s17 ...
1070 : !> \param s18 ...
1071 : !> \param s19 ...
1072 : !> \param s20 ...
1073 : !> \param s21 ...
1074 : !> \param s22 ...
1075 : !> \param s23 ...
1076 : !> \param s24 ...
1077 : !> \param s25 ...
1078 : !> \param s26 ...
1079 : !> \param s27 ...
1080 : !> \param s28 ...
1081 : !> \param s29 ...
1082 : !> \param s30 ...
1083 : !> \param s31 ...
1084 : !> \return ...
1085 : ! **************************************************************************************************
1086 0 : PURE FUNCTION s2a_31(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1087 0 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31) RESULT(a)
1088 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1089 : s11, s12, s13, s14, s15, s16, s17, &
1090 : s18, s19, s20, s21, s22, s23, s24, &
1091 : s25, s26, s27, s28, s29, s30, s31
1092 : CHARACTER(LEN=1000), DIMENSION(31) :: a
1093 :
1094 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1095 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1096 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1097 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1098 0 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30; a(31) = s31
1099 0 : END FUNCTION s2a_31
1100 : ! **************************************************************************************************
1101 : ! **************************************************************************************************
1102 : !> \brief ...
1103 : !> \param s1 ...
1104 : !> \param s2 ...
1105 : !> \param s3 ...
1106 : !> \param s4 ...
1107 : !> \param s5 ...
1108 : !> \param s6 ...
1109 : !> \param s7 ...
1110 : !> \param s8 ...
1111 : !> \param s9 ...
1112 : !> \param s10 ...
1113 : !> \param s11 ...
1114 : !> \param s12 ...
1115 : !> \param s13 ...
1116 : !> \param s14 ...
1117 : !> \param s15 ...
1118 : !> \param s16 ...
1119 : !> \param s17 ...
1120 : !> \param s18 ...
1121 : !> \param s19 ...
1122 : !> \param s20 ...
1123 : !> \param s21 ...
1124 : !> \param s22 ...
1125 : !> \param s23 ...
1126 : !> \param s24 ...
1127 : !> \param s25 ...
1128 : !> \param s26 ...
1129 : !> \param s27 ...
1130 : !> \param s28 ...
1131 : !> \param s29 ...
1132 : !> \param s30 ...
1133 : !> \param s31 ...
1134 : !> \param s32 ...
1135 : !> \return ...
1136 : ! **************************************************************************************************
1137 0 : PURE FUNCTION s2a_32(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1138 0 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32) RESULT(a)
1139 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1140 : s11, s12, s13, s14, s15, s16, s17, &
1141 : s18, s19, s20, s21, s22, s23, s24, &
1142 : s25, s26, s27, s28, s29, s30, s31, s32
1143 : CHARACTER(LEN=1000), DIMENSION(32) :: a
1144 :
1145 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1146 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1147 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1148 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1149 0 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30; a(31) = s31; a(32) = s32
1150 0 : END FUNCTION s2a_32
1151 : ! **************************************************************************************************
1152 : ! **************************************************************************************************
1153 : !> \brief ...
1154 : !> \param s1 ...
1155 : !> \param s2 ...
1156 : !> \param s3 ...
1157 : !> \param s4 ...
1158 : !> \param s5 ...
1159 : !> \param s6 ...
1160 : !> \param s7 ...
1161 : !> \param s8 ...
1162 : !> \param s9 ...
1163 : !> \param s10 ...
1164 : !> \param s11 ...
1165 : !> \param s12 ...
1166 : !> \param s13 ...
1167 : !> \param s14 ...
1168 : !> \param s15 ...
1169 : !> \param s16 ...
1170 : !> \param s17 ...
1171 : !> \param s18 ...
1172 : !> \param s19 ...
1173 : !> \param s20 ...
1174 : !> \param s21 ...
1175 : !> \param s22 ...
1176 : !> \param s23 ...
1177 : !> \param s24 ...
1178 : !> \param s25 ...
1179 : !> \param s26 ...
1180 : !> \param s27 ...
1181 : !> \param s28 ...
1182 : !> \param s29 ...
1183 : !> \param s30 ...
1184 : !> \param s31 ...
1185 : !> \param s32 ...
1186 : !> \param s33 ...
1187 : !> \return ...
1188 : ! **************************************************************************************************
1189 0 : PURE FUNCTION s2a_33(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1190 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1191 0 : s33) RESULT(a)
1192 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1193 : s11, s12, s13, s14, s15, s16, s17, &
1194 : s18, s19, s20, s21, s22, s23, s24, &
1195 : s25, s26, s27, s28, s29, s30, s31, &
1196 : s32, s33
1197 : CHARACTER(LEN=1000), DIMENSION(33) :: a
1198 :
1199 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1200 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1201 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1202 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1203 0 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30; a(31) = s31; a(32) = s32
1204 0 : a(33) = s33
1205 0 : END FUNCTION s2a_33
1206 : ! **************************************************************************************************
1207 : ! **************************************************************************************************
1208 : !> \brief ...
1209 : !> \param s1 ...
1210 : !> \param s2 ...
1211 : !> \param s3 ...
1212 : !> \param s4 ...
1213 : !> \param s5 ...
1214 : !> \param s6 ...
1215 : !> \param s7 ...
1216 : !> \param s8 ...
1217 : !> \param s9 ...
1218 : !> \param s10 ...
1219 : !> \param s11 ...
1220 : !> \param s12 ...
1221 : !> \param s13 ...
1222 : !> \param s14 ...
1223 : !> \param s15 ...
1224 : !> \param s16 ...
1225 : !> \param s17 ...
1226 : !> \param s18 ...
1227 : !> \param s19 ...
1228 : !> \param s20 ...
1229 : !> \param s21 ...
1230 : !> \param s22 ...
1231 : !> \param s23 ...
1232 : !> \param s24 ...
1233 : !> \param s25 ...
1234 : !> \param s26 ...
1235 : !> \param s27 ...
1236 : !> \param s28 ...
1237 : !> \param s29 ...
1238 : !> \param s30 ...
1239 : !> \param s31 ...
1240 : !> \param s32 ...
1241 : !> \param s33 ...
1242 : !> \param s34 ...
1243 : !> \return ...
1244 : ! **************************************************************************************************
1245 0 : PURE FUNCTION s2a_34(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1246 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1247 0 : s33, s34) RESULT(a)
1248 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1249 : s11, s12, s13, s14, s15, s16, s17, &
1250 : s18, s19, s20, s21, s22, s23, s24, &
1251 : s25, s26, s27, s28, s29, s30, s31, &
1252 : s32, s33, s34
1253 : CHARACTER(LEN=1000), DIMENSION(34) :: a
1254 :
1255 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1256 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1257 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1258 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1259 0 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30; a(31) = s31; a(32) = s32
1260 0 : a(33) = s33; a(34) = s34
1261 0 : END FUNCTION s2a_34
1262 : ! **************************************************************************************************
1263 : ! **************************************************************************************************
1264 : !> \brief ...
1265 : !> \param s1 ...
1266 : !> \param s2 ...
1267 : !> \param s3 ...
1268 : !> \param s4 ...
1269 : !> \param s5 ...
1270 : !> \param s6 ...
1271 : !> \param s7 ...
1272 : !> \param s8 ...
1273 : !> \param s9 ...
1274 : !> \param s10 ...
1275 : !> \param s11 ...
1276 : !> \param s12 ...
1277 : !> \param s13 ...
1278 : !> \param s14 ...
1279 : !> \param s15 ...
1280 : !> \param s16 ...
1281 : !> \param s17 ...
1282 : !> \param s18 ...
1283 : !> \param s19 ...
1284 : !> \param s20 ...
1285 : !> \param s21 ...
1286 : !> \param s22 ...
1287 : !> \param s23 ...
1288 : !> \param s24 ...
1289 : !> \param s25 ...
1290 : !> \param s26 ...
1291 : !> \param s27 ...
1292 : !> \param s28 ...
1293 : !> \param s29 ...
1294 : !> \param s30 ...
1295 : !> \param s31 ...
1296 : !> \param s32 ...
1297 : !> \param s33 ...
1298 : !> \param s34 ...
1299 : !> \param s35 ...
1300 : !> \return ...
1301 : ! **************************************************************************************************
1302 0 : PURE FUNCTION s2a_35(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1303 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1304 0 : s33, s34, s35) RESULT(a)
1305 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1306 : s11, s12, s13, s14, s15, s16, s17, &
1307 : s18, s19, s20, s21, s22, s23, s24, &
1308 : s25, s26, s27, s28, s29, s30, s31, &
1309 : s32, s33, s34, s35
1310 : CHARACTER(LEN=1000), DIMENSION(35) :: a
1311 :
1312 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1313 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1314 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1315 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1316 0 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30; a(31) = s31; a(32) = s32
1317 0 : a(33) = s33; a(34) = s34; a(35) = s35
1318 0 : END FUNCTION s2a_35
1319 : ! **************************************************************************************************
1320 : ! **************************************************************************************************
1321 : !> \brief ...
1322 : !> \param s1 ...
1323 : !> \param s2 ...
1324 : !> \param s3 ...
1325 : !> \param s4 ...
1326 : !> \param s5 ...
1327 : !> \param s6 ...
1328 : !> \param s7 ...
1329 : !> \param s8 ...
1330 : !> \param s9 ...
1331 : !> \param s10 ...
1332 : !> \param s11 ...
1333 : !> \param s12 ...
1334 : !> \param s13 ...
1335 : !> \param s14 ...
1336 : !> \param s15 ...
1337 : !> \param s16 ...
1338 : !> \param s17 ...
1339 : !> \param s18 ...
1340 : !> \param s19 ...
1341 : !> \param s20 ...
1342 : !> \param s21 ...
1343 : !> \param s22 ...
1344 : !> \param s23 ...
1345 : !> \param s24 ...
1346 : !> \param s25 ...
1347 : !> \param s26 ...
1348 : !> \param s27 ...
1349 : !> \param s28 ...
1350 : !> \param s29 ...
1351 : !> \param s30 ...
1352 : !> \param s31 ...
1353 : !> \param s32 ...
1354 : !> \param s33 ...
1355 : !> \param s34 ...
1356 : !> \param s35 ...
1357 : !> \param s36 ...
1358 : !> \return ...
1359 : ! **************************************************************************************************
1360 0 : PURE FUNCTION s2a_36(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1361 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1362 0 : s33, s34, s35, s36) RESULT(a)
1363 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1364 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1365 : s33, s34, s35, s36
1366 : CHARACTER(LEN=1000), DIMENSION(36) :: a
1367 :
1368 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1369 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1370 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1371 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1372 0 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30; a(31) = s31; a(32) = s32
1373 0 : a(33) = s33; a(34) = s34; a(35) = s35; a(36) = s36
1374 0 : END FUNCTION s2a_36
1375 : ! **************************************************************************************************
1376 : ! **************************************************************************************************
1377 : !> \brief ...
1378 : !> \param s1 ...
1379 : !> \param s2 ...
1380 : !> \param s3 ...
1381 : !> \param s4 ...
1382 : !> \param s5 ...
1383 : !> \param s6 ...
1384 : !> \param s7 ...
1385 : !> \param s8 ...
1386 : !> \param s9 ...
1387 : !> \param s10 ...
1388 : !> \param s11 ...
1389 : !> \param s12 ...
1390 : !> \param s13 ...
1391 : !> \param s14 ...
1392 : !> \param s15 ...
1393 : !> \param s16 ...
1394 : !> \param s17 ...
1395 : !> \param s18 ...
1396 : !> \param s19 ...
1397 : !> \param s20 ...
1398 : !> \param s21 ...
1399 : !> \param s22 ...
1400 : !> \param s23 ...
1401 : !> \param s24 ...
1402 : !> \param s25 ...
1403 : !> \param s26 ...
1404 : !> \param s27 ...
1405 : !> \param s28 ...
1406 : !> \param s29 ...
1407 : !> \param s30 ...
1408 : !> \param s31 ...
1409 : !> \param s32 ...
1410 : !> \param s33 ...
1411 : !> \param s34 ...
1412 : !> \param s35 ...
1413 : !> \param s36 ...
1414 : !> \param s37 ...
1415 : !> \return ...
1416 : ! **************************************************************************************************
1417 0 : PURE FUNCTION s2a_37(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1418 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1419 0 : s33, s34, s35, s36, s37) RESULT(a)
1420 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1421 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1422 : s33, s34, s35, s36, s37
1423 : CHARACTER(LEN=1000), DIMENSION(37) :: a
1424 :
1425 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1426 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1427 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1428 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1429 0 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30; a(31) = s31; a(32) = s32
1430 0 : a(33) = s33; a(34) = s34; a(35) = s35; a(36) = s36; a(37) = s37
1431 0 : END FUNCTION s2a_37
1432 : ! **************************************************************************************************
1433 : ! **************************************************************************************************
1434 : !> \brief ...
1435 : !> \param s1 ...
1436 : !> \param s2 ...
1437 : !> \param s3 ...
1438 : !> \param s4 ...
1439 : !> \param s5 ...
1440 : !> \param s6 ...
1441 : !> \param s7 ...
1442 : !> \param s8 ...
1443 : !> \param s9 ...
1444 : !> \param s10 ...
1445 : !> \param s11 ...
1446 : !> \param s12 ...
1447 : !> \param s13 ...
1448 : !> \param s14 ...
1449 : !> \param s15 ...
1450 : !> \param s16 ...
1451 : !> \param s17 ...
1452 : !> \param s18 ...
1453 : !> \param s19 ...
1454 : !> \param s20 ...
1455 : !> \param s21 ...
1456 : !> \param s22 ...
1457 : !> \param s23 ...
1458 : !> \param s24 ...
1459 : !> \param s25 ...
1460 : !> \param s26 ...
1461 : !> \param s27 ...
1462 : !> \param s28 ...
1463 : !> \param s29 ...
1464 : !> \param s30 ...
1465 : !> \param s31 ...
1466 : !> \param s32 ...
1467 : !> \param s33 ...
1468 : !> \param s34 ...
1469 : !> \param s35 ...
1470 : !> \param s36 ...
1471 : !> \param s37 ...
1472 : !> \param s38 ...
1473 : !> \return ...
1474 : ! **************************************************************************************************
1475 0 : PURE FUNCTION s2a_38(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1476 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1477 0 : s33, s34, s35, s36, s37, s38) RESULT(a)
1478 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1479 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1480 : s33, s34, s35, s36, s37, s38
1481 : CHARACTER(LEN=1000), DIMENSION(38) :: a
1482 :
1483 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1484 0 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1485 0 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1486 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1487 0 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30; a(31) = s31; a(32) = s32
1488 0 : a(33) = s33; a(34) = s34; a(35) = s35; a(36) = s36; a(37) = s37; a(38) = s38
1489 0 : END FUNCTION s2a_38
1490 : ! **************************************************************************************************
1491 : ! **************************************************************************************************
1492 : !> \brief ...
1493 : !> \param s1 ...
1494 : !> \param s2 ...
1495 : !> \param s3 ...
1496 : !> \param s4 ...
1497 : !> \param s5 ...
1498 : !> \param s6 ...
1499 : !> \param s7 ...
1500 : !> \param s8 ...
1501 : !> \param s9 ...
1502 : !> \param s10 ...
1503 : !> \param s11 ...
1504 : !> \param s12 ...
1505 : !> \param s13 ...
1506 : !> \param s14 ...
1507 : !> \param s15 ...
1508 : !> \param s16 ...
1509 : !> \param s17 ...
1510 : !> \param s18 ...
1511 : !> \param s19 ...
1512 : !> \param s20 ...
1513 : !> \param s21 ...
1514 : !> \param s22 ...
1515 : !> \param s23 ...
1516 : !> \param s24 ...
1517 : !> \param s25 ...
1518 : !> \param s26 ...
1519 : !> \param s27 ...
1520 : !> \param s28 ...
1521 : !> \param s29 ...
1522 : !> \param s30 ...
1523 : !> \param s31 ...
1524 : !> \param s32 ...
1525 : !> \param s33 ...
1526 : !> \param s34 ...
1527 : !> \param s35 ...
1528 : !> \param s36 ...
1529 : !> \param s37 ...
1530 : !> \param s38 ...
1531 : !> \param s39 ...
1532 : !> \return ...
1533 : ! **************************************************************************************************
1534 8530 : PURE FUNCTION s2a_39(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, &
1535 : s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1536 17060 : s33, s34, s35, s36, s37, s38, s39) RESULT(a)
1537 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1538 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1539 : s33, s34, s35, s36, s37, s38, s39
1540 : CHARACTER(LEN=1000), DIMENSION(39) :: a
1541 :
1542 8530 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5; a(6) = s6; a(7) = s7
1543 8530 : a(8) = s8; a(9) = s9; a(10) = s10; a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14
1544 8530 : a(15) = s15; a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1545 8530 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25; a(26) = s26
1546 8530 : a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30; a(31) = s31; a(32) = s32
1547 8530 : a(33) = s33; a(34) = s34; a(35) = s35; a(36) = s36; a(37) = s37; a(38) = s38
1548 8530 : a(39) = s39
1549 8530 : END FUNCTION s2a_39
1550 : ! **************************************************************************************************
1551 : !> \brief ...
1552 : !> \param s1 ...
1553 : !> \param s2 ...
1554 : !> \param s3 ...
1555 : !> \param s4 ...
1556 : !> \param s5 ...
1557 : !> \param s6 ...
1558 : !> \param s7 ...
1559 : !> \param s8 ...
1560 : !> \param s9 ...
1561 : !> \param s10 ...
1562 : !> \param s11 ...
1563 : !> \param s12 ...
1564 : !> \param s13 ...
1565 : !> \param s14 ...
1566 : !> \param s15 ...
1567 : !> \param s16 ...
1568 : !> \param s17 ...
1569 : !> \param s18 ...
1570 : !> \param s19 ...
1571 : !> \param s20 ...
1572 : !> \param s21 ...
1573 : !> \param s22 ...
1574 : !> \param s23 ...
1575 : !> \param s24 ...
1576 : !> \param s25 ...
1577 : !> \param s26 ...
1578 : !> \param s27 ...
1579 : !> \param s28 ...
1580 : !> \param s29 ...
1581 : !> \param s30 ...
1582 : !> \param s31 ...
1583 : !> \param s32 ...
1584 : !> \param s33 ...
1585 : !> \param s34 ...
1586 : !> \param s35 ...
1587 : !> \param s36 ...
1588 : !> \param s37 ...
1589 : !> \param s38 ...
1590 : !> \param s39 ...
1591 : !> \param s40 ...
1592 : !> \return ...
1593 : ! **************************************************************************************************
1594 0 : PURE FUNCTION s2a_40(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1595 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
1596 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
1597 0 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40) RESULT(a)
1598 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1599 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1600 : s33, s34, s35, s36, s37, s38, s39, s40
1601 : CHARACTER(LEN=1000), DIMENSION(40) :: a
1602 :
1603 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
1604 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
1605 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
1606 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1607 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
1608 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
1609 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
1610 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
1611 0 : END FUNCTION s2a_40
1612 : ! **************************************************************************************************
1613 : !> \brief ...
1614 : !> \param s1 ...
1615 : !> \param s2 ...
1616 : !> \param s3 ...
1617 : !> \param s4 ...
1618 : !> \param s5 ...
1619 : !> \param s6 ...
1620 : !> \param s7 ...
1621 : !> \param s8 ...
1622 : !> \param s9 ...
1623 : !> \param s10 ...
1624 : !> \param s11 ...
1625 : !> \param s12 ...
1626 : !> \param s13 ...
1627 : !> \param s14 ...
1628 : !> \param s15 ...
1629 : !> \param s16 ...
1630 : !> \param s17 ...
1631 : !> \param s18 ...
1632 : !> \param s19 ...
1633 : !> \param s20 ...
1634 : !> \param s21 ...
1635 : !> \param s22 ...
1636 : !> \param s23 ...
1637 : !> \param s24 ...
1638 : !> \param s25 ...
1639 : !> \param s26 ...
1640 : !> \param s27 ...
1641 : !> \param s28 ...
1642 : !> \param s29 ...
1643 : !> \param s30 ...
1644 : !> \param s31 ...
1645 : !> \param s32 ...
1646 : !> \param s33 ...
1647 : !> \param s34 ...
1648 : !> \param s35 ...
1649 : !> \param s36 ...
1650 : !> \param s37 ...
1651 : !> \param s38 ...
1652 : !> \param s39 ...
1653 : !> \param s40 ...
1654 : !> \param s41 ...
1655 : !> \return ...
1656 : ! **************************************************************************************************
1657 0 : PURE FUNCTION s2a_41(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1658 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
1659 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
1660 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
1661 0 : s41) RESULT(a)
1662 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1663 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1664 : s33, s34, s35, s36, s37, s38, s39, s40, s41
1665 : CHARACTER(LEN=1000), DIMENSION(41) :: a
1666 :
1667 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
1668 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
1669 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
1670 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1671 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
1672 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
1673 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
1674 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
1675 0 : a(41) = s41
1676 0 : END FUNCTION s2a_41
1677 : ! **************************************************************************************************
1678 : !> \brief ...
1679 : !> \param s1 ...
1680 : !> \param s2 ...
1681 : !> \param s3 ...
1682 : !> \param s4 ...
1683 : !> \param s5 ...
1684 : !> \param s6 ...
1685 : !> \param s7 ...
1686 : !> \param s8 ...
1687 : !> \param s9 ...
1688 : !> \param s10 ...
1689 : !> \param s11 ...
1690 : !> \param s12 ...
1691 : !> \param s13 ...
1692 : !> \param s14 ...
1693 : !> \param s15 ...
1694 : !> \param s16 ...
1695 : !> \param s17 ...
1696 : !> \param s18 ...
1697 : !> \param s19 ...
1698 : !> \param s20 ...
1699 : !> \param s21 ...
1700 : !> \param s22 ...
1701 : !> \param s23 ...
1702 : !> \param s24 ...
1703 : !> \param s25 ...
1704 : !> \param s26 ...
1705 : !> \param s27 ...
1706 : !> \param s28 ...
1707 : !> \param s29 ...
1708 : !> \param s30 ...
1709 : !> \param s31 ...
1710 : !> \param s32 ...
1711 : !> \param s33 ...
1712 : !> \param s34 ...
1713 : !> \param s35 ...
1714 : !> \param s36 ...
1715 : !> \param s37 ...
1716 : !> \param s38 ...
1717 : !> \param s39 ...
1718 : !> \param s40 ...
1719 : !> \param s41 ...
1720 : !> \param s42 ...
1721 : !> \return ...
1722 : ! **************************************************************************************************
1723 0 : PURE FUNCTION s2a_42(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1724 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
1725 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
1726 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
1727 0 : s41, s42) RESULT(a)
1728 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1729 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1730 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42
1731 : CHARACTER(LEN=1000), DIMENSION(42) :: a
1732 :
1733 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
1734 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
1735 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
1736 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1737 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
1738 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
1739 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
1740 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
1741 0 : a(41) = s41; a(42) = s42
1742 0 : END FUNCTION s2a_42
1743 : ! **************************************************************************************************
1744 : !> \brief ...
1745 : !> \param s1 ...
1746 : !> \param s2 ...
1747 : !> \param s3 ...
1748 : !> \param s4 ...
1749 : !> \param s5 ...
1750 : !> \param s6 ...
1751 : !> \param s7 ...
1752 : !> \param s8 ...
1753 : !> \param s9 ...
1754 : !> \param s10 ...
1755 : !> \param s11 ...
1756 : !> \param s12 ...
1757 : !> \param s13 ...
1758 : !> \param s14 ...
1759 : !> \param s15 ...
1760 : !> \param s16 ...
1761 : !> \param s17 ...
1762 : !> \param s18 ...
1763 : !> \param s19 ...
1764 : !> \param s20 ...
1765 : !> \param s21 ...
1766 : !> \param s22 ...
1767 : !> \param s23 ...
1768 : !> \param s24 ...
1769 : !> \param s25 ...
1770 : !> \param s26 ...
1771 : !> \param s27 ...
1772 : !> \param s28 ...
1773 : !> \param s29 ...
1774 : !> \param s30 ...
1775 : !> \param s31 ...
1776 : !> \param s32 ...
1777 : !> \param s33 ...
1778 : !> \param s34 ...
1779 : !> \param s35 ...
1780 : !> \param s36 ...
1781 : !> \param s37 ...
1782 : !> \param s38 ...
1783 : !> \param s39 ...
1784 : !> \param s40 ...
1785 : !> \param s41 ...
1786 : !> \param s42 ...
1787 : !> \param s43 ...
1788 : !> \return ...
1789 : ! **************************************************************************************************
1790 0 : PURE FUNCTION s2a_43(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1791 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
1792 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
1793 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
1794 0 : s41, s42, s43) RESULT(a)
1795 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1796 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1797 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43
1798 : CHARACTER(LEN=1000), DIMENSION(43) :: a
1799 :
1800 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
1801 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
1802 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
1803 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1804 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
1805 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
1806 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
1807 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
1808 0 : a(41) = s41; a(42) = s42; a(43) = s43
1809 0 : END FUNCTION s2a_43
1810 : ! **************************************************************************************************
1811 : !> \brief ...
1812 : !> \param s1 ...
1813 : !> \param s2 ...
1814 : !> \param s3 ...
1815 : !> \param s4 ...
1816 : !> \param s5 ...
1817 : !> \param s6 ...
1818 : !> \param s7 ...
1819 : !> \param s8 ...
1820 : !> \param s9 ...
1821 : !> \param s10 ...
1822 : !> \param s11 ...
1823 : !> \param s12 ...
1824 : !> \param s13 ...
1825 : !> \param s14 ...
1826 : !> \param s15 ...
1827 : !> \param s16 ...
1828 : !> \param s17 ...
1829 : !> \param s18 ...
1830 : !> \param s19 ...
1831 : !> \param s20 ...
1832 : !> \param s21 ...
1833 : !> \param s22 ...
1834 : !> \param s23 ...
1835 : !> \param s24 ...
1836 : !> \param s25 ...
1837 : !> \param s26 ...
1838 : !> \param s27 ...
1839 : !> \param s28 ...
1840 : !> \param s29 ...
1841 : !> \param s30 ...
1842 : !> \param s31 ...
1843 : !> \param s32 ...
1844 : !> \param s33 ...
1845 : !> \param s34 ...
1846 : !> \param s35 ...
1847 : !> \param s36 ...
1848 : !> \param s37 ...
1849 : !> \param s38 ...
1850 : !> \param s39 ...
1851 : !> \param s40 ...
1852 : !> \param s41 ...
1853 : !> \param s42 ...
1854 : !> \param s43 ...
1855 : !> \param s44 ...
1856 : !> \return ...
1857 : ! **************************************************************************************************
1858 0 : PURE FUNCTION s2a_44(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1859 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
1860 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
1861 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
1862 0 : s41, s42, s43, s44) RESULT(a)
1863 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1864 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1865 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44
1866 : CHARACTER(LEN=1000), DIMENSION(44) :: a
1867 :
1868 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
1869 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
1870 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
1871 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1872 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
1873 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
1874 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
1875 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
1876 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44
1877 0 : END FUNCTION s2a_44
1878 : ! **************************************************************************************************
1879 : !> \brief ...
1880 : !> \param s1 ...
1881 : !> \param s2 ...
1882 : !> \param s3 ...
1883 : !> \param s4 ...
1884 : !> \param s5 ...
1885 : !> \param s6 ...
1886 : !> \param s7 ...
1887 : !> \param s8 ...
1888 : !> \param s9 ...
1889 : !> \param s10 ...
1890 : !> \param s11 ...
1891 : !> \param s12 ...
1892 : !> \param s13 ...
1893 : !> \param s14 ...
1894 : !> \param s15 ...
1895 : !> \param s16 ...
1896 : !> \param s17 ...
1897 : !> \param s18 ...
1898 : !> \param s19 ...
1899 : !> \param s20 ...
1900 : !> \param s21 ...
1901 : !> \param s22 ...
1902 : !> \param s23 ...
1903 : !> \param s24 ...
1904 : !> \param s25 ...
1905 : !> \param s26 ...
1906 : !> \param s27 ...
1907 : !> \param s28 ...
1908 : !> \param s29 ...
1909 : !> \param s30 ...
1910 : !> \param s31 ...
1911 : !> \param s32 ...
1912 : !> \param s33 ...
1913 : !> \param s34 ...
1914 : !> \param s35 ...
1915 : !> \param s36 ...
1916 : !> \param s37 ...
1917 : !> \param s38 ...
1918 : !> \param s39 ...
1919 : !> \param s40 ...
1920 : !> \param s41 ...
1921 : !> \param s42 ...
1922 : !> \param s43 ...
1923 : !> \param s44 ...
1924 : !> \param s45 ...
1925 : !> \return ...
1926 : ! **************************************************************************************************
1927 0 : PURE FUNCTION s2a_45(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1928 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
1929 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
1930 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
1931 0 : s41, s42, s43, s44, s45) RESULT(a)
1932 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
1933 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
1934 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45
1935 : CHARACTER(LEN=1000), DIMENSION(45) :: a
1936 :
1937 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
1938 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
1939 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
1940 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
1941 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
1942 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
1943 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
1944 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
1945 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
1946 0 : END FUNCTION s2a_45
1947 : ! **************************************************************************************************
1948 : !> \brief ...
1949 : !> \param s1 ...
1950 : !> \param s2 ...
1951 : !> \param s3 ...
1952 : !> \param s4 ...
1953 : !> \param s5 ...
1954 : !> \param s6 ...
1955 : !> \param s7 ...
1956 : !> \param s8 ...
1957 : !> \param s9 ...
1958 : !> \param s10 ...
1959 : !> \param s11 ...
1960 : !> \param s12 ...
1961 : !> \param s13 ...
1962 : !> \param s14 ...
1963 : !> \param s15 ...
1964 : !> \param s16 ...
1965 : !> \param s17 ...
1966 : !> \param s18 ...
1967 : !> \param s19 ...
1968 : !> \param s20 ...
1969 : !> \param s21 ...
1970 : !> \param s22 ...
1971 : !> \param s23 ...
1972 : !> \param s24 ...
1973 : !> \param s25 ...
1974 : !> \param s26 ...
1975 : !> \param s27 ...
1976 : !> \param s28 ...
1977 : !> \param s29 ...
1978 : !> \param s30 ...
1979 : !> \param s31 ...
1980 : !> \param s32 ...
1981 : !> \param s33 ...
1982 : !> \param s34 ...
1983 : !> \param s35 ...
1984 : !> \param s36 ...
1985 : !> \param s37 ...
1986 : !> \param s38 ...
1987 : !> \param s39 ...
1988 : !> \param s40 ...
1989 : !> \param s41 ...
1990 : !> \param s42 ...
1991 : !> \param s43 ...
1992 : !> \param s44 ...
1993 : !> \param s45 ...
1994 : !> \param s46 ...
1995 : !> \return ...
1996 : ! **************************************************************************************************
1997 0 : PURE FUNCTION s2a_46(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
1998 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
1999 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2000 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2001 0 : s41, s42, s43, s44, s45, s46) RESULT(a)
2002 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2003 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2004 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46
2005 : CHARACTER(LEN=1000), DIMENSION(46) :: a
2006 :
2007 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2008 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2009 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2010 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2011 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2012 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2013 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2014 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2015 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2016 0 : a(46) = s46
2017 0 : END FUNCTION s2a_46
2018 : ! **************************************************************************************************
2019 : !> \brief ...
2020 : !> \param s1 ...
2021 : !> \param s2 ...
2022 : !> \param s3 ...
2023 : !> \param s4 ...
2024 : !> \param s5 ...
2025 : !> \param s6 ...
2026 : !> \param s7 ...
2027 : !> \param s8 ...
2028 : !> \param s9 ...
2029 : !> \param s10 ...
2030 : !> \param s11 ...
2031 : !> \param s12 ...
2032 : !> \param s13 ...
2033 : !> \param s14 ...
2034 : !> \param s15 ...
2035 : !> \param s16 ...
2036 : !> \param s17 ...
2037 : !> \param s18 ...
2038 : !> \param s19 ...
2039 : !> \param s20 ...
2040 : !> \param s21 ...
2041 : !> \param s22 ...
2042 : !> \param s23 ...
2043 : !> \param s24 ...
2044 : !> \param s25 ...
2045 : !> \param s26 ...
2046 : !> \param s27 ...
2047 : !> \param s28 ...
2048 : !> \param s29 ...
2049 : !> \param s30 ...
2050 : !> \param s31 ...
2051 : !> \param s32 ...
2052 : !> \param s33 ...
2053 : !> \param s34 ...
2054 : !> \param s35 ...
2055 : !> \param s36 ...
2056 : !> \param s37 ...
2057 : !> \param s38 ...
2058 : !> \param s39 ...
2059 : !> \param s40 ...
2060 : !> \param s41 ...
2061 : !> \param s42 ...
2062 : !> \param s43 ...
2063 : !> \param s44 ...
2064 : !> \param s45 ...
2065 : !> \param s46 ...
2066 : !> \param s47 ...
2067 : !> \return ...
2068 : ! **************************************************************************************************
2069 8530 : PURE FUNCTION s2a_47(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2070 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2071 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2072 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2073 17060 : s41, s42, s43, s44, s45, s46, s47) RESULT(a)
2074 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2075 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2076 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47
2077 : CHARACTER(LEN=1000), DIMENSION(47) :: a
2078 :
2079 8530 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2080 8530 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2081 8530 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2082 8530 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2083 8530 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2084 8530 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2085 8530 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2086 8530 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2087 8530 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2088 8530 : a(46) = s46; a(47) = s47
2089 8530 : END FUNCTION s2a_47
2090 : ! **************************************************************************************************
2091 : !> \brief ...
2092 : !> \param s1 ...
2093 : !> \param s2 ...
2094 : !> \param s3 ...
2095 : !> \param s4 ...
2096 : !> \param s5 ...
2097 : !> \param s6 ...
2098 : !> \param s7 ...
2099 : !> \param s8 ...
2100 : !> \param s9 ...
2101 : !> \param s10 ...
2102 : !> \param s11 ...
2103 : !> \param s12 ...
2104 : !> \param s13 ...
2105 : !> \param s14 ...
2106 : !> \param s15 ...
2107 : !> \param s16 ...
2108 : !> \param s17 ...
2109 : !> \param s18 ...
2110 : !> \param s19 ...
2111 : !> \param s20 ...
2112 : !> \param s21 ...
2113 : !> \param s22 ...
2114 : !> \param s23 ...
2115 : !> \param s24 ...
2116 : !> \param s25 ...
2117 : !> \param s26 ...
2118 : !> \param s27 ...
2119 : !> \param s28 ...
2120 : !> \param s29 ...
2121 : !> \param s30 ...
2122 : !> \param s31 ...
2123 : !> \param s32 ...
2124 : !> \param s33 ...
2125 : !> \param s34 ...
2126 : !> \param s35 ...
2127 : !> \param s36 ...
2128 : !> \param s37 ...
2129 : !> \param s38 ...
2130 : !> \param s39 ...
2131 : !> \param s40 ...
2132 : !> \param s41 ...
2133 : !> \param s42 ...
2134 : !> \param s43 ...
2135 : !> \param s44 ...
2136 : !> \param s45 ...
2137 : !> \param s46 ...
2138 : !> \param s47 ...
2139 : !> \param s48 ...
2140 : !> \return ...
2141 : ! **************************************************************************************************
2142 0 : PURE FUNCTION s2a_48(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2143 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2144 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2145 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2146 0 : s41, s42, s43, s44, s45, s46, s47, s48) RESULT(a)
2147 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2148 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2149 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48
2150 : CHARACTER(LEN=1000), DIMENSION(48) :: a
2151 :
2152 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2153 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2154 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2155 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2156 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2157 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2158 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2159 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2160 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2161 0 : a(46) = s46; a(47) = s47; a(48) = s48
2162 0 : END FUNCTION s2a_48
2163 : ! **************************************************************************************************
2164 : !> \brief ...
2165 : !> \param s1 ...
2166 : !> \param s2 ...
2167 : !> \param s3 ...
2168 : !> \param s4 ...
2169 : !> \param s5 ...
2170 : !> \param s6 ...
2171 : !> \param s7 ...
2172 : !> \param s8 ...
2173 : !> \param s9 ...
2174 : !> \param s10 ...
2175 : !> \param s11 ...
2176 : !> \param s12 ...
2177 : !> \param s13 ...
2178 : !> \param s14 ...
2179 : !> \param s15 ...
2180 : !> \param s16 ...
2181 : !> \param s17 ...
2182 : !> \param s18 ...
2183 : !> \param s19 ...
2184 : !> \param s20 ...
2185 : !> \param s21 ...
2186 : !> \param s22 ...
2187 : !> \param s23 ...
2188 : !> \param s24 ...
2189 : !> \param s25 ...
2190 : !> \param s26 ...
2191 : !> \param s27 ...
2192 : !> \param s28 ...
2193 : !> \param s29 ...
2194 : !> \param s30 ...
2195 : !> \param s31 ...
2196 : !> \param s32 ...
2197 : !> \param s33 ...
2198 : !> \param s34 ...
2199 : !> \param s35 ...
2200 : !> \param s36 ...
2201 : !> \param s37 ...
2202 : !> \param s38 ...
2203 : !> \param s39 ...
2204 : !> \param s40 ...
2205 : !> \param s41 ...
2206 : !> \param s42 ...
2207 : !> \param s43 ...
2208 : !> \param s44 ...
2209 : !> \param s45 ...
2210 : !> \param s46 ...
2211 : !> \param s47 ...
2212 : !> \param s48 ...
2213 : !> \param s49 ...
2214 : !> \return ...
2215 : ! **************************************************************************************************
2216 0 : PURE FUNCTION s2a_49(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2217 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2218 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2219 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2220 0 : s41, s42, s43, s44, s45, s46, s47, s48, s49) RESULT(a)
2221 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2222 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2223 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49
2224 : CHARACTER(LEN=1000), DIMENSION(49) :: a
2225 :
2226 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2227 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2228 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2229 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2230 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2231 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2232 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2233 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2234 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2235 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49
2236 0 : END FUNCTION s2a_49
2237 : ! **************************************************************************************************
2238 : !> \brief ...
2239 : !> \param s1 ...
2240 : !> \param s2 ...
2241 : !> \param s3 ...
2242 : !> \param s4 ...
2243 : !> \param s5 ...
2244 : !> \param s6 ...
2245 : !> \param s7 ...
2246 : !> \param s8 ...
2247 : !> \param s9 ...
2248 : !> \param s10 ...
2249 : !> \param s11 ...
2250 : !> \param s12 ...
2251 : !> \param s13 ...
2252 : !> \param s14 ...
2253 : !> \param s15 ...
2254 : !> \param s16 ...
2255 : !> \param s17 ...
2256 : !> \param s18 ...
2257 : !> \param s19 ...
2258 : !> \param s20 ...
2259 : !> \param s21 ...
2260 : !> \param s22 ...
2261 : !> \param s23 ...
2262 : !> \param s24 ...
2263 : !> \param s25 ...
2264 : !> \param s26 ...
2265 : !> \param s27 ...
2266 : !> \param s28 ...
2267 : !> \param s29 ...
2268 : !> \param s30 ...
2269 : !> \param s31 ...
2270 : !> \param s32 ...
2271 : !> \param s33 ...
2272 : !> \param s34 ...
2273 : !> \param s35 ...
2274 : !> \param s36 ...
2275 : !> \param s37 ...
2276 : !> \param s38 ...
2277 : !> \param s39 ...
2278 : !> \param s40 ...
2279 : !> \param s41 ...
2280 : !> \param s42 ...
2281 : !> \param s43 ...
2282 : !> \param s44 ...
2283 : !> \param s45 ...
2284 : !> \param s46 ...
2285 : !> \param s47 ...
2286 : !> \param s48 ...
2287 : !> \param s49 ...
2288 : !> \param s50 ...
2289 : !> \return ...
2290 : ! **************************************************************************************************
2291 0 : PURE FUNCTION s2a_50(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2292 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2293 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2294 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2295 0 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50) RESULT(a)
2296 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2297 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2298 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50
2299 : CHARACTER(LEN=1000), DIMENSION(50) :: a
2300 :
2301 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2302 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2303 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2304 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2305 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2306 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2307 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2308 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2309 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2310 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
2311 0 : END FUNCTION s2a_50
2312 : ! **************************************************************************************************
2313 : !> \brief ...
2314 : !> \param s1 ...
2315 : !> \param s2 ...
2316 : !> \param s3 ...
2317 : !> \param s4 ...
2318 : !> \param s5 ...
2319 : !> \param s6 ...
2320 : !> \param s7 ...
2321 : !> \param s8 ...
2322 : !> \param s9 ...
2323 : !> \param s10 ...
2324 : !> \param s11 ...
2325 : !> \param s12 ...
2326 : !> \param s13 ...
2327 : !> \param s14 ...
2328 : !> \param s15 ...
2329 : !> \param s16 ...
2330 : !> \param s17 ...
2331 : !> \param s18 ...
2332 : !> \param s19 ...
2333 : !> \param s20 ...
2334 : !> \param s21 ...
2335 : !> \param s22 ...
2336 : !> \param s23 ...
2337 : !> \param s24 ...
2338 : !> \param s25 ...
2339 : !> \param s26 ...
2340 : !> \param s27 ...
2341 : !> \param s28 ...
2342 : !> \param s29 ...
2343 : !> \param s30 ...
2344 : !> \param s31 ...
2345 : !> \param s32 ...
2346 : !> \param s33 ...
2347 : !> \param s34 ...
2348 : !> \param s35 ...
2349 : !> \param s36 ...
2350 : !> \param s37 ...
2351 : !> \param s38 ...
2352 : !> \param s39 ...
2353 : !> \param s40 ...
2354 : !> \param s41 ...
2355 : !> \param s42 ...
2356 : !> \param s43 ...
2357 : !> \param s44 ...
2358 : !> \param s45 ...
2359 : !> \param s46 ...
2360 : !> \param s47 ...
2361 : !> \param s48 ...
2362 : !> \param s49 ...
2363 : !> \param s50 ...
2364 : !> \param s51 ...
2365 : !> \return ...
2366 : ! **************************************************************************************************
2367 0 : PURE FUNCTION s2a_51(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2368 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2369 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2370 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2371 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2372 0 : s51) RESULT(a)
2373 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2374 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2375 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2376 : s51
2377 : CHARACTER(LEN=1000), DIMENSION(51) :: a
2378 :
2379 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2380 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2381 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2382 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2383 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2384 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2385 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2386 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2387 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2388 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
2389 0 : a(51) = s51
2390 0 : END FUNCTION s2a_51
2391 : ! **************************************************************************************************
2392 : !> \brief ...
2393 : !> \param s1 ...
2394 : !> \param s2 ...
2395 : !> \param s3 ...
2396 : !> \param s4 ...
2397 : !> \param s5 ...
2398 : !> \param s6 ...
2399 : !> \param s7 ...
2400 : !> \param s8 ...
2401 : !> \param s9 ...
2402 : !> \param s10 ...
2403 : !> \param s11 ...
2404 : !> \param s12 ...
2405 : !> \param s13 ...
2406 : !> \param s14 ...
2407 : !> \param s15 ...
2408 : !> \param s16 ...
2409 : !> \param s17 ...
2410 : !> \param s18 ...
2411 : !> \param s19 ...
2412 : !> \param s20 ...
2413 : !> \param s21 ...
2414 : !> \param s22 ...
2415 : !> \param s23 ...
2416 : !> \param s24 ...
2417 : !> \param s25 ...
2418 : !> \param s26 ...
2419 : !> \param s27 ...
2420 : !> \param s28 ...
2421 : !> \param s29 ...
2422 : !> \param s30 ...
2423 : !> \param s31 ...
2424 : !> \param s32 ...
2425 : !> \param s33 ...
2426 : !> \param s34 ...
2427 : !> \param s35 ...
2428 : !> \param s36 ...
2429 : !> \param s37 ...
2430 : !> \param s38 ...
2431 : !> \param s39 ...
2432 : !> \param s40 ...
2433 : !> \param s41 ...
2434 : !> \param s42 ...
2435 : !> \param s43 ...
2436 : !> \param s44 ...
2437 : !> \param s45 ...
2438 : !> \param s46 ...
2439 : !> \param s47 ...
2440 : !> \param s48 ...
2441 : !> \param s49 ...
2442 : !> \param s50 ...
2443 : !> \param s51 ...
2444 : !> \param s52 ...
2445 : !> \return ...
2446 : ! **************************************************************************************************
2447 0 : PURE FUNCTION s2a_52(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2448 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2449 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2450 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2451 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2452 0 : s51, s52) RESULT(a)
2453 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2454 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2455 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2456 : s51, s52
2457 : CHARACTER(LEN=1000), DIMENSION(52) :: a
2458 :
2459 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2460 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2461 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2462 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2463 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2464 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2465 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2466 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2467 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2468 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
2469 0 : a(51) = s51; a(52) = s52
2470 0 : END FUNCTION s2a_52
2471 : ! **************************************************************************************************
2472 : !> \brief ...
2473 : !> \param s1 ...
2474 : !> \param s2 ...
2475 : !> \param s3 ...
2476 : !> \param s4 ...
2477 : !> \param s5 ...
2478 : !> \param s6 ...
2479 : !> \param s7 ...
2480 : !> \param s8 ...
2481 : !> \param s9 ...
2482 : !> \param s10 ...
2483 : !> \param s11 ...
2484 : !> \param s12 ...
2485 : !> \param s13 ...
2486 : !> \param s14 ...
2487 : !> \param s15 ...
2488 : !> \param s16 ...
2489 : !> \param s17 ...
2490 : !> \param s18 ...
2491 : !> \param s19 ...
2492 : !> \param s20 ...
2493 : !> \param s21 ...
2494 : !> \param s22 ...
2495 : !> \param s23 ...
2496 : !> \param s24 ...
2497 : !> \param s25 ...
2498 : !> \param s26 ...
2499 : !> \param s27 ...
2500 : !> \param s28 ...
2501 : !> \param s29 ...
2502 : !> \param s30 ...
2503 : !> \param s31 ...
2504 : !> \param s32 ...
2505 : !> \param s33 ...
2506 : !> \param s34 ...
2507 : !> \param s35 ...
2508 : !> \param s36 ...
2509 : !> \param s37 ...
2510 : !> \param s38 ...
2511 : !> \param s39 ...
2512 : !> \param s40 ...
2513 : !> \param s41 ...
2514 : !> \param s42 ...
2515 : !> \param s43 ...
2516 : !> \param s44 ...
2517 : !> \param s45 ...
2518 : !> \param s46 ...
2519 : !> \param s47 ...
2520 : !> \param s48 ...
2521 : !> \param s49 ...
2522 : !> \param s50 ...
2523 : !> \param s51 ...
2524 : !> \param s52 ...
2525 : !> \param s53 ...
2526 : !> \return ...
2527 : ! **************************************************************************************************
2528 0 : PURE FUNCTION s2a_53(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2529 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2530 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2531 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2532 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2533 0 : s51, s52, s53) RESULT(a)
2534 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2535 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2536 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2537 : s51, s52, s53
2538 : CHARACTER(LEN=1000), DIMENSION(53) :: a
2539 :
2540 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2541 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2542 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2543 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2544 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2545 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2546 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2547 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2548 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2549 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
2550 0 : a(51) = s51; a(52) = s52; a(53) = s53
2551 0 : END FUNCTION s2a_53
2552 : ! **************************************************************************************************
2553 : !> \brief ...
2554 : !> \param s1 ...
2555 : !> \param s2 ...
2556 : !> \param s3 ...
2557 : !> \param s4 ...
2558 : !> \param s5 ...
2559 : !> \param s6 ...
2560 : !> \param s7 ...
2561 : !> \param s8 ...
2562 : !> \param s9 ...
2563 : !> \param s10 ...
2564 : !> \param s11 ...
2565 : !> \param s12 ...
2566 : !> \param s13 ...
2567 : !> \param s14 ...
2568 : !> \param s15 ...
2569 : !> \param s16 ...
2570 : !> \param s17 ...
2571 : !> \param s18 ...
2572 : !> \param s19 ...
2573 : !> \param s20 ...
2574 : !> \param s21 ...
2575 : !> \param s22 ...
2576 : !> \param s23 ...
2577 : !> \param s24 ...
2578 : !> \param s25 ...
2579 : !> \param s26 ...
2580 : !> \param s27 ...
2581 : !> \param s28 ...
2582 : !> \param s29 ...
2583 : !> \param s30 ...
2584 : !> \param s31 ...
2585 : !> \param s32 ...
2586 : !> \param s33 ...
2587 : !> \param s34 ...
2588 : !> \param s35 ...
2589 : !> \param s36 ...
2590 : !> \param s37 ...
2591 : !> \param s38 ...
2592 : !> \param s39 ...
2593 : !> \param s40 ...
2594 : !> \param s41 ...
2595 : !> \param s42 ...
2596 : !> \param s43 ...
2597 : !> \param s44 ...
2598 : !> \param s45 ...
2599 : !> \param s46 ...
2600 : !> \param s47 ...
2601 : !> \param s48 ...
2602 : !> \param s49 ...
2603 : !> \param s50 ...
2604 : !> \param s51 ...
2605 : !> \param s52 ...
2606 : !> \param s53 ...
2607 : !> \param s54 ...
2608 : !> \return ...
2609 : ! **************************************************************************************************
2610 0 : PURE FUNCTION s2a_54(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2611 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2612 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2613 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2614 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2615 0 : s51, s52, s53, s54) RESULT(a)
2616 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2617 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2618 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2619 : s51, s52, s53, s54
2620 : CHARACTER(LEN=1000), DIMENSION(54) :: a
2621 :
2622 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2623 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2624 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2625 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2626 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2627 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2628 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2629 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2630 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2631 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
2632 0 : a(51) = s51; a(52) = s52; a(53) = s53; a(54) = s54
2633 0 : END FUNCTION s2a_54
2634 : ! **************************************************************************************************
2635 : !> \brief ...
2636 : !> \param s1 ...
2637 : !> \param s2 ...
2638 : !> \param s3 ...
2639 : !> \param s4 ...
2640 : !> \param s5 ...
2641 : !> \param s6 ...
2642 : !> \param s7 ...
2643 : !> \param s8 ...
2644 : !> \param s9 ...
2645 : !> \param s10 ...
2646 : !> \param s11 ...
2647 : !> \param s12 ...
2648 : !> \param s13 ...
2649 : !> \param s14 ...
2650 : !> \param s15 ...
2651 : !> \param s16 ...
2652 : !> \param s17 ...
2653 : !> \param s18 ...
2654 : !> \param s19 ...
2655 : !> \param s20 ...
2656 : !> \param s21 ...
2657 : !> \param s22 ...
2658 : !> \param s23 ...
2659 : !> \param s24 ...
2660 : !> \param s25 ...
2661 : !> \param s26 ...
2662 : !> \param s27 ...
2663 : !> \param s28 ...
2664 : !> \param s29 ...
2665 : !> \param s30 ...
2666 : !> \param s31 ...
2667 : !> \param s32 ...
2668 : !> \param s33 ...
2669 : !> \param s34 ...
2670 : !> \param s35 ...
2671 : !> \param s36 ...
2672 : !> \param s37 ...
2673 : !> \param s38 ...
2674 : !> \param s39 ...
2675 : !> \param s40 ...
2676 : !> \param s41 ...
2677 : !> \param s42 ...
2678 : !> \param s43 ...
2679 : !> \param s44 ...
2680 : !> \param s45 ...
2681 : !> \param s46 ...
2682 : !> \param s47 ...
2683 : !> \param s48 ...
2684 : !> \param s49 ...
2685 : !> \param s50 ...
2686 : !> \param s51 ...
2687 : !> \param s52 ...
2688 : !> \param s53 ...
2689 : !> \param s54 ...
2690 : !> \param s55 ...
2691 : !> \return ...
2692 : ! **************************************************************************************************
2693 0 : PURE FUNCTION s2a_55(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2694 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2695 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2696 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2697 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2698 0 : s51, s52, s53, s54, s55) RESULT(a)
2699 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2700 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2701 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2702 : s51, s52, s53, s54, s55
2703 : CHARACTER(LEN=1000), DIMENSION(55) :: a
2704 :
2705 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2706 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2707 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2708 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2709 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2710 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2711 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2712 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2713 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2714 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
2715 0 : a(51) = s51; a(52) = s52; a(53) = s53; a(54) = s54; a(55) = s55
2716 0 : END FUNCTION s2a_55
2717 : ! **************************************************************************************************
2718 : !> \brief ...
2719 : !> \param s1 ...
2720 : !> \param s2 ...
2721 : !> \param s3 ...
2722 : !> \param s4 ...
2723 : !> \param s5 ...
2724 : !> \param s6 ...
2725 : !> \param s7 ...
2726 : !> \param s8 ...
2727 : !> \param s9 ...
2728 : !> \param s10 ...
2729 : !> \param s11 ...
2730 : !> \param s12 ...
2731 : !> \param s13 ...
2732 : !> \param s14 ...
2733 : !> \param s15 ...
2734 : !> \param s16 ...
2735 : !> \param s17 ...
2736 : !> \param s18 ...
2737 : !> \param s19 ...
2738 : !> \param s20 ...
2739 : !> \param s21 ...
2740 : !> \param s22 ...
2741 : !> \param s23 ...
2742 : !> \param s24 ...
2743 : !> \param s25 ...
2744 : !> \param s26 ...
2745 : !> \param s27 ...
2746 : !> \param s28 ...
2747 : !> \param s29 ...
2748 : !> \param s30 ...
2749 : !> \param s31 ...
2750 : !> \param s32 ...
2751 : !> \param s33 ...
2752 : !> \param s34 ...
2753 : !> \param s35 ...
2754 : !> \param s36 ...
2755 : !> \param s37 ...
2756 : !> \param s38 ...
2757 : !> \param s39 ...
2758 : !> \param s40 ...
2759 : !> \param s41 ...
2760 : !> \param s42 ...
2761 : !> \param s43 ...
2762 : !> \param s44 ...
2763 : !> \param s45 ...
2764 : !> \param s46 ...
2765 : !> \param s47 ...
2766 : !> \param s48 ...
2767 : !> \param s49 ...
2768 : !> \param s50 ...
2769 : !> \param s51 ...
2770 : !> \param s52 ...
2771 : !> \param s53 ...
2772 : !> \param s54 ...
2773 : !> \param s55 ...
2774 : !> \param s56 ...
2775 : !> \return ...
2776 : ! **************************************************************************************************
2777 0 : PURE FUNCTION s2a_56(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2778 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2779 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2780 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2781 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2782 0 : s51, s52, s53, s54, s55, s56) RESULT(a)
2783 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2784 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2785 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2786 : s51, s52, s53, s54, s55, s56
2787 : CHARACTER(LEN=1000), DIMENSION(56) :: a
2788 :
2789 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2790 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2791 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2792 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2793 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2794 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2795 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2796 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2797 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2798 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
2799 0 : a(51) = s51; a(52) = s52; a(53) = s53; a(54) = s54; a(55) = s55
2800 0 : a(56) = s56
2801 0 : END FUNCTION s2a_56
2802 : ! **************************************************************************************************
2803 : !> \brief ...
2804 : !> \param s1 ...
2805 : !> \param s2 ...
2806 : !> \param s3 ...
2807 : !> \param s4 ...
2808 : !> \param s5 ...
2809 : !> \param s6 ...
2810 : !> \param s7 ...
2811 : !> \param s8 ...
2812 : !> \param s9 ...
2813 : !> \param s10 ...
2814 : !> \param s11 ...
2815 : !> \param s12 ...
2816 : !> \param s13 ...
2817 : !> \param s14 ...
2818 : !> \param s15 ...
2819 : !> \param s16 ...
2820 : !> \param s17 ...
2821 : !> \param s18 ...
2822 : !> \param s19 ...
2823 : !> \param s20 ...
2824 : !> \param s21 ...
2825 : !> \param s22 ...
2826 : !> \param s23 ...
2827 : !> \param s24 ...
2828 : !> \param s25 ...
2829 : !> \param s26 ...
2830 : !> \param s27 ...
2831 : !> \param s28 ...
2832 : !> \param s29 ...
2833 : !> \param s30 ...
2834 : !> \param s31 ...
2835 : !> \param s32 ...
2836 : !> \param s33 ...
2837 : !> \param s34 ...
2838 : !> \param s35 ...
2839 : !> \param s36 ...
2840 : !> \param s37 ...
2841 : !> \param s38 ...
2842 : !> \param s39 ...
2843 : !> \param s40 ...
2844 : !> \param s41 ...
2845 : !> \param s42 ...
2846 : !> \param s43 ...
2847 : !> \param s44 ...
2848 : !> \param s45 ...
2849 : !> \param s46 ...
2850 : !> \param s47 ...
2851 : !> \param s48 ...
2852 : !> \param s49 ...
2853 : !> \param s50 ...
2854 : !> \param s51 ...
2855 : !> \param s52 ...
2856 : !> \param s53 ...
2857 : !> \param s54 ...
2858 : !> \param s55 ...
2859 : !> \param s56 ...
2860 : !> \param s57 ...
2861 : !> \return ...
2862 : ! **************************************************************************************************
2863 0 : PURE FUNCTION s2a_57(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2864 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2865 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2866 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2867 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2868 0 : s51, s52, s53, s54, s55, s56, s57) RESULT(a)
2869 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2870 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2871 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2872 : s51, s52, s53, s54, s55, s56, s57
2873 : CHARACTER(LEN=1000), DIMENSION(57) :: a
2874 :
2875 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2876 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2877 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2878 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2879 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2880 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2881 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2882 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2883 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2884 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
2885 0 : a(51) = s51; a(52) = s52; a(53) = s53; a(54) = s54; a(55) = s55
2886 0 : a(56) = s56; a(57) = s57
2887 0 : END FUNCTION s2a_57
2888 : ! **************************************************************************************************
2889 : !> \brief ...
2890 : !> \param s1 ...
2891 : !> \param s2 ...
2892 : !> \param s3 ...
2893 : !> \param s4 ...
2894 : !> \param s5 ...
2895 : !> \param s6 ...
2896 : !> \param s7 ...
2897 : !> \param s8 ...
2898 : !> \param s9 ...
2899 : !> \param s10 ...
2900 : !> \param s11 ...
2901 : !> \param s12 ...
2902 : !> \param s13 ...
2903 : !> \param s14 ...
2904 : !> \param s15 ...
2905 : !> \param s16 ...
2906 : !> \param s17 ...
2907 : !> \param s18 ...
2908 : !> \param s19 ...
2909 : !> \param s20 ...
2910 : !> \param s21 ...
2911 : !> \param s22 ...
2912 : !> \param s23 ...
2913 : !> \param s24 ...
2914 : !> \param s25 ...
2915 : !> \param s26 ...
2916 : !> \param s27 ...
2917 : !> \param s28 ...
2918 : !> \param s29 ...
2919 : !> \param s30 ...
2920 : !> \param s31 ...
2921 : !> \param s32 ...
2922 : !> \param s33 ...
2923 : !> \param s34 ...
2924 : !> \param s35 ...
2925 : !> \param s36 ...
2926 : !> \param s37 ...
2927 : !> \param s38 ...
2928 : !> \param s39 ...
2929 : !> \param s40 ...
2930 : !> \param s41 ...
2931 : !> \param s42 ...
2932 : !> \param s43 ...
2933 : !> \param s44 ...
2934 : !> \param s45 ...
2935 : !> \param s46 ...
2936 : !> \param s47 ...
2937 : !> \param s48 ...
2938 : !> \param s49 ...
2939 : !> \param s50 ...
2940 : !> \param s51 ...
2941 : !> \param s52 ...
2942 : !> \param s53 ...
2943 : !> \param s54 ...
2944 : !> \param s55 ...
2945 : !> \param s56 ...
2946 : !> \param s57 ...
2947 : !> \param s58 ...
2948 : !> \return ...
2949 : ! **************************************************************************************************
2950 0 : PURE FUNCTION s2a_58(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
2951 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
2952 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
2953 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
2954 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2955 0 : s51, s52, s53, s54, s55, s56, s57, s58) RESULT(a)
2956 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
2957 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
2958 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
2959 : s51, s52, s53, s54, s55, s56, s57, s58
2960 : CHARACTER(LEN=1000), DIMENSION(58) :: a
2961 :
2962 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
2963 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
2964 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
2965 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
2966 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
2967 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
2968 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
2969 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
2970 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
2971 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
2972 0 : a(51) = s51; a(52) = s52; a(53) = s53; a(54) = s54; a(55) = s55
2973 0 : a(56) = s56; a(57) = s57; a(58) = s58
2974 0 : END FUNCTION s2a_58
2975 : ! **************************************************************************************************
2976 : !> \brief ...
2977 : !> \param s1 ...
2978 : !> \param s2 ...
2979 : !> \param s3 ...
2980 : !> \param s4 ...
2981 : !> \param s5 ...
2982 : !> \param s6 ...
2983 : !> \param s7 ...
2984 : !> \param s8 ...
2985 : !> \param s9 ...
2986 : !> \param s10 ...
2987 : !> \param s11 ...
2988 : !> \param s12 ...
2989 : !> \param s13 ...
2990 : !> \param s14 ...
2991 : !> \param s15 ...
2992 : !> \param s16 ...
2993 : !> \param s17 ...
2994 : !> \param s18 ...
2995 : !> \param s19 ...
2996 : !> \param s20 ...
2997 : !> \param s21 ...
2998 : !> \param s22 ...
2999 : !> \param s23 ...
3000 : !> \param s24 ...
3001 : !> \param s25 ...
3002 : !> \param s26 ...
3003 : !> \param s27 ...
3004 : !> \param s28 ...
3005 : !> \param s29 ...
3006 : !> \param s30 ...
3007 : !> \param s31 ...
3008 : !> \param s32 ...
3009 : !> \param s33 ...
3010 : !> \param s34 ...
3011 : !> \param s35 ...
3012 : !> \param s36 ...
3013 : !> \param s37 ...
3014 : !> \param s38 ...
3015 : !> \param s39 ...
3016 : !> \param s40 ...
3017 : !> \param s41 ...
3018 : !> \param s42 ...
3019 : !> \param s43 ...
3020 : !> \param s44 ...
3021 : !> \param s45 ...
3022 : !> \param s46 ...
3023 : !> \param s47 ...
3024 : !> \param s48 ...
3025 : !> \param s49 ...
3026 : !> \param s50 ...
3027 : !> \param s51 ...
3028 : !> \param s52 ...
3029 : !> \param s53 ...
3030 : !> \param s54 ...
3031 : !> \param s55 ...
3032 : !> \param s56 ...
3033 : !> \param s57 ...
3034 : !> \param s58 ...
3035 : !> \param s59 ...
3036 : !> \return ...
3037 : ! **************************************************************************************************
3038 0 : PURE FUNCTION s2a_59(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
3039 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
3040 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
3041 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
3042 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
3043 0 : s51, s52, s53, s54, s55, s56, s57, s58, s59) RESULT(a)
3044 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
3045 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
3046 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
3047 : s51, s52, s53, s54, s55, s56, s57, s58, s59
3048 : CHARACTER(LEN=1000), DIMENSION(59) :: a
3049 :
3050 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
3051 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
3052 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
3053 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
3054 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
3055 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
3056 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
3057 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
3058 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
3059 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
3060 0 : a(51) = s51; a(52) = s52; a(53) = s53; a(54) = s54; a(55) = s55
3061 0 : a(56) = s56; a(57) = s57; a(58) = s58; a(59) = s59
3062 0 : END FUNCTION s2a_59
3063 : ! **************************************************************************************************
3064 : !> \brief ...
3065 : !> \param s1 ...
3066 : !> \param s2 ...
3067 : !> \param s3 ...
3068 : !> \param s4 ...
3069 : !> \param s5 ...
3070 : !> \param s6 ...
3071 : !> \param s7 ...
3072 : !> \param s8 ...
3073 : !> \param s9 ...
3074 : !> \param s10 ...
3075 : !> \param s11 ...
3076 : !> \param s12 ...
3077 : !> \param s13 ...
3078 : !> \param s14 ...
3079 : !> \param s15 ...
3080 : !> \param s16 ...
3081 : !> \param s17 ...
3082 : !> \param s18 ...
3083 : !> \param s19 ...
3084 : !> \param s20 ...
3085 : !> \param s21 ...
3086 : !> \param s22 ...
3087 : !> \param s23 ...
3088 : !> \param s24 ...
3089 : !> \param s25 ...
3090 : !> \param s26 ...
3091 : !> \param s27 ...
3092 : !> \param s28 ...
3093 : !> \param s29 ...
3094 : !> \param s30 ...
3095 : !> \param s31 ...
3096 : !> \param s32 ...
3097 : !> \param s33 ...
3098 : !> \param s34 ...
3099 : !> \param s35 ...
3100 : !> \param s36 ...
3101 : !> \param s37 ...
3102 : !> \param s38 ...
3103 : !> \param s39 ...
3104 : !> \param s40 ...
3105 : !> \param s41 ...
3106 : !> \param s42 ...
3107 : !> \param s43 ...
3108 : !> \param s44 ...
3109 : !> \param s45 ...
3110 : !> \param s46 ...
3111 : !> \param s47 ...
3112 : !> \param s48 ...
3113 : !> \param s49 ...
3114 : !> \param s50 ...
3115 : !> \param s51 ...
3116 : !> \param s52 ...
3117 : !> \param s53 ...
3118 : !> \param s54 ...
3119 : !> \param s55 ...
3120 : !> \param s56 ...
3121 : !> \param s57 ...
3122 : !> \param s58 ...
3123 : !> \param s59 ...
3124 : !> \param s60 ...
3125 : !> \return ...
3126 : ! **************************************************************************************************
3127 0 : PURE FUNCTION s2a_60(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, &
3128 : s11, s12, s13, s14, s15, s16, s17, s18, s19, s20, &
3129 : s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, &
3130 : s31, s32, s33, s34, s35, s36, s37, s38, s39, s40, &
3131 : s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
3132 0 : s51, s52, s53, s54, s55, s56, s57, s58, s59, s60) RESULT(a)
3133 : CHARACTER(LEN=*), INTENT(IN) :: s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, &
3134 : s15, s16, s17, s18, s19, s20, s21, s22, s23, s24, s25, s26, s27, s28, s29, s30, s31, s32, &
3135 : s33, s34, s35, s36, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, &
3136 : s51, s52, s53, s54, s55, s56, s57, s58, s59, s60
3137 : CHARACTER(LEN=1000), DIMENSION(60) :: a
3138 :
3139 0 : a(1) = s1; a(2) = s2; a(3) = s3; a(4) = s4; a(5) = s5
3140 0 : a(6) = s6; a(7) = s7; a(8) = s8; a(9) = s9; a(10) = s10
3141 0 : a(11) = s11; a(12) = s12; a(13) = s13; a(14) = s14; a(15) = s15
3142 0 : a(16) = s16; a(17) = s17; a(18) = s18; a(19) = s19; a(20) = s20
3143 0 : a(21) = s21; a(22) = s22; a(23) = s23; a(24) = s24; a(25) = s25
3144 0 : a(26) = s26; a(27) = s27; a(28) = s28; a(29) = s29; a(30) = s30
3145 0 : a(31) = s31; a(32) = s32; a(33) = s33; a(34) = s34; a(35) = s35
3146 0 : a(36) = s36; a(37) = s37; a(38) = s38; a(39) = s39; a(40) = s40
3147 0 : a(41) = s41; a(42) = s42; a(43) = s43; a(44) = s44; a(45) = s45
3148 0 : a(46) = s46; a(47) = s47; a(48) = s48; a(49) = s49; a(50) = s50
3149 0 : a(51) = s51; a(52) = s52; a(53) = s53; a(54) = s54; a(55) = s55
3150 0 : a(56) = s56; a(57) = s57; a(58) = s58; a(59) = s59; a(60) = s60
3151 0 : END FUNCTION s2a_60
3152 :
3153 : ! **************************************************************************************************
3154 : !> \brief Convert a sequence of integer numbers (ASCII code) to a string.
3155 : !> Blanks are inserted for invalid ASCII code numbers.
3156 : !> \param nascii ...
3157 : !> \param string ...
3158 : !> \date 19.10.2000
3159 : !> \author MK
3160 : !> \version 1.0
3161 : ! **************************************************************************************************
3162 63042 : SUBROUTINE ascii_to_string(nascii, string)
3163 :
3164 : INTEGER, DIMENSION(:), INTENT(IN) :: nascii
3165 : CHARACTER(LEN=*), INTENT(OUT) :: string
3166 :
3167 : INTEGER :: i
3168 :
3169 31521 : string = ""
3170 :
3171 13678099 : DO i = 1, MIN(LEN(string), SIZE(nascii))
3172 13678099 : IF ((nascii(i) >= 0) .AND. (nascii(i) <= 127)) THEN
3173 13646578 : string(i:i) = CHAR(nascii(i))
3174 : ELSE
3175 0 : string(i:i) = " "
3176 : END IF
3177 : END DO
3178 :
3179 31521 : END SUBROUTINE ascii_to_string
3180 :
3181 : ! **************************************************************************************************
3182 : !> \brief Eliminate multiple space characters in a string.
3183 : !> If full is .TRUE., then all spaces are eliminated.
3184 : !> \param string ...
3185 : !> \param full ...
3186 : !> \date 23.06.1998
3187 : !> \author MK
3188 : !> \version 1.0
3189 : ! **************************************************************************************************
3190 58247481 : SUBROUTINE compress(string, full)
3191 :
3192 : CHARACTER(LEN=*), INTENT(INOUT) :: string
3193 : LOGICAL, INTENT(IN), OPTIONAL :: full
3194 :
3195 : CHARACTER :: tmp
3196 : INTEGER :: i, z
3197 : LOGICAL :: remove_all
3198 :
3199 58247481 : IF (PRESENT(full)) THEN
3200 57910298 : remove_all = full
3201 : ELSE
3202 : remove_all = .FALSE.
3203 : END IF
3204 :
3205 58247481 : z = 1
3206 :
3207 588247560 : DO i = 1, LEN_TRIM(string)
3208 588247560 : IF ((z == 1) .OR. remove_all) THEN
3209 522013803 : IF (string(i:i) /= " ") THEN
3210 190327255 : tmp = string(i:i)
3211 190327255 : string(z:z) = tmp
3212 190327255 : z = z + 1
3213 : END IF
3214 : ELSE
3215 7986276 : IF ((string(i:i) /= " ") .OR. (string(z - 1:z - 1) /= " ")) THEN
3216 7853760 : tmp = string(i:i)
3217 7853760 : string(z:z) = tmp
3218 7853760 : z = z + 1
3219 : END IF
3220 : END IF
3221 : END DO
3222 :
3223 58247481 : string(z:) = ""
3224 :
3225 58247481 : END SUBROUTINE compress
3226 :
3227 : ! **************************************************************************************************
3228 : !> \brief Converts an integer number to a string.
3229 : !> The WRITE statement will return an error message, if the number of
3230 : !> digits of the integer number is larger the than the length of the
3231 : !> supplied string.
3232 : !> \param inumber ...
3233 : !> \param string ...
3234 : !> \date 05.01.2004
3235 : !> \author MK
3236 : !> \version 1.0
3237 : ! **************************************************************************************************
3238 234702 : SUBROUTINE integer_to_string(inumber, string)
3239 :
3240 : INTEGER, INTENT(IN) :: inumber
3241 : CHARACTER(LEN=*), INTENT(OUT) :: string
3242 :
3243 234702 : WRITE (UNIT=string, FMT='(I0)') inumber
3244 234702 : END SUBROUTINE integer_to_string
3245 :
3246 : ! **************************************************************************************************
3247 : !> \brief Convert a string to sequence of integer numbers.
3248 : !> \param string ...
3249 : !> \param nascii ...
3250 : !> \date 19.10.2000
3251 : !> \author MK
3252 : !> \version 1.0
3253 : ! **************************************************************************************************
3254 15975 : SUBROUTINE string_to_ascii(string, nascii)
3255 :
3256 : CHARACTER(LEN=*), INTENT(IN) :: string
3257 : INTEGER, DIMENSION(:), INTENT(OUT) :: nascii
3258 :
3259 : INTEGER :: i
3260 :
3261 6931538 : nascii(:) = 0
3262 :
3263 6931538 : DO i = 1, MIN(LEN(string), SIZE(nascii))
3264 6931538 : nascii(i) = ICHAR(string(i:i))
3265 : END DO
3266 :
3267 15975 : END SUBROUTINE string_to_ascii
3268 :
3269 : ! **************************************************************************************************
3270 : !> \brief remove a word from a string (words are separated by white spaces)
3271 : !> \param string ...
3272 : !> \version 1.0
3273 : ! **************************************************************************************************
3274 8542 : SUBROUTINE remove_word(string)
3275 : CHARACTER(LEN=*), INTENT(INOUT) :: string
3276 :
3277 : INTEGER :: i
3278 :
3279 8542 : i = 1
3280 : ! possibly clean white spaces
3281 39186 : DO WHILE (string(i:i) == " ")
3282 30644 : i = i + 1
3283 : END DO
3284 : ! now remove the word
3285 82926 : DO WHILE (string(i:i) /= " ")
3286 74384 : i = i + 1
3287 : END DO
3288 8542 : string = string(i:)
3289 :
3290 8542 : END SUBROUTINE remove_word
3291 :
3292 : ! **************************************************************************************************
3293 : !> \brief Substitutes the five predefined XML entities: &, <, >, ', and ".
3294 : !> \param inp_string ...
3295 : !> \return ...
3296 : !> !> \author Ole Schuett
3297 : ! **************************************************************************************************
3298 0 : FUNCTION substitute_special_xml_tokens(inp_string) RESULT(out_string)
3299 :
3300 : CHARACTER(LEN=*), INTENT(IN) :: inp_string
3301 : CHARACTER(LEN=2*LEN(inp_string)) :: out_string
3302 :
3303 : INTEGER :: i, j
3304 :
3305 0 : out_string = ""
3306 :
3307 0 : j = 1
3308 0 : DO i = 1, LEN_TRIM(inp_string)
3309 0 : SELECT CASE (inp_string(i:i))
3310 : CASE ("<")
3311 0 : out_string(j:j + 3) = "<"
3312 0 : j = j + 4
3313 : CASE (">")
3314 0 : out_string(j:j + 3) = ">"
3315 0 : j = j + 4
3316 : CASE ("&")
3317 0 : out_string(j:j + 4) = "&"
3318 0 : j = j + 5
3319 : CASE ("'")
3320 0 : out_string(j:j + 5) = "'"
3321 0 : j = j + 6
3322 : CASE ('"')
3323 0 : out_string(j:j + 5) = """
3324 0 : j = j + 6
3325 : CASE DEFAULT
3326 0 : out_string(j:j) = inp_string(i:i)
3327 0 : j = j + 1
3328 : END SELECT
3329 : END DO
3330 :
3331 0 : END FUNCTION substitute_special_xml_tokens
3332 :
3333 : ! **************************************************************************************************
3334 : !> \brief Convert all upper case characters in a string to lower case.
3335 : !> \param string ...
3336 : !> \date 14.08.2013
3337 : !> \author Matthias Krack (MK)
3338 : !> \version 1.0
3339 : ! **************************************************************************************************
3340 1820 : ELEMENTAL SUBROUTINE lowercase(string)
3341 : CHARACTER(LEN=*), INTENT(INOUT) :: string
3342 :
3343 : INTEGER :: i, iascii
3344 :
3345 15245 : DO i = 1, LEN_TRIM(string)
3346 13425 : iascii = ICHAR(string(i:i))
3347 15245 : IF ((iascii >= 65) .AND. (iascii <= 90)) THEN
3348 1820 : string(i:i) = CHAR(iascii + 32)
3349 : END IF
3350 : END DO
3351 :
3352 1820 : END SUBROUTINE lowercase
3353 :
3354 : ! **************************************************************************************************
3355 : !> \brief Convert all lower case characters in a string to upper case.
3356 : !> \param string ...
3357 : !> \date 22.06.1998
3358 : !> \author MK
3359 : !> \version 1.0
3360 : ! **************************************************************************************************
3361 1177847234 : ELEMENTAL SUBROUTINE uppercase(string)
3362 : CHARACTER(LEN=*), INTENT(INOUT) :: string
3363 :
3364 : INTEGER :: i, iascii
3365 :
3366 12459578727 : DO i = 1, LEN_TRIM(string)
3367 11281731493 : iascii = ICHAR(string(i:i))
3368 12459578727 : IF ((iascii >= 97) .AND. (iascii <= 122)) THEN
3369 3171425471 : string(i:i) = CHAR(iascii - 32)
3370 : END IF
3371 : END DO
3372 :
3373 1177847234 : END SUBROUTINE uppercase
3374 :
3375 : ! **************************************************************************************************
3376 : !> \brief ...
3377 : !> \param string ...
3378 : !> \param ia ...
3379 : !> \param ib ...
3380 : ! **************************************************************************************************
3381 3754 : ELEMENTAL SUBROUTINE xstring(string, ia, ib)
3382 :
3383 : CHARACTER(LEN=*), INTENT(IN) :: string
3384 : INTEGER, INTENT(OUT) :: ia, ib
3385 :
3386 3754 : ia = 1
3387 3754 : ib = LEN_TRIM(string)
3388 3754 : IF (ib > 0) THEN
3389 3754 : DO WHILE (string(ia:ia) == ' ')
3390 0 : ia = ia + 1
3391 : END DO
3392 : END IF
3393 :
3394 3754 : END SUBROUTINE xstring
3395 :
3396 : ! **************************************************************************************************
3397 : !> \brief ...
3398 : !> \param str1 ...
3399 : !> \param str2 ...
3400 : !> \return ...
3401 : ! **************************************************************************************************
3402 2 : ELEMENTAL FUNCTION str_comp(str1, str2) RESULT(equal)
3403 :
3404 : CHARACTER(LEN=*), INTENT(IN) :: str1, str2
3405 : LOGICAL :: equal
3406 :
3407 : INTEGER :: i1, i2, j1, j2
3408 :
3409 2 : i1 = 0
3410 2 : i2 = 0
3411 2 : j1 = 0
3412 2 : j2 = 0
3413 2 : CALL xstring(str1, i1, i2)
3414 2 : CALL xstring(str2, j1, j2)
3415 2 : equal = (str1(i1:i2) == str2(j1:j2))
3416 2 : END FUNCTION str_comp
3417 :
3418 : ! **************************************************************************************************
3419 : !> \brief returns .true. if the character passed is a whitespace char.
3420 : !> \param testchar ...
3421 : !> \return ...
3422 : !> \par History
3423 : !> 02.2008 created, AK
3424 : ! **************************************************************************************************
3425 930548810 : ELEMENTAL FUNCTION is_whitespace(testchar) RESULT(resval)
3426 : CHARACTER(LEN=1), INTENT(IN) :: testchar
3427 : LOGICAL :: resval
3428 :
3429 930548810 : resval = .FALSE.
3430 1155206208 : IF (ANY(default_blank_character == testchar)) resval = .TRUE.
3431 930548810 : END FUNCTION is_whitespace
3432 :
3433 : ! **************************************************************************************************
3434 : !> \brief Strip control codes and extended characters from a string, i.e. replace them with blanks
3435 : !> \param string ...
3436 : !> \date 13.12.2019
3437 : !> \author MK
3438 : !> \version 1.0
3439 : ! **************************************************************************************************
3440 1302 : ELEMENTAL SUBROUTINE strip_control_codes(string)
3441 :
3442 : CHARACTER(LEN=*), INTENT(INOUT) :: string
3443 :
3444 : INTEGER :: i, iascii
3445 :
3446 13020 : DO i = 1, LEN(string)
3447 11718 : iascii = ICHAR(string(i:i))
3448 13020 : IF ((iascii < 32) .OR. (iascii > 126)) string(i:i) = " "
3449 : END DO
3450 :
3451 1302 : END SUBROUTINE strip_control_codes
3452 :
3453 : ! **************************************************************************************************
3454 : !> \brief Copy the content of a \0-terminated C-string to a finite-length Fortran string
3455 : !>
3456 : !> The content of the new string may be truncated if the number of characters before the '\0'
3457 : !> in the source string exceed the length of the destination string. Based on the strlcpy C function.
3458 : !> \param fstring destination string
3459 : !> \param cstring source string
3460 : !> \return the number of characters copied
3461 : !> \author Tiziano Müller
3462 : ! **************************************************************************************************
3463 96030 : FUNCTION strlcpy_c2f(fstring, cstring) RESULT(nchar)
3464 : CHARACTER(LEN=*), INTENT(OUT) :: fstring
3465 : CHARACTER(LEN=1, KIND=C_CHAR), INTENT(IN) :: cstring(*)
3466 : INTEGER :: nchar
3467 :
3468 7175852 : DO nchar = 1, LEN(fstring)
3469 7175852 : IF (cstring(nchar) == C_NULL_CHAR) EXIT
3470 7175852 : fstring(nchar:nchar) = cstring(nchar)
3471 : END DO
3472 :
3473 96030 : nchar = nchar - 1
3474 96030 : END FUNCTION strlcpy_c2f
3475 :
3476 : END MODULE string_utilities
|