Line data Source code
1 : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2 : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3 : !!!! !!!!
4 : !!!! ParaMonte: Parallel Monte Carlo and Machine Learning Library. !!!!
5 : !!!! !!!!
6 : !!!! Copyright (C) 2012-present, The Computational Data Science Lab !!!!
7 : !!!! !!!!
8 : !!!! This file is part of the ParaMonte library. !!!!
9 : !!!! !!!!
10 : !!!! LICENSE !!!!
11 : !!!! !!!!
12 : !!!! https://github.com/cdslaborg/paramonte/blob/main/LICENSE.md !!!!
13 : !!!! !!!!
14 : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
15 : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16 :
17 : !> \brief
18 : !> This file contains procedure implementations of [test_pm_arrayCompact](@ref test_pm_arrayCompact).
19 : !>
20 : !> \fintest
21 : !>
22 : !> \author
23 : !> \AmirShahmoradi, September 1, 2017, 11:35 PM, Institute for Computational Engineering and Sciences (ICES), The University of Texas at Austin
24 :
25 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26 :
27 : submodule (test_pm_arrayCompact) routines ! LCOV_EXCL_LINE
28 :
29 : use pm_kind, only: LK, SK
30 : use pm_arrayUnique, only: getUnique
31 : use pm_arrayVerbose, only: getVerbose
32 : use pm_distUnif, only: setUnifRand
33 : use pm_option, only: getOption
34 : use pm_val2str, only: getStr
35 : implicit none
36 :
37 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
38 :
39 : contains
40 :
41 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
42 :
43 : #define getCompact_ENABLED 1
44 :
45 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
46 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
47 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
48 :
49 : #define D0_ENABLED 1
50 :
51 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
52 :
53 : #define SK_ENABLED 1
54 :
55 : #if SK5_ENABLED
56 : module procedure test_getCompact_D0_SK5_1
57 : use pm_kind, only: SKC => SK5
58 : #include "test_pm_arrayCompact@routines.inc.F90"
59 : end procedure
60 : #endif
61 :
62 : #if SK4_ENABLED
63 : module procedure test_getCompact_D0_SK4_1
64 : use pm_kind, only: SKC => SK4
65 : #include "test_pm_arrayCompact@routines.inc.F90"
66 : end procedure
67 : #endif
68 :
69 : #if SK3_ENABLED
70 : module procedure test_getCompact_D0_SK3_1
71 : use pm_kind, only: SKC => SK3
72 : #include "test_pm_arrayCompact@routines.inc.F90"
73 : end procedure
74 : #endif
75 :
76 : #if SK2_ENABLED
77 : module procedure test_getCompact_D0_SK2_1
78 : use pm_kind, only: SKC => SK2
79 : #include "test_pm_arrayCompact@routines.inc.F90"
80 : end procedure
81 : #endif
82 :
83 : #if SK1_ENABLED
84 1 : module procedure test_getCompact_D0_SK1_1
85 : use pm_kind, only: SKC => SK1
86 : #include "test_pm_arrayCompact@routines.inc.F90"
87 : end procedure
88 : #endif
89 :
90 : #undef SK_ENABLED
91 :
92 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
93 :
94 : #undef D0_ENABLED
95 :
96 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
97 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
98 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
99 :
100 : #define D1_ENABLED 1
101 :
102 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
103 :
104 : #define SK_ENABLED 1
105 :
106 : #if SK5_ENABLED
107 : module procedure test_getCompact_D1_SK5_1
108 : use pm_kind, only: SKC => SK5
109 : #include "test_pm_arrayCompact@routines.inc.F90"
110 : end procedure
111 : #endif
112 :
113 : #if SK4_ENABLED
114 : module procedure test_getCompact_D1_SK4_1
115 : use pm_kind, only: SKC => SK4
116 : #include "test_pm_arrayCompact@routines.inc.F90"
117 : end procedure
118 : #endif
119 :
120 : #if SK3_ENABLED
121 : module procedure test_getCompact_D1_SK3_1
122 : use pm_kind, only: SKC => SK3
123 : #include "test_pm_arrayCompact@routines.inc.F90"
124 : end procedure
125 : #endif
126 :
127 : #if SK2_ENABLED
128 : module procedure test_getCompact_D1_SK2_1
129 : use pm_kind, only: SKC => SK2
130 : #include "test_pm_arrayCompact@routines.inc.F90"
131 : end procedure
132 : #endif
133 :
134 : #if SK1_ENABLED
135 1 : module procedure test_getCompact_D1_SK1_1
136 : use pm_kind, only: SKC => SK1
137 : #include "test_pm_arrayCompact@routines.inc.F90"
138 : end procedure
139 : #endif
140 :
141 : #undef SK_ENABLED
142 :
143 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
144 :
145 : #define IK_ENABLED 1
146 :
147 : #if IK5_ENABLED
148 1 : module procedure test_getCompact_D1_IK5_1
149 : use pm_kind, only: IKC => IK5
150 : #include "test_pm_arrayCompact@routines.inc.F90"
151 : end procedure
152 : #endif
153 :
154 : #if IK4_ENABLED
155 1 : module procedure test_getCompact_D1_IK4_1
156 : use pm_kind, only: IKC => IK4
157 : #include "test_pm_arrayCompact@routines.inc.F90"
158 : end procedure
159 : #endif
160 :
161 : #if IK3_ENABLED
162 1 : module procedure test_getCompact_D1_IK3_1
163 : use pm_kind, only: IKC => IK3
164 : #include "test_pm_arrayCompact@routines.inc.F90"
165 : end procedure
166 : #endif
167 :
168 : #if IK2_ENABLED
169 1 : module procedure test_getCompact_D1_IK2_1
170 : use pm_kind, only: IKC => IK2
171 : #include "test_pm_arrayCompact@routines.inc.F90"
172 : end procedure
173 : #endif
174 :
175 : #if IK1_ENABLED
176 1 : module procedure test_getCompact_D1_IK1_1
177 : use pm_kind, only: IKC => IK1
178 : #include "test_pm_arrayCompact@routines.inc.F90"
179 : end procedure
180 : #endif
181 :
182 : #undef IK_ENABLED
183 :
184 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
185 :
186 : #define LK_ENABLED 1
187 :
188 : #if LK5_ENABLED
189 1 : module procedure test_getCompact_D1_LK5_1
190 : use pm_kind, only: LKC => LK5
191 : #include "test_pm_arrayCompact@routines.inc.F90"
192 : end procedure
193 : #endif
194 :
195 : #if LK4_ENABLED
196 1 : module procedure test_getCompact_D1_LK4_1
197 : use pm_kind, only: LKC => LK4
198 : #include "test_pm_arrayCompact@routines.inc.F90"
199 : end procedure
200 : #endif
201 :
202 : #if LK3_ENABLED
203 1 : module procedure test_getCompact_D1_LK3_1
204 : use pm_kind, only: LKC => LK3
205 : #include "test_pm_arrayCompact@routines.inc.F90"
206 : end procedure
207 : #endif
208 :
209 : #if LK2_ENABLED
210 1 : module procedure test_getCompact_D1_LK2_1
211 : use pm_kind, only: LKC => LK2
212 : #include "test_pm_arrayCompact@routines.inc.F90"
213 : end procedure
214 : #endif
215 :
216 : #if LK1_ENABLED
217 1 : module procedure test_getCompact_D1_LK1_1
218 : use pm_kind, only: LKC => LK1
219 : #include "test_pm_arrayCompact@routines.inc.F90"
220 : end procedure
221 : #endif
222 :
223 : #undef LK_ENABLED
224 :
225 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
226 :
227 : #define CK_ENABLED 1
228 :
229 : #if CK5_ENABLED
230 : module procedure test_getCompact_D1_CK5_1
231 : use pm_kind, only: CKC => CK5
232 : #include "test_pm_arrayCompact@routines.inc.F90"
233 : end procedure
234 : #endif
235 :
236 : #if CK4_ENABLED
237 1 : module procedure test_getCompact_D1_CK4_1
238 : use pm_kind, only: CKC => CK4
239 : #include "test_pm_arrayCompact@routines.inc.F90"
240 : end procedure
241 : #endif
242 :
243 : #if CK3_ENABLED
244 1 : module procedure test_getCompact_D1_CK3_1
245 : use pm_kind, only: CKC => CK3
246 : #include "test_pm_arrayCompact@routines.inc.F90"
247 : end procedure
248 : #endif
249 :
250 : #if CK2_ENABLED
251 1 : module procedure test_getCompact_D1_CK2_1
252 : use pm_kind, only: CKC => CK2
253 : #include "test_pm_arrayCompact@routines.inc.F90"
254 : end procedure
255 : #endif
256 :
257 : #if CK1_ENABLED
258 1 : module procedure test_getCompact_D1_CK1_1
259 : use pm_kind, only: CKC => CK1
260 : #include "test_pm_arrayCompact@routines.inc.F90"
261 : end procedure
262 : #endif
263 :
264 : #undef CK_ENABLED
265 :
266 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
267 :
268 : #define RK_ENABLED 1
269 :
270 : #if RK5_ENABLED
271 : module procedure test_getCompact_D1_RK5_1
272 : use pm_kind, only: RKC => RK5
273 : #include "test_pm_arrayCompact@routines.inc.F90"
274 : end procedure
275 : #endif
276 :
277 : #if RK4_ENABLED
278 1 : module procedure test_getCompact_D1_RK4_1
279 : use pm_kind, only: RKC => RK4
280 : #include "test_pm_arrayCompact@routines.inc.F90"
281 : end procedure
282 : #endif
283 :
284 : #if RK3_ENABLED
285 1 : module procedure test_getCompact_D1_RK3_1
286 : use pm_kind, only: RKC => RK3
287 : #include "test_pm_arrayCompact@routines.inc.F90"
288 : end procedure
289 : #endif
290 :
291 : #if RK2_ENABLED
292 1 : module procedure test_getCompact_D1_RK2_1
293 : use pm_kind, only: RKC => RK2
294 : #include "test_pm_arrayCompact@routines.inc.F90"
295 : end procedure
296 : #endif
297 :
298 : #if RK1_ENABLED
299 1 : module procedure test_getCompact_D1_RK1_1
300 : use pm_kind, only: RKC => RK1
301 : #include "test_pm_arrayCompact@routines.inc.F90"
302 : end procedure
303 : #endif
304 :
305 : #undef RK_ENABLED
306 :
307 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
308 :
309 : #undef D1_ENABLED
310 :
311 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
312 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
313 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
314 :
315 : #define D2_ENABLED 1
316 :
317 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
318 :
319 : #define SK_ENABLED 1
320 :
321 : #if SK5_ENABLED
322 : module procedure test_getCompact_D2_SK5_1
323 : use pm_kind, only: SKC => SK5
324 : #include "test_pm_arrayCompact@routines.inc.F90"
325 : end procedure
326 : #endif
327 :
328 : #if SK4_ENABLED
329 : module procedure test_getCompact_D2_SK4_1
330 : use pm_kind, only: SKC => SK4
331 : #include "test_pm_arrayCompact@routines.inc.F90"
332 : end procedure
333 : #endif
334 :
335 : #if SK3_ENABLED
336 : module procedure test_getCompact_D2_SK3_1
337 : use pm_kind, only: SKC => SK3
338 : #include "test_pm_arrayCompact@routines.inc.F90"
339 : end procedure
340 : #endif
341 :
342 : #if SK2_ENABLED
343 : module procedure test_getCompact_D2_SK2_1
344 : use pm_kind, only: SKC => SK2
345 : #include "test_pm_arrayCompact@routines.inc.F90"
346 : end procedure
347 : #endif
348 :
349 : #if SK1_ENABLED
350 1 : module procedure test_getCompact_D2_SK1_1
351 : use pm_kind, only: SKC => SK1
352 : #include "test_pm_arrayCompact@routines.inc.F90"
353 : end procedure
354 : #endif
355 :
356 : #undef SK_ENABLED
357 :
358 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
359 :
360 : #define IK_ENABLED 1
361 :
362 : #if IK5_ENABLED
363 1 : module procedure test_getCompact_D2_IK5_1
364 : use pm_kind, only: IKC => IK5
365 : #include "test_pm_arrayCompact@routines.inc.F90"
366 : end procedure
367 : #endif
368 :
369 : #if IK4_ENABLED
370 1 : module procedure test_getCompact_D2_IK4_1
371 : use pm_kind, only: IKC => IK4
372 : #include "test_pm_arrayCompact@routines.inc.F90"
373 : end procedure
374 : #endif
375 :
376 : #if IK3_ENABLED
377 1 : module procedure test_getCompact_D2_IK3_1
378 : use pm_kind, only: IKC => IK3
379 : #include "test_pm_arrayCompact@routines.inc.F90"
380 : end procedure
381 : #endif
382 :
383 : #if IK2_ENABLED
384 1 : module procedure test_getCompact_D2_IK2_1
385 : use pm_kind, only: IKC => IK2
386 : #include "test_pm_arrayCompact@routines.inc.F90"
387 : end procedure
388 : #endif
389 :
390 : #if IK1_ENABLED
391 1 : module procedure test_getCompact_D2_IK1_1
392 : use pm_kind, only: IKC => IK1
393 : #include "test_pm_arrayCompact@routines.inc.F90"
394 : end procedure
395 : #endif
396 :
397 : #undef IK_ENABLED
398 :
399 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
400 :
401 : #define LK_ENABLED 1
402 :
403 : #if LK5_ENABLED
404 1 : module procedure test_getCompact_D2_LK5_1
405 : use pm_kind, only: LKC => LK5
406 : #include "test_pm_arrayCompact@routines.inc.F90"
407 : end procedure
408 : #endif
409 :
410 : #if LK4_ENABLED
411 1 : module procedure test_getCompact_D2_LK4_1
412 : use pm_kind, only: LKC => LK4
413 : #include "test_pm_arrayCompact@routines.inc.F90"
414 : end procedure
415 : #endif
416 :
417 : #if LK3_ENABLED
418 1 : module procedure test_getCompact_D2_LK3_1
419 : use pm_kind, only: LKC => LK3
420 : #include "test_pm_arrayCompact@routines.inc.F90"
421 : end procedure
422 : #endif
423 :
424 : #if LK2_ENABLED
425 1 : module procedure test_getCompact_D2_LK2_1
426 : use pm_kind, only: LKC => LK2
427 : #include "test_pm_arrayCompact@routines.inc.F90"
428 : end procedure
429 : #endif
430 :
431 : #if LK1_ENABLED
432 1 : module procedure test_getCompact_D2_LK1_1
433 : use pm_kind, only: LKC => LK1
434 : #include "test_pm_arrayCompact@routines.inc.F90"
435 : end procedure
436 : #endif
437 :
438 : #undef LK_ENABLED
439 :
440 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
441 :
442 : #define CK_ENABLED 1
443 :
444 : #if CK5_ENABLED
445 : module procedure test_getCompact_D2_CK5_1
446 : use pm_kind, only: CKC => CK5
447 : #include "test_pm_arrayCompact@routines.inc.F90"
448 : end procedure
449 : #endif
450 :
451 : #if CK4_ENABLED
452 1 : module procedure test_getCompact_D2_CK4_1
453 : use pm_kind, only: CKC => CK4
454 : #include "test_pm_arrayCompact@routines.inc.F90"
455 : end procedure
456 : #endif
457 :
458 : #if CK3_ENABLED
459 1 : module procedure test_getCompact_D2_CK3_1
460 : use pm_kind, only: CKC => CK3
461 : #include "test_pm_arrayCompact@routines.inc.F90"
462 : end procedure
463 : #endif
464 :
465 : #if CK2_ENABLED
466 1 : module procedure test_getCompact_D2_CK2_1
467 : use pm_kind, only: CKC => CK2
468 : #include "test_pm_arrayCompact@routines.inc.F90"
469 : end procedure
470 : #endif
471 :
472 : #if CK1_ENABLED
473 1 : module procedure test_getCompact_D2_CK1_1
474 : use pm_kind, only: CKC => CK1
475 : #include "test_pm_arrayCompact@routines.inc.F90"
476 : end procedure
477 : #endif
478 :
479 : #undef CK_ENABLED
480 :
481 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
482 :
483 : #define RK_ENABLED 1
484 :
485 : #if RK5_ENABLED
486 : module procedure test_getCompact_D2_RK5_1
487 : use pm_kind, only: RKC => RK5
488 : #include "test_pm_arrayCompact@routines.inc.F90"
489 : end procedure
490 : #endif
491 :
492 : #if RK4_ENABLED
493 1 : module procedure test_getCompact_D2_RK4_1
494 : use pm_kind, only: RKC => RK4
495 : #include "test_pm_arrayCompact@routines.inc.F90"
496 : end procedure
497 : #endif
498 :
499 : #if RK3_ENABLED
500 1 : module procedure test_getCompact_D2_RK3_1
501 : use pm_kind, only: RKC => RK3
502 : #include "test_pm_arrayCompact@routines.inc.F90"
503 : end procedure
504 : #endif
505 :
506 : #if RK2_ENABLED
507 1 : module procedure test_getCompact_D2_RK2_1
508 : use pm_kind, only: RKC => RK2
509 : #include "test_pm_arrayCompact@routines.inc.F90"
510 : end procedure
511 : #endif
512 :
513 : #if RK1_ENABLED
514 1 : module procedure test_getCompact_D2_RK1_1
515 : use pm_kind, only: RKC => RK1
516 : #include "test_pm_arrayCompact@routines.inc.F90"
517 : end procedure
518 : #endif
519 :
520 : #undef RK_ENABLED
521 :
522 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
523 :
524 : #undef D2_ENABLED
525 :
526 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
527 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
528 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
529 :
530 : #undef getCompact_ENABLED
531 :
532 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
533 :
534 : #define setCompact_ENABLED 1
535 :
536 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
537 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
538 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
539 :
540 : #define D0_ENABLED 1
541 :
542 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
543 :
544 : #define SK_ENABLED 1
545 :
546 : #if SK5_ENABLED
547 : module procedure test_setCompact_D0_SK5_1
548 : use pm_kind, only: SKC => SK5
549 : #include "test_pm_arrayCompact@routines.inc.F90"
550 : end procedure
551 : #endif
552 :
553 : #if SK4_ENABLED
554 : module procedure test_setCompact_D0_SK4_1
555 : use pm_kind, only: SKC => SK4
556 : #include "test_pm_arrayCompact@routines.inc.F90"
557 : end procedure
558 : #endif
559 :
560 : #if SK3_ENABLED
561 : module procedure test_setCompact_D0_SK3_1
562 : use pm_kind, only: SKC => SK3
563 : #include "test_pm_arrayCompact@routines.inc.F90"
564 : end procedure
565 : #endif
566 :
567 : #if SK2_ENABLED
568 : module procedure test_setCompact_D0_SK2_1
569 : use pm_kind, only: SKC => SK2
570 : #include "test_pm_arrayCompact@routines.inc.F90"
571 : end procedure
572 : #endif
573 :
574 : #if SK1_ENABLED
575 1 : module procedure test_setCompact_D0_SK1_1
576 : use pm_kind, only: SKC => SK1
577 : #include "test_pm_arrayCompact@routines.inc.F90"
578 : end procedure
579 : #endif
580 :
581 : #undef SK_ENABLED
582 :
583 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
584 :
585 : #undef D0_ENABLED
586 :
587 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
588 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
589 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
590 :
591 : #define D1_ENABLED 1
592 :
593 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
594 :
595 : #define SK_ENABLED 1
596 :
597 : #if SK5_ENABLED
598 : module procedure test_setCompact_D1_SK5_1
599 : use pm_kind, only: SKC => SK5
600 : #include "test_pm_arrayCompact@routines.inc.F90"
601 : end procedure
602 : #endif
603 :
604 : #if SK4_ENABLED
605 : module procedure test_setCompact_D1_SK4_1
606 : use pm_kind, only: SKC => SK4
607 : #include "test_pm_arrayCompact@routines.inc.F90"
608 : end procedure
609 : #endif
610 :
611 : #if SK3_ENABLED
612 : module procedure test_setCompact_D1_SK3_1
613 : use pm_kind, only: SKC => SK3
614 : #include "test_pm_arrayCompact@routines.inc.F90"
615 : end procedure
616 : #endif
617 :
618 : #if SK2_ENABLED
619 : module procedure test_setCompact_D1_SK2_1
620 : use pm_kind, only: SKC => SK2
621 : #include "test_pm_arrayCompact@routines.inc.F90"
622 : end procedure
623 : #endif
624 :
625 : #if SK1_ENABLED
626 1 : module procedure test_setCompact_D1_SK1_1
627 : use pm_kind, only: SKC => SK1
628 : #include "test_pm_arrayCompact@routines.inc.F90"
629 : end procedure
630 : #endif
631 :
632 : #undef SK_ENABLED
633 :
634 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
635 :
636 : #define IK_ENABLED 1
637 :
638 : #if IK5_ENABLED
639 1 : module procedure test_setCompact_D1_IK5_1
640 : use pm_kind, only: IKC => IK5
641 : #include "test_pm_arrayCompact@routines.inc.F90"
642 : end procedure
643 : #endif
644 :
645 : #if IK4_ENABLED
646 1 : module procedure test_setCompact_D1_IK4_1
647 : use pm_kind, only: IKC => IK4
648 : #include "test_pm_arrayCompact@routines.inc.F90"
649 : end procedure
650 : #endif
651 :
652 : #if IK3_ENABLED
653 1 : module procedure test_setCompact_D1_IK3_1
654 : use pm_kind, only: IKC => IK3
655 : #include "test_pm_arrayCompact@routines.inc.F90"
656 : end procedure
657 : #endif
658 :
659 : #if IK2_ENABLED
660 1 : module procedure test_setCompact_D1_IK2_1
661 : use pm_kind, only: IKC => IK2
662 : #include "test_pm_arrayCompact@routines.inc.F90"
663 : end procedure
664 : #endif
665 :
666 : #if IK1_ENABLED
667 1 : module procedure test_setCompact_D1_IK1_1
668 : use pm_kind, only: IKC => IK1
669 : #include "test_pm_arrayCompact@routines.inc.F90"
670 : end procedure
671 : #endif
672 :
673 : #undef IK_ENABLED
674 :
675 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
676 :
677 : #define LK_ENABLED 1
678 :
679 : #if LK5_ENABLED
680 1 : module procedure test_setCompact_D1_LK5_1
681 : use pm_kind, only: LKC => LK5
682 : #include "test_pm_arrayCompact@routines.inc.F90"
683 : end procedure
684 : #endif
685 :
686 : #if LK4_ENABLED
687 1 : module procedure test_setCompact_D1_LK4_1
688 : use pm_kind, only: LKC => LK4
689 : #include "test_pm_arrayCompact@routines.inc.F90"
690 : end procedure
691 : #endif
692 :
693 : #if LK3_ENABLED
694 1 : module procedure test_setCompact_D1_LK3_1
695 : use pm_kind, only: LKC => LK3
696 : #include "test_pm_arrayCompact@routines.inc.F90"
697 : end procedure
698 : #endif
699 :
700 : #if LK2_ENABLED
701 1 : module procedure test_setCompact_D1_LK2_1
702 : use pm_kind, only: LKC => LK2
703 : #include "test_pm_arrayCompact@routines.inc.F90"
704 : end procedure
705 : #endif
706 :
707 : #if LK1_ENABLED
708 1 : module procedure test_setCompact_D1_LK1_1
709 : use pm_kind, only: LKC => LK1
710 : #include "test_pm_arrayCompact@routines.inc.F90"
711 : end procedure
712 : #endif
713 :
714 : #undef LK_ENABLED
715 :
716 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
717 :
718 : #define CK_ENABLED 1
719 :
720 : #if CK5_ENABLED
721 : module procedure test_setCompact_D1_CK5_1
722 : use pm_kind, only: CKC => CK5
723 : #include "test_pm_arrayCompact@routines.inc.F90"
724 : end procedure
725 : #endif
726 :
727 : #if CK4_ENABLED
728 1 : module procedure test_setCompact_D1_CK4_1
729 : use pm_kind, only: CKC => CK4
730 : #include "test_pm_arrayCompact@routines.inc.F90"
731 : end procedure
732 : #endif
733 :
734 : #if CK3_ENABLED
735 1 : module procedure test_setCompact_D1_CK3_1
736 : use pm_kind, only: CKC => CK3
737 : #include "test_pm_arrayCompact@routines.inc.F90"
738 : end procedure
739 : #endif
740 :
741 : #if CK2_ENABLED
742 1 : module procedure test_setCompact_D1_CK2_1
743 : use pm_kind, only: CKC => CK2
744 : #include "test_pm_arrayCompact@routines.inc.F90"
745 : end procedure
746 : #endif
747 :
748 : #if CK1_ENABLED
749 1 : module procedure test_setCompact_D1_CK1_1
750 : use pm_kind, only: CKC => CK1
751 : #include "test_pm_arrayCompact@routines.inc.F90"
752 : end procedure
753 : #endif
754 :
755 : #undef CK_ENABLED
756 :
757 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
758 :
759 : #define RK_ENABLED 1
760 :
761 : #if RK5_ENABLED
762 : module procedure test_setCompact_D1_RK5_1
763 : use pm_kind, only: RKC => RK5
764 : #include "test_pm_arrayCompact@routines.inc.F90"
765 : end procedure
766 : #endif
767 :
768 : #if RK4_ENABLED
769 1 : module procedure test_setCompact_D1_RK4_1
770 : use pm_kind, only: RKC => RK4
771 : #include "test_pm_arrayCompact@routines.inc.F90"
772 : end procedure
773 : #endif
774 :
775 : #if RK3_ENABLED
776 1 : module procedure test_setCompact_D1_RK3_1
777 : use pm_kind, only: RKC => RK3
778 : #include "test_pm_arrayCompact@routines.inc.F90"
779 : end procedure
780 : #endif
781 :
782 : #if RK2_ENABLED
783 1 : module procedure test_setCompact_D1_RK2_1
784 : use pm_kind, only: RKC => RK2
785 : #include "test_pm_arrayCompact@routines.inc.F90"
786 : end procedure
787 : #endif
788 :
789 : #if RK1_ENABLED
790 1 : module procedure test_setCompact_D1_RK1_1
791 : use pm_kind, only: RKC => RK1
792 : #include "test_pm_arrayCompact@routines.inc.F90"
793 : end procedure
794 : #endif
795 :
796 : #undef RK_ENABLED
797 :
798 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
799 :
800 : #undef D1_ENABLED
801 :
802 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
803 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
804 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
805 :
806 : #define D2_ENABLED 1
807 :
808 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
809 :
810 : #define SK_ENABLED 1
811 :
812 : #if SK5_ENABLED
813 : module procedure test_setCompact_D2_SK5_1
814 : use pm_kind, only: SKC => SK5
815 : #include "test_pm_arrayCompact@routines.inc.F90"
816 : end procedure
817 : #endif
818 :
819 : #if SK4_ENABLED
820 : module procedure test_setCompact_D2_SK4_1
821 : use pm_kind, only: SKC => SK4
822 : #include "test_pm_arrayCompact@routines.inc.F90"
823 : end procedure
824 : #endif
825 :
826 : #if SK3_ENABLED
827 : module procedure test_setCompact_D2_SK3_1
828 : use pm_kind, only: SKC => SK3
829 : #include "test_pm_arrayCompact@routines.inc.F90"
830 : end procedure
831 : #endif
832 :
833 : #if SK2_ENABLED
834 : module procedure test_setCompact_D2_SK2_1
835 : use pm_kind, only: SKC => SK2
836 : #include "test_pm_arrayCompact@routines.inc.F90"
837 : end procedure
838 : #endif
839 :
840 : #if SK1_ENABLED
841 1 : module procedure test_setCompact_D2_SK1_1
842 : use pm_kind, only: SKC => SK1
843 : #include "test_pm_arrayCompact@routines.inc.F90"
844 : end procedure
845 : #endif
846 :
847 : #undef SK_ENABLED
848 :
849 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
850 :
851 : #define IK_ENABLED 1
852 :
853 : #if IK5_ENABLED
854 1 : module procedure test_setCompact_D2_IK5_1
855 : use pm_kind, only: IKC => IK5
856 : #include "test_pm_arrayCompact@routines.inc.F90"
857 : end procedure
858 : #endif
859 :
860 : #if IK4_ENABLED
861 1 : module procedure test_setCompact_D2_IK4_1
862 : use pm_kind, only: IKC => IK4
863 : #include "test_pm_arrayCompact@routines.inc.F90"
864 : end procedure
865 : #endif
866 :
867 : #if IK3_ENABLED
868 1 : module procedure test_setCompact_D2_IK3_1
869 : use pm_kind, only: IKC => IK3
870 : #include "test_pm_arrayCompact@routines.inc.F90"
871 : end procedure
872 : #endif
873 :
874 : #if IK2_ENABLED
875 1 : module procedure test_setCompact_D2_IK2_1
876 : use pm_kind, only: IKC => IK2
877 : #include "test_pm_arrayCompact@routines.inc.F90"
878 : end procedure
879 : #endif
880 :
881 : #if IK1_ENABLED
882 1 : module procedure test_setCompact_D2_IK1_1
883 : use pm_kind, only: IKC => IK1
884 : #include "test_pm_arrayCompact@routines.inc.F90"
885 : end procedure
886 : #endif
887 :
888 : #undef IK_ENABLED
889 :
890 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
891 :
892 : #define LK_ENABLED 1
893 :
894 : #if LK5_ENABLED
895 1 : module procedure test_setCompact_D2_LK5_1
896 : use pm_kind, only: LKC => LK5
897 : #include "test_pm_arrayCompact@routines.inc.F90"
898 : end procedure
899 : #endif
900 :
901 : #if LK4_ENABLED
902 1 : module procedure test_setCompact_D2_LK4_1
903 : use pm_kind, only: LKC => LK4
904 : #include "test_pm_arrayCompact@routines.inc.F90"
905 : end procedure
906 : #endif
907 :
908 : #if LK3_ENABLED
909 1 : module procedure test_setCompact_D2_LK3_1
910 : use pm_kind, only: LKC => LK3
911 : #include "test_pm_arrayCompact@routines.inc.F90"
912 : end procedure
913 : #endif
914 :
915 : #if LK2_ENABLED
916 1 : module procedure test_setCompact_D2_LK2_1
917 : use pm_kind, only: LKC => LK2
918 : #include "test_pm_arrayCompact@routines.inc.F90"
919 : end procedure
920 : #endif
921 :
922 : #if LK1_ENABLED
923 1 : module procedure test_setCompact_D2_LK1_1
924 : use pm_kind, only: LKC => LK1
925 : #include "test_pm_arrayCompact@routines.inc.F90"
926 : end procedure
927 : #endif
928 :
929 : #undef LK_ENABLED
930 :
931 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
932 :
933 : #define CK_ENABLED 1
934 :
935 : #if CK5_ENABLED
936 : module procedure test_setCompact_D2_CK5_1
937 : use pm_kind, only: CKC => CK5
938 : #include "test_pm_arrayCompact@routines.inc.F90"
939 : end procedure
940 : #endif
941 :
942 : #if CK4_ENABLED
943 1 : module procedure test_setCompact_D2_CK4_1
944 : use pm_kind, only: CKC => CK4
945 : #include "test_pm_arrayCompact@routines.inc.F90"
946 : end procedure
947 : #endif
948 :
949 : #if CK3_ENABLED
950 1 : module procedure test_setCompact_D2_CK3_1
951 : use pm_kind, only: CKC => CK3
952 : #include "test_pm_arrayCompact@routines.inc.F90"
953 : end procedure
954 : #endif
955 :
956 : #if CK2_ENABLED
957 1 : module procedure test_setCompact_D2_CK2_1
958 : use pm_kind, only: CKC => CK2
959 : #include "test_pm_arrayCompact@routines.inc.F90"
960 : end procedure
961 : #endif
962 :
963 : #if CK1_ENABLED
964 1 : module procedure test_setCompact_D2_CK1_1
965 : use pm_kind, only: CKC => CK1
966 : #include "test_pm_arrayCompact@routines.inc.F90"
967 : end procedure
968 : #endif
969 :
970 : #undef CK_ENABLED
971 :
972 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
973 :
974 : #define RK_ENABLED 1
975 :
976 : #if RK5_ENABLED
977 : module procedure test_setCompact_D2_RK5_1
978 : use pm_kind, only: RKC => RK5
979 : #include "test_pm_arrayCompact@routines.inc.F90"
980 : end procedure
981 : #endif
982 :
983 : #if RK4_ENABLED
984 1 : module procedure test_setCompact_D2_RK4_1
985 : use pm_kind, only: RKC => RK4
986 : #include "test_pm_arrayCompact@routines.inc.F90"
987 : end procedure
988 : #endif
989 :
990 : #if RK3_ENABLED
991 1 : module procedure test_setCompact_D2_RK3_1
992 : use pm_kind, only: RKC => RK3
993 : #include "test_pm_arrayCompact@routines.inc.F90"
994 : end procedure
995 : #endif
996 :
997 : #if RK2_ENABLED
998 1 : module procedure test_setCompact_D2_RK2_1
999 : use pm_kind, only: RKC => RK2
1000 : #include "test_pm_arrayCompact@routines.inc.F90"
1001 : end procedure
1002 : #endif
1003 :
1004 : #if RK1_ENABLED
1005 1 : module procedure test_setCompact_D2_RK1_1
1006 : use pm_kind, only: RKC => RK1
1007 : #include "test_pm_arrayCompact@routines.inc.F90"
1008 : end procedure
1009 : #endif
1010 :
1011 : #undef RK_ENABLED
1012 :
1013 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1014 :
1015 : #undef D2_ENABLED
1016 :
1017 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1018 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1019 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1020 :
1021 : #undef setCompact_ENABLED
1022 :
1023 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1024 :
1025 : end submodule routines
|