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 tests of [test_pm_sampleCov](@ref test_pm_sampleCov).
19 : !>
20 : !> \fintest
21 : !>
22 : !> \author
23 : !> \FatemehBagheri, Wednesday 5:03 PM, August 11, 2021, Dallas, TX
24 :
25 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26 :
27 : submodule (test_pm_sampleCov) routines ! LCOV_EXCL_LINE
28 :
29 : use pm_sampleMean, only: getMean
30 : use pm_distUnif, only: getUnifRand
31 : use pm_distUnif, only: setUnifRand
32 : use pm_arrayFill, only: getFilled
33 : use pm_matrixCopy, only: rdpack
34 : use pm_matrixCopy, only: transHerm
35 : use pm_matrixInit, only: setMatInit
36 : use pm_matrixCopy, only: setMatCopy
37 : use pm_matrixSubset, only: uppLowDia
38 : use pm_matrixSubset, only: uppLowDia_type
39 : use pm_matrixSubset, only: getSubComp
40 : use pm_matrixSubset, only: getSubSymm
41 : use pm_arrayChoice, only: getChoice
42 : use pm_arrayResize, only: setResized
43 : use pm_sampleShift, only: getShifted
44 : use pm_complexCompareAll, only: operator(<)
45 : use pm_complexAbs, only: abs
46 : implicit none
47 :
48 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
49 :
50 : contains
51 :
52 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
53 :
54 : #define getCov_ENABLED 1
55 :
56 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
57 :
58 : #define CK_ENABLED 1
59 :
60 : #if CK5_ENABLED
61 : module procedure test_getCov_CK5
62 : use pm_kind, only: TKC => CK5
63 : #include "test_pm_sampleCov@routines.inc.F90"
64 : end procedure
65 : #endif
66 :
67 : #if CK4_ENABLED
68 1 : module procedure test_getCov_CK4
69 : use pm_kind, only: TKC => CK4
70 : #include "test_pm_sampleCov@routines.inc.F90"
71 : end procedure
72 : #endif
73 :
74 : #if CK3_ENABLED
75 1 : module procedure test_getCov_CK3
76 : use pm_kind, only: TKC => CK3
77 : #include "test_pm_sampleCov@routines.inc.F90"
78 : end procedure
79 : #endif
80 :
81 : #if CK2_ENABLED
82 1 : module procedure test_getCov_CK2
83 : use pm_kind, only: TKC => CK2
84 : #include "test_pm_sampleCov@routines.inc.F90"
85 : end procedure
86 : #endif
87 :
88 : #if CK1_ENABLED
89 1 : module procedure test_getCov_CK1
90 : use pm_kind, only: TKC => CK1
91 : #include "test_pm_sampleCov@routines.inc.F90"
92 : end procedure
93 : #endif
94 :
95 : #undef CK_ENABLED
96 :
97 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
98 :
99 : #define RK_ENABLED 1
100 :
101 : #if RK5_ENABLED
102 : module procedure test_getCov_RK5
103 : use pm_kind, only: TKC => RK5
104 : #include "test_pm_sampleCov@routines.inc.F90"
105 : end procedure
106 : #endif
107 :
108 : #if RK4_ENABLED
109 1 : module procedure test_getCov_RK4
110 : use pm_kind, only: TKC => RK4
111 : #include "test_pm_sampleCov@routines.inc.F90"
112 : end procedure
113 : #endif
114 :
115 : #if RK3_ENABLED
116 1 : module procedure test_getCov_RK3
117 : use pm_kind, only: TKC => RK3
118 : #include "test_pm_sampleCov@routines.inc.F90"
119 : end procedure
120 : #endif
121 :
122 : #if RK2_ENABLED
123 1 : module procedure test_getCov_RK2
124 : use pm_kind, only: TKC => RK2
125 : #include "test_pm_sampleCov@routines.inc.F90"
126 : end procedure
127 : #endif
128 :
129 : #if RK1_ENABLED
130 1 : module procedure test_getCov_RK1
131 : use pm_kind, only: TKC => RK1
132 : #include "test_pm_sampleCov@routines.inc.F90"
133 : end procedure
134 : #endif
135 :
136 : #undef RK_ENABLED
137 :
138 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
139 :
140 : #undef getCov_ENABLED
141 :
142 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
143 :
144 : #define setCov_ENABLED 1
145 :
146 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
147 :
148 : #define CK_ENABLED 1
149 :
150 : #if CK5_ENABLED
151 : module procedure test_setCov_CK5
152 : use pm_kind, only: TKC => CK5
153 : #include "test_pm_sampleCov@routines.inc.F90"
154 : end procedure
155 : #endif
156 :
157 : #if CK4_ENABLED
158 1 : module procedure test_setCov_CK4
159 : use pm_kind, only: TKC => CK4
160 : #include "test_pm_sampleCov@routines.inc.F90"
161 : end procedure
162 : #endif
163 :
164 : #if CK3_ENABLED
165 1 : module procedure test_setCov_CK3
166 : use pm_kind, only: TKC => CK3
167 : #include "test_pm_sampleCov@routines.inc.F90"
168 : end procedure
169 : #endif
170 :
171 : #if CK2_ENABLED
172 1 : module procedure test_setCov_CK2
173 : use pm_kind, only: TKC => CK2
174 : #include "test_pm_sampleCov@routines.inc.F90"
175 : end procedure
176 : #endif
177 :
178 : #if CK1_ENABLED
179 1 : module procedure test_setCov_CK1
180 : use pm_kind, only: TKC => CK1
181 : #include "test_pm_sampleCov@routines.inc.F90"
182 : end procedure
183 : #endif
184 :
185 : #undef CK_ENABLED
186 :
187 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
188 :
189 : #define RK_ENABLED 1
190 :
191 : #if RK5_ENABLED
192 : module procedure test_setCov_RK5
193 : use pm_kind, only: TKC => RK5
194 : #include "test_pm_sampleCov@routines.inc.F90"
195 : end procedure
196 : #endif
197 :
198 : #if RK4_ENABLED
199 1 : module procedure test_setCov_RK4
200 : use pm_kind, only: TKC => RK4
201 : #include "test_pm_sampleCov@routines.inc.F90"
202 : end procedure
203 : #endif
204 :
205 : #if RK3_ENABLED
206 1 : module procedure test_setCov_RK3
207 : use pm_kind, only: TKC => RK3
208 : #include "test_pm_sampleCov@routines.inc.F90"
209 : end procedure
210 : #endif
211 :
212 : #if RK2_ENABLED
213 1 : module procedure test_setCov_RK2
214 : use pm_kind, only: TKC => RK2
215 : #include "test_pm_sampleCov@routines.inc.F90"
216 : end procedure
217 : #endif
218 :
219 : #if RK1_ENABLED
220 1 : module procedure test_setCov_RK1
221 : use pm_kind, only: TKC => RK1
222 : #include "test_pm_sampleCov@routines.inc.F90"
223 : end procedure
224 : #endif
225 :
226 : #undef RK_ENABLED
227 :
228 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
229 :
230 : #undef setCov_ENABLED
231 :
232 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
233 :
234 : #define setCovMean_ENABLED 1
235 :
236 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
237 :
238 : #define CK_ENABLED 1
239 :
240 : #if CK5_ENABLED
241 : module procedure test_setCovMean_CK5
242 : use pm_kind, only: TKC => CK5
243 : #include "test_pm_sampleCov@routines.inc.F90"
244 : end procedure
245 : #endif
246 :
247 : #if CK4_ENABLED
248 1 : module procedure test_setCovMean_CK4
249 : use pm_kind, only: TKC => CK4
250 : #include "test_pm_sampleCov@routines.inc.F90"
251 : end procedure
252 : #endif
253 :
254 : #if CK3_ENABLED
255 1 : module procedure test_setCovMean_CK3
256 : use pm_kind, only: TKC => CK3
257 : #include "test_pm_sampleCov@routines.inc.F90"
258 : end procedure
259 : #endif
260 :
261 : #if CK2_ENABLED
262 1 : module procedure test_setCovMean_CK2
263 : use pm_kind, only: TKC => CK2
264 : #include "test_pm_sampleCov@routines.inc.F90"
265 : end procedure
266 : #endif
267 :
268 : #if CK1_ENABLED
269 1 : module procedure test_setCovMean_CK1
270 : use pm_kind, only: TKC => CK1
271 : #include "test_pm_sampleCov@routines.inc.F90"
272 : end procedure
273 : #endif
274 :
275 : #undef CK_ENABLED
276 :
277 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
278 :
279 : #define RK_ENABLED 1
280 :
281 : #if RK5_ENABLED
282 : module procedure test_setCovMean_RK5
283 : use pm_kind, only: TKC => RK5
284 : #include "test_pm_sampleCov@routines.inc.F90"
285 : end procedure
286 : #endif
287 :
288 : #if RK4_ENABLED
289 1 : module procedure test_setCovMean_RK4
290 : use pm_kind, only: TKC => RK4
291 : #include "test_pm_sampleCov@routines.inc.F90"
292 : end procedure
293 : #endif
294 :
295 : #if RK3_ENABLED
296 1 : module procedure test_setCovMean_RK3
297 : use pm_kind, only: TKC => RK3
298 : #include "test_pm_sampleCov@routines.inc.F90"
299 : end procedure
300 : #endif
301 :
302 : #if RK2_ENABLED
303 1 : module procedure test_setCovMean_RK2
304 : use pm_kind, only: TKC => RK2
305 : #include "test_pm_sampleCov@routines.inc.F90"
306 : end procedure
307 : #endif
308 :
309 : #if RK1_ENABLED
310 1 : module procedure test_setCovMean_RK1
311 : use pm_kind, only: TKC => RK1
312 : #include "test_pm_sampleCov@routines.inc.F90"
313 : end procedure
314 : #endif
315 :
316 : #undef RK_ENABLED
317 :
318 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
319 :
320 : #undef setCovMean_ENABLED
321 :
322 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
323 :
324 : #define getCovMerged_ENABLED 1
325 :
326 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
327 :
328 : #define CK_ENABLED 1
329 :
330 : #if CK5_ENABLED
331 : module procedure test_getCovMerged_CK5
332 : use pm_kind, only: TKC => CK5
333 : #include "test_pm_sampleCov@routines.inc.F90"
334 : end procedure
335 : #endif
336 :
337 : #if CK4_ENABLED
338 1 : module procedure test_getCovMerged_CK4
339 : use pm_kind, only: TKC => CK4
340 : #include "test_pm_sampleCov@routines.inc.F90"
341 : end procedure
342 : #endif
343 :
344 : #if CK3_ENABLED
345 1 : module procedure test_getCovMerged_CK3
346 : use pm_kind, only: TKC => CK3
347 : #include "test_pm_sampleCov@routines.inc.F90"
348 : end procedure
349 : #endif
350 :
351 : #if CK2_ENABLED
352 1 : module procedure test_getCovMerged_CK2
353 : use pm_kind, only: TKC => CK2
354 : #include "test_pm_sampleCov@routines.inc.F90"
355 : end procedure
356 : #endif
357 :
358 : #if CK1_ENABLED
359 1 : module procedure test_getCovMerged_CK1
360 : use pm_kind, only: TKC => CK1
361 : #include "test_pm_sampleCov@routines.inc.F90"
362 : end procedure
363 : #endif
364 :
365 : #undef CK_ENABLED
366 :
367 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
368 :
369 : #define RK_ENABLED 1
370 :
371 : #if RK5_ENABLED
372 : module procedure test_getCovMerged_RK5
373 : use pm_kind, only: TKC => RK5
374 : #include "test_pm_sampleCov@routines.inc.F90"
375 : end procedure
376 : #endif
377 :
378 : #if RK4_ENABLED
379 1 : module procedure test_getCovMerged_RK4
380 : use pm_kind, only: TKC => RK4
381 : #include "test_pm_sampleCov@routines.inc.F90"
382 : end procedure
383 : #endif
384 :
385 : #if RK3_ENABLED
386 1 : module procedure test_getCovMerged_RK3
387 : use pm_kind, only: TKC => RK3
388 : #include "test_pm_sampleCov@routines.inc.F90"
389 : end procedure
390 : #endif
391 :
392 : #if RK2_ENABLED
393 1 : module procedure test_getCovMerged_RK2
394 : use pm_kind, only: TKC => RK2
395 : #include "test_pm_sampleCov@routines.inc.F90"
396 : end procedure
397 : #endif
398 :
399 : #if RK1_ENABLED
400 1 : module procedure test_getCovMerged_RK1
401 : use pm_kind, only: TKC => RK1
402 : #include "test_pm_sampleCov@routines.inc.F90"
403 : end procedure
404 : #endif
405 :
406 : #undef RK_ENABLED
407 :
408 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
409 :
410 : #undef getCovMerged_ENABLED
411 :
412 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
413 :
414 : #define setCovMerged_ENABLED 1
415 :
416 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
417 :
418 : #define CK_ENABLED 1
419 :
420 : #if CK5_ENABLED
421 : module procedure test_setCovMerged_CK5
422 : use pm_kind, only: TKC => CK5
423 : #include "test_pm_sampleCov@routines.inc.F90"
424 : end procedure
425 : #endif
426 :
427 : #if CK4_ENABLED
428 1 : module procedure test_setCovMerged_CK4
429 : use pm_kind, only: TKC => CK4
430 : #include "test_pm_sampleCov@routines.inc.F90"
431 : end procedure
432 : #endif
433 :
434 : #if CK3_ENABLED
435 1 : module procedure test_setCovMerged_CK3
436 : use pm_kind, only: TKC => CK3
437 : #include "test_pm_sampleCov@routines.inc.F90"
438 : end procedure
439 : #endif
440 :
441 : #if CK2_ENABLED
442 1 : module procedure test_setCovMerged_CK2
443 : use pm_kind, only: TKC => CK2
444 : #include "test_pm_sampleCov@routines.inc.F90"
445 : end procedure
446 : #endif
447 :
448 : #if CK1_ENABLED
449 1 : module procedure test_setCovMerged_CK1
450 : use pm_kind, only: TKC => CK1
451 : #include "test_pm_sampleCov@routines.inc.F90"
452 : end procedure
453 : #endif
454 :
455 : #undef CK_ENABLED
456 :
457 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
458 :
459 : #define RK_ENABLED 1
460 :
461 : #if RK5_ENABLED
462 : module procedure test_setCovMerged_RK5
463 : use pm_kind, only: TKC => RK5
464 : #include "test_pm_sampleCov@routines.inc.F90"
465 : end procedure
466 : #endif
467 :
468 : #if RK4_ENABLED
469 1 : module procedure test_setCovMerged_RK4
470 : use pm_kind, only: TKC => RK4
471 : #include "test_pm_sampleCov@routines.inc.F90"
472 : end procedure
473 : #endif
474 :
475 : #if RK3_ENABLED
476 1 : module procedure test_setCovMerged_RK3
477 : use pm_kind, only: TKC => RK3
478 : #include "test_pm_sampleCov@routines.inc.F90"
479 : end procedure
480 : #endif
481 :
482 : #if RK2_ENABLED
483 1 : module procedure test_setCovMerged_RK2
484 : use pm_kind, only: TKC => RK2
485 : #include "test_pm_sampleCov@routines.inc.F90"
486 : end procedure
487 : #endif
488 :
489 : #if RK1_ENABLED
490 1 : module procedure test_setCovMerged_RK1
491 : use pm_kind, only: TKC => RK1
492 : #include "test_pm_sampleCov@routines.inc.F90"
493 : end procedure
494 : #endif
495 :
496 : #undef RK_ENABLED
497 :
498 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
499 :
500 : #undef setCovMerged_ENABLED
501 :
502 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
503 :
504 : #define setCovMeanMerged_ENABLED 1
505 :
506 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
507 :
508 : #define CK_ENABLED 1
509 :
510 : #if CK5_ENABLED
511 : module procedure test_setCovMeanMerged_CK5
512 : use pm_kind, only: TKC => CK5
513 : #include "test_pm_sampleCov@routines.inc.F90"
514 : end procedure
515 : #endif
516 :
517 : #if CK4_ENABLED
518 1 : module procedure test_setCovMeanMerged_CK4
519 : use pm_kind, only: TKC => CK4
520 : #include "test_pm_sampleCov@routines.inc.F90"
521 : end procedure
522 : #endif
523 :
524 : #if CK3_ENABLED
525 1 : module procedure test_setCovMeanMerged_CK3
526 : use pm_kind, only: TKC => CK3
527 : #include "test_pm_sampleCov@routines.inc.F90"
528 : end procedure
529 : #endif
530 :
531 : #if CK2_ENABLED
532 1 : module procedure test_setCovMeanMerged_CK2
533 : use pm_kind, only: TKC => CK2
534 : #include "test_pm_sampleCov@routines.inc.F90"
535 : end procedure
536 : #endif
537 :
538 : #if CK1_ENABLED
539 1 : module procedure test_setCovMeanMerged_CK1
540 : use pm_kind, only: TKC => CK1
541 : #include "test_pm_sampleCov@routines.inc.F90"
542 : end procedure
543 : #endif
544 :
545 : #undef CK_ENABLED
546 :
547 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
548 :
549 : #define RK_ENABLED 1
550 :
551 : #if RK5_ENABLED
552 : module procedure test_setCovMeanMerged_RK5
553 : use pm_kind, only: TKC => RK5
554 : #include "test_pm_sampleCov@routines.inc.F90"
555 : end procedure
556 : #endif
557 :
558 : #if RK4_ENABLED
559 1 : module procedure test_setCovMeanMerged_RK4
560 : use pm_kind, only: TKC => RK4
561 : #include "test_pm_sampleCov@routines.inc.F90"
562 : end procedure
563 : #endif
564 :
565 : #if RK3_ENABLED
566 1 : module procedure test_setCovMeanMerged_RK3
567 : use pm_kind, only: TKC => RK3
568 : #include "test_pm_sampleCov@routines.inc.F90"
569 : end procedure
570 : #endif
571 :
572 : #if RK2_ENABLED
573 1 : module procedure test_setCovMeanMerged_RK2
574 : use pm_kind, only: TKC => RK2
575 : #include "test_pm_sampleCov@routines.inc.F90"
576 : end procedure
577 : #endif
578 :
579 : #if RK1_ENABLED
580 1 : module procedure test_setCovMeanMerged_RK1
581 : use pm_kind, only: TKC => RK1
582 : #include "test_pm_sampleCov@routines.inc.F90"
583 : end procedure
584 : #endif
585 :
586 : #undef RK_ENABLED
587 :
588 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
589 :
590 : #undef setCovMeanMerged_ENABLED
591 :
592 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
593 :
594 15600 : end submodule routines
|