https://www.cdslab.org/paramonte/fortran/2
Current view: top level - main - pm_swap@routines.F90 (source / functions) Hit Total Coverage
Test: ParaMonte 2.0.0 :: Serial Fortran - Code Coverage Report Lines: 17 76 22.4 %
Date: 2024-04-08 03:18:57 Functions: 13 58 22.4 %
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_swap](@ref pm_swap).
      19             : !>
      20             : !>  \finmain
      21             : !>
      22             : !>  \author
      23             : !>  \FatemehBagheri, Wednesday 12:20 PM, September 22, 2021, Dallas, TX
      24             : 
      25             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      26             : 
      27             : submodule (pm_swap) routines ! LCOV_EXCL_LINE
      28             : 
      29             : #if CHECK_ENABLED
      30             :     ! \bug Bypass Intel `ifort` 2022 compiler bug for too many use statements in submodule procedures.
      31             :     use pm_err, only: getFine
      32             :     use pm_val2str, only: getStr
      33             :     use pm_err, only: setAsserted
      34             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) \
      35             : call setAsserted(ASSERTION,getFine(__FILE__,LINE)//MODULE_NAME//MSG);
      36             : #else
      37             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) continue;
      38             : #endif
      39             : 
      40             :     implicit none
      41             : 
      42             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      43             : 
      44             : contains
      45             : 
      46             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      47             : 
      48             : #define setSwapped_ENABLED 1
      49             : 
      50             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      51             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      52             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      53             : 
      54             : #define D0_ENABLED 1
      55             : 
      56             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      57             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      58             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      59             : 
      60             : #define Def_ENABLED 1
      61             : 
      62             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      63             : 
      64             : #define SK_ENABLED 1
      65             : 
      66             : #if SK5_ENABLED
      67             :     module procedure setSwappedDef_D0_SK5
      68             :         use pm_kind, only: SKC => SK5
      69             : #include "pm_swap@routines.inc.F90"
      70             :     end procedure
      71             : #endif
      72             : 
      73             : #if SK4_ENABLED
      74             :     module procedure setSwappedDef_D0_SK4
      75             :         use pm_kind, only: SKC => SK4
      76             : #include "pm_swap@routines.inc.F90"
      77             :     end procedure
      78             : #endif
      79             : 
      80             : #if SK3_ENABLED
      81             :     module procedure setSwappedDef_D0_SK3
      82             :         use pm_kind, only: SKC => SK3
      83             : #include "pm_swap@routines.inc.F90"
      84             :     end procedure
      85             : #endif
      86             : 
      87             : #if SK2_ENABLED
      88             :     module procedure setSwappedDef_D0_SK2
      89             :         use pm_kind, only: SKC => SK2
      90             : #include "pm_swap@routines.inc.F90"
      91             :     end procedure
      92             : #endif
      93             : 
      94             : #if SK1_ENABLED
      95           1 :     module procedure setSwappedDef_D0_SK1
      96             :         use pm_kind, only: SKC => SK1
      97             : #include "pm_swap@routines.inc.F90"
      98             :     end procedure
      99             : #endif
     100             : 
     101             : #undef SK_ENABLED
     102             : 
     103             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     104             : 
     105             : #define IK_ENABLED 1
     106             : 
     107             : #if IK5_ENABLED
     108           0 :     module procedure setSwappedDef_D0_IK5
     109             :         use pm_kind, only: IKC => IK5
     110             : #include "pm_swap@routines.inc.F90"
     111           0 :     end procedure
     112             : #endif
     113             : 
     114             : #if IK4_ENABLED
     115           0 :     module procedure setSwappedDef_D0_IK4
     116             :         use pm_kind, only: IKC => IK4
     117             : #include "pm_swap@routines.inc.F90"
     118           0 :     end procedure
     119             : #endif
     120             : 
     121             : #if IK3_ENABLED
     122           7 :     module procedure setSwappedDef_D0_IK3
     123             :         use pm_kind, only: IKC => IK3
     124             : #include "pm_swap@routines.inc.F90"
     125           7 :     end procedure
     126             : #endif
     127             : 
     128             : #if IK2_ENABLED
     129           0 :     module procedure setSwappedDef_D0_IK2
     130             :         use pm_kind, only: IKC => IK2
     131             : #include "pm_swap@routines.inc.F90"
     132           0 :     end procedure
     133             : #endif
     134             : 
     135             : #if IK1_ENABLED
     136           0 :     module procedure setSwappedDef_D0_IK1
     137             :         use pm_kind, only: IKC => IK1
     138             : #include "pm_swap@routines.inc.F90"
     139           0 :     end procedure
     140             : #endif
     141             : 
     142             : #undef IK_ENABLED
     143             : 
     144             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     145             : 
     146             : #define LK_ENABLED 1
     147             : 
     148             : #if LK5_ENABLED
     149           0 :     module procedure setSwappedDef_D0_LK5
     150             :         use pm_kind, only: LKC => LK5
     151             : #include "pm_swap@routines.inc.F90"
     152           0 :     end procedure
     153             : #endif
     154             : 
     155             : #if LK4_ENABLED
     156           0 :     module procedure setSwappedDef_D0_LK4
     157             :         use pm_kind, only: LKC => LK4
     158             : #include "pm_swap@routines.inc.F90"
     159           0 :     end procedure
     160             : #endif
     161             : 
     162             : #if LK3_ENABLED
     163           1 :     module procedure setSwappedDef_D0_LK3
     164             :         use pm_kind, only: LKC => LK3
     165             : #include "pm_swap@routines.inc.F90"
     166           1 :     end procedure
     167             : #endif
     168             : 
     169             : #if LK2_ENABLED
     170           0 :     module procedure setSwappedDef_D0_LK2
     171             :         use pm_kind, only: LKC => LK2
     172             : #include "pm_swap@routines.inc.F90"
     173           0 :     end procedure
     174             : #endif
     175             : 
     176             : #if LK1_ENABLED
     177           0 :     module procedure setSwappedDef_D0_LK1
     178             :         use pm_kind, only: LKC => LK1
     179             : #include "pm_swap@routines.inc.F90"
     180           0 :     end procedure
     181             : #endif
     182             : 
     183             : #undef LK_ENABLED
     184             : 
     185             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     186             : 
     187             : #define CK_ENABLED 1
     188             : 
     189             : #if CK5_ENABLED
     190             :     module procedure setSwappedDef_D0_CK5
     191             :         use pm_kind, only: CKC => CK5
     192             : #include "pm_swap@routines.inc.F90"
     193             :     end procedure
     194             : #endif
     195             : 
     196             : #if CK4_ENABLED
     197           0 :     module procedure setSwappedDef_D0_CK4
     198             :         use pm_kind, only: CKC => CK4
     199             : #include "pm_swap@routines.inc.F90"
     200           0 :     end procedure
     201             : #endif
     202             : 
     203             : #if CK3_ENABLED
     204           0 :     module procedure setSwappedDef_D0_CK3
     205             :         use pm_kind, only: CKC => CK3
     206             : #include "pm_swap@routines.inc.F90"
     207           0 :     end procedure
     208             : #endif
     209             : 
     210             : #if CK2_ENABLED
     211           0 :     module procedure setSwappedDef_D0_CK2
     212             :         use pm_kind, only: CKC => CK2
     213             : #include "pm_swap@routines.inc.F90"
     214           0 :     end procedure
     215             : #endif
     216             : 
     217             : #if CK1_ENABLED
     218           1 :     module procedure setSwappedDef_D0_CK1
     219             :         use pm_kind, only: CKC => CK1
     220             : #include "pm_swap@routines.inc.F90"
     221           1 :     end procedure
     222             : #endif
     223             : 
     224             : #undef CK_ENABLED
     225             : 
     226             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     227             : 
     228             : #define RK_ENABLED 1
     229             : 
     230             : #if RK5_ENABLED
     231             :     module procedure setSwappedDef_D0_RK5
     232             :         use pm_kind, only: RKC => RK5
     233             : #include "pm_swap@routines.inc.F90"
     234             :     end procedure
     235             : #endif
     236             : 
     237             : #if RK4_ENABLED
     238           0 :     module procedure setSwappedDef_D0_RK4
     239             :         use pm_kind, only: RKC => RK4
     240             : #include "pm_swap@routines.inc.F90"
     241           0 :     end procedure
     242             : #endif
     243             : 
     244             : #if RK3_ENABLED
     245           0 :     module procedure setSwappedDef_D0_RK3
     246             :         use pm_kind, only: RKC => RK3
     247             : #include "pm_swap@routines.inc.F90"
     248           0 :     end procedure
     249             : #endif
     250             : 
     251             : #if RK2_ENABLED
     252           0 :     module procedure setSwappedDef_D0_RK2
     253             :         use pm_kind, only: RKC => RK2
     254             : #include "pm_swap@routines.inc.F90"
     255           0 :     end procedure
     256             : #endif
     257             : 
     258             : #if RK1_ENABLED
     259           1 :     module procedure setSwappedDef_D0_RK1
     260             :         use pm_kind, only: RKC => RK1
     261             : #include "pm_swap@routines.inc.F90"
     262           1 :     end procedure
     263             : #endif
     264             : 
     265             : #undef RK_ENABLED
     266             : 
     267             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     268             : 
     269             : #undef Def_ENABLED
     270             : 
     271             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     272             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     273             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     274             : 
     275             : #define Inc_ENABLED 1
     276             : 
     277             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     278             : 
     279             : #define SK_ENABLED 1
     280             : 
     281             : #if SK5_ENABLED
     282             :     module procedure setSwappedInc_D0_SK5
     283             :         use pm_kind, only: SKC => SK5
     284             : #include "pm_swap@routines.inc.F90"
     285             :     end procedure
     286             : #endif
     287             : 
     288             : #if SK4_ENABLED
     289             :     module procedure setSwappedInc_D0_SK4
     290             :         use pm_kind, only: SKC => SK4
     291             : #include "pm_swap@routines.inc.F90"
     292             :     end procedure
     293             : #endif
     294             : 
     295             : #if SK3_ENABLED
     296             :     module procedure setSwappedInc_D0_SK3
     297             :         use pm_kind, only: SKC => SK3
     298             : #include "pm_swap@routines.inc.F90"
     299             :     end procedure
     300             : #endif
     301             : 
     302             : #if SK2_ENABLED
     303             :     module procedure setSwappedInc_D0_SK2
     304             :         use pm_kind, only: SKC => SK2
     305             : #include "pm_swap@routines.inc.F90"
     306             :     end procedure
     307             : #endif
     308             : 
     309             : #if SK1_ENABLED
     310           1 :     module procedure setSwappedInc_D0_SK1
     311             :         use pm_kind, only: SKC => SK1
     312             : #include "pm_swap@routines.inc.F90"
     313             :     end procedure
     314             : #endif
     315             : 
     316             : #undef SK_ENABLED
     317             : 
     318             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     319             : 
     320             : #undef Inc_ENABLED
     321             : 
     322             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     323             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     324             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     325             : 
     326             : #undef D0_ENABLED
     327             : 
     328             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     329             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     330             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     331             : 
     332             : #define D1_ENABLED 1
     333             : 
     334             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     335             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     336             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     337             : 
     338             : #define Def_ENABLED 1
     339             : 
     340             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     341             : 
     342             : #define SK_ENABLED 1
     343             : 
     344             : #if SK5_ENABLED
     345             :     module procedure setSwappedDef_D1_SK5
     346             :         use pm_kind, only: SKC => SK5
     347             : #include "pm_swap@routines.inc.F90"
     348             :     end procedure
     349             : #endif
     350             : 
     351             : #if SK4_ENABLED
     352             :     module procedure setSwappedDef_D1_SK4
     353             :         use pm_kind, only: SKC => SK4
     354             : #include "pm_swap@routines.inc.F90"
     355             :     end procedure
     356             : #endif
     357             : 
     358             : #if SK3_ENABLED
     359             :     module procedure setSwappedDef_D1_SK3
     360             :         use pm_kind, only: SKC => SK3
     361             : #include "pm_swap@routines.inc.F90"
     362             :     end procedure
     363             : #endif
     364             : 
     365             : #if SK2_ENABLED
     366             :     module procedure setSwappedDef_D1_SK2
     367             :         use pm_kind, only: SKC => SK2
     368             : #include "pm_swap@routines.inc.F90"
     369             :     end procedure
     370             : #endif
     371             : 
     372             : #if SK1_ENABLED
     373           1 :     module procedure setSwappedDef_D1_SK1
     374             :         use pm_kind, only: SKC => SK1
     375             : #include "pm_swap@routines.inc.F90"
     376             :     end procedure
     377             : #endif
     378             : 
     379             : #undef SK_ENABLED
     380             : 
     381             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     382             : 
     383             : #define IK_ENABLED 1
     384             : 
     385             : #if IK5_ENABLED
     386           0 :     module procedure setSwappedDef_D1_IK5
     387             :         use pm_kind, only: IKC => IK5
     388             : #include "pm_swap@routines.inc.F90"
     389             :     end procedure
     390             : #endif
     391             : 
     392             : #if IK4_ENABLED
     393           0 :     module procedure setSwappedDef_D1_IK4
     394             :         use pm_kind, only: IKC => IK4
     395             : #include "pm_swap@routines.inc.F90"
     396             :     end procedure
     397             : #endif
     398             : 
     399             : #if IK3_ENABLED
     400           1 :     module procedure setSwappedDef_D1_IK3
     401             :         use pm_kind, only: IKC => IK3
     402             : #include "pm_swap@routines.inc.F90"
     403             :     end procedure
     404             : #endif
     405             : 
     406             : #if IK2_ENABLED
     407           0 :     module procedure setSwappedDef_D1_IK2
     408             :         use pm_kind, only: IKC => IK2
     409             : #include "pm_swap@routines.inc.F90"
     410             :     end procedure
     411             : #endif
     412             : 
     413             : #if IK1_ENABLED
     414           0 :     module procedure setSwappedDef_D1_IK1
     415             :         use pm_kind, only: IKC => IK1
     416             : #include "pm_swap@routines.inc.F90"
     417             :     end procedure
     418             : #endif
     419             : 
     420             : #undef IK_ENABLED
     421             : 
     422             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     423             : 
     424             : #define LK_ENABLED 1
     425             : 
     426             : #if LK5_ENABLED
     427           0 :     module procedure setSwappedDef_D1_LK5
     428             :         use pm_kind, only: LKC => LK5
     429             : #include "pm_swap@routines.inc.F90"
     430             :     end procedure
     431             : #endif
     432             : 
     433             : #if LK4_ENABLED
     434           0 :     module procedure setSwappedDef_D1_LK4
     435             :         use pm_kind, only: LKC => LK4
     436             : #include "pm_swap@routines.inc.F90"
     437             :     end procedure
     438             : #endif
     439             : 
     440             : #if LK3_ENABLED
     441           1 :     module procedure setSwappedDef_D1_LK3
     442             :         use pm_kind, only: LKC => LK3
     443             : #include "pm_swap@routines.inc.F90"
     444             :     end procedure
     445             : #endif
     446             : 
     447             : #if LK2_ENABLED
     448           0 :     module procedure setSwappedDef_D1_LK2
     449             :         use pm_kind, only: LKC => LK2
     450             : #include "pm_swap@routines.inc.F90"
     451             :     end procedure
     452             : #endif
     453             : 
     454             : #if LK1_ENABLED
     455           0 :     module procedure setSwappedDef_D1_LK1
     456             :         use pm_kind, only: LKC => LK1
     457             : #include "pm_swap@routines.inc.F90"
     458             :     end procedure
     459             : #endif
     460             : 
     461             : #undef LK_ENABLED
     462             : 
     463             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     464             : 
     465             : #define CK_ENABLED 1
     466             : 
     467             : #if CK5_ENABLED
     468             :     module procedure setSwappedDef_D1_CK5
     469             :         use pm_kind, only: CKC => CK5
     470             : #include "pm_swap@routines.inc.F90"
     471             :     end procedure
     472             : #endif
     473             : 
     474             : #if CK4_ENABLED
     475           0 :     module procedure setSwappedDef_D1_CK4
     476             :         use pm_kind, only: CKC => CK4
     477             : #include "pm_swap@routines.inc.F90"
     478             :     end procedure
     479             : #endif
     480             : 
     481             : #if CK3_ENABLED
     482           0 :     module procedure setSwappedDef_D1_CK3
     483             :         use pm_kind, only: CKC => CK3
     484             : #include "pm_swap@routines.inc.F90"
     485             :     end procedure
     486             : #endif
     487             : 
     488             : #if CK2_ENABLED
     489           0 :     module procedure setSwappedDef_D1_CK2
     490             :         use pm_kind, only: CKC => CK2
     491             : #define DISPATCH_ENABLED 1
     492             : #include "pm_swap@routines.inc.F90"
     493             : #undef  DISPATCH_ENABLED
     494             :     end procedure
     495             : #endif
     496             : 
     497             : #if CK1_ENABLED
     498           1 :     module procedure setSwappedDef_D1_CK1
     499             :         use pm_kind, only: CKC => CK1
     500             : #define DISPATCH_ENABLED 1
     501             : #include "pm_swap@routines.inc.F90"
     502             : #undef  DISPATCH_ENABLED
     503             :     end procedure
     504             : #endif
     505             : 
     506             : #undef CK_ENABLED
     507             : 
     508             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     509             : 
     510             : #define RK_ENABLED 1
     511             : 
     512             : #if RK5_ENABLED
     513             :     module procedure setSwappedDef_D1_RK5
     514             :         use pm_kind, only: RKC => RK5
     515             : #include "pm_swap@routines.inc.F90"
     516             :     end procedure
     517             : #endif
     518             : 
     519             : #if RK4_ENABLED
     520           0 :     module procedure setSwappedDef_D1_RK4
     521             :         use pm_kind, only: RKC => RK4
     522             : #include "pm_swap@routines.inc.F90"
     523             :     end procedure
     524             : #endif
     525             : 
     526             : #if RK3_ENABLED
     527           0 :     module procedure setSwappedDef_D1_RK3
     528             :         use pm_kind, only: RKC => RK3
     529             : #include "pm_swap@routines.inc.F90"
     530             :     end procedure
     531             : #endif
     532             : 
     533             : #if RK2_ENABLED
     534           0 :     module procedure setSwappedDef_D1_RK2
     535             :         use pm_kind, only: RKC => RK2
     536             : #define DISPATCH_ENABLED 1
     537             : #include "pm_swap@routines.inc.F90"
     538             : #undef  DISPATCH_ENABLED
     539             :     end procedure
     540             : #endif
     541             : 
     542             : #if RK1_ENABLED
     543           1 :     module procedure setSwappedDef_D1_RK1
     544             :         use pm_kind, only: RKC => RK1
     545             : #define DISPATCH_ENABLED 1
     546             : #include "pm_swap@routines.inc.F90"
     547             : #undef  DISPATCH_ENABLED
     548             :     end procedure
     549             : #endif
     550             : 
     551             : #undef RK_ENABLED
     552             : 
     553             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     554             : 
     555             : #undef Def_ENABLED
     556             : 
     557             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     558             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     559             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     560             : 
     561             : #define Inc_ENABLED 1
     562             : 
     563             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     564             : 
     565             : #define SK_ENABLED 1
     566             : 
     567             : #if SK5_ENABLED
     568             :     module procedure setSwappedInc_D1_SK5
     569             :         use pm_kind, only: SKC => SK5
     570             : #include "pm_swap@routines.inc.F90"
     571             :     end procedure
     572             : #endif
     573             : 
     574             : #if SK4_ENABLED
     575             :     module procedure setSwappedInc_D1_SK4
     576             :         use pm_kind, only: SKC => SK4
     577             : #include "pm_swap@routines.inc.F90"
     578             :     end procedure
     579             : #endif
     580             : 
     581             : #if SK3_ENABLED
     582             :     module procedure setSwappedInc_D1_SK3
     583             :         use pm_kind, only: SKC => SK3
     584             : #include "pm_swap@routines.inc.F90"
     585             :     end procedure
     586             : #endif
     587             : 
     588             : #if SK2_ENABLED
     589             :     module procedure setSwappedInc_D1_SK2
     590             :         use pm_kind, only: SKC => SK2
     591             : #include "pm_swap@routines.inc.F90"
     592             :     end procedure
     593             : #endif
     594             : 
     595             : #if SK1_ENABLED
     596           0 :     module procedure setSwappedInc_D1_SK1
     597             :         use pm_kind, only: SKC => SK1
     598             : #include "pm_swap@routines.inc.F90"
     599             :     end procedure
     600             : #endif
     601             : 
     602             : #undef SK_ENABLED
     603             : 
     604             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     605             : 
     606             : #define IK_ENABLED 1
     607             : 
     608             : #if IK5_ENABLED
     609           0 :     module procedure setSwappedInc_D1_IK5
     610             :         use pm_kind, only: IKC => IK5
     611             : #include "pm_swap@routines.inc.F90"
     612             :     end procedure
     613             : #endif
     614             : 
     615             : #if IK4_ENABLED
     616           0 :     module procedure setSwappedInc_D1_IK4
     617             :         use pm_kind, only: IKC => IK4
     618             : #include "pm_swap@routines.inc.F90"
     619             :     end procedure
     620             : #endif
     621             : 
     622             : #if IK3_ENABLED
     623           3 :     module procedure setSwappedInc_D1_IK3
     624             :         use pm_kind, only: IKC => IK3
     625             : #include "pm_swap@routines.inc.F90"
     626             :     end procedure
     627             : #endif
     628             : 
     629             : #if IK2_ENABLED
     630           0 :     module procedure setSwappedInc_D1_IK2
     631             :         use pm_kind, only: IKC => IK2
     632             : #include "pm_swap@routines.inc.F90"
     633             :     end procedure
     634             : #endif
     635             : 
     636             : #if IK1_ENABLED
     637           0 :     module procedure setSwappedInc_D1_IK1
     638             :         use pm_kind, only: IKC => IK1
     639             : #include "pm_swap@routines.inc.F90"
     640             :     end procedure
     641             : #endif
     642             : 
     643             : #undef IK_ENABLED
     644             : 
     645             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     646             : 
     647             : #define LK_ENABLED 1
     648             : 
     649             : #if LK5_ENABLED
     650           0 :     module procedure setSwappedInc_D1_LK5
     651             :         use pm_kind, only: LKC => LK5
     652             : #include "pm_swap@routines.inc.F90"
     653             :     end procedure
     654             : #endif
     655             : 
     656             : #if LK4_ENABLED
     657           0 :     module procedure setSwappedInc_D1_LK4
     658             :         use pm_kind, only: LKC => LK4
     659             : #include "pm_swap@routines.inc.F90"
     660             :     end procedure
     661             : #endif
     662             : 
     663             : #if LK3_ENABLED
     664           0 :     module procedure setSwappedInc_D1_LK3
     665             :         use pm_kind, only: LKC => LK3
     666             : #include "pm_swap@routines.inc.F90"
     667             :     end procedure
     668             : #endif
     669             : 
     670             : #if LK2_ENABLED
     671           0 :     module procedure setSwappedInc_D1_LK2
     672             :         use pm_kind, only: LKC => LK2
     673             : #include "pm_swap@routines.inc.F90"
     674             :     end procedure
     675             : #endif
     676             : 
     677             : #if LK1_ENABLED
     678           0 :     module procedure setSwappedInc_D1_LK1
     679             :         use pm_kind, only: LKC => LK1
     680             : #include "pm_swap@routines.inc.F90"
     681             :     end procedure
     682             : #endif
     683             : 
     684             : #undef LK_ENABLED
     685             : 
     686             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     687             : 
     688             : #define CK_ENABLED 1
     689             : 
     690             : #if CK5_ENABLED
     691             :     module procedure setSwappedInc_D1_CK5
     692             :         use pm_kind, only: CKC => CK5
     693             : #include "pm_swap@routines.inc.F90"
     694             :     end procedure
     695             : #endif
     696             : 
     697             : #if CK4_ENABLED
     698           0 :     module procedure setSwappedInc_D1_CK4
     699             :         use pm_kind, only: CKC => CK4
     700             : #include "pm_swap@routines.inc.F90"
     701             :     end procedure
     702             : #endif
     703             : 
     704             : #if CK3_ENABLED
     705           0 :     module procedure setSwappedInc_D1_CK3
     706             :         use pm_kind, only: CKC => CK3
     707             : #include "pm_swap@routines.inc.F90"
     708             :     end procedure
     709             : #endif
     710             : 
     711             : #if CK2_ENABLED
     712           0 :     module procedure setSwappedInc_D1_CK2
     713             :         use pm_kind, only: CKC => CK2
     714             : #define DISPATCH_ENABLED 1
     715             : #include "pm_swap@routines.inc.F90"
     716             : #undef  DISPATCH_ENABLED
     717             :     end procedure
     718             : #endif
     719             : 
     720             : #if CK1_ENABLED
     721           0 :     module procedure setSwappedInc_D1_CK1
     722             :         use pm_kind, only: CKC => CK1
     723             : #define DISPATCH_ENABLED 1
     724             : #include "pm_swap@routines.inc.F90"
     725             : #undef  DISPATCH_ENABLED
     726             :     end procedure
     727             : #endif
     728             : 
     729             : #undef CK_ENABLED
     730             : 
     731             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     732             : 
     733             : #define RK_ENABLED 1
     734             : 
     735             : #if RK5_ENABLED
     736             :     module procedure setSwappedInc_D1_RK5
     737             :         use pm_kind, only: RKC => RK5
     738             : #include "pm_swap@routines.inc.F90"
     739             :     end procedure
     740             : #endif
     741             : 
     742             : #if RK4_ENABLED
     743           0 :     module procedure setSwappedInc_D1_RK4
     744             :         use pm_kind, only: RKC => RK4
     745             : #include "pm_swap@routines.inc.F90"
     746             :     end procedure
     747             : #endif
     748             : 
     749             : #if RK3_ENABLED
     750           0 :     module procedure setSwappedInc_D1_RK3
     751             :         use pm_kind, only: RKC => RK3
     752             : #include "pm_swap@routines.inc.F90"
     753             :     end procedure
     754             : #endif
     755             : 
     756             : #if RK2_ENABLED
     757           0 :     module procedure setSwappedInc_D1_RK2
     758             :         use pm_kind, only: RKC => RK2
     759             : #define DISPATCH_ENABLED 1
     760             : #include "pm_swap@routines.inc.F90"
     761             : #undef  DISPATCH_ENABLED
     762             :     end procedure
     763             : #endif
     764             : 
     765             : #if RK1_ENABLED
     766           3 :     module procedure setSwappedInc_D1_RK1
     767             :         use pm_kind, only: RKC => RK1
     768             : #define DISPATCH_ENABLED 1
     769             : #include "pm_swap@routines.inc.F90"
     770             : #undef  DISPATCH_ENABLED
     771             :     end procedure
     772             : #endif
     773             : 
     774             : #undef RK_ENABLED
     775             : 
     776             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     777             : 
     778             : #undef Inc_ENABLED
     779             : 
     780             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     781             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     782             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     783             : 
     784             : #undef D1_ENABLED
     785             : 
     786             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     787             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     788             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     789             : 
     790             : #undef setSwapped_ENABLED
     791             : 
     792             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     793             : 
     794             : end submodule routines

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