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 [pm_except](@ref pm_except).
19 : !>
20 : !> \finmain
21 : !>
22 : !> \author
23 : !> \AmirShahmoradi, April 23, 2017, 1:36 AM, Institute for Computational Engineering and Sciences (ICES), University of Texas at Austin
24 :
25 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26 :
27 : submodule (pm_except) routines ! LCOV_EXCL_LINE
28 :
29 : #if CHECK_ENABLED
30 : use pm_err, only: getFine
31 : use pm_val2str, only: getStr
32 : use pm_err, only: setAsserted
33 : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) \
34 : call setAsserted(ASSERTION,getFine(__FILE__,LINE)//MODULE_NAME//MSG);
35 : #else
36 : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) continue;
37 : #endif
38 :
39 : use, intrinsic :: ieee_arithmetic, only: ieee_value, ieee_positive_inf, ieee_negative_inf
40 : use, intrinsic :: ieee_arithmetic, only: ieee_value, ieee_quiet_nan, ieee_is_nan
41 : use, intrinsic :: ieee_arithmetic, only: ieee_is_finite, ieee_is_negative
42 :
43 : implicit none
44 :
45 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
46 :
47 : contains
48 :
49 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
50 :
51 : #define isAddOutflow_ENABLED 1
52 :
53 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
54 :
55 : #define IK_ENABLED 1
56 :
57 : #if IK5_ENABLED
58 0 : module procedure isAddOutflow_IK5
59 : use pm_kind, only: IKC => IK5
60 : #include "pm_except@routines.inc.F90"
61 0 : end procedure
62 : #endif
63 :
64 : #if IK4_ENABLED
65 0 : module procedure isAddOutflow_IK4
66 : use pm_kind, only: IKC => IK4
67 : #include "pm_except@routines.inc.F90"
68 0 : end procedure
69 : #endif
70 :
71 : #if IK3_ENABLED
72 4 : module procedure isAddOutflow_IK3
73 : use pm_kind, only: IKC => IK3
74 : #include "pm_except@routines.inc.F90"
75 4 : end procedure
76 : #endif
77 :
78 : #if IK2_ENABLED
79 0 : module procedure isAddOutflow_IK2
80 : use pm_kind, only: IKC => IK2
81 : #include "pm_except@routines.inc.F90"
82 0 : end procedure
83 : #endif
84 :
85 : #if IK1_ENABLED
86 0 : module procedure isAddOutflow_IK1
87 : use pm_kind, only: IKC => IK1
88 : #include "pm_except@routines.inc.F90"
89 0 : end procedure
90 : #endif
91 :
92 : #undef IK_ENABLED
93 :
94 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
95 :
96 : #define CK_ENABLED 1
97 :
98 : #if CK5_ENABLED
99 : module procedure isAddOutflow_CK5
100 : use pm_kind, only: CKC => CK5
101 : #include "pm_except@routines.inc.F90"
102 : end procedure
103 : #endif
104 :
105 : #if CK4_ENABLED
106 0 : module procedure isAddOutflow_CK4
107 : use pm_kind, only: CKC => CK4
108 : #include "pm_except@routines.inc.F90"
109 0 : end procedure
110 : #endif
111 :
112 : #if CK3_ENABLED
113 0 : module procedure isAddOutflow_CK3
114 : use pm_kind, only: CKC => CK3
115 : #include "pm_except@routines.inc.F90"
116 0 : end procedure
117 : #endif
118 :
119 : #if CK2_ENABLED
120 0 : module procedure isAddOutflow_CK2
121 : use pm_kind, only: CKC => CK2
122 : #include "pm_except@routines.inc.F90"
123 0 : end procedure
124 : #endif
125 :
126 : #if CK1_ENABLED
127 4 : module procedure isAddOutflow_CK1
128 : use pm_kind, only: CKC => CK1
129 : #include "pm_except@routines.inc.F90"
130 4 : end procedure
131 : #endif
132 :
133 : #undef CK_ENABLED
134 :
135 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
136 :
137 : #define RK_ENABLED 1
138 :
139 : #if RK5_ENABLED
140 : module procedure isAddOutflow_RK5
141 : use pm_kind, only: RKC => RK5
142 : #include "pm_except@routines.inc.F90"
143 : end procedure
144 : #endif
145 :
146 : #if RK4_ENABLED
147 0 : module procedure isAddOutflow_RK4
148 : use pm_kind, only: RKC => RK4
149 : #include "pm_except@routines.inc.F90"
150 0 : end procedure
151 : #endif
152 :
153 : #if RK3_ENABLED
154 0 : module procedure isAddOutflow_RK3
155 : use pm_kind, only: RKC => RK3
156 : #include "pm_except@routines.inc.F90"
157 0 : end procedure
158 : #endif
159 :
160 : #if RK2_ENABLED
161 0 : module procedure isAddOutflow_RK2
162 : use pm_kind, only: RKC => RK2
163 : #include "pm_except@routines.inc.F90"
164 0 : end procedure
165 : #endif
166 :
167 : #if RK1_ENABLED
168 6 : module procedure isAddOutflow_RK1
169 : use pm_kind, only: RKC => RK1
170 : #include "pm_except@routines.inc.F90"
171 6 : end procedure
172 : #endif
173 :
174 : #undef RK_ENABLED
175 :
176 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
177 :
178 : #undef isAddOutflow_ENABLED
179 :
180 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
181 :
182 : #define isAddOutflowNeg_ENABLED 1
183 :
184 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
185 :
186 : #define IK_ENABLED 1
187 :
188 : #if IK5_ENABLED
189 0 : module procedure isAddOutflowNeg_IK5
190 : use pm_kind, only: IKC => IK5
191 : #include "pm_except@routines.inc.F90"
192 0 : end procedure
193 : #endif
194 :
195 : #if IK4_ENABLED
196 0 : module procedure isAddOutflowNeg_IK4
197 : use pm_kind, only: IKC => IK4
198 : #include "pm_except@routines.inc.F90"
199 0 : end procedure
200 : #endif
201 :
202 : #if IK3_ENABLED
203 7 : module procedure isAddOutflowNeg_IK3
204 : use pm_kind, only: IKC => IK3
205 : #include "pm_except@routines.inc.F90"
206 7 : end procedure
207 : #endif
208 :
209 : #if IK2_ENABLED
210 0 : module procedure isAddOutflowNeg_IK2
211 : use pm_kind, only: IKC => IK2
212 : #include "pm_except@routines.inc.F90"
213 0 : end procedure
214 : #endif
215 :
216 : #if IK1_ENABLED
217 0 : module procedure isAddOutflowNeg_IK1
218 : use pm_kind, only: IKC => IK1
219 : #include "pm_except@routines.inc.F90"
220 0 : end procedure
221 : #endif
222 :
223 : #undef IK_ENABLED
224 :
225 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
226 :
227 : #define CK_ENABLED 1
228 :
229 : #if CK5_ENABLED
230 : module procedure isAddOutflowNeg_CK5
231 : use pm_kind, only: CKC => CK5
232 : #include "pm_except@routines.inc.F90"
233 : end procedure
234 : #endif
235 :
236 : #if CK4_ENABLED
237 0 : module procedure isAddOutflowNeg_CK4
238 : use pm_kind, only: CKC => CK4
239 : #include "pm_except@routines.inc.F90"
240 0 : end procedure
241 : #endif
242 :
243 : #if CK3_ENABLED
244 0 : module procedure isAddOutflowNeg_CK3
245 : use pm_kind, only: CKC => CK3
246 : #include "pm_except@routines.inc.F90"
247 0 : end procedure
248 : #endif
249 :
250 : #if CK2_ENABLED
251 0 : module procedure isAddOutflowNeg_CK2
252 : use pm_kind, only: CKC => CK2
253 : #include "pm_except@routines.inc.F90"
254 0 : end procedure
255 : #endif
256 :
257 : #if CK1_ENABLED
258 7 : module procedure isAddOutflowNeg_CK1
259 : use pm_kind, only: CKC => CK1
260 : #include "pm_except@routines.inc.F90"
261 7 : 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 isAddOutflowNeg_RK5
272 : use pm_kind, only: RKC => RK5
273 : #include "pm_except@routines.inc.F90"
274 : end procedure
275 : #endif
276 :
277 : #if RK4_ENABLED
278 0 : module procedure isAddOutflowNeg_RK4
279 : use pm_kind, only: RKC => RK4
280 : #include "pm_except@routines.inc.F90"
281 0 : end procedure
282 : #endif
283 :
284 : #if RK3_ENABLED
285 0 : module procedure isAddOutflowNeg_RK3
286 : use pm_kind, only: RKC => RK3
287 : #include "pm_except@routines.inc.F90"
288 0 : end procedure
289 : #endif
290 :
291 : #if RK2_ENABLED
292 0 : module procedure isAddOutflowNeg_RK2
293 : use pm_kind, only: RKC => RK2
294 : #include "pm_except@routines.inc.F90"
295 0 : end procedure
296 : #endif
297 :
298 : #if RK1_ENABLED
299 10 : module procedure isAddOutflowNeg_RK1
300 : use pm_kind, only: RKC => RK1
301 : #include "pm_except@routines.inc.F90"
302 10 : end procedure
303 : #endif
304 :
305 : #undef RK_ENABLED
306 :
307 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
308 :
309 : #undef isAddOutflowNeg_ENABLED
310 :
311 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
312 :
313 : #define isAddOutflowPos_ENABLED 1
314 :
315 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
316 :
317 : #define IK_ENABLED 1
318 :
319 : #if IK5_ENABLED
320 0 : module procedure isAddOutflowPos_IK5
321 : use pm_kind, only: IKC => IK5
322 : #include "pm_except@routines.inc.F90"
323 0 : end procedure
324 : #endif
325 :
326 : #if IK4_ENABLED
327 0 : module procedure isAddOutflowPos_IK4
328 : use pm_kind, only: IKC => IK4
329 : #include "pm_except@routines.inc.F90"
330 0 : end procedure
331 : #endif
332 :
333 : #if IK3_ENABLED
334 8 : module procedure isAddOutflowPos_IK3
335 : use pm_kind, only: IKC => IK3
336 : #include "pm_except@routines.inc.F90"
337 8 : end procedure
338 : #endif
339 :
340 : #if IK2_ENABLED
341 0 : module procedure isAddOutflowPos_IK2
342 : use pm_kind, only: IKC => IK2
343 : #include "pm_except@routines.inc.F90"
344 0 : end procedure
345 : #endif
346 :
347 : #if IK1_ENABLED
348 0 : module procedure isAddOutflowPos_IK1
349 : use pm_kind, only: IKC => IK1
350 : #include "pm_except@routines.inc.F90"
351 0 : end procedure
352 : #endif
353 :
354 : #undef IK_ENABLED
355 :
356 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
357 :
358 : #define CK_ENABLED 1
359 :
360 : #if CK5_ENABLED
361 : module procedure isAddOutflowPos_CK5
362 : use pm_kind, only: CKC => CK5
363 : #include "pm_except@routines.inc.F90"
364 : end procedure
365 : #endif
366 :
367 : #if CK4_ENABLED
368 0 : module procedure isAddOutflowPos_CK4
369 : use pm_kind, only: CKC => CK4
370 : #include "pm_except@routines.inc.F90"
371 0 : end procedure
372 : #endif
373 :
374 : #if CK3_ENABLED
375 0 : module procedure isAddOutflowPos_CK3
376 : use pm_kind, only: CKC => CK3
377 : #include "pm_except@routines.inc.F90"
378 0 : end procedure
379 : #endif
380 :
381 : #if CK2_ENABLED
382 0 : module procedure isAddOutflowPos_CK2
383 : use pm_kind, only: CKC => CK2
384 : #include "pm_except@routines.inc.F90"
385 0 : end procedure
386 : #endif
387 :
388 : #if CK1_ENABLED
389 8 : module procedure isAddOutflowPos_CK1
390 : use pm_kind, only: CKC => CK1
391 : #include "pm_except@routines.inc.F90"
392 8 : end procedure
393 : #endif
394 :
395 : #undef CK_ENABLED
396 :
397 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
398 :
399 : #define RK_ENABLED 1
400 :
401 : #if RK5_ENABLED
402 : module procedure isAddOutflowPos_RK5
403 : use pm_kind, only: RKC => RK5
404 : #include "pm_except@routines.inc.F90"
405 : end procedure
406 : #endif
407 :
408 : #if RK4_ENABLED
409 0 : module procedure isAddOutflowPos_RK4
410 : use pm_kind, only: RKC => RK4
411 : #include "pm_except@routines.inc.F90"
412 0 : end procedure
413 : #endif
414 :
415 : #if RK3_ENABLED
416 0 : module procedure isAddOutflowPos_RK3
417 : use pm_kind, only: RKC => RK3
418 : #include "pm_except@routines.inc.F90"
419 0 : end procedure
420 : #endif
421 :
422 : #if RK2_ENABLED
423 0 : module procedure isAddOutflowPos_RK2
424 : use pm_kind, only: RKC => RK2
425 : #include "pm_except@routines.inc.F90"
426 0 : end procedure
427 : #endif
428 :
429 : #if RK1_ENABLED
430 12 : module procedure isAddOutflowPos_RK1
431 : use pm_kind, only: RKC => RK1
432 : #include "pm_except@routines.inc.F90"
433 12 : end procedure
434 : #endif
435 :
436 : #undef RK_ENABLED
437 :
438 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
439 :
440 : #undef isAddOutflowPos_ENABLED
441 :
442 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
443 :
444 : #define isInf_ENABLED 1
445 :
446 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
447 :
448 : #define RK_ENABLED 1
449 :
450 : #if RK5_ENABLED
451 : module procedure isInf_RK5
452 : use pm_kind, only: RKC => RK5
453 : #include "pm_except@routines.inc.F90"
454 : end procedure
455 : #endif
456 :
457 : #if RK4_ENABLED
458 1139694 : module procedure isInf_RK4
459 : use pm_kind, only: RKC => RK4
460 : #include "pm_except@routines.inc.F90"
461 1139694 : end procedure
462 : #endif
463 :
464 : #if RK3_ENABLED
465 1239274 : module procedure isInf_RK3
466 : use pm_kind, only: RKC => RK3
467 : #include "pm_except@routines.inc.F90"
468 1239274 : end procedure
469 : #endif
470 :
471 : #if RK2_ENABLED
472 1189256 : module procedure isInf_RK2
473 : use pm_kind, only: RKC => RK2
474 : #include "pm_except@routines.inc.F90"
475 1189256 : end procedure
476 : #endif
477 :
478 : #if RK1_ENABLED
479 1180463 : module procedure isInf_RK1
480 : use pm_kind, only: RKC => RK1
481 : #include "pm_except@routines.inc.F90"
482 1180463 : end procedure
483 : #endif
484 :
485 : #undef RK_ENABLED
486 :
487 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
488 :
489 : #define CK_ENABLED 1
490 :
491 : #if CK5_ENABLED
492 : module procedure isInf_CK5
493 : use pm_kind, only: CKC => CK5
494 : #include "pm_except@routines.inc.F90"
495 : end procedure
496 : #endif
497 :
498 : #if CK4_ENABLED
499 1177007 : module procedure isInf_CK4
500 : use pm_kind, only: CKC => CK4
501 : #include "pm_except@routines.inc.F90"
502 1177007 : end procedure
503 : #endif
504 :
505 : #if CK3_ENABLED
506 1248584 : module procedure isInf_CK3
507 : use pm_kind, only: CKC => CK3
508 : #include "pm_except@routines.inc.F90"
509 1248584 : end procedure
510 : #endif
511 :
512 : #if CK2_ENABLED
513 1248524 : module procedure isInf_CK2
514 : use pm_kind, only: CKC => CK2
515 : #include "pm_except@routines.inc.F90"
516 1248524 : end procedure
517 : #endif
518 :
519 : #if CK1_ENABLED
520 1280634 : module procedure isInf_CK1
521 : use pm_kind, only: CKC => CK1
522 : #include "pm_except@routines.inc.F90"
523 1280634 : end procedure
524 : #endif
525 :
526 : #undef CK_ENABLED
527 :
528 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
529 :
530 : #undef isInf_ENABLED
531 :
532 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
533 :
534 : #define isInfPos_ENABLED 1
535 :
536 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
537 :
538 : #define RK_ENABLED 1
539 :
540 : #if RK5_ENABLED
541 : module procedure isInfPos_RK5
542 : use pm_kind, only: RKC => RK5
543 : #include "pm_except@routines.inc.F90"
544 : end procedure
545 : #endif
546 :
547 : #if RK4_ENABLED
548 3495333 : module procedure isInfPos_RK4
549 : use pm_kind, only: RKC => RK4
550 : #include "pm_except@routines.inc.F90"
551 3495333 : end procedure
552 : #endif
553 :
554 : #if RK3_ENABLED
555 3738002 : module procedure isInfPos_RK3
556 : use pm_kind, only: RKC => RK3
557 : #include "pm_except@routines.inc.F90"
558 3738002 : end procedure
559 : #endif
560 :
561 : #if RK2_ENABLED
562 3687984 : module procedure isInfPos_RK2
563 : use pm_kind, only: RKC => RK2
564 : #include "pm_except@routines.inc.F90"
565 3687984 : end procedure
566 : #endif
567 :
568 : #if RK1_ENABLED
569 3743364 : module procedure isInfPos_RK1
570 : use pm_kind, only: RKC => RK1
571 : #include "pm_except@routines.inc.F90"
572 3743364 : end procedure
573 : #endif
574 :
575 : #undef RK_ENABLED
576 :
577 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
578 :
579 : #define CK_ENABLED 1
580 :
581 : #if CK5_ENABLED
582 : module procedure isInfPos_CK5
583 : use pm_kind, only: CKC => CK5
584 : #include "pm_except@routines.inc.F90"
585 : end procedure
586 : #endif
587 :
588 : #if CK4_ENABLED
589 1177837 : module procedure isInfPos_CK4
590 : use pm_kind, only: CKC => CK4
591 : #include "pm_except@routines.inc.F90"
592 1177837 : end procedure
593 : #endif
594 :
595 : #if CK3_ENABLED
596 1249318 : module procedure isInfPos_CK3
597 : use pm_kind, only: CKC => CK3
598 : #include "pm_except@routines.inc.F90"
599 1249318 : end procedure
600 : #endif
601 :
602 : #if CK2_ENABLED
603 1249378 : module procedure isInfPos_CK2
604 : use pm_kind, only: CKC => CK2
605 : #include "pm_except@routines.inc.F90"
606 1249378 : end procedure
607 : #endif
608 :
609 : #if CK1_ENABLED
610 1281432 : module procedure isInfPos_CK1
611 : use pm_kind, only: CKC => CK1
612 : #include "pm_except@routines.inc.F90"
613 1281432 : end procedure
614 : #endif
615 :
616 : #undef CK_ENABLED
617 :
618 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
619 :
620 : #undef isInfPos_ENABLED
621 :
622 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
623 :
624 : #define getInfPos_ENABLED 1
625 :
626 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
627 :
628 : #define RK_ENABLED 1
629 :
630 : #if RK5_ENABLED
631 : module procedure getInfPos_RK5
632 : use pm_kind, only: RKC => RK5
633 : #include "pm_except@routines.inc.F90"
634 : end procedure
635 : #endif
636 :
637 : #if RK4_ENABLED
638 55 : module procedure getInfPos_RK4
639 : use pm_kind, only: RKC => RK4
640 : #include "pm_except@routines.inc.F90"
641 55 : end procedure
642 : #endif
643 :
644 : #if RK3_ENABLED
645 7 : module procedure getInfPos_RK3
646 : use pm_kind, only: RKC => RK3
647 : #include "pm_except@routines.inc.F90"
648 7 : end procedure
649 : #endif
650 :
651 : #if RK2_ENABLED
652 11 : module procedure getInfPos_RK2
653 : use pm_kind, only: RKC => RK2
654 : #include "pm_except@routines.inc.F90"
655 11 : end procedure
656 : #endif
657 :
658 : #if RK1_ENABLED
659 12 : module procedure getInfPos_RK1
660 : use pm_kind, only: RKC => RK1
661 : #include "pm_except@routines.inc.F90"
662 12 : end procedure
663 : #endif
664 :
665 : #undef RK_ENABLED
666 :
667 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
668 :
669 : #define CK_ENABLED 1
670 :
671 : #if CK5_ENABLED
672 : module procedure getInfPos_CK5
673 : use pm_kind, only: CKC => CK5
674 : #include "pm_except@routines.inc.F90"
675 : end procedure
676 : #endif
677 :
678 : #if CK4_ENABLED
679 10 : module procedure getInfPos_CK4
680 : use pm_kind, only: CKC => CK4
681 : #include "pm_except@routines.inc.F90"
682 10 : end procedure
683 : #endif
684 :
685 : #if CK3_ENABLED
686 6 : module procedure getInfPos_CK3
687 : use pm_kind, only: CKC => CK3
688 : #include "pm_except@routines.inc.F90"
689 6 : end procedure
690 : #endif
691 :
692 : #if CK2_ENABLED
693 10 : module procedure getInfPos_CK2
694 : use pm_kind, only: CKC => CK2
695 : #include "pm_except@routines.inc.F90"
696 10 : end procedure
697 : #endif
698 :
699 : #if CK1_ENABLED
700 10 : module procedure getInfPos_CK1
701 : use pm_kind, only: CKC => CK1
702 : #include "pm_except@routines.inc.F90"
703 10 : end procedure
704 : #endif
705 :
706 : #undef CK_ENABLED
707 :
708 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
709 :
710 : #undef getInfPos_ENABLED
711 :
712 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
713 :
714 : #define setInfPos_ENABLED 1
715 :
716 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
717 :
718 : #define RK_ENABLED 1
719 :
720 : #if RK5_ENABLED
721 : module procedure setInfPos_RK5
722 : use pm_kind, only: RKC => RK5
723 : #include "pm_except@routines.inc.F90"
724 : end procedure
725 : #endif
726 :
727 : #if RK4_ENABLED
728 218 : module procedure setInfPos_RK4
729 : use pm_kind, only: RKC => RK4
730 : #include "pm_except@routines.inc.F90"
731 218 : end procedure
732 : #endif
733 :
734 : #if RK3_ENABLED
735 217 : module procedure setInfPos_RK3
736 : use pm_kind, only: RKC => RK3
737 : #include "pm_except@routines.inc.F90"
738 217 : end procedure
739 : #endif
740 :
741 : #if RK2_ENABLED
742 196 : module procedure setInfPos_RK2
743 : use pm_kind, only: RKC => RK2
744 : #include "pm_except@routines.inc.F90"
745 196 : end procedure
746 : #endif
747 :
748 : #if RK1_ENABLED
749 215 : module procedure setInfPos_RK1
750 : use pm_kind, only: RKC => RK1
751 : #include "pm_except@routines.inc.F90"
752 215 : end procedure
753 : #endif
754 :
755 : #undef RK_ENABLED
756 :
757 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
758 :
759 : #define CK_ENABLED 1
760 :
761 : #if CK5_ENABLED
762 : module procedure setInfPos_CK5
763 : use pm_kind, only: CKC => CK5
764 : #include "pm_except@routines.inc.F90"
765 : end procedure
766 : #endif
767 :
768 : #if CK4_ENABLED
769 216 : module procedure setInfPos_CK4
770 : use pm_kind, only: CKC => CK4
771 : #include "pm_except@routines.inc.F90"
772 216 : end procedure
773 : #endif
774 :
775 : #if CK3_ENABLED
776 167 : module procedure setInfPos_CK3
777 : use pm_kind, only: CKC => CK3
778 : #include "pm_except@routines.inc.F90"
779 167 : end procedure
780 : #endif
781 :
782 : #if CK2_ENABLED
783 226 : module procedure setInfPos_CK2
784 : use pm_kind, only: CKC => CK2
785 : #include "pm_except@routines.inc.F90"
786 226 : end procedure
787 : #endif
788 :
789 : #if CK1_ENABLED
790 194 : module procedure setInfPos_CK1
791 : use pm_kind, only: CKC => CK1
792 : #include "pm_except@routines.inc.F90"
793 194 : end procedure
794 : #endif
795 :
796 : #undef CK_ENABLED
797 :
798 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
799 :
800 : #undef setInfPos_ENABLED
801 :
802 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
803 :
804 : #define isInfNeg_ENABLED 1
805 :
806 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
807 :
808 : #define RK_ENABLED 1
809 :
810 : #if RK5_ENABLED
811 : module procedure isInfNeg_RK5
812 : use pm_kind, only: RKC => RK5
813 : #include "pm_except@routines.inc.F90"
814 : end procedure
815 : #endif
816 :
817 : #if RK4_ENABLED
818 3493552 : module procedure isInfNeg_RK4
819 : use pm_kind, only: RKC => RK4
820 : #include "pm_except@routines.inc.F90"
821 3493552 : end procedure
822 : #endif
823 :
824 : #if RK3_ENABLED
825 3736325 : module procedure isInfNeg_RK3
826 : use pm_kind, only: RKC => RK3
827 : #include "pm_except@routines.inc.F90"
828 3736325 : end procedure
829 : #endif
830 :
831 : #if RK2_ENABLED
832 3686247 : module procedure isInfNeg_RK2
833 : use pm_kind, only: RKC => RK2
834 : #include "pm_except@routines.inc.F90"
835 3686247 : end procedure
836 : #endif
837 :
838 : #if RK1_ENABLED
839 3741648 : module procedure isInfNeg_RK1
840 : use pm_kind, only: RKC => RK1
841 : #include "pm_except@routines.inc.F90"
842 3741648 : end procedure
843 : #endif
844 :
845 : #undef RK_ENABLED
846 :
847 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
848 :
849 : #define CK_ENABLED 1
850 :
851 : #if CK5_ENABLED
852 : module procedure isInfNeg_CK5
853 : use pm_kind, only: CKC => CK5
854 : #include "pm_except@routines.inc.F90"
855 : end procedure
856 : #endif
857 :
858 : #if CK4_ENABLED
859 1177181 : module procedure isInfNeg_CK4
860 : use pm_kind, only: CKC => CK4
861 : #include "pm_except@routines.inc.F90"
862 1177181 : end procedure
863 : #endif
864 :
865 : #if CK3_ENABLED
866 1248832 : module procedure isInfNeg_CK3
867 : use pm_kind, only: CKC => CK3
868 : #include "pm_except@routines.inc.F90"
869 1248832 : end procedure
870 : #endif
871 :
872 : #if CK2_ENABLED
873 1248741 : module procedure isInfNeg_CK2
874 : use pm_kind, only: CKC => CK2
875 : #include "pm_except@routines.inc.F90"
876 1248741 : end procedure
877 : #endif
878 :
879 : #if CK1_ENABLED
880 1280852 : module procedure isInfNeg_CK1
881 : use pm_kind, only: CKC => CK1
882 : #include "pm_except@routines.inc.F90"
883 1280852 : end procedure
884 : #endif
885 :
886 : #undef CK_ENABLED
887 :
888 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
889 :
890 : #undef isInfNeg_ENABLED
891 :
892 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
893 :
894 : #define getInfNeg_ENABLED 1
895 :
896 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
897 :
898 : #define RK_ENABLED 1
899 :
900 : #if RK5_ENABLED
901 : module procedure getInfNeg_RK5
902 : use pm_kind, only: RKC => RK5
903 : #include "pm_except@routines.inc.F90"
904 : end procedure
905 : #endif
906 :
907 : #if RK4_ENABLED
908 60 : module procedure getInfNeg_RK4
909 : use pm_kind, only: RKC => RK4
910 : #include "pm_except@routines.inc.F90"
911 60 : end procedure
912 : #endif
913 :
914 : #if RK3_ENABLED
915 7 : module procedure getInfNeg_RK3
916 : use pm_kind, only: RKC => RK3
917 : #include "pm_except@routines.inc.F90"
918 7 : end procedure
919 : #endif
920 :
921 : #if RK2_ENABLED
922 11 : module procedure getInfNeg_RK2
923 : use pm_kind, only: RKC => RK2
924 : #include "pm_except@routines.inc.F90"
925 11 : end procedure
926 : #endif
927 :
928 : #if RK1_ENABLED
929 12 : module procedure getInfNeg_RK1
930 : use pm_kind, only: RKC => RK1
931 : #include "pm_except@routines.inc.F90"
932 12 : end procedure
933 : #endif
934 :
935 : #undef RK_ENABLED
936 :
937 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
938 :
939 : #define CK_ENABLED 1
940 :
941 : #if CK5_ENABLED
942 : module procedure getInfNeg_CK5
943 : use pm_kind, only: CKC => CK5
944 : #include "pm_except@routines.inc.F90"
945 : end procedure
946 : #endif
947 :
948 : #if CK4_ENABLED
949 10 : module procedure getInfNeg_CK4
950 : use pm_kind, only: CKC => CK4
951 : #include "pm_except@routines.inc.F90"
952 10 : end procedure
953 : #endif
954 :
955 : #if CK3_ENABLED
956 6 : module procedure getInfNeg_CK3
957 : use pm_kind, only: CKC => CK3
958 : #include "pm_except@routines.inc.F90"
959 6 : end procedure
960 : #endif
961 :
962 : #if CK2_ENABLED
963 10 : module procedure getInfNeg_CK2
964 : use pm_kind, only: CKC => CK2
965 : #include "pm_except@routines.inc.F90"
966 10 : end procedure
967 : #endif
968 :
969 : #if CK1_ENABLED
970 10 : module procedure getInfNeg_CK1
971 : use pm_kind, only: CKC => CK1
972 : #include "pm_except@routines.inc.F90"
973 10 : end procedure
974 : #endif
975 :
976 : #undef CK_ENABLED
977 :
978 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
979 :
980 : #undef getInfNeg_ENABLED
981 :
982 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
983 :
984 : #define setInfNeg_ENABLED 1
985 :
986 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
987 :
988 : #define RK_ENABLED 1
989 :
990 : #if RK5_ENABLED
991 : module procedure setInfNeg_RK5
992 : use pm_kind, only: RKC => RK5
993 : #include "pm_except@routines.inc.F90"
994 : end procedure
995 : #endif
996 :
997 : #if RK4_ENABLED
998 219 : module procedure setInfNeg_RK4
999 : use pm_kind, only: RKC => RK4
1000 : #include "pm_except@routines.inc.F90"
1001 219 : end procedure
1002 : #endif
1003 :
1004 : #if RK3_ENABLED
1005 191 : module procedure setInfNeg_RK3
1006 : use pm_kind, only: RKC => RK3
1007 : #include "pm_except@routines.inc.F90"
1008 191 : end procedure
1009 : #endif
1010 :
1011 : #if RK2_ENABLED
1012 222 : module procedure setInfNeg_RK2
1013 : use pm_kind, only: RKC => RK2
1014 : #include "pm_except@routines.inc.F90"
1015 222 : end procedure
1016 : #endif
1017 :
1018 : #if RK1_ENABLED
1019 227 : module procedure setInfNeg_RK1
1020 : use pm_kind, only: RKC => RK1
1021 : #include "pm_except@routines.inc.F90"
1022 227 : end procedure
1023 : #endif
1024 :
1025 : #undef RK_ENABLED
1026 :
1027 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1028 :
1029 : #define CK_ENABLED 1
1030 :
1031 : #if CK5_ENABLED
1032 : module procedure setInfNeg_CK5
1033 : use pm_kind, only: CKC => CK5
1034 : #include "pm_except@routines.inc.F90"
1035 : end procedure
1036 : #endif
1037 :
1038 : #if CK4_ENABLED
1039 209 : module procedure setInfNeg_CK4
1040 : use pm_kind, only: CKC => CK4
1041 : #include "pm_except@routines.inc.F90"
1042 209 : end procedure
1043 : #endif
1044 :
1045 : #if CK3_ENABLED
1046 218 : module procedure setInfNeg_CK3
1047 : use pm_kind, only: CKC => CK3
1048 : #include "pm_except@routines.inc.F90"
1049 218 : end procedure
1050 : #endif
1051 :
1052 : #if CK2_ENABLED
1053 212 : module procedure setInfNeg_CK2
1054 : use pm_kind, only: CKC => CK2
1055 : #include "pm_except@routines.inc.F90"
1056 212 : end procedure
1057 : #endif
1058 :
1059 : #if CK1_ENABLED
1060 226 : module procedure setInfNeg_CK1
1061 : use pm_kind, only: CKC => CK1
1062 : #include "pm_except@routines.inc.F90"
1063 226 : end procedure
1064 : #endif
1065 :
1066 : #undef CK_ENABLED
1067 :
1068 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1069 :
1070 : #undef setInfNeg_ENABLED
1071 :
1072 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1073 :
1074 : #define isNAN_ENABLED 1
1075 :
1076 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1077 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1078 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1079 :
1080 : #define IEEE_ENABLED 1
1081 :
1082 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1083 :
1084 : #define CK_ENABLED 1
1085 :
1086 : #if CK5_ENABLED
1087 : module procedure isNANIEEE_CK5
1088 : use pm_kind, only: CKC => CK5
1089 : #include "pm_except@routines.inc.F90"
1090 : end procedure
1091 : #endif
1092 :
1093 : #if CK4_ENABLED
1094 1177437 : module procedure isNANIEEE_CK4
1095 : use pm_kind, only: CKC => CK4
1096 : #include "pm_except@routines.inc.F90"
1097 1177437 : end procedure
1098 : #endif
1099 :
1100 : #if CK3_ENABLED
1101 1249057 : module procedure isNANIEEE_CK3
1102 : use pm_kind, only: CKC => CK3
1103 : #include "pm_except@routines.inc.F90"
1104 1249057 : end procedure
1105 : #endif
1106 :
1107 : #if CK2_ENABLED
1108 1248891 : module procedure isNANIEEE_CK2
1109 : use pm_kind, only: CKC => CK2
1110 : #include "pm_except@routines.inc.F90"
1111 1248891 : end procedure
1112 : #endif
1113 :
1114 : #if CK1_ENABLED
1115 1280992 : module procedure isNANIEEE_CK1
1116 : use pm_kind, only: CKC => CK1
1117 : #include "pm_except@routines.inc.F90"
1118 1280992 : end procedure
1119 : #endif
1120 :
1121 : #undef CK_ENABLED
1122 :
1123 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1124 :
1125 : #define RK_ENABLED 1
1126 :
1127 : #if RK5_ENABLED
1128 : module procedure isNANIEEE_RK5
1129 : use pm_kind, only: RKC => RK5
1130 : #include "pm_except@routines.inc.F90"
1131 : end procedure
1132 : #endif
1133 :
1134 : #if RK4_ENABLED
1135 1140129 : module procedure isNANIEEE_RK4
1136 : use pm_kind, only: RKC => RK4
1137 : #include "pm_except@routines.inc.F90"
1138 1140129 : end procedure
1139 : #endif
1140 :
1141 : #if RK3_ENABLED
1142 1239701 : module procedure isNANIEEE_RK3
1143 : use pm_kind, only: RKC => RK3
1144 : #include "pm_except@routines.inc.F90"
1145 1239701 : end procedure
1146 : #endif
1147 :
1148 : #if RK2_ENABLED
1149 1202099 : module procedure isNANIEEE_RK2
1150 : use pm_kind, only: RKC => RK2
1151 : #include "pm_except@routines.inc.F90"
1152 1202099 : end procedure
1153 : #endif
1154 :
1155 : #if RK1_ENABLED
1156 1181896 : module procedure isNANIEEE_RK1
1157 : use pm_kind, only: RKC => RK1
1158 : #include "pm_except@routines.inc.F90"
1159 1181896 : end procedure
1160 : #endif
1161 :
1162 : #undef RK_ENABLED
1163 :
1164 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1165 :
1166 : #undef IEEE_ENABLED
1167 :
1168 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1169 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1170 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1171 :
1172 : #define XNEQ_ENABLED 1
1173 :
1174 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1175 :
1176 : #define CK_ENABLED 1
1177 :
1178 : #if CK5_ENABLED
1179 : module procedure isNANXNEQ_CK5
1180 : use pm_kind, only: CKC => CK5
1181 : #include "pm_except@routines.inc.F90"
1182 : end procedure
1183 : #endif
1184 :
1185 : #if CK4_ENABLED
1186 0 : module procedure isNANXNEQ_CK4
1187 : use pm_kind, only: CKC => CK4
1188 : #include "pm_except@routines.inc.F90"
1189 0 : end procedure
1190 : #endif
1191 :
1192 : #if CK3_ENABLED
1193 0 : module procedure isNANXNEQ_CK3
1194 : use pm_kind, only: CKC => CK3
1195 : #include "pm_except@routines.inc.F90"
1196 0 : end procedure
1197 : #endif
1198 :
1199 : #if CK2_ENABLED
1200 0 : module procedure isNANXNEQ_CK2
1201 : use pm_kind, only: CKC => CK2
1202 : #include "pm_except@routines.inc.F90"
1203 0 : end procedure
1204 : #endif
1205 :
1206 : #if CK1_ENABLED
1207 0 : module procedure isNANXNEQ_CK1
1208 : use pm_kind, only: CKC => CK1
1209 : #include "pm_except@routines.inc.F90"
1210 0 : end procedure
1211 : #endif
1212 :
1213 : #undef CK_ENABLED
1214 :
1215 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1216 :
1217 : #define RK_ENABLED 1
1218 :
1219 : #if RK5_ENABLED
1220 : module procedure isNANXNEQ_RK5
1221 : use pm_kind, only: RKC => RK5
1222 : #include "pm_except@routines.inc.F90"
1223 : end procedure
1224 : #endif
1225 :
1226 : #if RK4_ENABLED
1227 0 : module procedure isNANXNEQ_RK4
1228 : use pm_kind, only: RKC => RK4
1229 : #include "pm_except@routines.inc.F90"
1230 0 : end procedure
1231 : #endif
1232 :
1233 : #if RK3_ENABLED
1234 0 : module procedure isNANXNEQ_RK3
1235 : use pm_kind, only: RKC => RK3
1236 : #include "pm_except@routines.inc.F90"
1237 0 : end procedure
1238 : #endif
1239 :
1240 : #if RK2_ENABLED
1241 0 : module procedure isNANXNEQ_RK2
1242 : use pm_kind, only: RKC => RK2
1243 : #include "pm_except@routines.inc.F90"
1244 0 : end procedure
1245 : #endif
1246 :
1247 : #if RK1_ENABLED
1248 0 : module procedure isNANXNEQ_RK1
1249 : use pm_kind, only: RKC => RK1
1250 : #include "pm_except@routines.inc.F90"
1251 0 : end procedure
1252 : #endif
1253 :
1254 : #undef RK_ENABLED
1255 :
1256 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1257 :
1258 : #undef XNEQ_ENABLED
1259 :
1260 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1261 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1262 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1263 :
1264 : #undef isNAN_ENABLED
1265 :
1266 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1267 :
1268 : #define getNAN_ENABLED 1
1269 :
1270 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1271 :
1272 : #define CK_ENABLED 1
1273 :
1274 : #if CK5_ENABLED
1275 : module procedure getNAN_CK5
1276 : use pm_kind, only: CKC => CK5
1277 : #include "pm_except@routines.inc.F90"
1278 : end procedure
1279 : #endif
1280 :
1281 : #if CK4_ENABLED
1282 10 : module procedure getNAN_CK4
1283 : use pm_kind, only: CKC => CK4
1284 : #include "pm_except@routines.inc.F90"
1285 10 : end procedure
1286 : #endif
1287 :
1288 : #if CK3_ENABLED
1289 6 : module procedure getNAN_CK3
1290 : use pm_kind, only: CKC => CK3
1291 : #include "pm_except@routines.inc.F90"
1292 6 : end procedure
1293 : #endif
1294 :
1295 : #if CK2_ENABLED
1296 10 : module procedure getNAN_CK2
1297 : use pm_kind, only: CKC => CK2
1298 : #include "pm_except@routines.inc.F90"
1299 10 : end procedure
1300 : #endif
1301 :
1302 : #if CK1_ENABLED
1303 10 : module procedure getNAN_CK1
1304 : use pm_kind, only: CKC => CK1
1305 : #include "pm_except@routines.inc.F90"
1306 10 : end procedure
1307 : #endif
1308 :
1309 : #undef CK_ENABLED
1310 :
1311 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1312 :
1313 : #define RK_ENABLED 1
1314 :
1315 : #if RK5_ENABLED
1316 : module procedure getNAN_RK5
1317 : use pm_kind, only: RKC => RK5
1318 : #include "pm_except@routines.inc.F90"
1319 : end procedure
1320 : #endif
1321 :
1322 : #if RK4_ENABLED
1323 11 : module procedure getNAN_RK4
1324 : use pm_kind, only: RKC => RK4
1325 : #include "pm_except@routines.inc.F90"
1326 11 : end procedure
1327 : #endif
1328 :
1329 : #if RK3_ENABLED
1330 7 : module procedure getNAN_RK3
1331 : use pm_kind, only: RKC => RK3
1332 : #include "pm_except@routines.inc.F90"
1333 7 : end procedure
1334 : #endif
1335 :
1336 : #if RK2_ENABLED
1337 11 : module procedure getNAN_RK2
1338 : use pm_kind, only: RKC => RK2
1339 : #include "pm_except@routines.inc.F90"
1340 11 : end procedure
1341 : #endif
1342 :
1343 : #if RK1_ENABLED
1344 13 : module procedure getNAN_RK1
1345 : use pm_kind, only: RKC => RK1
1346 : #include "pm_except@routines.inc.F90"
1347 13 : end procedure
1348 : #endif
1349 :
1350 : #undef RK_ENABLED
1351 :
1352 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1353 :
1354 : #undef getNAN_ENABLED
1355 :
1356 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1357 :
1358 : #define setNAN_ENABLED 1
1359 :
1360 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1361 :
1362 : #define CK_ENABLED 1
1363 :
1364 : #if CK5_ENABLED
1365 : module procedure setNAN_CK5
1366 : use pm_kind, only: CKC => CK5
1367 : #include "pm_except@routines.inc.F90"
1368 : end procedure
1369 : #endif
1370 :
1371 : #if CK4_ENABLED
1372 215 : module procedure setNAN_CK4
1373 : use pm_kind, only: CKC => CK4
1374 : #include "pm_except@routines.inc.F90"
1375 215 : end procedure
1376 : #endif
1377 :
1378 : #if CK3_ENABLED
1379 242 : module procedure setNAN_CK3
1380 : use pm_kind, only: CKC => CK3
1381 : #include "pm_except@routines.inc.F90"
1382 242 : end procedure
1383 : #endif
1384 :
1385 : #if CK2_ENABLED
1386 190 : module procedure setNAN_CK2
1387 : use pm_kind, only: CKC => CK2
1388 : #include "pm_except@routines.inc.F90"
1389 190 : end procedure
1390 : #endif
1391 :
1392 : #if CK1_ENABLED
1393 197 : module procedure setNAN_CK1
1394 : use pm_kind, only: CKC => CK1
1395 : #include "pm_except@routines.inc.F90"
1396 197 : end procedure
1397 : #endif
1398 :
1399 : #undef CK_ENABLED
1400 :
1401 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1402 :
1403 : #define RK_ENABLED 1
1404 :
1405 : #if RK5_ENABLED
1406 : module procedure setNAN_RK5
1407 : use pm_kind, only: RKC => RK5
1408 : #include "pm_except@routines.inc.F90"
1409 : end procedure
1410 : #endif
1411 :
1412 : #if RK4_ENABLED
1413 219 : module procedure setNAN_RK4
1414 : use pm_kind, only: RKC => RK4
1415 : #include "pm_except@routines.inc.F90"
1416 219 : end procedure
1417 : #endif
1418 :
1419 : #if RK3_ENABLED
1420 219 : module procedure setNAN_RK3
1421 : use pm_kind, only: RKC => RK3
1422 : #include "pm_except@routines.inc.F90"
1423 219 : end procedure
1424 : #endif
1425 :
1426 : #if RK2_ENABLED
1427 13699 : module procedure setNAN_RK2
1428 : use pm_kind, only: RKC => RK2
1429 : #include "pm_except@routines.inc.F90"
1430 13699 : end procedure
1431 : #endif
1432 :
1433 : #if RK1_ENABLED
1434 1292 : module procedure setNAN_RK1
1435 : use pm_kind, only: RKC => RK1
1436 : #include "pm_except@routines.inc.F90"
1437 1292 : end procedure
1438 : #endif
1439 :
1440 : #undef RK_ENABLED
1441 :
1442 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1443 :
1444 : #undef setNAN_ENABLED
1445 :
1446 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1447 :
1448 : #undef CHECK_ASSERTION
1449 :
1450 : end submodule routines
|