ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_distPower.F90
Go to the documentation of this file.
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
135
136!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
137
139
140 use pm_kind, only: SK
141
142 implicit none
143
144 character(*, SK), parameter :: MODULE_NAME = "@pm_distPower"
145
146!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
147
182 end type
183
184!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
185
270
271 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
272
273#if RK5_ENABLED
274 PURE elemental module function getPowerLogPDFNFALD_RK5(alpha, logMaxX) result(logPDFNF)
275#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
276 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALD_RK5
277#endif
278 use pm_kind, only: RKG => RK5
279 real(RKG) , intent(in) :: alpha, logMaxX
280 real(RKG) :: logPDFNF
281 end function
282#endif
283
284#if RK4_ENABLED
285 PURE elemental module function getPowerLogPDFNFALD_RK4(alpha, logMaxX) result(logPDFNF)
286#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
287 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALD_RK4
288#endif
289 use pm_kind, only: RKG => RK4
290 real(RKG) , intent(in) :: alpha, logMaxX
291 real(RKG) :: logPDFNF
292 end function
293#endif
294
295#if RK3_ENABLED
296 PURE elemental module function getPowerLogPDFNFALD_RK3(alpha, logMaxX) result(logPDFNF)
297#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
298 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALD_RK3
299#endif
300 use pm_kind, only: RKG => RK3
301 real(RKG) , intent(in) :: alpha, logMaxX
302 real(RKG) :: logPDFNF
303 end function
304#endif
305
306#if RK2_ENABLED
307 PURE elemental module function getPowerLogPDFNFALD_RK2(alpha, logMaxX) result(logPDFNF)
308#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
309 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALD_RK2
310#endif
311 use pm_kind, only: RKG => RK2
312 real(RKG) , intent(in) :: alpha, logMaxX
313 real(RKG) :: logPDFNF
314 end function
315#endif
316
317#if RK1_ENABLED
318 PURE elemental module function getPowerLogPDFNFALD_RK1(alpha, logMaxX) result(logPDFNF)
319#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
320 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALD_RK1
321#endif
322 use pm_kind, only: RKG => RK1
323 real(RKG) , intent(in) :: alpha, logMaxX
324 real(RKG) :: logPDFNF
325 end function
326#endif
327
328 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
329
330#if RK5_ENABLED
331 PURE elemental module function getPowerLogPDFNFALL_RK5(alpha, logMinX, logMaxX) result(logPDFNF)
332#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
333 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALL_RK5
334#endif
335 use pm_kind, only: RKG => RK5
336 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
337 real(RKG) :: logPDFNF
338 end function
339#endif
340
341#if RK4_ENABLED
342 PURE elemental module function getPowerLogPDFNFALL_RK4(alpha, logMinX, logMaxX) result(logPDFNF)
343#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
344 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALL_RK4
345#endif
346 use pm_kind, only: RKG => RK4
347 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
348 real(RKG) :: logPDFNF
349 end function
350#endif
351
352#if RK3_ENABLED
353 PURE elemental module function getPowerLogPDFNFALL_RK3(alpha, logMinX, logMaxX) result(logPDFNF)
354#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
355 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALL_RK3
356#endif
357 use pm_kind, only: RKG => RK3
358 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
359 real(RKG) :: logPDFNF
360 end function
361#endif
362
363#if RK2_ENABLED
364 PURE elemental module function getPowerLogPDFNFALL_RK2(alpha, logMinX, logMaxX) result(logPDFNF)
365#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
366 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALL_RK2
367#endif
368 use pm_kind, only: RKG => RK2
369 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
370 real(RKG) :: logPDFNF
371 end function
372#endif
373
374#if RK1_ENABLED
375 PURE elemental module function getPowerLogPDFNFALL_RK1(alpha, logMinX, logMaxX) result(logPDFNF)
376#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
377 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFNFALL_RK1
378#endif
379 use pm_kind, only: RKG => RK1
380 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
381 real(RKG) :: logPDFNF
382 end function
383#endif
384
385 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
386
387 end interface
388
389!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
390
456
457 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
458
459#if RK5_ENABLED
460 PURE elemental module function getPowerLogPDFALD_RK5(logx, alpha, logMaxX) result(logPDF)
461#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
462 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALD_RK5
463#endif
464 use pm_kind, only: RKG => RK5
465 real(RKG) , intent(in) :: logx, alpha, logMaxX
466 real(RKG) :: logPDF
467 end function
468#endif
469
470#if RK4_ENABLED
471 PURE elemental module function getPowerLogPDFALD_RK4(logx, alpha, logMaxX) result(logPDF)
472#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
473 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALD_RK4
474#endif
475 use pm_kind, only: RKG => RK4
476 real(RKG) , intent(in) :: logx, alpha, logMaxX
477 real(RKG) :: logPDF
478 end function
479#endif
480
481#if RK3_ENABLED
482 PURE elemental module function getPowerLogPDFALD_RK3(logx, alpha, logMaxX) result(logPDF)
483#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
484 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALD_RK3
485#endif
486 use pm_kind, only: RKG => RK3
487 real(RKG) , intent(in) :: logx, alpha, logMaxX
488 real(RKG) :: logPDF
489 end function
490#endif
491
492#if RK2_ENABLED
493 PURE elemental module function getPowerLogPDFALD_RK2(logx, alpha, logMaxX) result(logPDF)
494#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
495 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALD_RK2
496#endif
497 use pm_kind, only: RKG => RK2
498 real(RKG) , intent(in) :: logx, alpha, logMaxX
499 real(RKG) :: logPDF
500 end function
501#endif
502
503#if RK1_ENABLED
504 PURE elemental module function getPowerLogPDFALD_RK1(logx, alpha, logMaxX) result(logPDF)
505#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
506 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALD_RK1
507#endif
508 use pm_kind, only: RKG => RK1
509 real(RKG) , intent(in) :: logx, alpha, logMaxX
510 real(RKG) :: logPDF
511 end function
512#endif
513
514 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
515
516#if RK5_ENABLED
517 PURE elemental module function getPowerLogPDFALL_RK5(logx, alpha, logMinX, logMaxX) result(logPDF)
518#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
519 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALL_RK5
520#endif
521 use pm_kind, only: RKG => RK5
522 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
523 real(RKG) :: logPDF
524 end function
525#endif
526
527#if RK4_ENABLED
528 PURE elemental module function getPowerLogPDFALL_RK4(logx, alpha, logMinX, logMaxX) result(logPDF)
529#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
530 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALL_RK4
531#endif
532 use pm_kind, only: RKG => RK4
533 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
534 real(RKG) :: logPDF
535 end function
536#endif
537
538#if RK3_ENABLED
539 PURE elemental module function getPowerLogPDFALL_RK3(logx, alpha, logMinX, logMaxX) result(logPDF)
540#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
541 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALL_RK3
542#endif
543 use pm_kind, only: RKG => RK3
544 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
545 real(RKG) :: logPDF
546 end function
547#endif
548
549#if RK2_ENABLED
550 PURE elemental module function getPowerLogPDFALL_RK2(logx, alpha, logMinX, logMaxX) result(logPDF)
551#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
552 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALL_RK2
553#endif
554 use pm_kind, only: RKG => RK2
555 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
556 real(RKG) :: logPDF
557 end function
558#endif
559
560#if RK1_ENABLED
561 PURE elemental module function getPowerLogPDFALL_RK1(logx, alpha, logMinX, logMaxX) result(logPDF)
562#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
563 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogPDFALL_RK1
564#endif
565 use pm_kind, only: RKG => RK1
566 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
567 real(RKG) :: logPDF
568 end function
569#endif
570
571 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
572
573 end interface
574
575!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
576
640
641 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
642
643#if RK5_ENABLED
644 PURE elemental module subroutine setPowerLogPDF_RK5(logPDF, logx, alpha, logPDFNF)
645#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
646 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogPDF_RK5
647#endif
648 use pm_kind, only: RKG => RK5
649 real(RKG) , intent(out) :: logPDF
650 real(RKG) , intent(in) :: logx, alpha, logPDFNF
651 end subroutine
652#endif
653
654#if RK4_ENABLED
655 PURE elemental module subroutine setPowerLogPDF_RK4(logPDF, logx, alpha, logPDFNF)
656#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
657 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogPDF_RK4
658#endif
659 use pm_kind, only: RKG => RK4
660 real(RKG) , intent(out) :: logPDF
661 real(RKG) , intent(in) :: logx, alpha, logPDFNF
662 end subroutine
663#endif
664
665#if RK3_ENABLED
666 PURE elemental module subroutine setPowerLogPDF_RK3(logPDF, logx, alpha, logPDFNF)
667#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
668 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogPDF_RK3
669#endif
670 use pm_kind, only: RKG => RK3
671 real(RKG) , intent(out) :: logPDF
672 real(RKG) , intent(in) :: logx, alpha, logPDFNF
673 end subroutine
674#endif
675
676#if RK2_ENABLED
677 PURE elemental module subroutine setPowerLogPDF_RK2(logPDF, logx, alpha, logPDFNF)
678#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
679 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogPDF_RK2
680#endif
681 use pm_kind, only: RKG => RK2
682 real(RKG) , intent(out) :: logPDF
683 real(RKG) , intent(in) :: logx, alpha, logPDFNF
684 end subroutine
685#endif
686
687#if RK1_ENABLED
688 PURE elemental module subroutine setPowerLogPDF_RK1(logPDF, logx, alpha, logPDFNF)
689#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
690 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogPDF_RK1
691#endif
692 use pm_kind, only: RKG => RK1
693 real(RKG) , intent(out) :: logPDF
694 real(RKG) , intent(in) :: logx, alpha, logPDFNF
695 end subroutine
696#endif
697
698 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
699
700 end interface
701
702!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
703
788
789 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
790
791#if RK5_ENABLED
792 PURE elemental module function getPowerLogCDFNFALD_RK5(alpha, logMaxX) result(logCDFNF)
793#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
794 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALD_RK5
795#endif
796 use pm_kind, only: RKG => RK5
797 real(RKG) , intent(in) :: alpha, logMaxX
798 real(RKG) :: logCDFNF
799 end function
800#endif
801
802#if RK4_ENABLED
803 PURE elemental module function getPowerLogCDFNFALD_RK4(alpha, logMaxX) result(logCDFNF)
804#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
805 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALD_RK4
806#endif
807 use pm_kind, only: RKG => RK4
808 real(RKG) , intent(in) :: alpha, logMaxX
809 real(RKG) :: logCDFNF
810 end function
811#endif
812
813#if RK3_ENABLED
814 PURE elemental module function getPowerLogCDFNFALD_RK3(alpha, logMaxX) result(logCDFNF)
815#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
816 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALD_RK3
817#endif
818 use pm_kind, only: RKG => RK3
819 real(RKG) , intent(in) :: alpha, logMaxX
820 real(RKG) :: logCDFNF
821 end function
822#endif
823
824#if RK2_ENABLED
825 PURE elemental module function getPowerLogCDFNFALD_RK2(alpha, logMaxX) result(logCDFNF)
826#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
827 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALD_RK2
828#endif
829 use pm_kind, only: RKG => RK2
830 real(RKG) , intent(in) :: alpha, logMaxX
831 real(RKG) :: logCDFNF
832 end function
833#endif
834
835#if RK1_ENABLED
836 PURE elemental module function getPowerLogCDFNFALD_RK1(alpha, logMaxX) result(logCDFNF)
837#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
838 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALD_RK1
839#endif
840 use pm_kind, only: RKG => RK1
841 real(RKG) , intent(in) :: alpha, logMaxX
842 real(RKG) :: logCDFNF
843 end function
844#endif
845
846 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
847
848#if RK5_ENABLED
849 PURE elemental module function getPowerLogCDFNFALL_RK5(alpha, logMinX, logMaxX) result(logCDFNF)
850#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
851 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALL_RK5
852#endif
853 use pm_kind, only: RKG => RK5
854 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
855 real(RKG) :: logCDFNF
856 end function
857#endif
858
859#if RK4_ENABLED
860 PURE elemental module function getPowerLogCDFNFALL_RK4(alpha, logMinX, logMaxX) result(logCDFNF)
861#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
862 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALL_RK4
863#endif
864 use pm_kind, only: RKG => RK4
865 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
866 real(RKG) :: logCDFNF
867 end function
868#endif
869
870#if RK3_ENABLED
871 PURE elemental module function getPowerLogCDFNFALL_RK3(alpha, logMinX, logMaxX) result(logCDFNF)
872#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
873 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALL_RK3
874#endif
875 use pm_kind, only: RKG => RK3
876 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
877 real(RKG) :: logCDFNF
878 end function
879#endif
880
881#if RK2_ENABLED
882 PURE elemental module function getPowerLogCDFNFALL_RK2(alpha, logMinX, logMaxX) result(logCDFNF)
883#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
884 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALL_RK2
885#endif
886 use pm_kind, only: RKG => RK2
887 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
888 real(RKG) :: logCDFNF
889 end function
890#endif
891
892#if RK1_ENABLED
893 PURE elemental module function getPowerLogCDFNFALL_RK1(alpha, logMinX, logMaxX) result(logCDFNF)
894#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
895 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFNFALL_RK1
896#endif
897 use pm_kind, only: RKG => RK1
898 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
899 real(RKG) :: logCDFNF
900 end function
901#endif
902
903 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
904
905 end interface
906
907!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
908
974
975 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
976
977#if RK5_ENABLED
978 PURE elemental module function getPowerLogCDFALD_RK5(logx, alpha, logMaxX) result(logCDF)
979#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
980 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALD_RK5
981#endif
982 use pm_kind, only: RKG => RK5
983 real(RKG) , intent(in) :: logx, alpha, logMaxX
984 real(RKG) :: logCDF
985 end function
986#endif
987
988#if RK4_ENABLED
989 PURE elemental module function getPowerLogCDFALD_RK4(logx, alpha, logMaxX) result(logCDF)
990#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
991 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALD_RK4
992#endif
993 use pm_kind, only: RKG => RK4
994 real(RKG) , intent(in) :: logx, alpha, logMaxX
995 real(RKG) :: logCDF
996 end function
997#endif
998
999#if RK3_ENABLED
1000 PURE elemental module function getPowerLogCDFALD_RK3(logx, alpha, logMaxX) result(logCDF)
1001#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1002 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALD_RK3
1003#endif
1004 use pm_kind, only: RKG => RK3
1005 real(RKG) , intent(in) :: logx, alpha, logMaxX
1006 real(RKG) :: logCDF
1007 end function
1008#endif
1009
1010#if RK2_ENABLED
1011 PURE elemental module function getPowerLogCDFALD_RK2(logx, alpha, logMaxX) result(logCDF)
1012#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1013 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALD_RK2
1014#endif
1015 use pm_kind, only: RKG => RK2
1016 real(RKG) , intent(in) :: logx, alpha, logMaxX
1017 real(RKG) :: logCDF
1018 end function
1019#endif
1020
1021#if RK1_ENABLED
1022 PURE elemental module function getPowerLogCDFALD_RK1(logx, alpha, logMaxX) result(logCDF)
1023#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1024 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALD_RK1
1025#endif
1026 use pm_kind, only: RKG => RK1
1027 real(RKG) , intent(in) :: logx, alpha, logMaxX
1028 real(RKG) :: logCDF
1029 end function
1030#endif
1031
1032 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1033
1034#if RK5_ENABLED
1035 PURE elemental module function getPowerLogCDFALL_RK5(logx, alpha, logMinX, logMaxX) result(logCDF)
1036#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1037 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALL_RK5
1038#endif
1039 use pm_kind, only: RKG => RK5
1040 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
1041 real(RKG) :: logCDF
1042 end function
1043#endif
1044
1045#if RK4_ENABLED
1046 PURE elemental module function getPowerLogCDFALL_RK4(logx, alpha, logMinX, logMaxX) result(logCDF)
1047#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1048 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALL_RK4
1049#endif
1050 use pm_kind, only: RKG => RK4
1051 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
1052 real(RKG) :: logCDF
1053 end function
1054#endif
1055
1056#if RK3_ENABLED
1057 PURE elemental module function getPowerLogCDFALL_RK3(logx, alpha, logMinX, logMaxX) result(logCDF)
1058#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1059 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALL_RK3
1060#endif
1061 use pm_kind, only: RKG => RK3
1062 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
1063 real(RKG) :: logCDF
1064 end function
1065#endif
1066
1067#if RK2_ENABLED
1068 PURE elemental module function getPowerLogCDFALL_RK2(logx, alpha, logMinX, logMaxX) result(logCDF)
1069#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1070 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALL_RK2
1071#endif
1072 use pm_kind, only: RKG => RK2
1073 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
1074 real(RKG) :: logCDF
1075 end function
1076#endif
1077
1078#if RK1_ENABLED
1079 PURE elemental module function getPowerLogCDFALL_RK1(logx, alpha, logMinX, logMaxX) result(logCDF)
1080#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1081 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogCDFALL_RK1
1082#endif
1083 use pm_kind, only: RKG => RK1
1084 real(RKG) , intent(in) :: logx, alpha, logMinX, logMaxX
1085 real(RKG) :: logCDF
1086 end function
1087#endif
1088
1089 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1090
1091 end interface
1092
1093!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1094
1163
1164 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1165
1166#if RK5_ENABLED
1167 PURE elemental module subroutine setPowerLogCDFALD_RK5(logCDF, logx, alpha, logCDFNF)
1168#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1169 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALD_RK5
1170#endif
1171 use pm_kind, only: RKG => RK5
1172 real(RKG) , intent(out) :: logCDF
1173 real(RKG) , intent(in) :: logx, alpha, logCDFNF
1174 end subroutine
1175#endif
1176
1177#if RK4_ENABLED
1178 PURE elemental module subroutine setPowerLogCDFALD_RK4(logCDF, logx, alpha, logCDFNF)
1179#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1180 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALD_RK4
1181#endif
1182 use pm_kind, only: RKG => RK4
1183 real(RKG) , intent(out) :: logCDF
1184 real(RKG) , intent(in) :: logx, alpha, logCDFNF
1185 end subroutine
1186#endif
1187
1188#if RK3_ENABLED
1189 PURE elemental module subroutine setPowerLogCDFALD_RK3(logCDF, logx, alpha, logCDFNF)
1190#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1191 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALD_RK3
1192#endif
1193 use pm_kind, only: RKG => RK3
1194 real(RKG) , intent(out) :: logCDF
1195 real(RKG) , intent(in) :: logx, alpha, logCDFNF
1196 end subroutine
1197#endif
1198
1199#if RK2_ENABLED
1200 PURE elemental module subroutine setPowerLogCDFALD_RK2(logCDF, logx, alpha, logCDFNF)
1201#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1202 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALD_RK2
1203#endif
1204 use pm_kind, only: RKG => RK2
1205 real(RKG) , intent(out) :: logCDF
1206 real(RKG) , intent(in) :: logx, alpha, logCDFNF
1207 end subroutine
1208#endif
1209
1210#if RK1_ENABLED
1211 PURE elemental module subroutine setPowerLogCDFALD_RK1(logCDF, logx, alpha, logCDFNF)
1212#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1213 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALD_RK1
1214#endif
1215 use pm_kind, only: RKG => RK1
1216 real(RKG) , intent(out) :: logCDF
1217 real(RKG) , intent(in) :: logx, alpha, logCDFNF
1218 end subroutine
1219#endif
1220
1221 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1222
1223#if RK5_ENABLED
1224 PURE elemental module subroutine setPowerLogCDFALL_RK5(logCDF, logx, alpha, logMinX, logCDFNF)
1225#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1226 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALL_RK5
1227#endif
1228 use pm_kind, only: RKG => RK5
1229 real(RKG) , intent(out) :: logCDF
1230 real(RKG) , intent(in) :: logx, alpha, logMinX, logCDFNF
1231 end subroutine
1232#endif
1233
1234#if RK4_ENABLED
1235 PURE elemental module subroutine setPowerLogCDFALL_RK4(logCDF, logx, alpha, logMinX, logCDFNF)
1236#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1237 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALL_RK4
1238#endif
1239 use pm_kind, only: RKG => RK4
1240 real(RKG) , intent(out) :: logCDF
1241 real(RKG) , intent(in) :: logx, alpha, logMinX, logCDFNF
1242 end subroutine
1243#endif
1244
1245#if RK3_ENABLED
1246 PURE elemental module subroutine setPowerLogCDFALL_RK3(logCDF, logx, alpha, logMinX, logCDFNF)
1247#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1248 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALL_RK3
1249#endif
1250 use pm_kind, only: RKG => RK3
1251 real(RKG) , intent(out) :: logCDF
1252 real(RKG) , intent(in) :: logx, alpha, logMinX, logCDFNF
1253 end subroutine
1254#endif
1255
1256#if RK2_ENABLED
1257 PURE elemental module subroutine setPowerLogCDFALL_RK2(logCDF, logx, alpha, logMinX, logCDFNF)
1258#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1259 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALL_RK2
1260#endif
1261 use pm_kind, only: RKG => RK2
1262 real(RKG) , intent(out) :: logCDF
1263 real(RKG) , intent(in) :: logx, alpha, logMinX, logCDFNF
1264 end subroutine
1265#endif
1266
1267#if RK1_ENABLED
1268 PURE elemental module subroutine setPowerLogCDFALL_RK1(logCDF, logx, alpha, logMinX, logCDFNF)
1269#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1270 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogCDFALL_RK1
1271#endif
1272 use pm_kind, only: RKG => RK1
1273 real(RKG) , intent(out) :: logCDF
1274 real(RKG) , intent(in) :: logx, alpha, logMinX, logCDFNF
1275 end subroutine
1276#endif
1277
1278 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1279
1280 end interface
1281
1282!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1283
1353
1354 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1355
1356#if RK5_ENABLED
1357 PURE elemental module function getPowerLogQuanALD_RK5(logCDF, alpha, logMaxX) result(logx)
1358#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1359 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALD_RK5
1360#endif
1361 use pm_kind, only: RKG => RK5
1362 real(RKG) , intent(in) :: logCDF, alpha, logMaxX
1363 real(RKG) :: logx
1364 end function
1365#endif
1366
1367#if RK4_ENABLED
1368 PURE elemental module function getPowerLogQuanALD_RK4(logCDF, alpha, logMaxX) result(logx)
1369#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1370 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALD_RK4
1371#endif
1372 use pm_kind, only: RKG => RK4
1373 real(RKG) , intent(in) :: logCDF, alpha, logMaxX
1374 real(RKG) :: logx
1375 end function
1376#endif
1377
1378#if RK3_ENABLED
1379 PURE elemental module function getPowerLogQuanALD_RK3(logCDF, alpha, logMaxX) result(logx)
1380#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1381 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALD_RK3
1382#endif
1383 use pm_kind, only: RKG => RK3
1384 real(RKG) , intent(in) :: logCDF, alpha, logMaxX
1385 real(RKG) :: logx
1386 end function
1387#endif
1388
1389#if RK2_ENABLED
1390 PURE elemental module function getPowerLogQuanALD_RK2(logCDF, alpha, logMaxX) result(logx)
1391#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1392 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALD_RK2
1393#endif
1394 use pm_kind, only: RKG => RK2
1395 real(RKG) , intent(in) :: logCDF, alpha, logMaxX
1396 real(RKG) :: logx
1397 end function
1398#endif
1399
1400#if RK1_ENABLED
1401 PURE elemental module function getPowerLogQuanALD_RK1(logCDF, alpha, logMaxX) result(logx)
1402#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1403 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALD_RK1
1404#endif
1405 use pm_kind, only: RKG => RK1
1406 real(RKG) , intent(in) :: logCDF, alpha, logMaxX
1407 real(RKG) :: logx
1408 end function
1409#endif
1410
1411 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1412
1413#if RK5_ENABLED
1414 PURE elemental module function getPowerLogQuanALL_RK5(logCDF, alpha, logMinX, logMaxX) result(logx)
1415#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1416 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALL_RK5
1417#endif
1418 use pm_kind, only: RKG => RK5
1419 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logMaxX
1420 real(RKG) :: logx
1421 end function
1422#endif
1423
1424#if RK4_ENABLED
1425 PURE elemental module function getPowerLogQuanALL_RK4(logCDF, alpha, logMinX, logMaxX) result(logx)
1426#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1427 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALL_RK4
1428#endif
1429 use pm_kind, only: RKG => RK4
1430 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logMaxX
1431 real(RKG) :: logx
1432 end function
1433#endif
1434
1435#if RK3_ENABLED
1436 PURE elemental module function getPowerLogQuanALL_RK3(logCDF, alpha, logMinX, logMaxX) result(logx)
1437#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1438 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALL_RK3
1439#endif
1440 use pm_kind, only: RKG => RK3
1441 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logMaxX
1442 real(RKG) :: logx
1443 end function
1444#endif
1445
1446#if RK2_ENABLED
1447 PURE elemental module function getPowerLogQuanALL_RK2(logCDF, alpha, logMinX, logMaxX) result(logx)
1448#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1449 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALL_RK2
1450#endif
1451 use pm_kind, only: RKG => RK2
1452 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logMaxX
1453 real(RKG) :: logx
1454 end function
1455#endif
1456
1457#if RK1_ENABLED
1458 PURE elemental module function getPowerLogQuanALL_RK1(logCDF, alpha, logMinX, logMaxX) result(logx)
1459#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1460 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogQuanALL_RK1
1461#endif
1462 use pm_kind, only: RKG => RK1
1463 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logMaxX
1464 real(RKG) :: logx
1465 end function
1466#endif
1467
1468 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1469
1470 end interface
1471
1472!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1473
1540
1541 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1542
1543#if RK5_ENABLED
1544 PURE elemental module subroutine setPowerLogQuanLLALD_RK5(logx, logCDF, alpha, logCDFNF)
1545#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1546 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALD_RK5
1547#endif
1548 use pm_kind, only: RKG => RK5
1549 real(RKG) , intent(out) :: logx
1550 real(RKG) , intent(in) :: logCDF, alpha, logCDFNF
1551 end subroutine
1552#endif
1553
1554#if RK4_ENABLED
1555 PURE elemental module subroutine setPowerLogQuanLLALD_RK4(logx, logCDF, alpha, logCDFNF)
1556#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1557 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALD_RK4
1558#endif
1559 use pm_kind, only: RKG => RK4
1560 real(RKG) , intent(out) :: logx
1561 real(RKG) , intent(in) :: logCDF, alpha, logCDFNF
1562 end subroutine
1563#endif
1564
1565#if RK3_ENABLED
1566 PURE elemental module subroutine setPowerLogQuanLLALD_RK3(logx, logCDF, alpha, logCDFNF)
1567#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1568 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALD_RK3
1569#endif
1570 use pm_kind, only: RKG => RK3
1571 real(RKG) , intent(out) :: logx
1572 real(RKG) , intent(in) :: logCDF, alpha, logCDFNF
1573 end subroutine
1574#endif
1575
1576#if RK2_ENABLED
1577 PURE elemental module subroutine setPowerLogQuanLLALD_RK2(logx, logCDF, alpha, logCDFNF)
1578#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1579 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALD_RK2
1580#endif
1581 use pm_kind, only: RKG => RK2
1582 real(RKG) , intent(out) :: logx
1583 real(RKG) , intent(in) :: logCDF, alpha, logCDFNF
1584 end subroutine
1585#endif
1586
1587#if RK1_ENABLED
1588 PURE elemental module subroutine setPowerLogQuanLLALD_RK1(logx, logCDF, alpha, logCDFNF)
1589#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1590 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALD_RK1
1591#endif
1592 use pm_kind, only: RKG => RK1
1593 real(RKG) , intent(out) :: logx
1594 real(RKG) , intent(in) :: logCDF, alpha, logCDFNF
1595 end subroutine
1596#endif
1597
1598 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1599
1600#if RK5_ENABLED
1601 PURE elemental module subroutine setPowerLogQuanLLALL_RK5(logx, logCDF, alpha, logMinX, logCDFNF)
1602#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1603 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALL_RK5
1604#endif
1605 use pm_kind, only: RKG => RK5
1606 real(RKG) , intent(out) :: logx
1607 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logCDFNF
1608 end subroutine
1609#endif
1610
1611#if RK4_ENABLED
1612 PURE elemental module subroutine setPowerLogQuanLLALL_RK4(logx, logCDF, alpha, logMinX, logCDFNF)
1613#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1614 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALL_RK4
1615#endif
1616 use pm_kind, only: RKG => RK4
1617 real(RKG) , intent(out) :: logx
1618 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logCDFNF
1619 end subroutine
1620#endif
1621
1622#if RK3_ENABLED
1623 PURE elemental module subroutine setPowerLogQuanLLALL_RK3(logx, logCDF, alpha, logMinX, logCDFNF)
1624#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1625 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALL_RK3
1626#endif
1627 use pm_kind, only: RKG => RK3
1628 real(RKG) , intent(out) :: logx
1629 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logCDFNF
1630 end subroutine
1631#endif
1632
1633#if RK2_ENABLED
1634 PURE elemental module subroutine setPowerLogQuanLLALL_RK2(logx, logCDF, alpha, logMinX, logCDFNF)
1635#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1636 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALL_RK2
1637#endif
1638 use pm_kind, only: RKG => RK2
1639 real(RKG) , intent(out) :: logx
1640 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logCDFNF
1641 end subroutine
1642#endif
1643
1644#if RK1_ENABLED
1645 PURE elemental module subroutine setPowerLogQuanLLALL_RK1(logx, logCDF, alpha, logMinX, logCDFNF)
1646#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1647 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogQuanLLALL_RK1
1648#endif
1649 use pm_kind, only: RKG => RK1
1650 real(RKG) , intent(out) :: logx
1651 real(RKG) , intent(in) :: logCDF, alpha, logMinX, logCDFNF
1652 end subroutine
1653#endif
1654
1655 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1656
1657 end interface
1658
1659!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1660
1726
1727 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1728
1729#if RK5_ENABLED
1730 impure elemental module function getPowerLogRandALD_RK5(alpha, logMaxX) result(logRand)
1731#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1732 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALD_RK5
1733#endif
1734 use pm_kind, only: RKG => RK5
1735 real(RKG) , intent(in) :: alpha, logMaxX
1736 real(RKG) :: logRand
1737 end function
1738#endif
1739
1740#if RK4_ENABLED
1741 impure elemental module function getPowerLogRandALD_RK4(alpha, logMaxX) result(logRand)
1742#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1743 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALD_RK4
1744#endif
1745 use pm_kind, only: RKG => RK4
1746 real(RKG) , intent(in) :: alpha, logMaxX
1747 real(RKG) :: logRand
1748 end function
1749#endif
1750
1751#if RK3_ENABLED
1752 impure elemental module function getPowerLogRandALD_RK3(alpha, logMaxX) result(logRand)
1753#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1754 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALD_RK3
1755#endif
1756 use pm_kind, only: RKG => RK3
1757 real(RKG) , intent(in) :: alpha, logMaxX
1758 real(RKG) :: logRand
1759 end function
1760#endif
1761
1762#if RK2_ENABLED
1763 impure elemental module function getPowerLogRandALD_RK2(alpha, logMaxX) result(logRand)
1764#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1765 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALD_RK2
1766#endif
1767 use pm_kind, only: RKG => RK2
1768 real(RKG) , intent(in) :: alpha, logMaxX
1769 real(RKG) :: logRand
1770 end function
1771#endif
1772
1773#if RK1_ENABLED
1774 impure elemental module function getPowerLogRandALD_RK1(alpha, logMaxX) result(logRand)
1775#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1776 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALD_RK1
1777#endif
1778 use pm_kind, only: RKG => RK1
1779 real(RKG) , intent(in) :: alpha, logMaxX
1780 real(RKG) :: logRand
1781 end function
1782#endif
1783
1784 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1785
1786#if RK5_ENABLED
1787 impure elemental module function getPowerLogRandALL_RK5(alpha, logMinX, logMaxX) result(logRand)
1788#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1789 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALL_RK5
1790#endif
1791 use pm_kind, only: RKG => RK5
1792 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
1793 real(RKG) :: logRand
1794 end function
1795#endif
1796
1797#if RK4_ENABLED
1798 impure elemental module function getPowerLogRandALL_RK4(alpha, logMinX, logMaxX) result(logRand)
1799#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1800 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALL_RK4
1801#endif
1802 use pm_kind, only: RKG => RK4
1803 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
1804 real(RKG) :: logRand
1805 end function
1806#endif
1807
1808#if RK3_ENABLED
1809 impure elemental module function getPowerLogRandALL_RK3(alpha, logMinX, logMaxX) result(logRand)
1810#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1811 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALL_RK3
1812#endif
1813 use pm_kind, only: RKG => RK3
1814 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
1815 real(RKG) :: logRand
1816 end function
1817#endif
1818
1819#if RK2_ENABLED
1820 impure elemental module function getPowerLogRandALL_RK2(alpha, logMinX, logMaxX) result(logRand)
1821#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1822 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALL_RK2
1823#endif
1824 use pm_kind, only: RKG => RK2
1825 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
1826 real(RKG) :: logRand
1827 end function
1828#endif
1829
1830#if RK1_ENABLED
1831 impure elemental module function getPowerLogRandALL_RK1(alpha, logMinX, logMaxX) result(logRand)
1832#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1833 !DEC$ ATTRIBUTES DLLEXPORT :: getPowerLogRandALL_RK1
1834#endif
1835 use pm_kind, only: RKG => RK1
1836 real(RKG) , intent(in) :: alpha, logMinX, logMaxX
1837 real(RKG) :: logRand
1838 end function
1839#endif
1840
1841 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1842
1843 end interface
1844
1845!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1846
1918
1919 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1920
1921#if RK5_ENABLED
1922 PURE elemental module subroutine setPowerLogRandLNALD_RK5(logRand, negExpRand, alpha, logCDFNF)
1923#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1924 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALD_RK5
1925#endif
1926 use pm_kind, only: RKG => RK5
1927 real(RKG) , intent(out) :: logRand
1928 real(RKG) , intent(in) :: negExpRand, alpha, logCDFNF
1929 end subroutine
1930#endif
1931
1932#if RK4_ENABLED
1933 PURE elemental module subroutine setPowerLogRandLNALD_RK4(logRand, negExpRand, alpha, logCDFNF)
1934#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1935 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALD_RK4
1936#endif
1937 use pm_kind, only: RKG => RK4
1938 real(RKG) , intent(out) :: logRand
1939 real(RKG) , intent(in) :: negExpRand, alpha, logCDFNF
1940 end subroutine
1941#endif
1942
1943#if RK3_ENABLED
1944 PURE elemental module subroutine setPowerLogRandLNALD_RK3(logRand, negExpRand, alpha, logCDFNF)
1945#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1946 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALD_RK3
1947#endif
1948 use pm_kind, only: RKG => RK3
1949 real(RKG) , intent(out) :: logRand
1950 real(RKG) , intent(in) :: negExpRand, alpha, logCDFNF
1951 end subroutine
1952#endif
1953
1954#if RK2_ENABLED
1955 PURE elemental module subroutine setPowerLogRandLNALD_RK2(logRand, negExpRand, alpha, logCDFNF)
1956#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1957 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALD_RK2
1958#endif
1959 use pm_kind, only: RKG => RK2
1960 real(RKG) , intent(out) :: logRand
1961 real(RKG) , intent(in) :: negExpRand, alpha, logCDFNF
1962 end subroutine
1963#endif
1964
1965#if RK1_ENABLED
1966 PURE elemental module subroutine setPowerLogRandLNALD_RK1(logRand, negExpRand, alpha, logCDFNF)
1967#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1968 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALD_RK1
1969#endif
1970 use pm_kind, only: RKG => RK1
1971 real(RKG) , intent(out) :: logRand
1972 real(RKG) , intent(in) :: negExpRand, alpha, logCDFNF
1973 end subroutine
1974#endif
1975
1976 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1977
1978#if RK5_ENABLED
1979 PURE elemental module subroutine setPowerLogRandLNALL_RK5(logRand, negExpRand, alpha, logMinX, logCDFNF)
1980#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1981 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALL_RK5
1982#endif
1983 use pm_kind, only: RKG => RK5
1984 real(RKG) , intent(out) :: logRand
1985 real(RKG) , intent(in) :: negExpRand, alpha, logMinX, logCDFNF
1986 end subroutine
1987#endif
1988
1989#if RK4_ENABLED
1990 PURE elemental module subroutine setPowerLogRandLNALL_RK4(logRand, negExpRand, alpha, logMinX, logCDFNF)
1991#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1992 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALL_RK4
1993#endif
1994 use pm_kind, only: RKG => RK4
1995 real(RKG) , intent(out) :: logRand
1996 real(RKG) , intent(in) :: negExpRand, alpha, logMinX, logCDFNF
1997 end subroutine
1998#endif
1999
2000#if RK3_ENABLED
2001 PURE elemental module subroutine setPowerLogRandLNALL_RK3(logRand, negExpRand, alpha, logMinX, logCDFNF)
2002#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2003 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALL_RK3
2004#endif
2005 use pm_kind, only: RKG => RK3
2006 real(RKG) , intent(out) :: logRand
2007 real(RKG) , intent(in) :: negExpRand, alpha, logMinX, logCDFNF
2008 end subroutine
2009#endif
2010
2011#if RK2_ENABLED
2012 PURE elemental module subroutine setPowerLogRandLNALL_RK2(logRand, negExpRand, alpha, logMinX, logCDFNF)
2013#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2014 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALL_RK2
2015#endif
2016 use pm_kind, only: RKG => RK2
2017 real(RKG) , intent(out) :: logRand
2018 real(RKG) , intent(in) :: negExpRand, alpha, logMinX, logCDFNF
2019 end subroutine
2020#endif
2021
2022#if RK1_ENABLED
2023 PURE elemental module subroutine setPowerLogRandLNALL_RK1(logRand, negExpRand, alpha, logMinX, logCDFNF)
2024#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2025 !DEC$ ATTRIBUTES DLLEXPORT :: setPowerLogRandLNALL_RK1
2026#endif
2027 use pm_kind, only: RKG => RK1
2028 real(RKG) , intent(out) :: logRand
2029 real(RKG) , intent(in) :: negExpRand, alpha, logMinX, logCDFNF
2030 end subroutine
2031#endif
2032
2033 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2034
2035 end interface
2036
2037!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2038
2039end module pm_distPower
Generate and return the natural logarithm of the normalization factor of the CDF of the (Truncated) P...
Generate and return the natural logarithm of the Cumulative Distribution Function (CDF) of the (Trunc...
Generate and return the natural logarithm of the normalization factor of the PDF of the (Truncated) P...
Generate and return the natural logarithm of the Probability Density Function (PDF) of the (Truncated...
Generate and return a scalar (or array of arbitrary rank) of the natural logarithm(s) of quantile cor...
Generate and return a scalar (or array of arbitrary rank) of the natural logarithm(s) of random value...
Return the natural logarithm of the Cumulative Distribution Function (CDF) of the (Truncated) Power d...
Return the natural logarithm of the Probability Density Function (PDF) of the (Truncated) Power distr...
Return a scalar (or array of arbitrary rank) of the natural logarithm(s) of quantile corresponding to...
Return a scalar (or array of arbitrary rank) of the natural logarithm(s) of random value(s) from the ...
This module contains classes and procedures for computing various statistical quantities related to t...
character(*, SK), parameter MODULE_NAME
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
Definition: pm_kind.F90:268
integer, parameter RK5
Definition: pm_kind.F90:478
integer, parameter RK4
Definition: pm_kind.F90:489
integer, parameter RK2
Definition: pm_kind.F90:511
integer, parameter RK3
Definition: pm_kind.F90:500
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
Definition: pm_kind.F90:539
integer, parameter RK1
Definition: pm_kind.F90:522
This is the derived type for signifying distributions that are of type Power as defined in the descri...