https://www.cdslab.org/paramonte/fortran/2
Current view: top level - main - pm_distLogUnif@routines.F90 (source / functions) Hit Total Coverage
Test: ParaMonte 2.0.0 :: Serial Fortran - Code Coverage Report Lines: 34 82 41.5 %
Date: 2024-04-08 03:18:57 Functions: 17 41 41.5 %
Legend: Lines: hit not hit

          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_distLogUnif](@ref pm_distLogUnif).
      19             : !>
      20             : !>  \finmain
      21             : !>
      22             : !>  \author
      23             : !>  \AmirShahmoradi, Oct 16, 2009, 11:14 AM, Michigan
      24             : 
      25             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      26             : 
      27             : submodule (pm_distLogUnif) 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 pm_mathLogSubExp, only: getLogSubExp
      40             :     use pm_distUnif, only: getUnifRand
      41             :     implicit none
      42             : 
      43             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      44             : 
      45             : contains
      46             : 
      47             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      48             : 
      49             : #define getLogUnifPDFNF_ENABLED 1
      50             : 
      51             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      52             : 
      53             : #define RK_ENABLED 1
      54             : 
      55             : #if RK5_ENABLED
      56             :     module procedure getLogUnifPDFNF_RK5
      57             :         use pm_kind, only: RKC => RK5
      58             : #include "pm_distLogUnif@routines.inc.F90"
      59             :     end procedure
      60             : #endif
      61             : 
      62             : #if RK4_ENABLED
      63           0 :     module procedure getLogUnifPDFNF_RK4
      64             :         use pm_kind, only: RKC => RK4
      65             : #include "pm_distLogUnif@routines.inc.F90"
      66           0 :     end procedure
      67             : #endif
      68             : 
      69             : #if RK3_ENABLED
      70           0 :     module procedure getLogUnifPDFNF_RK3
      71             :         use pm_kind, only: RKC => RK3
      72             : #include "pm_distLogUnif@routines.inc.F90"
      73           0 :     end procedure
      74             : #endif
      75             : 
      76             : #if RK2_ENABLED
      77         100 :     module procedure getLogUnifPDFNF_RK2
      78             :         use pm_kind, only: RKC => RK2
      79             : #include "pm_distLogUnif@routines.inc.F90"
      80         100 :     end procedure
      81             : #endif
      82             : 
      83             : #if RK1_ENABLED
      84       21787 :     module procedure getLogUnifPDFNF_RK1
      85             :         use pm_kind, only: RKC => RK1
      86             : #include "pm_distLogUnif@routines.inc.F90"
      87       21787 :     end procedure
      88             : #endif
      89             : 
      90             : #undef RK_ENABLED
      91             : 
      92             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      93             : 
      94             : #undef getLogUnifPDFNF_ENABLED
      95             : 
      96             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      97             : 
      98             : #define getLogUnifPDF_ENABLED 1
      99             : 
     100             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     101             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     102             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     103             : 
     104             : #define MM_ENABLED 1
     105             : 
     106             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     107             : 
     108             : #define RK_ENABLED 1
     109             : 
     110             : #if RK5_ENABLED
     111             :     module procedure getLogUnifPDFMM_RK5
     112             :         use pm_kind, only: RKC => RK5
     113             : #include "pm_distLogUnif@routines.inc.F90"
     114             :     end procedure
     115             : #endif
     116             : 
     117             : #if RK4_ENABLED
     118           0 :     module procedure getLogUnifPDFMM_RK4
     119             :         use pm_kind, only: RKC => RK4
     120             : #include "pm_distLogUnif@routines.inc.F90"
     121           0 :     end procedure
     122             : #endif
     123             : 
     124             : #if RK3_ENABLED
     125           0 :     module procedure getLogUnifPDFMM_RK3
     126             :         use pm_kind, only: RKC => RK3
     127             : #include "pm_distLogUnif@routines.inc.F90"
     128           0 :     end procedure
     129             : #endif
     130             : 
     131             : #if RK2_ENABLED
     132           0 :     module procedure getLogUnifPDFMM_RK2
     133             :         use pm_kind, only: RKC => RK2
     134             : #include "pm_distLogUnif@routines.inc.F90"
     135           0 :     end procedure
     136             : #endif
     137             : 
     138             : #if RK1_ENABLED
     139        1013 :     module procedure getLogUnifPDFMM_RK1
     140             :         use pm_kind, only: RKC => RK1
     141             : #include "pm_distLogUnif@routines.inc.F90"
     142        1013 :     end procedure
     143             : #endif
     144             : 
     145             : #undef RK_ENABLED
     146             : 
     147             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     148             : 
     149             : #undef MM_ENABLED
     150             : 
     151             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     152             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     153             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     154             : 
     155             : #undef getLogUnifPDF_ENABLED
     156             : 
     157             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     158             : 
     159             : #define setLogUnifPDF_ENABLED 1
     160             : 
     161             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     162             : 
     163             : #define RK_ENABLED 1
     164             : 
     165             : #if RK5_ENABLED
     166             :     module procedure setLogUnifPDF_RK5
     167             :         use pm_kind, only: RKC => RK5
     168             : #include "pm_distLogUnif@routines.inc.F90"
     169             :     end procedure
     170             : #endif
     171             : 
     172             : #if RK4_ENABLED
     173           0 :     module procedure setLogUnifPDF_RK4
     174             :         use pm_kind, only: RKC => RK4
     175             : #include "pm_distLogUnif@routines.inc.F90"
     176           0 :     end procedure
     177             : #endif
     178             : 
     179             : #if RK3_ENABLED
     180           0 :     module procedure setLogUnifPDF_RK3
     181             :         use pm_kind, only: RKC => RK3
     182             : #include "pm_distLogUnif@routines.inc.F90"
     183           0 :     end procedure
     184             : #endif
     185             : 
     186             : #if RK2_ENABLED
     187           0 :     module procedure setLogUnifPDF_RK2
     188             :         use pm_kind, only: RKC => RK2
     189             : #include "pm_distLogUnif@routines.inc.F90"
     190           0 :     end procedure
     191             : #endif
     192             : 
     193             : #if RK1_ENABLED
     194        2026 :     module procedure setLogUnifPDF_RK1
     195             :         use pm_kind, only: RKC => RK1
     196             : #include "pm_distLogUnif@routines.inc.F90"
     197        2026 :     end procedure
     198             : #endif
     199             : 
     200             : #undef RK_ENABLED
     201             : 
     202             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     203             : 
     204             : #undef setLogUnifPDF_ENABLED
     205             : 
     206             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     207             : 
     208             : #define getLogUnifCDF_ENABLED 1
     209             : 
     210             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     211             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     212             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     213             : 
     214             : #define LL_ENABLED 1
     215             : 
     216             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     217             : 
     218             : #define RK_ENABLED 1
     219             : 
     220             : #if RK5_ENABLED
     221             :     module procedure getLogUnifCDFLL_RK5
     222             :         use pm_kind, only: RKC => RK5
     223             : #include "pm_distLogUnif@routines.inc.F90"
     224             :     end procedure
     225             : #endif
     226             : 
     227             : #if RK4_ENABLED
     228           0 :     module procedure getLogUnifCDFLL_RK4
     229             :         use pm_kind, only: RKC => RK4
     230             : #include "pm_distLogUnif@routines.inc.F90"
     231           0 :     end procedure
     232             : #endif
     233             : 
     234             : #if RK3_ENABLED
     235           0 :     module procedure getLogUnifCDFLL_RK3
     236             :         use pm_kind, only: RKC => RK3
     237             : #include "pm_distLogUnif@routines.inc.F90"
     238           0 :     end procedure
     239             : #endif
     240             : 
     241             : #if RK2_ENABLED
     242           0 :     module procedure getLogUnifCDFLL_RK2
     243             :         use pm_kind, only: RKC => RK2
     244             : #include "pm_distLogUnif@routines.inc.F90"
     245           0 :     end procedure
     246             : #endif
     247             : 
     248             : #if RK1_ENABLED
     249        1918 :     module procedure getLogUnifCDFLL_RK1
     250             :         use pm_kind, only: RKC => RK1
     251             : #include "pm_distLogUnif@routines.inc.F90"
     252        1918 :     end procedure
     253             : #endif
     254             : 
     255             : #undef RK_ENABLED
     256             : 
     257             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     258             : 
     259             : #undef LL_ENABLED
     260             : 
     261             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     262             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     263             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     264             : 
     265             : #undef getLogUnifCDF_ENABLED
     266             : 
     267             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     268             : 
     269             : #define setLogUnifCDF_ENABLED 1
     270             : 
     271             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     272             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     273             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     274             : 
     275             : #define LL_ENABLED 1
     276             : 
     277             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     278             : 
     279             : #define RK_ENABLED 1
     280             : 
     281             : #if RK5_ENABLED
     282             :     module procedure setLogUnifCDFLL_RK5
     283             :         use pm_kind, only: RKC => RK5
     284             : #include "pm_distLogUnif@routines.inc.F90"
     285             :     end procedure
     286             : #endif
     287             : 
     288             : #if RK4_ENABLED
     289           0 :     module procedure setLogUnifCDFLL_RK4
     290             :         use pm_kind, only: RKC => RK4
     291             : #include "pm_distLogUnif@routines.inc.F90"
     292           0 :     end procedure
     293             : #endif
     294             : 
     295             : #if RK3_ENABLED
     296           0 :     module procedure setLogUnifCDFLL_RK3
     297             :         use pm_kind, only: RKC => RK3
     298             : #include "pm_distLogUnif@routines.inc.F90"
     299           0 :     end procedure
     300             : #endif
     301             : 
     302             : #if RK2_ENABLED
     303           0 :     module procedure setLogUnifCDFLL_RK2
     304             :         use pm_kind, only: RKC => RK2
     305             : #include "pm_distLogUnif@routines.inc.F90"
     306           0 :     end procedure
     307             : #endif
     308             : 
     309             : #if RK1_ENABLED
     310        3836 :     module procedure setLogUnifCDFLL_RK1
     311             :         use pm_kind, only: RKC => RK1
     312             : #include "pm_distLogUnif@routines.inc.F90"
     313        3836 :     end procedure
     314             : #endif
     315             : 
     316             : #undef RK_ENABLED
     317             : 
     318             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     319             : 
     320             : #undef LL_ENABLED
     321             : 
     322             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     323             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     324             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     325             : 
     326             : #undef setLogUnifCDF_ENABLED
     327             : 
     328             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     329             : 
     330             : #define getLogUnifLogQuan_ENABLED 1
     331             : 
     332             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     333             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     334             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     335             : 
     336             : #define LL_ENABLED 1
     337             : 
     338             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     339             : 
     340             : #define RK_ENABLED 1
     341             : 
     342             : #if RK5_ENABLED
     343             :     module procedure getLogUnifLogQuanLL_RK5
     344             :         use pm_kind, only: RKC => RK5
     345             : #include "pm_distLogUnif@routines.inc.F90"
     346             :     end procedure
     347             : #endif
     348             : 
     349             : #if RK4_ENABLED
     350           0 :     module procedure getLogUnifLogQuanLL_RK4
     351             :         use pm_kind, only: RKC => RK4
     352             : #include "pm_distLogUnif@routines.inc.F90"
     353           0 :     end procedure
     354             : #endif
     355             : 
     356             : #if RK3_ENABLED
     357           0 :     module procedure getLogUnifLogQuanLL_RK3
     358             :         use pm_kind, only: RKC => RK3
     359             : #include "pm_distLogUnif@routines.inc.F90"
     360           0 :     end procedure
     361             : #endif
     362             : 
     363             : #if RK2_ENABLED
     364           0 :     module procedure getLogUnifLogQuanLL_RK2
     365             :         use pm_kind, only: RKC => RK2
     366             : #include "pm_distLogUnif@routines.inc.F90"
     367           0 :     end procedure
     368             : #endif
     369             : 
     370             : #if RK1_ENABLED
     371        4004 :     module procedure getLogUnifLogQuanLL_RK1
     372             :         use pm_kind, only: RKC => RK1
     373             : #include "pm_distLogUnif@routines.inc.F90"
     374        4004 :     end procedure
     375             : #endif
     376             : 
     377             : #undef RK_ENABLED
     378             : 
     379             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     380             : 
     381             : #undef LL_ENABLED
     382             : 
     383             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     384             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     385             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     386             : 
     387             : #undef getLogUnifLogQuan_ENABLED
     388             : 
     389             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     390             : 
     391             : #define setLogUnifLogQuan_ENABLED 1
     392             : 
     393             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     394             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     395             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     396             : 
     397             : #define LLLP_ENABLED 1
     398             : 
     399             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     400             : 
     401             : #define RK_ENABLED 1
     402             : 
     403             : #if RK5_ENABLED
     404             :     module procedure setLogUnifLogQuanLLLP_RK5
     405             :         use pm_kind, only: RKC => RK5
     406             : #include "pm_distLogUnif@routines.inc.F90"
     407             :     end procedure
     408             : #endif
     409             : 
     410             : #if RK4_ENABLED
     411           0 :     module procedure setLogUnifLogQuanLLLP_RK4
     412             :         use pm_kind, only: RKC => RK4
     413             : #include "pm_distLogUnif@routines.inc.F90"
     414           0 :     end procedure
     415             : #endif
     416             : 
     417             : #if RK3_ENABLED
     418           0 :     module procedure setLogUnifLogQuanLLLP_RK3
     419             :         use pm_kind, only: RKC => RK3
     420             : #include "pm_distLogUnif@routines.inc.F90"
     421           0 :     end procedure
     422             : #endif
     423             : 
     424             : #if RK2_ENABLED
     425           0 :     module procedure setLogUnifLogQuanLLLP_RK2
     426             :         use pm_kind, only: RKC => RK2
     427             : #include "pm_distLogUnif@routines.inc.F90"
     428           0 :     end procedure
     429             : #endif
     430             : 
     431             : #if RK1_ENABLED
     432        8008 :     module procedure setLogUnifLogQuanLLLP_RK1
     433             :         use pm_kind, only: RKC => RK1
     434             : #include "pm_distLogUnif@routines.inc.F90"
     435        8008 :     end procedure
     436             : #endif
     437             : 
     438             : #undef RK_ENABLED
     439             : 
     440             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     441             : 
     442             : #undef LLLP_ENABLED
     443             : 
     444             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     445             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     446             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     447             : 
     448             : #undef setLogUnifLogQuan_ENABLED
     449             : 
     450             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     451             : 
     452             : #define getLogUnifRand_ENABLED 1
     453             : 
     454             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     455             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     456             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     457             : 
     458             : #define MM_ENABLED 1
     459             : 
     460             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     461             : 
     462             : #define IK_ENABLED 1
     463             : 
     464             : #if IK5_ENABLED
     465         100 :     module procedure getLogUnifRandMM_IK5
     466             :         use pm_kind, only: IKC => IK5
     467             : #include "pm_distLogUnif@routines.inc.F90"
     468         100 :     end procedure
     469             : #endif
     470             : 
     471             : #if IK4_ENABLED
     472         100 :     module procedure getLogUnifRandMM_IK4
     473             :         use pm_kind, only: IKC => IK4
     474             : #include "pm_distLogUnif@routines.inc.F90"
     475         100 :     end procedure
     476             : #endif
     477             : 
     478             : #if IK3_ENABLED
     479         120 :     module procedure getLogUnifRandMM_IK3
     480             :         use pm_kind, only: IKC => IK3
     481             : #include "pm_distLogUnif@routines.inc.F90"
     482         120 :     end procedure
     483             : #endif
     484             : 
     485             : #if IK2_ENABLED
     486         100 :     module procedure getLogUnifRandMM_IK2
     487             :         use pm_kind, only: IKC => IK2
     488             : #include "pm_distLogUnif@routines.inc.F90"
     489         100 :     end procedure
     490             : #endif
     491             : 
     492             : #if IK1_ENABLED
     493         100 :     module procedure getLogUnifRandMM_IK1
     494             :         use pm_kind, only: IKC => IK1
     495             : #include "pm_distLogUnif@routines.inc.F90"
     496         100 :     end procedure
     497             : #endif
     498             : 
     499             : #undef IK_ENABLED
     500             : 
     501             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     502             : 
     503             : #define RK_ENABLED 1
     504             : 
     505             : #if RK5_ENABLED
     506             :     module procedure getLogUnifRandMM_RK5
     507             :         use pm_kind, only: RKC => RK5
     508             : #include "pm_distLogUnif@routines.inc.F90"
     509             :     end procedure
     510             : #endif
     511             : 
     512             : #if RK4_ENABLED
     513           0 :     module procedure getLogUnifRandMM_RK4
     514             :         use pm_kind, only: RKC => RK4
     515             : #include "pm_distLogUnif@routines.inc.F90"
     516           0 :     end procedure
     517             : #endif
     518             : 
     519             : #if RK3_ENABLED
     520           0 :     module procedure getLogUnifRandMM_RK3
     521             :         use pm_kind, only: RKC => RK3
     522             : #include "pm_distLogUnif@routines.inc.F90"
     523           0 :     end procedure
     524             : #endif
     525             : 
     526             : #if RK2_ENABLED
     527         100 :     module procedure getLogUnifRandMM_RK2
     528             :         use pm_kind, only: RKC => RK2
     529             : #include "pm_distLogUnif@routines.inc.F90"
     530         100 :     end procedure
     531             : #endif
     532             : 
     533             : #if RK1_ENABLED
     534        4424 :     module procedure getLogUnifRandMM_RK1
     535             :         use pm_kind, only: RKC => RK1
     536             : #include "pm_distLogUnif@routines.inc.F90"
     537        4424 :     end procedure
     538             : #endif
     539             : 
     540             : #undef RK_ENABLED
     541             : 
     542             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     543             : 
     544             : #undef MM_ENABLED
     545             : 
     546             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     547             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     548             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     549             : 
     550             : #undef getLogUnifRand_ENABLED
     551             : 
     552             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     553             : 
     554             : #define setLogUnifLogRand_ENABLED 1
     555             : 
     556             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     557             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     558             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     559             : 
     560             : #define LLLP_ENABLED 1
     561             : 
     562             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     563             : 
     564             : #define RK_ENABLED 1
     565             : 
     566             : #if RK5_ENABLED
     567             :     module procedure setLogUnifLogRandLLLP_RK5
     568             :         use pm_kind, only: RKC => RK5
     569             : #include "pm_distLogUnif@routines.inc.F90"
     570             :     end procedure
     571             : #endif
     572             : 
     573             : #if RK4_ENABLED
     574           0 :     module procedure setLogUnifLogRandLLLP_RK4
     575             :         use pm_kind, only: RKC => RK4
     576             : #include "pm_distLogUnif@routines.inc.F90"
     577           0 :     end procedure
     578             : #endif
     579             : 
     580             : #if RK3_ENABLED
     581           0 :     module procedure setLogUnifLogRandLLLP_RK3
     582             :         use pm_kind, only: RKC => RK3
     583             : #include "pm_distLogUnif@routines.inc.F90"
     584           0 :     end procedure
     585             : #endif
     586             : 
     587             : #if RK2_ENABLED
     588         100 :     module procedure setLogUnifLogRandLLLP_RK2
     589             :         use pm_kind, only: RKC => RK2
     590             : #include "pm_distLogUnif@routines.inc.F90"
     591         100 :     end procedure
     592             : #endif
     593             : 
     594             : #if RK1_ENABLED
     595        8428 :     module procedure setLogUnifLogRandLLLP_RK1
     596             :         use pm_kind, only: RKC => RK1
     597             : #include "pm_distLogUnif@routines.inc.F90"
     598        8428 :     end procedure
     599             : #endif
     600             : 
     601             : #undef RK_ENABLED
     602             : 
     603             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     604             : 
     605             : #undef LLLP_ENABLED
     606             : 
     607             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     608             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     609             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     610             : 
     611             : #undef setLogUnifLogRand_ENABLED
     612             : 
     613             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     614             : 
     615             : #undef CHECK_ASSERTION
     616             : 
     617             : end submodule routines

ParaMonte: Parallel Monte Carlo and Machine Learning Library 
The Computational Data Science Lab
© Copyright 2012 - 2024