ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_distGenExpGamma.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
130
131!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
132
134
135 use pm_kind, only: SK, IK, LK
136
137 implicit none
138
139 character(*, SK), parameter :: MODULE_NAME = "@pm_distGenExpGamma"
140
141!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
142
177 end type
178
179!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
180
271
272 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
273
274#if RK5_ENABLED
275 PURE elemental module function getGenExpGammaLogPDFNFKD_RK5(kappa) result(logPDFNF)
276#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
277 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKD_RK5
278#endif
279 use pm_kind, only: RKG => RK5
280 real(RKG) , intent(in) :: kappa
281 real(RKG) :: logPDFNF
282 end function
283#endif
284
285#if RK4_ENABLED
286 PURE elemental module function getGenExpGammaLogPDFNFKD_RK4(kappa) result(logPDFNF)
287#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
288 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKD_RK4
289#endif
290 use pm_kind, only: RKG => RK4
291 real(RKG) , intent(in) :: kappa
292 real(RKG) :: logPDFNF
293 end function
294#endif
295
296#if RK3_ENABLED
297 PURE elemental module function getGenExpGammaLogPDFNFKD_RK3(kappa) result(logPDFNF)
298#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
299 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKD_RK3
300#endif
301 use pm_kind, only: RKG => RK3
302 real(RKG) , intent(in) :: kappa
303 real(RKG) :: logPDFNF
304 end function
305#endif
306
307#if RK2_ENABLED
308 PURE elemental module function getGenExpGammaLogPDFNFKD_RK2(kappa) result(logPDFNF)
309#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
310 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKD_RK2
311#endif
312 use pm_kind, only: RKG => RK2
313 real(RKG) , intent(in) :: kappa
314 real(RKG) :: logPDFNF
315 end function
316#endif
317
318#if RK1_ENABLED
319 PURE elemental module function getGenExpGammaLogPDFNFKD_RK1(kappa) result(logPDFNF)
320#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
321 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKD_RK1
322#endif
323 use pm_kind, only: RKG => RK1
324 real(RKG) , intent(in) :: kappa
325 real(RKG) :: logPDFNF
326 end function
327#endif
328
329 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
330
331#if RK5_ENABLED
332 PURE elemental module function getGenExpGammaLogPDFNFKO_RK5(kappa, invOmega) result(logPDFNF)
333#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
334 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKO_RK5
335#endif
336 use pm_kind, only: RKG => RK5
337 real(RKG) , intent(in) :: kappa, invOmega
338 real(RKG) :: logPDFNF
339 end function
340#endif
341
342#if RK4_ENABLED
343 PURE elemental module function getGenExpGammaLogPDFNFKO_RK4(kappa, invOmega) result(logPDFNF)
344#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
345 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKO_RK4
346#endif
347 use pm_kind, only: RKG => RK4
348 real(RKG) , intent(in) :: kappa, invOmega
349 real(RKG) :: logPDFNF
350 end function
351#endif
352
353#if RK3_ENABLED
354 PURE elemental module function getGenExpGammaLogPDFNFKO_RK3(kappa, invOmega) result(logPDFNF)
355#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
356 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKO_RK3
357#endif
358 use pm_kind, only: RKG => RK3
359 real(RKG) , intent(in) :: kappa, invOmega
360 real(RKG) :: logPDFNF
361 end function
362#endif
363
364#if RK2_ENABLED
365 PURE elemental module function getGenExpGammaLogPDFNFKO_RK2(kappa, invOmega) result(logPDFNF)
366#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
367 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKO_RK2
368#endif
369 use pm_kind, only: RKG => RK2
370 real(RKG) , intent(in) :: kappa, invOmega
371 real(RKG) :: logPDFNF
372 end function
373#endif
374
375#if RK1_ENABLED
376 PURE elemental module function getGenExpGammaLogPDFNFKO_RK1(kappa, invOmega) result(logPDFNF)
377#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
378 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDFNFKO_RK1
379#endif
380 use pm_kind, only: RKG => RK1
381 real(RKG) , intent(in) :: kappa, invOmega
382 real(RKG) :: logPDFNF
383 end function
384#endif
385
386 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
387
388 end interface
389
390!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
391
460
461 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
462
463#if RK5_ENABLED
464 PURE elemental module function getGenExpGammaLogPDF_RK5(x, kappa, invOmega, logSigma) result(logPDF)
465#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
466 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDF_RK5
467#endif
468 use pm_kind, only: RKG => RK5
469 real(RKG) , intent(in) :: x
470 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
471 real(RKG) :: logPDF
472 end function
473#endif
474
475#if RK4_ENABLED
476 PURE elemental module function getGenExpGammaLogPDF_RK4(x, kappa, invOmega, logSigma) result(logPDF)
477#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
478 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDF_RK4
479#endif
480 use pm_kind, only: RKG => RK4
481 real(RKG) , intent(in) :: x
482 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
483 real(RKG) :: logPDF
484 end function
485#endif
486
487#if RK3_ENABLED
488 PURE elemental module function getGenExpGammaLogPDF_RK3(x, kappa, invOmega, logSigma) result(logPDF)
489#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
490 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDF_RK3
491#endif
492 use pm_kind, only: RKG => RK3
493 real(RKG) , intent(in) :: x
494 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
495 real(RKG) :: logPDF
496 end function
497#endif
498
499#if RK2_ENABLED
500 PURE elemental module function getGenExpGammaLogPDF_RK2(x, kappa, invOmega, logSigma) result(logPDF)
501#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
502 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDF_RK2
503#endif
504 use pm_kind, only: RKG => RK2
505 real(RKG) , intent(in) :: x
506 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
507 real(RKG) :: logPDF
508 end function
509#endif
510
511#if RK1_ENABLED
512 PURE elemental module function getGenExpGammaLogPDF_RK1(x, kappa, invOmega, logSigma) result(logPDF)
513#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
514 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaLogPDF_RK1
515#endif
516 use pm_kind, only: RKG => RK1
517 real(RKG) , intent(in) :: x
518 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
519 real(RKG) :: logPDF
520 end function
521#endif
522
523 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
524
525 end interface
526
527!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
528
602
603 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
604 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
605 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
606
607 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
608
609#if RK5_ENABLED
610 PURE elemental module subroutine setGenExpGammaLogPDFDDDD_RK5(logPDF, x)
611#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
612 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFDDDD_RK5
613#endif
614 use pm_kind, only: RKG => RK5
615 real(RKG) , intent(out) :: logPDF
616 real(RKG) , intent(in) :: x
617 end subroutine
618#endif
619
620#if RK4_ENABLED
621 PURE elemental module subroutine setGenExpGammaLogPDFDDDD_RK4(logPDF, x)
622#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
623 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFDDDD_RK4
624#endif
625 use pm_kind, only: RKG => RK4
626 real(RKG) , intent(out) :: logPDF
627 real(RKG) , intent(in) :: x
628 end subroutine
629#endif
630
631#if RK3_ENABLED
632 PURE elemental module subroutine setGenExpGammaLogPDFDDDD_RK3(logPDF, x)
633#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
634 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFDDDD_RK3
635#endif
636 use pm_kind, only: RKG => RK3
637 real(RKG) , intent(out) :: logPDF
638 real(RKG) , intent(in) :: x
639 end subroutine
640#endif
641
642#if RK2_ENABLED
643 PURE elemental module subroutine setGenExpGammaLogPDFDDDD_RK2(logPDF, x)
644#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
645 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFDDDD_RK2
646#endif
647 use pm_kind, only: RKG => RK2
648 real(RKG) , intent(out) :: logPDF
649 real(RKG) , intent(in) :: x
650 end subroutine
651#endif
652
653#if RK1_ENABLED
654 PURE elemental module subroutine setGenExpGammaLogPDFDDDD_RK1(logPDF, x)
655#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
656 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFDDDD_RK1
657#endif
658 use pm_kind, only: RKG => RK1
659 real(RKG) , intent(out) :: logPDF
660 real(RKG) , intent(in) :: x
661 end subroutine
662#endif
663
664 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
665
666 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
667 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
668 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
669
670 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
671
672#if RK5_ENABLED
673 PURE elemental module subroutine setGenExpGammaLogPDFNKDD_RK5(logPDF, x, logPDFNF, kappa)
674#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
675 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKDD_RK5
676#endif
677 use pm_kind, only: RKG => RK5
678 real(RKG) , intent(out) :: logPDF
679 real(RKG) , intent(in) :: x, logPDFNF, kappa
680 end subroutine
681#endif
682
683#if RK4_ENABLED
684 PURE elemental module subroutine setGenExpGammaLogPDFNKDD_RK4(logPDF, x, logPDFNF, kappa)
685#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
686 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKDD_RK4
687#endif
688 use pm_kind, only: RKG => RK4
689 real(RKG) , intent(out) :: logPDF
690 real(RKG) , intent(in) :: x, logPDFNF, kappa
691 end subroutine
692#endif
693
694#if RK3_ENABLED
695 PURE elemental module subroutine setGenExpGammaLogPDFNKDD_RK3(logPDF, x, logPDFNF, kappa)
696#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
697 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKDD_RK3
698#endif
699 use pm_kind, only: RKG => RK3
700 real(RKG) , intent(out) :: logPDF
701 real(RKG) , intent(in) :: x, logPDFNF, kappa
702 end subroutine
703#endif
704
705#if RK2_ENABLED
706 PURE elemental module subroutine setGenExpGammaLogPDFNKDD_RK2(logPDF, x, logPDFNF, kappa)
707#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
708 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKDD_RK2
709#endif
710 use pm_kind, only: RKG => RK2
711 real(RKG) , intent(out) :: logPDF
712 real(RKG) , intent(in) :: x, logPDFNF, kappa
713 end subroutine
714#endif
715
716#if RK1_ENABLED
717 PURE elemental module subroutine setGenExpGammaLogPDFNKDD_RK1(logPDF, x, logPDFNF, kappa)
718#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
719 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKDD_RK1
720#endif
721 use pm_kind, only: RKG => RK1
722 real(RKG) , intent(out) :: logPDF
723 real(RKG) , intent(in) :: x, logPDFNF, kappa
724 end subroutine
725#endif
726
727 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
728
729 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
730 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
731 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
732
733 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
734
735#if RK5_ENABLED
736 PURE elemental module subroutine setGenExpGammaLogPDFNKOD_RK5(logPDF, x, logPDFNF, kappa, invOmega)
737#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
738 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOD_RK5
739#endif
740 use pm_kind, only: RKG => RK5
741 real(RKG) , intent(out) :: logPDF
742 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega
743 end subroutine
744#endif
745
746#if RK4_ENABLED
747 PURE elemental module subroutine setGenExpGammaLogPDFNKOD_RK4(logPDF, x, logPDFNF, kappa, invOmega)
748#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
749 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOD_RK4
750#endif
751 use pm_kind, only: RKG => RK4
752 real(RKG) , intent(out) :: logPDF
753 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega
754 end subroutine
755#endif
756
757#if RK3_ENABLED
758 PURE elemental module subroutine setGenExpGammaLogPDFNKOD_RK3(logPDF, x, logPDFNF, kappa, invOmega)
759#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
760 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOD_RK3
761#endif
762 use pm_kind, only: RKG => RK3
763 real(RKG) , intent(out) :: logPDF
764 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega
765 end subroutine
766#endif
767
768#if RK2_ENABLED
769 PURE elemental module subroutine setGenExpGammaLogPDFNKOD_RK2(logPDF, x, logPDFNF, kappa, invOmega)
770#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
771 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOD_RK2
772#endif
773 use pm_kind, only: RKG => RK2
774 real(RKG) , intent(out) :: logPDF
775 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega
776 end subroutine
777#endif
778
779#if RK1_ENABLED
780 PURE elemental module subroutine setGenExpGammaLogPDFNKOD_RK1(logPDF, x, logPDFNF, kappa, invOmega)
781#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
782 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOD_RK1
783#endif
784 use pm_kind, only: RKG => RK1
785 real(RKG) , intent(out) :: logPDF
786 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega
787 end subroutine
788#endif
789
790 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
791
792 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
793 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
794 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
795
796 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
797
798#if RK5_ENABLED
799 PURE elemental module subroutine setGenExpGammaLogPDFNKOS_RK5(logPDF, x, logPDFNF, kappa, invOmega, logSigma)
800#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
801 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOS_RK5
802#endif
803 use pm_kind, only: RKG => RK5
804 real(RKG) , intent(out) :: logPDF
805 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega, logSigma
806 end subroutine
807#endif
808
809#if RK4_ENABLED
810 PURE elemental module subroutine setGenExpGammaLogPDFNKOS_RK4(logPDF, x, logPDFNF, kappa, invOmega, logSigma)
811#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
812 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOS_RK4
813#endif
814 use pm_kind, only: RKG => RK4
815 real(RKG) , intent(out) :: logPDF
816 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega, logSigma
817 end subroutine
818#endif
819
820#if RK3_ENABLED
821 PURE elemental module subroutine setGenExpGammaLogPDFNKOS_RK3(logPDF, x, logPDFNF, kappa, invOmega, logSigma)
822#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
823 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOS_RK3
824#endif
825 use pm_kind, only: RKG => RK3
826 real(RKG) , intent(out) :: logPDF
827 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega, logSigma
828 end subroutine
829#endif
830
831#if RK2_ENABLED
832 PURE elemental module subroutine setGenExpGammaLogPDFNKOS_RK2(logPDF, x, logPDFNF, kappa, invOmega, logSigma)
833#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
834 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOS_RK2
835#endif
836 use pm_kind, only: RKG => RK2
837 real(RKG) , intent(out) :: logPDF
838 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega, logSigma
839 end subroutine
840#endif
841
842#if RK1_ENABLED
843 PURE elemental module subroutine setGenExpGammaLogPDFNKOS_RK1(logPDF, x, logPDFNF, kappa, invOmega, logSigma)
844#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
845 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaLogPDFNKOS_RK1
846#endif
847 use pm_kind, only: RKG => RK1
848 real(RKG) , intent(out) :: logPDF
849 real(RKG) , intent(in) :: x, logPDFNF, kappa, invOmega, logSigma
850 end subroutine
851#endif
852
853 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
854
855 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
856 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
857 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
858
859 end interface
860
861!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
862
934
935 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
936
937#if RK5_ENABLED
938 PURE elemental module function getGenExpGammaCDF_RK5(x, kappa, invOmega, logSigma) result(cdf)
939#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
940 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaCDF_RK5
941#endif
942 use pm_kind, only: RKG => RK5
943 real(RKG) , intent(in) :: x
944 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
945 real(RKG) :: cdf
946 end function
947#endif
948
949#if RK4_ENABLED
950 PURE elemental module function getGenExpGammaCDF_RK4(x, kappa, invOmega, logSigma) result(cdf)
951#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
952 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaCDF_RK4
953#endif
954 use pm_kind, only: RKG => RK4
955 real(RKG) , intent(in) :: x
956 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
957 real(RKG) :: cdf
958 end function
959#endif
960
961#if RK3_ENABLED
962 PURE elemental module function getGenExpGammaCDF_RK3(x, kappa, invOmega, logSigma) result(cdf)
963#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
964 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaCDF_RK3
965#endif
966 use pm_kind, only: RKG => RK3
967 real(RKG) , intent(in) :: x
968 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
969 real(RKG) :: cdf
970 end function
971#endif
972
973#if RK2_ENABLED
974 PURE elemental module function getGenExpGammaCDF_RK2(x, kappa, invOmega, logSigma) result(cdf)
975#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
976 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaCDF_RK2
977#endif
978 use pm_kind, only: RKG => RK2
979 real(RKG) , intent(in) :: x
980 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
981 real(RKG) :: cdf
982 end function
983#endif
984
985#if RK1_ENABLED
986 PURE elemental module function getGenExpGammaCDF_RK1(x, kappa, invOmega, logSigma) result(cdf)
987#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
988 !DEC$ ATTRIBUTES DLLEXPORT :: getGenExpGammaCDF_RK1
989#endif
990 use pm_kind, only: RKG => RK1
991 real(RKG) , intent(in) :: x
992 real(RKG) , intent(in) , optional :: kappa, invOmega, logSigma
993 real(RKG) :: cdf
994 end function
995#endif
996
997 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
998
999 end interface
1000
1001!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1002
1073
1074 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1075
1076#if RK5_ENABLED
1077 PURE elemental module subroutine setGenExpGammaCDFDDD_RK5(cdf, x, info)
1078#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1079 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFDDD_RK5
1080#endif
1081 use pm_kind, only: RKG => RK5
1082 real(RKG) , intent(out) :: cdf
1083 real(RKG) , intent(in) :: x
1084 integer(IK) , intent(out) :: info
1085 end subroutine
1086#endif
1087
1088#if RK4_ENABLED
1089 PURE elemental module subroutine setGenExpGammaCDFDDD_RK4(cdf, x, info)
1090#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1091 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFDDD_RK4
1092#endif
1093 use pm_kind, only: RKG => RK4
1094 real(RKG) , intent(out) :: cdf
1095 real(RKG) , intent(in) :: x
1096 integer(IK) , intent(out) :: info
1097 end subroutine
1098#endif
1099
1100#if RK3_ENABLED
1101 PURE elemental module subroutine setGenExpGammaCDFDDD_RK3(cdf, x, info)
1102#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1103 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFDDD_RK3
1104#endif
1105 use pm_kind, only: RKG => RK3
1106 real(RKG) , intent(out) :: cdf
1107 real(RKG) , intent(in) :: x
1108 integer(IK) , intent(out) :: info
1109 end subroutine
1110#endif
1111
1112#if RK2_ENABLED
1113 PURE elemental module subroutine setGenExpGammaCDFDDD_RK2(cdf, x, info)
1114#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1115 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFDDD_RK2
1116#endif
1117 use pm_kind, only: RKG => RK2
1118 real(RKG) , intent(out) :: cdf
1119 real(RKG) , intent(in) :: x
1120 integer(IK) , intent(out) :: info
1121 end subroutine
1122#endif
1123
1124#if RK1_ENABLED
1125 PURE elemental module subroutine setGenExpGammaCDFDDD_RK1(cdf, x, info)
1126#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1127 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFDDD_RK1
1128#endif
1129 use pm_kind, only: RKG => RK1
1130 real(RKG) , intent(out) :: cdf
1131 real(RKG) , intent(in) :: x
1132 integer(IK) , intent(out) :: info
1133 end subroutine
1134#endif
1135
1136 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1137
1138#if RK5_ENABLED
1139 PURE elemental module subroutine setGenExpGammaCDFXKDD_RK5(cdf, x, kappa, info)
1140#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1141 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFXKDD_RK5
1142#endif
1143 use pm_kind, only: RKG => RK5
1144 real(RKG) , intent(out) :: cdf
1145 real(RKG) , intent(in) :: x, kappa
1146 integer(IK) , intent(out) :: info
1147 end subroutine
1148#endif
1149
1150#if RK4_ENABLED
1151 PURE elemental module subroutine setGenExpGammaCDFXKDD_RK4(cdf, x, kappa, info)
1152#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1153 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFXKDD_RK4
1154#endif
1155 use pm_kind, only: RKG => RK4
1156 real(RKG) , intent(out) :: cdf
1157 real(RKG) , intent(in) :: x, kappa
1158 integer(IK) , intent(out) :: info
1159 end subroutine
1160#endif
1161
1162#if RK3_ENABLED
1163 PURE elemental module subroutine setGenExpGammaCDFXKDD_RK3(cdf, x, kappa, info)
1164#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1165 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFXKDD_RK3
1166#endif
1167 use pm_kind, only: RKG => RK3
1168 real(RKG) , intent(out) :: cdf
1169 real(RKG) , intent(in) :: x, kappa
1170 integer(IK) , intent(out) :: info
1171 end subroutine
1172#endif
1173
1174#if RK2_ENABLED
1175 PURE elemental module subroutine setGenExpGammaCDFXKDD_RK2(cdf, x, kappa, info)
1176#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1177 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFXKDD_RK2
1178#endif
1179 use pm_kind, only: RKG => RK2
1180 real(RKG) , intent(out) :: cdf
1181 real(RKG) , intent(in) :: x, kappa
1182 integer(IK) , intent(out) :: info
1183 end subroutine
1184#endif
1185
1186#if RK1_ENABLED
1187 PURE elemental module subroutine setGenExpGammaCDFXKDD_RK1(cdf, x, kappa, info)
1188#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1189 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFXKDD_RK1
1190#endif
1191 use pm_kind, only: RKG => RK1
1192 real(RKG) , intent(out) :: cdf
1193 real(RKG) , intent(in) :: x, kappa
1194 integer(IK) , intent(out) :: info
1195 end subroutine
1196#endif
1197
1198 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1199
1200#if RK5_ENABLED
1201 PURE elemental module subroutine setGenExpGammaCDFKOD_RK5(cdf, x, kappa, invOmega, info)
1202#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1203 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOD_RK5
1204#endif
1205 use pm_kind, only: RKG => RK5
1206 real(RKG) , intent(out) :: cdf
1207 real(RKG) , intent(in) :: x, kappa, invOmega
1208 integer(IK) , intent(out) :: info
1209 end subroutine
1210#endif
1211
1212#if RK4_ENABLED
1213 PURE elemental module subroutine setGenExpGammaCDFKOD_RK4(cdf, x, kappa, invOmega, info)
1214#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1215 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOD_RK4
1216#endif
1217 use pm_kind, only: RKG => RK4
1218 real(RKG) , intent(out) :: cdf
1219 real(RKG) , intent(in) :: x, kappa, invOmega
1220 integer(IK) , intent(out) :: info
1221 end subroutine
1222#endif
1223
1224#if RK3_ENABLED
1225 PURE elemental module subroutine setGenExpGammaCDFKOD_RK3(cdf, x, kappa, invOmega, info)
1226#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1227 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOD_RK3
1228#endif
1229 use pm_kind, only: RKG => RK3
1230 real(RKG) , intent(out) :: cdf
1231 real(RKG) , intent(in) :: x, kappa, invOmega
1232 integer(IK) , intent(out) :: info
1233 end subroutine
1234#endif
1235
1236#if RK2_ENABLED
1237 PURE elemental module subroutine setGenExpGammaCDFKOD_RK2(cdf, x, kappa, invOmega, info)
1238#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1239 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOD_RK2
1240#endif
1241 use pm_kind, only: RKG => RK2
1242 real(RKG) , intent(out) :: cdf
1243 real(RKG) , intent(in) :: x, kappa, invOmega
1244 integer(IK) , intent(out) :: info
1245 end subroutine
1246#endif
1247
1248#if RK1_ENABLED
1249 PURE elemental module subroutine setGenExpGammaCDFKOD_RK1(cdf, x, kappa, invOmega, info)
1250#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1251 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOD_RK1
1252#endif
1253 use pm_kind, only: RKG => RK1
1254 real(RKG) , intent(out) :: cdf
1255 real(RKG) , intent(in) :: x, kappa, invOmega
1256 integer(IK) , intent(out) :: info
1257 end subroutine
1258#endif
1259
1260 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1261
1262#if RK5_ENABLED
1263 PURE elemental module subroutine setGenExpGammaCDFKOS_RK5(cdf, x, kappa, invOmega, logSigma, info)
1264#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1265 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOS_RK5
1266#endif
1267 use pm_kind, only: RKG => RK5
1268 real(RKG) , intent(out) :: cdf
1269 real(RKG) , intent(in) :: x, kappa, invOmega, logSigma
1270 integer(IK) , intent(out) :: info
1271 end subroutine
1272#endif
1273
1274#if RK4_ENABLED
1275 PURE elemental module subroutine setGenExpGammaCDFKOS_RK4(cdf, x, kappa, invOmega, logSigma, info)
1276#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1277 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOS_RK4
1278#endif
1279 use pm_kind, only: RKG => RK4
1280 real(RKG) , intent(out) :: cdf
1281 real(RKG) , intent(in) :: x, kappa, invOmega, logSigma
1282 integer(IK) , intent(out) :: info
1283 end subroutine
1284#endif
1285
1286#if RK3_ENABLED
1287 PURE elemental module subroutine setGenExpGammaCDFKOS_RK3(cdf, x, kappa, invOmega, logSigma, info)
1288#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1289 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOS_RK3
1290#endif
1291 use pm_kind, only: RKG => RK3
1292 real(RKG) , intent(out) :: cdf
1293 real(RKG) , intent(in) :: x, kappa, invOmega, logSigma
1294 integer(IK) , intent(out) :: info
1295 end subroutine
1296#endif
1297
1298#if RK2_ENABLED
1299 PURE elemental module subroutine setGenExpGammaCDFKOS_RK2(cdf, x, kappa, invOmega, logSigma, info)
1300#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1301 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOS_RK2
1302#endif
1303 use pm_kind, only: RKG => RK2
1304 real(RKG) , intent(out) :: cdf
1305 real(RKG) , intent(in) :: x, kappa, invOmega, logSigma
1306 integer(IK) , intent(out) :: info
1307 end subroutine
1308#endif
1309
1310#if RK1_ENABLED
1311 PURE elemental module subroutine setGenExpGammaCDFKOS_RK1(cdf, x, kappa, invOmega, logSigma, info)
1312#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1313 !DEC$ ATTRIBUTES DLLEXPORT :: setGenExpGammaCDFKOS_RK1
1314#endif
1315 use pm_kind, only: RKG => RK1
1316 real(RKG) , intent(out) :: cdf
1317 real(RKG) , intent(in) :: x, kappa, invOmega, logSigma
1318 integer(IK) , intent(out) :: info
1319 end subroutine
1320#endif
1321
1322 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1323
1324 end interface
1325
1326!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1327
1328end module pm_distGenExpGamma
Generate and return the Cumulative Distribution Function (CDF) of the GenExpGamma distribution for an...
Generate and return the natural logarithm of the normalization factor of the Probability Density Func...
Generate and return the natural logarithm of the Probability Density Function (PDF) of the GenExpGamm...
Return the Cumulative Distribution Function (CDF) of the GenExpGamma distribution for an input x with...
Return the natural logarithm of the Probability Density Function (PDF) of the GenExpGamma distributio...
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 LK
The default logical kind in the ParaMonte library: kind(.true.) in Fortran, kind(....
Definition: pm_kind.F90:541
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
Definition: pm_kind.F90:540
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 GenExpGamma as defined in the ...