https://www.cdslab.org/paramonte/fortran/2
Current view: top level - test - test_pm_arrayShuffle@routines.F90 (source / functions) Hit Total Coverage
Test: ParaMonte 2.0.0 :: Serial Fortran - Code Coverage Report Lines: 40 40 100.0 %
Date: 2024-04-08 03:18:57 Functions: 40 40 100.0 %
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 [test_pm_arrayShuffle](@ref test_pm_arrayShuffle).
      19             : !>
      20             : !>  \fintest
      21             : !>
      22             : !>  \author
      23             : !>  \AmirShahmoradi, September 1, 2017, 11:35 PM, Institute for Computational Engineering and Sciences (ICES), The University of Texas at Austin
      24             : 
      25             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      26             : 
      27             : submodule (test_pm_arrayShuffle) routines ! LCOV_EXCL_LINE
      28             : 
      29             :     use pm_arrayMembership, only: operator(.allin.)
      30             :     use pm_distUnif, only: xoshiro256ssw_type
      31             :     use pm_distUnif, only: setUnifRand
      32             :     use pm_distUnif, only: rngf_type
      33             :     use pm_option, only: getOption
      34             :     implicit none
      35             : 
      36             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      37             : 
      38             : contains
      39             : 
      40             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      41             : 
      42             : #define getShuffled_ENABLED 1
      43             : 
      44             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      45             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      46             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      47             : 
      48             : #define D0_ENABLED 1
      49             : 
      50             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      51             : 
      52             : #define SK_ENABLED 1
      53             : 
      54             : #if SK5_ENABLED
      55             :     module procedure test_getShuffled_D0_SK5_1
      56             :         use pm_kind, only: SKC => SK5
      57             : #include "test_pm_arrayShuffle@routines.inc.F90"
      58             :     end procedure
      59             : #endif
      60             : 
      61             : #if SK4_ENABLED
      62             :     module procedure test_getShuffled_D0_SK4_1
      63             :         use pm_kind, only: SKC => SK4
      64             : #include "test_pm_arrayShuffle@routines.inc.F90"
      65             :     end procedure
      66             : #endif
      67             : 
      68             : #if SK3_ENABLED
      69             :     module procedure test_getShuffled_D0_SK3_1
      70             :         use pm_kind, only: SKC => SK3
      71             : #include "test_pm_arrayShuffle@routines.inc.F90"
      72             :     end procedure
      73             : #endif
      74             : 
      75             : #if SK2_ENABLED
      76             :     module procedure test_getShuffled_D0_SK2_1
      77             :         use pm_kind, only: SKC => SK2
      78             : #include "test_pm_arrayShuffle@routines.inc.F90"
      79             :     end procedure
      80             : #endif
      81             : 
      82             : #if SK1_ENABLED
      83           1 :     module procedure test_getShuffled_D0_SK1_1
      84             :         use pm_kind, only: SKC => SK1
      85             : #include "test_pm_arrayShuffle@routines.inc.F90"
      86             :     end procedure
      87             : #endif
      88             : 
      89             : #undef SK_ENABLED
      90             : 
      91             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      92             : 
      93             : #undef D0_ENABLED
      94             : 
      95             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      96             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      97             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      98             : 
      99             : #define D1_ENABLED 1
     100             : 
     101             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     102             : 
     103             : #define SK_ENABLED 1
     104             : 
     105             : #if SK5_ENABLED
     106             :     module procedure test_getShuffled_D1_SK5_1
     107             :         use pm_kind, only: SKC => SK5
     108             : #include "test_pm_arrayShuffle@routines.inc.F90"
     109             :     end procedure
     110             : #endif
     111             : 
     112             : #if SK4_ENABLED
     113             :     module procedure test_getShuffled_D1_SK4_1
     114             :         use pm_kind, only: SKC => SK4
     115             : #include "test_pm_arrayShuffle@routines.inc.F90"
     116             :     end procedure
     117             : #endif
     118             : 
     119             : #if SK3_ENABLED
     120             :     module procedure test_getShuffled_D1_SK3_1
     121             :         use pm_kind, only: SKC => SK3
     122             : #include "test_pm_arrayShuffle@routines.inc.F90"
     123             :     end procedure
     124             : #endif
     125             : 
     126             : #if SK2_ENABLED
     127             :     module procedure test_getShuffled_D1_SK2_1
     128             :         use pm_kind, only: SKC => SK2
     129             : #include "test_pm_arrayShuffle@routines.inc.F90"
     130             :     end procedure
     131             : #endif
     132             : 
     133             : #if SK1_ENABLED
     134           1 :     module procedure test_getShuffled_D1_SK1_1
     135             :         use pm_kind, only: SKC => SK1
     136             : #include "test_pm_arrayShuffle@routines.inc.F90"
     137             :     end procedure
     138             : #endif
     139             : 
     140             : #undef SK_ENABLED
     141             : 
     142             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     143             : 
     144             : #define IK_ENABLED 1
     145             : 
     146             : #if IK5_ENABLED
     147           1 :     module procedure test_getShuffled_D1_IK5_1
     148             :         use pm_kind, only: IKC => IK5
     149             : #include "test_pm_arrayShuffle@routines.inc.F90"
     150             :     end procedure
     151             : #endif
     152             : 
     153             : #if IK4_ENABLED
     154           1 :     module procedure test_getShuffled_D1_IK4_1
     155             :         use pm_kind, only: IKC => IK4
     156             : #include "test_pm_arrayShuffle@routines.inc.F90"
     157             :     end procedure
     158             : #endif
     159             : 
     160             : #if IK3_ENABLED
     161           1 :     module procedure test_getShuffled_D1_IK3_1
     162             :         use pm_kind, only: IKC => IK3
     163             : #include "test_pm_arrayShuffle@routines.inc.F90"
     164             :     end procedure
     165             : #endif
     166             : 
     167             : #if IK2_ENABLED
     168           1 :     module procedure test_getShuffled_D1_IK2_1
     169             :         use pm_kind, only: IKC => IK2
     170             : #include "test_pm_arrayShuffle@routines.inc.F90"
     171             :     end procedure
     172             : #endif
     173             : 
     174             : #if IK1_ENABLED
     175           1 :     module procedure test_getShuffled_D1_IK1_1
     176             :         use pm_kind, only: IKC => IK1
     177             : #include "test_pm_arrayShuffle@routines.inc.F90"
     178             :     end procedure
     179             : #endif
     180             : 
     181             : #undef IK_ENABLED
     182             : 
     183             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     184             : 
     185             : #define LK_ENABLED 1
     186             : 
     187             : #if LK5_ENABLED
     188           1 :     module procedure test_getShuffled_D1_LK5_1
     189             :         use pm_kind, only: LKC => LK5
     190             : #include "test_pm_arrayShuffle@routines.inc.F90"
     191             :     end procedure
     192             : #endif
     193             : 
     194             : #if LK4_ENABLED
     195           1 :     module procedure test_getShuffled_D1_LK4_1
     196             :         use pm_kind, only: LKC => LK4
     197             : #include "test_pm_arrayShuffle@routines.inc.F90"
     198             :     end procedure
     199             : #endif
     200             : 
     201             : #if LK3_ENABLED
     202           1 :     module procedure test_getShuffled_D1_LK3_1
     203             :         use pm_kind, only: LKC => LK3
     204             : #include "test_pm_arrayShuffle@routines.inc.F90"
     205             :     end procedure
     206             : #endif
     207             : 
     208             : #if LK2_ENABLED
     209           1 :     module procedure test_getShuffled_D1_LK2_1
     210             :         use pm_kind, only: LKC => LK2
     211             : #include "test_pm_arrayShuffle@routines.inc.F90"
     212             :     end procedure
     213             : #endif
     214             : 
     215             : #if LK1_ENABLED
     216           1 :     module procedure test_getShuffled_D1_LK1_1
     217             :         use pm_kind, only: LKC => LK1
     218             : #include "test_pm_arrayShuffle@routines.inc.F90"
     219             :     end procedure
     220             : #endif
     221             : 
     222             : #undef LK_ENABLED
     223             : 
     224             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     225             : 
     226             : #define CK_ENABLED 1
     227             : 
     228             : #if CK5_ENABLED
     229             :     module procedure test_getShuffled_D1_CK5_1
     230             :         use pm_kind, only: CKC => CK5
     231             : #include "test_pm_arrayShuffle@routines.inc.F90"
     232             :     end procedure
     233             : #endif
     234             : 
     235             : #if CK4_ENABLED
     236           1 :     module procedure test_getShuffled_D1_CK4_1
     237             :         use pm_kind, only: CKC => CK4
     238             : #include "test_pm_arrayShuffle@routines.inc.F90"
     239             :     end procedure
     240             : #endif
     241             : 
     242             : #if CK3_ENABLED
     243           1 :     module procedure test_getShuffled_D1_CK3_1
     244             :         use pm_kind, only: CKC => CK3
     245             : #include "test_pm_arrayShuffle@routines.inc.F90"
     246             :     end procedure
     247             : #endif
     248             : 
     249             : #if CK2_ENABLED
     250           1 :     module procedure test_getShuffled_D1_CK2_1
     251             :         use pm_kind, only: CKC => CK2
     252             : #include "test_pm_arrayShuffle@routines.inc.F90"
     253             :     end procedure
     254             : #endif
     255             : 
     256             : #if CK1_ENABLED
     257           1 :     module procedure test_getShuffled_D1_CK1_1
     258             :         use pm_kind, only: CKC => CK1
     259             : #include "test_pm_arrayShuffle@routines.inc.F90"
     260             :     end procedure
     261             : #endif
     262             : 
     263             : #undef CK_ENABLED
     264             : 
     265             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     266             : 
     267             : #define RK_ENABLED 1
     268             : 
     269             : #if RK5_ENABLED
     270             :     module procedure test_getShuffled_D1_RK5_1
     271             :         use pm_kind, only: RKC => RK5
     272             : #include "test_pm_arrayShuffle@routines.inc.F90"
     273             :     end procedure
     274             : #endif
     275             : 
     276             : #if RK4_ENABLED
     277           1 :     module procedure test_getShuffled_D1_RK4_1
     278             :         use pm_kind, only: RKC => RK4
     279             : #include "test_pm_arrayShuffle@routines.inc.F90"
     280             :     end procedure
     281             : #endif
     282             : 
     283             : #if RK3_ENABLED
     284           1 :     module procedure test_getShuffled_D1_RK3_1
     285             :         use pm_kind, only: RKC => RK3
     286             : #include "test_pm_arrayShuffle@routines.inc.F90"
     287             :     end procedure
     288             : #endif
     289             : 
     290             : #if RK2_ENABLED
     291           1 :     module procedure test_getShuffled_D1_RK2_1
     292             :         use pm_kind, only: RKC => RK2
     293             : #include "test_pm_arrayShuffle@routines.inc.F90"
     294             :     end procedure
     295             : #endif
     296             : 
     297             : #if RK1_ENABLED
     298           1 :     module procedure test_getShuffled_D1_RK1_1
     299             :         use pm_kind, only: RKC => RK1
     300             : #include "test_pm_arrayShuffle@routines.inc.F90"
     301             :     end procedure
     302             : #endif
     303             : 
     304             : #undef RK_ENABLED
     305             : 
     306             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     307             : 
     308             : #undef D1_ENABLED
     309             : 
     310             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     311             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     312             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     313             : 
     314             : #undef getShuffled_ENABLED
     315             : 
     316             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     317             : 
     318             : #define setShuffled_ENABLED 1
     319             : 
     320             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     321             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     322             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     323             : 
     324             : #define D0_ENABLED 1
     325             : 
     326             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     327             : 
     328             : #define SK_ENABLED 1
     329             : 
     330             : #if SK5_ENABLED
     331             :     module procedure test_setShuffled_D0_SK5_1
     332             :         use pm_kind, only: SKC => SK5
     333             : #include "test_pm_arrayShuffle@routines.inc.F90"
     334             :     end procedure
     335             : #endif
     336             : 
     337             : #if SK4_ENABLED
     338             :     module procedure test_setShuffled_D0_SK4_1
     339             :         use pm_kind, only: SKC => SK4
     340             : #include "test_pm_arrayShuffle@routines.inc.F90"
     341             :     end procedure
     342             : #endif
     343             : 
     344             : #if SK3_ENABLED
     345             :     module procedure test_setShuffled_D0_SK3_1
     346             :         use pm_kind, only: SKC => SK3
     347             : #include "test_pm_arrayShuffle@routines.inc.F90"
     348             :     end procedure
     349             : #endif
     350             : 
     351             : #if SK2_ENABLED
     352             :     module procedure test_setShuffled_D0_SK2_1
     353             :         use pm_kind, only: SKC => SK2
     354             : #include "test_pm_arrayShuffle@routines.inc.F90"
     355             :     end procedure
     356             : #endif
     357             : 
     358             : #if SK1_ENABLED
     359           1 :     module procedure test_setShuffled_D0_SK1_1
     360             :         use pm_kind, only: SKC => SK1
     361             : #include "test_pm_arrayShuffle@routines.inc.F90"
     362             :     end procedure
     363             : #endif
     364             : 
     365             : #undef SK_ENABLED
     366             : 
     367             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     368             : 
     369             : #undef D0_ENABLED
     370             : 
     371             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     372             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     373             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     374             : 
     375             : #define D1_ENABLED 1
     376             : 
     377             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     378             : 
     379             : #define SK_ENABLED 1
     380             : 
     381             : #if SK5_ENABLED
     382             :     module procedure test_setShuffled_D1_SK5_1
     383             :         use pm_kind, only: SKC => SK5
     384             : #include "test_pm_arrayShuffle@routines.inc.F90"
     385             :     end procedure
     386             : #endif
     387             : 
     388             : #if SK4_ENABLED
     389             :     module procedure test_setShuffled_D1_SK4_1
     390             :         use pm_kind, only: SKC => SK4
     391             : #include "test_pm_arrayShuffle@routines.inc.F90"
     392             :     end procedure
     393             : #endif
     394             : 
     395             : #if SK3_ENABLED
     396             :     module procedure test_setShuffled_D1_SK3_1
     397             :         use pm_kind, only: SKC => SK3
     398             : #include "test_pm_arrayShuffle@routines.inc.F90"
     399             :     end procedure
     400             : #endif
     401             : 
     402             : #if SK2_ENABLED
     403             :     module procedure test_setShuffled_D1_SK2_1
     404             :         use pm_kind, only: SKC => SK2
     405             : #include "test_pm_arrayShuffle@routines.inc.F90"
     406             :     end procedure
     407             : #endif
     408             : 
     409             : #if SK1_ENABLED
     410           1 :     module procedure test_setShuffled_D1_SK1_1
     411             :         use pm_kind, only: SKC => SK1
     412             : #include "test_pm_arrayShuffle@routines.inc.F90"
     413             :     end procedure
     414             : #endif
     415             : 
     416             : #undef SK_ENABLED
     417             : 
     418             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     419             : 
     420             : #define IK_ENABLED 1
     421             : 
     422             : #if IK5_ENABLED
     423           1 :     module procedure test_setShuffled_D1_IK5_1
     424             :         use pm_kind, only: IKC => IK5
     425             : #include "test_pm_arrayShuffle@routines.inc.F90"
     426             :     end procedure
     427             : #endif
     428             : 
     429             : #if IK4_ENABLED
     430           1 :     module procedure test_setShuffled_D1_IK4_1
     431             :         use pm_kind, only: IKC => IK4
     432             : #include "test_pm_arrayShuffle@routines.inc.F90"
     433             :     end procedure
     434             : #endif
     435             : 
     436             : #if IK3_ENABLED
     437           1 :     module procedure test_setShuffled_D1_IK3_1
     438             :         use pm_kind, only: IKC => IK3
     439             : #include "test_pm_arrayShuffle@routines.inc.F90"
     440             :     end procedure
     441             : #endif
     442             : 
     443             : #if IK2_ENABLED
     444           1 :     module procedure test_setShuffled_D1_IK2_1
     445             :         use pm_kind, only: IKC => IK2
     446             : #include "test_pm_arrayShuffle@routines.inc.F90"
     447             :     end procedure
     448             : #endif
     449             : 
     450             : #if IK1_ENABLED
     451           1 :     module procedure test_setShuffled_D1_IK1_1
     452             :         use pm_kind, only: IKC => IK1
     453             : #include "test_pm_arrayShuffle@routines.inc.F90"
     454             :     end procedure
     455             : #endif
     456             : 
     457             : #undef IK_ENABLED
     458             : 
     459             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     460             : 
     461             : #define LK_ENABLED 1
     462             : 
     463             : #if LK5_ENABLED
     464           1 :     module procedure test_setShuffled_D1_LK5_1
     465             :         use pm_kind, only: LKC => LK5
     466             : #include "test_pm_arrayShuffle@routines.inc.F90"
     467             :     end procedure
     468             : #endif
     469             : 
     470             : #if LK4_ENABLED
     471           1 :     module procedure test_setShuffled_D1_LK4_1
     472             :         use pm_kind, only: LKC => LK4
     473             : #include "test_pm_arrayShuffle@routines.inc.F90"
     474             :     end procedure
     475             : #endif
     476             : 
     477             : #if LK3_ENABLED
     478           1 :     module procedure test_setShuffled_D1_LK3_1
     479             :         use pm_kind, only: LKC => LK3
     480             : #include "test_pm_arrayShuffle@routines.inc.F90"
     481             :     end procedure
     482             : #endif
     483             : 
     484             : #if LK2_ENABLED
     485           1 :     module procedure test_setShuffled_D1_LK2_1
     486             :         use pm_kind, only: LKC => LK2
     487             : #include "test_pm_arrayShuffle@routines.inc.F90"
     488             :     end procedure
     489             : #endif
     490             : 
     491             : #if LK1_ENABLED
     492           1 :     module procedure test_setShuffled_D1_LK1_1
     493             :         use pm_kind, only: LKC => LK1
     494             : #include "test_pm_arrayShuffle@routines.inc.F90"
     495             :     end procedure
     496             : #endif
     497             : 
     498             : #undef LK_ENABLED
     499             : 
     500             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     501             : 
     502             : #define CK_ENABLED 1
     503             : 
     504             : #if CK5_ENABLED
     505             :     module procedure test_setShuffled_D1_CK5_1
     506             :         use pm_kind, only: CKC => CK5
     507             : #include "test_pm_arrayShuffle@routines.inc.F90"
     508             :     end procedure
     509             : #endif
     510             : 
     511             : #if CK4_ENABLED
     512           1 :     module procedure test_setShuffled_D1_CK4_1
     513             :         use pm_kind, only: CKC => CK4
     514             : #include "test_pm_arrayShuffle@routines.inc.F90"
     515             :     end procedure
     516             : #endif
     517             : 
     518             : #if CK3_ENABLED
     519           1 :     module procedure test_setShuffled_D1_CK3_1
     520             :         use pm_kind, only: CKC => CK3
     521             : #include "test_pm_arrayShuffle@routines.inc.F90"
     522             :     end procedure
     523             : #endif
     524             : 
     525             : #if CK2_ENABLED
     526           1 :     module procedure test_setShuffled_D1_CK2_1
     527             :         use pm_kind, only: CKC => CK2
     528             : #include "test_pm_arrayShuffle@routines.inc.F90"
     529             :     end procedure
     530             : #endif
     531             : 
     532             : #if CK1_ENABLED
     533           1 :     module procedure test_setShuffled_D1_CK1_1
     534             :         use pm_kind, only: CKC => CK1
     535             : #include "test_pm_arrayShuffle@routines.inc.F90"
     536             :     end procedure
     537             : #endif
     538             : 
     539             : #undef CK_ENABLED
     540             : 
     541             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     542             : 
     543             : #define RK_ENABLED 1
     544             : 
     545             : #if RK5_ENABLED
     546             :     module procedure test_setShuffled_D1_RK5_1
     547             :         use pm_kind, only: RKC => RK5
     548             : #include "test_pm_arrayShuffle@routines.inc.F90"
     549             :     end procedure
     550             : #endif
     551             : 
     552             : #if RK4_ENABLED
     553           1 :     module procedure test_setShuffled_D1_RK4_1
     554             :         use pm_kind, only: RKC => RK4
     555             : #include "test_pm_arrayShuffle@routines.inc.F90"
     556             :     end procedure
     557             : #endif
     558             : 
     559             : #if RK3_ENABLED
     560           1 :     module procedure test_setShuffled_D1_RK3_1
     561             :         use pm_kind, only: RKC => RK3
     562             : #include "test_pm_arrayShuffle@routines.inc.F90"
     563             :     end procedure
     564             : #endif
     565             : 
     566             : #if RK2_ENABLED
     567           1 :     module procedure test_setShuffled_D1_RK2_1
     568             :         use pm_kind, only: RKC => RK2
     569             : #include "test_pm_arrayShuffle@routines.inc.F90"
     570             :     end procedure
     571             : #endif
     572             : 
     573             : #if RK1_ENABLED
     574           1 :     module procedure test_setShuffled_D1_RK1_1
     575             :         use pm_kind, only: RKC => RK1
     576             : #include "test_pm_arrayShuffle@routines.inc.F90"
     577             :     end procedure
     578             : #endif
     579             : 
     580             : #undef RK_ENABLED
     581             : 
     582             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     583             : 
     584             : #undef D1_ENABLED
     585             : 
     586             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     587             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     588             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     589             : 
     590             : #undef setShuffled_ENABLED
     591             : 
     592             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     593             : 
     594             : end submodule routines

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