https://www.cdslab.org/paramonte/fortran/2
Current view: top level - main - pm_arrayCompareLex@routines.F90 (source / functions) Hit Total Coverage
Test: ParaMonte 2.0.0 :: Serial Fortran - Code Coverage Report Lines: 160 160 100.0 %
Date: 2024-04-08 03:18:57 Functions: 80 80 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 [pm_arrayCompareLex](@ref pm_arrayCompareLex).
      19             : !>
      20             : !>  \finmain
      21             : !>
      22             : !>  \author
      23             : !>  \AmirShahmoradi, September 1, 2017, 12:00 AM, Institute for Computational Engineering and Sciences (ICES), The University of Texas at Austin
      24             : 
      25             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      26             : 
      27             : submodule (pm_arrayCompareLex) 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             :     implicit none
      40             : 
      41             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      42             : 
      43             : contains
      44             : 
      45             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      46             : 
      47             : #define isllt_ENABLED 1
      48             : 
      49             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      50             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      51             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      52             : 
      53             : #define D0_D0_ENABLED 1
      54             : 
      55             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      56             : 
      57             : #define SK_ENABLED 1
      58             : 
      59             : #if SK5_ENABLED
      60             :     module procedure isllt_D0_D0_SK5
      61             : #include "pm_arrayCompareLex@routines.inc.F90"
      62             :     end procedure
      63             : #endif
      64             : 
      65             : #if SK4_ENABLED
      66             :     module procedure isllt_D0_D0_SK4
      67             : #include "pm_arrayCompareLex@routines.inc.F90"
      68             :     end procedure
      69             : #endif
      70             : 
      71             : #if SK3_ENABLED
      72             :     module procedure isllt_D0_D0_SK3
      73             : #include "pm_arrayCompareLex@routines.inc.F90"
      74             :     end procedure
      75             : #endif
      76             : 
      77             : #if SK2_ENABLED
      78             :     module procedure isllt_D0_D0_SK2
      79             : #include "pm_arrayCompareLex@routines.inc.F90"
      80             :     end procedure
      81             : #endif
      82             : 
      83             : #if SK1_ENABLED
      84          15 :     module procedure isllt_D0_D0_SK1
      85             : #include "pm_arrayCompareLex@routines.inc.F90"
      86           9 :     end procedure
      87             : #endif
      88             : 
      89             : #undef SK_ENABLED
      90             : 
      91             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      92             : 
      93             : #undef D0_D0_ENABLED
      94             : 
      95             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      96             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      97             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      98             : 
      99             : #define D1_D1_ENABLED 1
     100             : 
     101             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     102             : 
     103             : #define SK_ENABLED 1
     104             : 
     105             : #if SK5_ENABLED
     106             :     module procedure isllt_D1_D1_SK5
     107             : #include "pm_arrayCompareLex@routines.inc.F90"
     108             :     end procedure
     109             : #endif
     110             : 
     111             : #if SK4_ENABLED
     112             :     module procedure isllt_D1_D1_SK4
     113             : #include "pm_arrayCompareLex@routines.inc.F90"
     114             :     end procedure
     115             : #endif
     116             : 
     117             : #if SK3_ENABLED
     118             :     module procedure isllt_D1_D1_SK3
     119             : #include "pm_arrayCompareLex@routines.inc.F90"
     120             :     end procedure
     121             : #endif
     122             : 
     123             : #if SK2_ENABLED
     124             :     module procedure isllt_D1_D1_SK2
     125             : #include "pm_arrayCompareLex@routines.inc.F90"
     126             :     end procedure
     127             : #endif
     128             : 
     129             : #if SK1_ENABLED
     130           7 :     module procedure isllt_D1_D1_SK1
     131             : #include "pm_arrayCompareLex@routines.inc.F90"
     132           6 :     end procedure
     133             : #endif
     134             : 
     135             : #undef SK_ENABLED
     136             : 
     137             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     138             : 
     139             : #define IK_ENABLED 1
     140             : 
     141             : #if IK5_ENABLED
     142           7 :     module procedure isllt_D1_D1_IK5
     143             : #include "pm_arrayCompareLex@routines.inc.F90"
     144           4 :     end procedure
     145             : #endif
     146             : 
     147             : #if IK4_ENABLED
     148           7 :     module procedure isllt_D1_D1_IK4
     149             : #include "pm_arrayCompareLex@routines.inc.F90"
     150           4 :     end procedure
     151             : #endif
     152             : 
     153             : #if IK3_ENABLED
     154          22 :     module procedure isllt_D1_D1_IK3
     155             : #include "pm_arrayCompareLex@routines.inc.F90"
     156           9 :     end procedure
     157             : #endif
     158             : 
     159             : #if IK2_ENABLED
     160           7 :     module procedure isllt_D1_D1_IK2
     161             : #include "pm_arrayCompareLex@routines.inc.F90"
     162           4 :     end procedure
     163             : #endif
     164             : 
     165             : #if IK1_ENABLED
     166           7 :     module procedure isllt_D1_D1_IK1
     167             : #include "pm_arrayCompareLex@routines.inc.F90"
     168           4 :     end procedure
     169             : #endif
     170             : 
     171             : #undef IK_ENABLED
     172             : 
     173             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     174             : 
     175             : #define LK_ENABLED 1
     176             : 
     177             : #if LK5_ENABLED
     178           7 :     module procedure isllt_D1_D1_LK5
     179             :         use pm_logicalCompare, only: operator(<)
     180             : #include "pm_arrayCompareLex@routines.inc.F90"
     181           4 :     end procedure
     182             : #endif
     183             : 
     184             : #if LK4_ENABLED
     185           7 :     module procedure isllt_D1_D1_LK4
     186             :         use pm_logicalCompare, only: operator(<)
     187             : #include "pm_arrayCompareLex@routines.inc.F90"
     188           4 :     end procedure
     189             : #endif
     190             : 
     191             : #if LK3_ENABLED
     192          16 :     module procedure isllt_D1_D1_LK3
     193             :         use pm_logicalCompare, only: operator(<)
     194             : #include "pm_arrayCompareLex@routines.inc.F90"
     195           8 :     end procedure
     196             : #endif
     197             : 
     198             : #if LK2_ENABLED
     199           7 :     module procedure isllt_D1_D1_LK2
     200             :         use pm_logicalCompare, only: operator(<)
     201             : #include "pm_arrayCompareLex@routines.inc.F90"
     202           4 :     end procedure
     203             : #endif
     204             : 
     205             : #if LK1_ENABLED
     206           7 :     module procedure isllt_D1_D1_LK1
     207             :         use pm_logicalCompare, only: operator(<)
     208             : #include "pm_arrayCompareLex@routines.inc.F90"
     209           4 :     end procedure
     210             : #endif
     211             : 
     212             : #undef LK_ENABLED
     213             : 
     214             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     215             : 
     216             : #define CK_ENABLED 1
     217             : 
     218             : #if CK5_ENABLED
     219             :     module procedure isllt_D1_D1_CK5
     220             :         use pm_complexCompareLex, only: operator(<)
     221             : #include "pm_arrayCompareLex@routines.inc.F90"
     222             :     end procedure
     223             : #endif
     224             : 
     225             : #if CK4_ENABLED
     226           7 :     module procedure isllt_D1_D1_CK4
     227             :         use pm_complexCompareLex, only: operator(<)
     228             : #include "pm_arrayCompareLex@routines.inc.F90"
     229           4 :     end procedure
     230             : #endif
     231             : 
     232             : #if CK3_ENABLED
     233           7 :     module procedure isllt_D1_D1_CK3
     234             :         use pm_complexCompareLex, only: operator(<)
     235             : #include "pm_arrayCompareLex@routines.inc.F90"
     236           4 :     end procedure
     237             : #endif
     238             : 
     239             : #if CK2_ENABLED
     240          17 :     module procedure isllt_D1_D1_CK2
     241             :         use pm_complexCompareLex, only: operator(<)
     242             : #include "pm_arrayCompareLex@routines.inc.F90"
     243           5 :     end procedure
     244             : #endif
     245             : 
     246             : #if CK1_ENABLED
     247           7 :     module procedure isllt_D1_D1_CK1
     248             :         use pm_complexCompareLex, only: operator(<)
     249             : #include "pm_arrayCompareLex@routines.inc.F90"
     250           4 :     end procedure
     251             : #endif
     252             : 
     253             : #undef CK_ENABLED
     254             : 
     255             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     256             : 
     257             : #define RK_ENABLED 1
     258             : 
     259             : #if RK5_ENABLED
     260             :     module procedure isllt_D1_D1_RK5
     261             : #include "pm_arrayCompareLex@routines.inc.F90"
     262             :     end procedure
     263             : #endif
     264             : 
     265             : #if RK4_ENABLED
     266           7 :     module procedure isllt_D1_D1_RK4
     267             : #include "pm_arrayCompareLex@routines.inc.F90"
     268           4 :     end procedure
     269             : #endif
     270             : 
     271             : #if RK3_ENABLED
     272           7 :     module procedure isllt_D1_D1_RK3
     273             : #include "pm_arrayCompareLex@routines.inc.F90"
     274           4 :     end procedure
     275             : #endif
     276             : 
     277             : #if RK2_ENABLED
     278          22 :     module procedure isllt_D1_D1_RK2
     279             : #include "pm_arrayCompareLex@routines.inc.F90"
     280           9 :     end procedure
     281             : #endif
     282             : 
     283             : #if RK1_ENABLED
     284           7 :     module procedure isllt_D1_D1_RK1
     285             : #include "pm_arrayCompareLex@routines.inc.F90"
     286           4 :     end procedure
     287             : #endif
     288             : 
     289             : #undef RK_ENABLED
     290             : 
     291             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     292             : 
     293             : #undef D1_D1_ENABLED
     294             : 
     295             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     296             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     297             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     298             : 
     299             : #undef isllt_ENABLED
     300             : 
     301             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     302             : 
     303             : #define islle_ENABLED 1
     304             : 
     305             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     306             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     307             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     308             : 
     309             : #define D0_D0_ENABLED 1
     310             : 
     311             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     312             : 
     313             : #define SK_ENABLED 1
     314             : 
     315             : #if SK5_ENABLED
     316             :     module procedure islle_D0_D0_SK5
     317             : #include "pm_arrayCompareLex@routines.inc.F90"
     318             :     end procedure
     319             : #endif
     320             : 
     321             : #if SK4_ENABLED
     322             :     module procedure islle_D0_D0_SK4
     323             : #include "pm_arrayCompareLex@routines.inc.F90"
     324             :     end procedure
     325             : #endif
     326             : 
     327             : #if SK3_ENABLED
     328             :     module procedure islle_D0_D0_SK3
     329             : #include "pm_arrayCompareLex@routines.inc.F90"
     330             :     end procedure
     331             : #endif
     332             : 
     333             : #if SK2_ENABLED
     334             :     module procedure islle_D0_D0_SK2
     335             : #include "pm_arrayCompareLex@routines.inc.F90"
     336             :     end procedure
     337             : #endif
     338             : 
     339             : #if SK1_ENABLED
     340          13 :     module procedure islle_D0_D0_SK1
     341             : #include "pm_arrayCompareLex@routines.inc.F90"
     342           9 :     end procedure
     343             : #endif
     344             : 
     345             : #undef SK_ENABLED
     346             : 
     347             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     348             : 
     349             : #undef D0_D0_ENABLED
     350             : 
     351             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     352             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     353             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     354             : 
     355             : #define D1_D1_ENABLED 1
     356             : 
     357             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     358             : 
     359             : #define SK_ENABLED 1
     360             : 
     361             : #if SK5_ENABLED
     362             :     module procedure islle_D1_D1_SK5
     363             : #include "pm_arrayCompareLex@routines.inc.F90"
     364             :     end procedure
     365             : #endif
     366             : 
     367             : #if SK4_ENABLED
     368             :     module procedure islle_D1_D1_SK4
     369             : #include "pm_arrayCompareLex@routines.inc.F90"
     370             :     end procedure
     371             : #endif
     372             : 
     373             : #if SK3_ENABLED
     374             :     module procedure islle_D1_D1_SK3
     375             : #include "pm_arrayCompareLex@routines.inc.F90"
     376             :     end procedure
     377             : #endif
     378             : 
     379             : #if SK2_ENABLED
     380             :     module procedure islle_D1_D1_SK2
     381             : #include "pm_arrayCompareLex@routines.inc.F90"
     382             :     end procedure
     383             : #endif
     384             : 
     385             : #if SK1_ENABLED
     386           7 :     module procedure islle_D1_D1_SK1
     387             : #include "pm_arrayCompareLex@routines.inc.F90"
     388           6 :     end procedure
     389             : #endif
     390             : 
     391             : #undef SK_ENABLED
     392             : 
     393             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     394             : 
     395             : #define IK_ENABLED 1
     396             : 
     397             : #if IK5_ENABLED
     398           7 :     module procedure islle_D1_D1_IK5
     399             : #include "pm_arrayCompareLex@routines.inc.F90"
     400           4 :     end procedure
     401             : #endif
     402             : 
     403             : #if IK4_ENABLED
     404           7 :     module procedure islle_D1_D1_IK4
     405             : #include "pm_arrayCompareLex@routines.inc.F90"
     406           4 :     end procedure
     407             : #endif
     408             : 
     409             : #if IK3_ENABLED
     410          22 :     module procedure islle_D1_D1_IK3
     411             : #include "pm_arrayCompareLex@routines.inc.F90"
     412           9 :     end procedure
     413             : #endif
     414             : 
     415             : #if IK2_ENABLED
     416           7 :     module procedure islle_D1_D1_IK2
     417             : #include "pm_arrayCompareLex@routines.inc.F90"
     418           4 :     end procedure
     419             : #endif
     420             : 
     421             : #if IK1_ENABLED
     422           7 :     module procedure islle_D1_D1_IK1
     423             : #include "pm_arrayCompareLex@routines.inc.F90"
     424           4 :     end procedure
     425             : #endif
     426             : 
     427             : #undef IK_ENABLED
     428             : 
     429             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     430             : 
     431             : #define LK_ENABLED 1
     432             : 
     433             : #if LK5_ENABLED
     434           7 :     module procedure islle_D1_D1_LK5
     435             :         use pm_logicalCompare, only: operator(<)
     436             : #include "pm_arrayCompareLex@routines.inc.F90"
     437           4 :     end procedure
     438             : #endif
     439             : 
     440             : #if LK4_ENABLED
     441           7 :     module procedure islle_D1_D1_LK4
     442             :         use pm_logicalCompare, only: operator(<)
     443             : #include "pm_arrayCompareLex@routines.inc.F90"
     444           4 :     end procedure
     445             : #endif
     446             : 
     447             : #if LK3_ENABLED
     448          16 :     module procedure islle_D1_D1_LK3
     449             :         use pm_logicalCompare, only: operator(<)
     450             : #include "pm_arrayCompareLex@routines.inc.F90"
     451           8 :     end procedure
     452             : #endif
     453             : 
     454             : #if LK2_ENABLED
     455           7 :     module procedure islle_D1_D1_LK2
     456             :         use pm_logicalCompare, only: operator(<)
     457             : #include "pm_arrayCompareLex@routines.inc.F90"
     458           4 :     end procedure
     459             : #endif
     460             : 
     461             : #if LK1_ENABLED
     462           7 :     module procedure islle_D1_D1_LK1
     463             :         use pm_logicalCompare, only: operator(<)
     464             : #include "pm_arrayCompareLex@routines.inc.F90"
     465           4 :     end procedure
     466             : #endif
     467             : 
     468             : #undef LK_ENABLED
     469             : 
     470             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     471             : 
     472             : #define CK_ENABLED 1
     473             : 
     474             : #if CK5_ENABLED
     475             :     module procedure islle_D1_D1_CK5
     476             :         use pm_complexCompareLex, only: operator(<)
     477             : #include "pm_arrayCompareLex@routines.inc.F90"
     478             :     end procedure
     479             : #endif
     480             : 
     481             : #if CK4_ENABLED
     482           7 :     module procedure islle_D1_D1_CK4
     483             :         use pm_complexCompareLex, only: operator(<)
     484             : #include "pm_arrayCompareLex@routines.inc.F90"
     485           4 :     end procedure
     486             : #endif
     487             : 
     488             : #if CK3_ENABLED
     489           7 :     module procedure islle_D1_D1_CK3
     490             :         use pm_complexCompareLex, only: operator(<)
     491             : #include "pm_arrayCompareLex@routines.inc.F90"
     492           4 :     end procedure
     493             : #endif
     494             : 
     495             : #if CK2_ENABLED
     496          17 :     module procedure islle_D1_D1_CK2
     497             :         use pm_complexCompareLex, only: operator(<)
     498             : #include "pm_arrayCompareLex@routines.inc.F90"
     499           5 :     end procedure
     500             : #endif
     501             : 
     502             : #if CK1_ENABLED
     503           7 :     module procedure islle_D1_D1_CK1
     504             :         use pm_complexCompareLex, only: operator(<)
     505             : #include "pm_arrayCompareLex@routines.inc.F90"
     506           4 :     end procedure
     507             : #endif
     508             : 
     509             : #undef CK_ENABLED
     510             : 
     511             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     512             : 
     513             : #define RK_ENABLED 1
     514             : 
     515             : #if RK5_ENABLED
     516             :     module procedure islle_D1_D1_RK5
     517             : #include "pm_arrayCompareLex@routines.inc.F90"
     518             :     end procedure
     519             : #endif
     520             : 
     521             : #if RK4_ENABLED
     522           7 :     module procedure islle_D1_D1_RK4
     523             : #include "pm_arrayCompareLex@routines.inc.F90"
     524           4 :     end procedure
     525             : #endif
     526             : 
     527             : #if RK3_ENABLED
     528           7 :     module procedure islle_D1_D1_RK3
     529             : #include "pm_arrayCompareLex@routines.inc.F90"
     530           4 :     end procedure
     531             : #endif
     532             : 
     533             : #if RK2_ENABLED
     534          22 :     module procedure islle_D1_D1_RK2
     535             : #include "pm_arrayCompareLex@routines.inc.F90"
     536           9 :     end procedure
     537             : #endif
     538             : 
     539             : #if RK1_ENABLED
     540           7 :     module procedure islle_D1_D1_RK1
     541             : #include "pm_arrayCompareLex@routines.inc.F90"
     542           4 :     end procedure
     543             : #endif
     544             : 
     545             : #undef RK_ENABLED
     546             : 
     547             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     548             : 
     549             : #undef D1_D1_ENABLED
     550             : 
     551             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     552             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     553             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     554             : 
     555             : #undef islle_ENABLED
     556             : 
     557             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     558             : 
     559             : #define islge_ENABLED 1
     560             : 
     561             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     562             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     563             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     564             : 
     565             : #define D0_D0_ENABLED 1
     566             : 
     567             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     568             : 
     569             : #define SK_ENABLED 1
     570             : 
     571             : #if SK5_ENABLED
     572             :     module procedure islge_D0_D0_SK5
     573             : #include "pm_arrayCompareLex@routines.inc.F90"
     574             :     end procedure
     575             : #endif
     576             : 
     577             : #if SK4_ENABLED
     578             :     module procedure islge_D0_D0_SK4
     579             : #include "pm_arrayCompareLex@routines.inc.F90"
     580             :     end procedure
     581             : #endif
     582             : 
     583             : #if SK3_ENABLED
     584             :     module procedure islge_D0_D0_SK3
     585             : #include "pm_arrayCompareLex@routines.inc.F90"
     586             :     end procedure
     587             : #endif
     588             : 
     589             : #if SK2_ENABLED
     590             :     module procedure islge_D0_D0_SK2
     591             : #include "pm_arrayCompareLex@routines.inc.F90"
     592             :     end procedure
     593             : #endif
     594             : 
     595             : #if SK1_ENABLED
     596          13 :     module procedure islge_D0_D0_SK1
     597             : #include "pm_arrayCompareLex@routines.inc.F90"
     598           9 :     end procedure
     599             : #endif
     600             : 
     601             : #undef SK_ENABLED
     602             : 
     603             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     604             : 
     605             : #undef D0_D0_ENABLED
     606             : 
     607             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     608             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     609             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     610             : 
     611             : #define D1_D1_ENABLED 1
     612             : 
     613             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     614             : 
     615             : #define SK_ENABLED 1
     616             : 
     617             : #if SK5_ENABLED
     618             :     module procedure islge_D1_D1_SK5
     619             : #include "pm_arrayCompareLex@routines.inc.F90"
     620             :     end procedure
     621             : #endif
     622             : 
     623             : #if SK4_ENABLED
     624             :     module procedure islge_D1_D1_SK4
     625             : #include "pm_arrayCompareLex@routines.inc.F90"
     626             :     end procedure
     627             : #endif
     628             : 
     629             : #if SK3_ENABLED
     630             :     module procedure islge_D1_D1_SK3
     631             : #include "pm_arrayCompareLex@routines.inc.F90"
     632             :     end procedure
     633             : #endif
     634             : 
     635             : #if SK2_ENABLED
     636             :     module procedure islge_D1_D1_SK2
     637             : #include "pm_arrayCompareLex@routines.inc.F90"
     638             :     end procedure
     639             : #endif
     640             : 
     641             : #if SK1_ENABLED
     642           7 :     module procedure islge_D1_D1_SK1
     643             : #include "pm_arrayCompareLex@routines.inc.F90"
     644           6 :     end procedure
     645             : #endif
     646             : 
     647             : #undef SK_ENABLED
     648             : 
     649             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     650             : 
     651             : #define IK_ENABLED 1
     652             : 
     653             : #if IK5_ENABLED
     654           7 :     module procedure islge_D1_D1_IK5
     655             : #include "pm_arrayCompareLex@routines.inc.F90"
     656           4 :     end procedure
     657             : #endif
     658             : 
     659             : #if IK4_ENABLED
     660           7 :     module procedure islge_D1_D1_IK4
     661             : #include "pm_arrayCompareLex@routines.inc.F90"
     662           4 :     end procedure
     663             : #endif
     664             : 
     665             : #if IK3_ENABLED
     666          22 :     module procedure islge_D1_D1_IK3
     667             : #include "pm_arrayCompareLex@routines.inc.F90"
     668           9 :     end procedure
     669             : #endif
     670             : 
     671             : #if IK2_ENABLED
     672           7 :     module procedure islge_D1_D1_IK2
     673             : #include "pm_arrayCompareLex@routines.inc.F90"
     674           4 :     end procedure
     675             : #endif
     676             : 
     677             : #if IK1_ENABLED
     678           7 :     module procedure islge_D1_D1_IK1
     679             : #include "pm_arrayCompareLex@routines.inc.F90"
     680           4 :     end procedure
     681             : #endif
     682             : 
     683             : #undef IK_ENABLED
     684             : 
     685             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     686             : 
     687             : #define LK_ENABLED 1
     688             : 
     689             : #if LK5_ENABLED
     690           7 :     module procedure islge_D1_D1_LK5
     691             :         use pm_logicalCompare, only: operator(>)
     692             : #include "pm_arrayCompareLex@routines.inc.F90"
     693           4 :     end procedure
     694             : #endif
     695             : 
     696             : #if LK4_ENABLED
     697           7 :     module procedure islge_D1_D1_LK4
     698             :         use pm_logicalCompare, only: operator(>)
     699             : #include "pm_arrayCompareLex@routines.inc.F90"
     700           4 :     end procedure
     701             : #endif
     702             : 
     703             : #if LK3_ENABLED
     704          16 :     module procedure islge_D1_D1_LK3
     705             :         use pm_logicalCompare, only: operator(>)
     706             : #include "pm_arrayCompareLex@routines.inc.F90"
     707           8 :     end procedure
     708             : #endif
     709             : 
     710             : #if LK2_ENABLED
     711           7 :     module procedure islge_D1_D1_LK2
     712             :         use pm_logicalCompare, only: operator(>)
     713             : #include "pm_arrayCompareLex@routines.inc.F90"
     714           4 :     end procedure
     715             : #endif
     716             : 
     717             : #if LK1_ENABLED
     718           7 :     module procedure islge_D1_D1_LK1
     719             :         use pm_logicalCompare, only: operator(>)
     720             : #include "pm_arrayCompareLex@routines.inc.F90"
     721           4 :     end procedure
     722             : #endif
     723             : 
     724             : #undef LK_ENABLED
     725             : 
     726             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     727             : 
     728             : #define CK_ENABLED 1
     729             : 
     730             : #if CK5_ENABLED
     731             :     module procedure islge_D1_D1_CK5
     732             :         use pm_complexCompareLex, only: operator(>)
     733             : #include "pm_arrayCompareLex@routines.inc.F90"
     734             :     end procedure
     735             : #endif
     736             : 
     737             : #if CK4_ENABLED
     738           7 :     module procedure islge_D1_D1_CK4
     739             :         use pm_complexCompareLex, only: operator(>)
     740             : #include "pm_arrayCompareLex@routines.inc.F90"
     741           4 :     end procedure
     742             : #endif
     743             : 
     744             : #if CK3_ENABLED
     745           7 :     module procedure islge_D1_D1_CK3
     746             :         use pm_complexCompareLex, only: operator(>)
     747             : #include "pm_arrayCompareLex@routines.inc.F90"
     748           4 :     end procedure
     749             : #endif
     750             : 
     751             : #if CK2_ENABLED
     752          17 :     module procedure islge_D1_D1_CK2
     753             :         use pm_complexCompareLex, only: operator(>)
     754             : #include "pm_arrayCompareLex@routines.inc.F90"
     755           5 :     end procedure
     756             : #endif
     757             : 
     758             : #if CK1_ENABLED
     759           7 :     module procedure islge_D1_D1_CK1
     760             :         use pm_complexCompareLex, only: operator(>)
     761             : #include "pm_arrayCompareLex@routines.inc.F90"
     762           4 :     end procedure
     763             : #endif
     764             : 
     765             : #undef CK_ENABLED
     766             : 
     767             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     768             : 
     769             : #define RK_ENABLED 1
     770             : 
     771             : #if RK5_ENABLED
     772             :     module procedure islge_D1_D1_RK5
     773             : #include "pm_arrayCompareLex@routines.inc.F90"
     774             :     end procedure
     775             : #endif
     776             : 
     777             : #if RK4_ENABLED
     778           7 :     module procedure islge_D1_D1_RK4
     779             : #include "pm_arrayCompareLex@routines.inc.F90"
     780           4 :     end procedure
     781             : #endif
     782             : 
     783             : #if RK3_ENABLED
     784           7 :     module procedure islge_D1_D1_RK3
     785             : #include "pm_arrayCompareLex@routines.inc.F90"
     786           4 :     end procedure
     787             : #endif
     788             : 
     789             : #if RK2_ENABLED
     790          22 :     module procedure islge_D1_D1_RK2
     791             : #include "pm_arrayCompareLex@routines.inc.F90"
     792           9 :     end procedure
     793             : #endif
     794             : 
     795             : #if RK1_ENABLED
     796           7 :     module procedure islge_D1_D1_RK1
     797             : #include "pm_arrayCompareLex@routines.inc.F90"
     798           4 :     end procedure
     799             : #endif
     800             : 
     801             : #undef RK_ENABLED
     802             : 
     803             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     804             : 
     805             : #undef D1_D1_ENABLED
     806             : 
     807             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     808             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     809             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     810             : 
     811             : #undef islge_ENABLED
     812             : 
     813             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     814             : 
     815             : #define islgt_ENABLED 1
     816             : 
     817             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     818             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     819             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     820             : 
     821             : #define D0_D0_ENABLED 1
     822             : 
     823             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     824             : 
     825             : #define SK_ENABLED 1
     826             : 
     827             : #if SK5_ENABLED
     828             :     module procedure islgt_D0_D0_SK5
     829             : #include "pm_arrayCompareLex@routines.inc.F90"
     830             :     end procedure
     831             : #endif
     832             : 
     833             : #if SK4_ENABLED
     834             :     module procedure islgt_D0_D0_SK4
     835             : #include "pm_arrayCompareLex@routines.inc.F90"
     836             :     end procedure
     837             : #endif
     838             : 
     839             : #if SK3_ENABLED
     840             :     module procedure islgt_D0_D0_SK3
     841             : #include "pm_arrayCompareLex@routines.inc.F90"
     842             :     end procedure
     843             : #endif
     844             : 
     845             : #if SK2_ENABLED
     846             :     module procedure islgt_D0_D0_SK2
     847             : #include "pm_arrayCompareLex@routines.inc.F90"
     848             :     end procedure
     849             : #endif
     850             : 
     851             : #if SK1_ENABLED
     852          15 :     module procedure islgt_D0_D0_SK1
     853             : #include "pm_arrayCompareLex@routines.inc.F90"
     854           9 :     end procedure
     855             : #endif
     856             : 
     857             : #undef SK_ENABLED
     858             : 
     859             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     860             : 
     861             : #undef D0_D0_ENABLED
     862             : 
     863             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     864             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     865             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     866             : 
     867             : #define D1_D1_ENABLED 1
     868             : 
     869             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     870             : 
     871             : #define SK_ENABLED 1
     872             : 
     873             : #if SK5_ENABLED
     874             :     module procedure islgt_D1_D1_SK5
     875             : #include "pm_arrayCompareLex@routines.inc.F90"
     876             :     end procedure
     877             : #endif
     878             : 
     879             : #if SK4_ENABLED
     880             :     module procedure islgt_D1_D1_SK4
     881             : #include "pm_arrayCompareLex@routines.inc.F90"
     882             :     end procedure
     883             : #endif
     884             : 
     885             : #if SK3_ENABLED
     886             :     module procedure islgt_D1_D1_SK3
     887             : #include "pm_arrayCompareLex@routines.inc.F90"
     888             :     end procedure
     889             : #endif
     890             : 
     891             : #if SK2_ENABLED
     892             :     module procedure islgt_D1_D1_SK2
     893             : #include "pm_arrayCompareLex@routines.inc.F90"
     894             :     end procedure
     895             : #endif
     896             : 
     897             : #if SK1_ENABLED
     898           7 :     module procedure islgt_D1_D1_SK1
     899             : #include "pm_arrayCompareLex@routines.inc.F90"
     900           6 :     end procedure
     901             : #endif
     902             : 
     903             : #undef SK_ENABLED
     904             : 
     905             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     906             : 
     907             : #define IK_ENABLED 1
     908             : 
     909             : #if IK5_ENABLED
     910           7 :     module procedure islgt_D1_D1_IK5
     911             : #include "pm_arrayCompareLex@routines.inc.F90"
     912           4 :     end procedure
     913             : #endif
     914             : 
     915             : #if IK4_ENABLED
     916           7 :     module procedure islgt_D1_D1_IK4
     917             : #include "pm_arrayCompareLex@routines.inc.F90"
     918           4 :     end procedure
     919             : #endif
     920             : 
     921             : #if IK3_ENABLED
     922          22 :     module procedure islgt_D1_D1_IK3
     923             : #include "pm_arrayCompareLex@routines.inc.F90"
     924           9 :     end procedure
     925             : #endif
     926             : 
     927             : #if IK2_ENABLED
     928           7 :     module procedure islgt_D1_D1_IK2
     929             : #include "pm_arrayCompareLex@routines.inc.F90"
     930           4 :     end procedure
     931             : #endif
     932             : 
     933             : #if IK1_ENABLED
     934           7 :     module procedure islgt_D1_D1_IK1
     935             : #include "pm_arrayCompareLex@routines.inc.F90"
     936           4 :     end procedure
     937             : #endif
     938             : 
     939             : #undef IK_ENABLED
     940             : 
     941             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     942             : 
     943             : #define LK_ENABLED 1
     944             : 
     945             : #if LK5_ENABLED
     946           7 :     module procedure islgt_D1_D1_LK5
     947             :         use pm_logicalCompare, only: operator(>)
     948             : #include "pm_arrayCompareLex@routines.inc.F90"
     949           4 :     end procedure
     950             : #endif
     951             : 
     952             : #if LK4_ENABLED
     953           7 :     module procedure islgt_D1_D1_LK4
     954             :         use pm_logicalCompare, only: operator(>)
     955             : #include "pm_arrayCompareLex@routines.inc.F90"
     956           4 :     end procedure
     957             : #endif
     958             : 
     959             : #if LK3_ENABLED
     960          16 :     module procedure islgt_D1_D1_LK3
     961             :         use pm_logicalCompare, only: operator(>)
     962             : #include "pm_arrayCompareLex@routines.inc.F90"
     963           8 :     end procedure
     964             : #endif
     965             : 
     966             : #if LK2_ENABLED
     967           7 :     module procedure islgt_D1_D1_LK2
     968             :         use pm_logicalCompare, only: operator(>)
     969             : #include "pm_arrayCompareLex@routines.inc.F90"
     970           4 :     end procedure
     971             : #endif
     972             : 
     973             : #if LK1_ENABLED
     974           7 :     module procedure islgt_D1_D1_LK1
     975             :         use pm_logicalCompare, only: operator(>)
     976             : #include "pm_arrayCompareLex@routines.inc.F90"
     977           4 :     end procedure
     978             : #endif
     979             : 
     980             : #undef LK_ENABLED
     981             : 
     982             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     983             : 
     984             : #define CK_ENABLED 1
     985             : 
     986             : #if CK5_ENABLED
     987             :     module procedure islgt_D1_D1_CK5
     988             :         use pm_complexCompareLex, only: operator(>)
     989             : #include "pm_arrayCompareLex@routines.inc.F90"
     990             :     end procedure
     991             : #endif
     992             : 
     993             : #if CK4_ENABLED
     994           7 :     module procedure islgt_D1_D1_CK4
     995             :         use pm_complexCompareLex, only: operator(>)
     996             : #include "pm_arrayCompareLex@routines.inc.F90"
     997           4 :     end procedure
     998             : #endif
     999             : 
    1000             : #if CK3_ENABLED
    1001           7 :     module procedure islgt_D1_D1_CK3
    1002             :         use pm_complexCompareLex, only: operator(>)
    1003             : #include "pm_arrayCompareLex@routines.inc.F90"
    1004           4 :     end procedure
    1005             : #endif
    1006             : 
    1007             : #if CK2_ENABLED
    1008          17 :     module procedure islgt_D1_D1_CK2
    1009             :         use pm_complexCompareLex, only: operator(>)
    1010             : #include "pm_arrayCompareLex@routines.inc.F90"
    1011           5 :     end procedure
    1012             : #endif
    1013             : 
    1014             : #if CK1_ENABLED
    1015           7 :     module procedure islgt_D1_D1_CK1
    1016             :         use pm_complexCompareLex, only: operator(>)
    1017             : #include "pm_arrayCompareLex@routines.inc.F90"
    1018           4 :     end procedure
    1019             : #endif
    1020             : 
    1021             : #undef CK_ENABLED
    1022             : 
    1023             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1024             : 
    1025             : #define RK_ENABLED 1
    1026             : 
    1027             : #if RK5_ENABLED
    1028             :     module procedure islgt_D1_D1_RK5
    1029             : #include "pm_arrayCompareLex@routines.inc.F90"
    1030             :     end procedure
    1031             : #endif
    1032             : 
    1033             : #if RK4_ENABLED
    1034           7 :     module procedure islgt_D1_D1_RK4
    1035             : #include "pm_arrayCompareLex@routines.inc.F90"
    1036           4 :     end procedure
    1037             : #endif
    1038             : 
    1039             : #if RK3_ENABLED
    1040           7 :     module procedure islgt_D1_D1_RK3
    1041             : #include "pm_arrayCompareLex@routines.inc.F90"
    1042           4 :     end procedure
    1043             : #endif
    1044             : 
    1045             : #if RK2_ENABLED
    1046          22 :     module procedure islgt_D1_D1_RK2
    1047             : #include "pm_arrayCompareLex@routines.inc.F90"
    1048           9 :     end procedure
    1049             : #endif
    1050             : 
    1051             : #if RK1_ENABLED
    1052           7 :     module procedure islgt_D1_D1_RK1
    1053             : #include "pm_arrayCompareLex@routines.inc.F90"
    1054           4 :     end procedure
    1055             : #endif
    1056             : 
    1057             : #undef RK_ENABLED
    1058             : 
    1059             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1060             : 
    1061             : #undef D1_D1_ENABLED
    1062             : 
    1063             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1064             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1065             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1066             : 
    1067             : #undef islgt_ENABLED
    1068             : 
    1069             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1070             : 
    1071             : !    module procedure islct_UP
    1072             : !        use pm_kind, only: IK, LK
    1073             : !        integer(IK) :: i
    1074             : !        do i = 1_IK, min(GET_SIZE(array1, kind = IK), GET_SIZE(array2, kind = IK))
    1075             : !            if (array1(i) EQUIVALENT_TO array2(i)) cycle
    1076             : !            compares = array1(i) COMPARABLE_TO array2(i)
    1077             : !            return
    1078             : !        end do
    1079             : !        compares = logical(GET_SIZE(array1, kind = IK) & ! LCOV_EXCL_LINE
    1080             : !#if     isllt_ENABLED
    1081             : !         < & ! LCOV_EXCL_LINE
    1082             : !#elif   islle_ENABLED
    1083             : !         <= & ! LCOV_EXCL_LINE
    1084             : !#elif   islge_ENABLED
    1085             : !         >= & ! LCOV_EXCL_LINE
    1086             : !#elif   islgt_ENABLED
    1087             : !         > & ! LCOV_EXCL_LINE
    1088             : !#endif
    1089             : !        GET_SIZE(array2, kind = IK), kind = LK)
    1090             : !    end procedure
    1091             : 
    1092             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1093             : 
    1094             : #undef CHECK_ASSERTION
    1095             : 
    1096             : end submodule routines

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