https://www.cdslab.org/paramonte/fortran/2
Current view: top level - main - pm_sampleQuan@routines.F90 (source / functions) Hit Total Coverage
Test: ParaMonte 2.0.0 :: Serial Fortran - Code Coverage Report Lines: 96 480 20.0 %
Date: 2024-04-08 03:18:57 Functions: 48 240 20.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_sampleQuan](@ref pm_sampleQuan).
      19             : !>
      20             : !>  \finmain
      21             : !>
      22             : !>  \author
      23             : !>  \AmirShahmoradi, Apr 21, 2017, 1:54 AM, Institute for Computational Engineering and Sciences (ICES), The University of Texas at Austin
      24             : 
      25             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      26             : 
      27             : submodule (pm_sampleQuan) routines ! LCOV_EXCL_LINE
      28             : 
      29             : #if CHECK_ENABLED
      30             :     use pm_err, only: getFine
      31             :     use pm_val2str, only: getStr
      32             :     use pm_err, only: setAsserted
      33             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) \
      34             : call setAsserted(ASSERTION,getFine(__FILE__,LINE)//MODULE_NAME//MSG);
      35             : #else
      36             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) continue;
      37             : #endif
      38             : 
      39             :     use pm_arraySort, only: setSorted
      40             :     use pm_sampleECDF, only: setECDF
      41             :     use pm_polation, only: setExtrap
      42             :     implicit none
      43             : 
      44             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      45             : 
      46             : contains
      47             : 
      48             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      49             : 
      50             : #define getQuan_ENABLED 1
      51             : 
      52             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      53             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      54             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      55             : 
      56             : #define ND1_ENABLED 1
      57             : 
      58             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      59             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      60             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      61             : 
      62             : #define WNO_ENABLED 1
      63             : 
      64             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      65             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      66             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      67             : 
      68             : #define PWLN_ENABLED 1
      69             : 
      70             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      71             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      72             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      73             : 
      74             : #define QD0_ENABLED 1
      75             : 
      76             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      77             : 
      78             : #define RK_ENABLED 1
      79             : 
      80             : #if RK5_ENABLED
      81             :     module procedure getQuanPWLN_ND1_QD0_WNO_RK5
      82             :         use pm_kind, only: TKC => RK5
      83             : #include "pm_sampleQuan@routines.inc.F90"
      84             :     end procedure
      85             : #endif
      86             : 
      87             : #if RK4_ENABLED
      88           0 :     module procedure getQuanPWLN_ND1_QD0_WNO_RK4
      89             :         use pm_kind, only: TKC => RK4
      90             : #include "pm_sampleQuan@routines.inc.F90"
      91           0 :     end procedure
      92             : #endif
      93             : 
      94             : #if RK3_ENABLED
      95           0 :     module procedure getQuanPWLN_ND1_QD0_WNO_RK3
      96             :         use pm_kind, only: TKC => RK3
      97             : #include "pm_sampleQuan@routines.inc.F90"
      98           0 :     end procedure
      99             : #endif
     100             : 
     101             : #if RK2_ENABLED
     102           0 :     module procedure getQuanPWLN_ND1_QD0_WNO_RK2
     103             :         use pm_kind, only: TKC => RK2
     104             : #include "pm_sampleQuan@routines.inc.F90"
     105           0 :     end procedure
     106             : #endif
     107             : 
     108             : #if RK1_ENABLED
     109           6 :     module procedure getQuanPWLN_ND1_QD0_WNO_RK1
     110             :         use pm_kind, only: TKC => RK1
     111             : #include "pm_sampleQuan@routines.inc.F90"
     112           6 :     end procedure
     113             : #endif
     114             : 
     115             : #undef RK_ENABLED
     116             : 
     117             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     118             : 
     119             : #undef QD0_ENABLED
     120             : 
     121             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     122             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     123             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     124             : 
     125             : #define QD1_ENABLED 1
     126             : 
     127             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     128             : 
     129             : #define RK_ENABLED 1
     130             : 
     131             : #if RK5_ENABLED
     132             :     module procedure getQuanPWLN_ND1_QD1_WNO_RK5
     133             :         use pm_kind, only: TKC => RK5
     134             : #include "pm_sampleQuan@routines.inc.F90"
     135             :     end procedure
     136             : #endif
     137             : 
     138             : #if RK4_ENABLED
     139           0 :     module procedure getQuanPWLN_ND1_QD1_WNO_RK4
     140             :         use pm_kind, only: TKC => RK4
     141             : #include "pm_sampleQuan@routines.inc.F90"
     142           0 :     end procedure
     143             : #endif
     144             : 
     145             : #if RK3_ENABLED
     146           0 :     module procedure getQuanPWLN_ND1_QD1_WNO_RK3
     147             :         use pm_kind, only: TKC => RK3
     148             : #include "pm_sampleQuan@routines.inc.F90"
     149           0 :     end procedure
     150             : #endif
     151             : 
     152             : #if RK2_ENABLED
     153           0 :     module procedure getQuanPWLN_ND1_QD1_WNO_RK2
     154             :         use pm_kind, only: TKC => RK2
     155             : #include "pm_sampleQuan@routines.inc.F90"
     156           0 :     end procedure
     157             : #endif
     158             : 
     159             : #if RK1_ENABLED
     160           1 :     module procedure getQuanPWLN_ND1_QD1_WNO_RK1
     161             :         use pm_kind, only: TKC => RK1
     162             : #include "pm_sampleQuan@routines.inc.F90"
     163           1 :     end procedure
     164             : #endif
     165             : 
     166             : #undef RK_ENABLED
     167             : 
     168             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     169             : 
     170             : #undef QD1_ENABLED
     171             : 
     172             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     173             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     174             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     175             : 
     176             : #undef PWLN_ENABLED
     177             : 
     178             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     179             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     180             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     181             : 
     182             : #define MEAN_ENABLED 1
     183             : 
     184             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     185             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     186             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     187             : 
     188             : #define QD0_ENABLED 1
     189             : 
     190             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     191             : 
     192             : #define RK_ENABLED 1
     193             : 
     194             : #if RK5_ENABLED
     195             :     module procedure getQuanMEAN_ND1_QD0_WNO_RK5
     196             :         use pm_kind, only: TKC => RK5
     197             : #include "pm_sampleQuan@routines.inc.F90"
     198             :     end procedure
     199             : #endif
     200             : 
     201             : #if RK4_ENABLED
     202           0 :     module procedure getQuanMEAN_ND1_QD0_WNO_RK4
     203             :         use pm_kind, only: TKC => RK4
     204             : #include "pm_sampleQuan@routines.inc.F90"
     205           0 :     end procedure
     206             : #endif
     207             : 
     208             : #if RK3_ENABLED
     209           0 :     module procedure getQuanMEAN_ND1_QD0_WNO_RK3
     210             :         use pm_kind, only: TKC => RK3
     211             : #include "pm_sampleQuan@routines.inc.F90"
     212           0 :     end procedure
     213             : #endif
     214             : 
     215             : #if RK2_ENABLED
     216           0 :     module procedure getQuanMEAN_ND1_QD0_WNO_RK2
     217             :         use pm_kind, only: TKC => RK2
     218             : #include "pm_sampleQuan@routines.inc.F90"
     219           0 :     end procedure
     220             : #endif
     221             : 
     222             : #if RK1_ENABLED
     223           0 :     module procedure getQuanMEAN_ND1_QD0_WNO_RK1
     224             :         use pm_kind, only: TKC => RK1
     225             : #include "pm_sampleQuan@routines.inc.F90"
     226           0 :     end procedure
     227             : #endif
     228             : 
     229             : #undef RK_ENABLED
     230             : 
     231             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     232             : 
     233             : #undef QD0_ENABLED
     234             : 
     235             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     236             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     237             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     238             : 
     239             : #define QD1_ENABLED 1
     240             : 
     241             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     242             : 
     243             : #define RK_ENABLED 1
     244             : 
     245             : #if RK5_ENABLED
     246             :     module procedure getQuanMEAN_ND1_QD1_WNO_RK5
     247             :         use pm_kind, only: TKC => RK5
     248             : #include "pm_sampleQuan@routines.inc.F90"
     249             :     end procedure
     250             : #endif
     251             : 
     252             : #if RK4_ENABLED
     253           0 :     module procedure getQuanMEAN_ND1_QD1_WNO_RK4
     254             :         use pm_kind, only: TKC => RK4
     255             : #include "pm_sampleQuan@routines.inc.F90"
     256           0 :     end procedure
     257             : #endif
     258             : 
     259             : #if RK3_ENABLED
     260           0 :     module procedure getQuanMEAN_ND1_QD1_WNO_RK3
     261             :         use pm_kind, only: TKC => RK3
     262             : #include "pm_sampleQuan@routines.inc.F90"
     263           0 :     end procedure
     264             : #endif
     265             : 
     266             : #if RK2_ENABLED
     267           0 :     module procedure getQuanMEAN_ND1_QD1_WNO_RK2
     268             :         use pm_kind, only: TKC => RK2
     269             : #include "pm_sampleQuan@routines.inc.F90"
     270           0 :     end procedure
     271             : #endif
     272             : 
     273             : #if RK1_ENABLED
     274           3 :     module procedure getQuanMEAN_ND1_QD1_WNO_RK1
     275             :         use pm_kind, only: TKC => RK1
     276             : #include "pm_sampleQuan@routines.inc.F90"
     277           3 :     end procedure
     278             : #endif
     279             : 
     280             : #undef RK_ENABLED
     281             : 
     282             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     283             : 
     284             : #undef QD1_ENABLED
     285             : 
     286             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     287             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     288             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     289             : 
     290             : #undef MEAN_ENABLED
     291             : 
     292             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     293             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     294             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     295             : 
     296             : #define NEAR_ENABLED 1
     297             : 
     298             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     299             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     300             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     301             : 
     302             : #define QD0_ENABLED 1
     303             : 
     304             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     305             : 
     306             : #define RK_ENABLED 1
     307             : 
     308             : #if RK5_ENABLED
     309             :     module procedure getQuanNEAR_ND1_QD0_WNO_RK5
     310             :         use pm_kind, only: TKC => RK5
     311             : #include "pm_sampleQuan@routines.inc.F90"
     312             :     end procedure
     313             : #endif
     314             : 
     315             : #if RK4_ENABLED
     316           0 :     module procedure getQuanNEAR_ND1_QD0_WNO_RK4
     317             :         use pm_kind, only: TKC => RK4
     318             : #include "pm_sampleQuan@routines.inc.F90"
     319           0 :     end procedure
     320             : #endif
     321             : 
     322             : #if RK3_ENABLED
     323           0 :     module procedure getQuanNEAR_ND1_QD0_WNO_RK3
     324             :         use pm_kind, only: TKC => RK3
     325             : #include "pm_sampleQuan@routines.inc.F90"
     326           0 :     end procedure
     327             : #endif
     328             : 
     329             : #if RK2_ENABLED
     330           0 :     module procedure getQuanNEAR_ND1_QD0_WNO_RK2
     331             :         use pm_kind, only: TKC => RK2
     332             : #include "pm_sampleQuan@routines.inc.F90"
     333           0 :     end procedure
     334             : #endif
     335             : 
     336             : #if RK1_ENABLED
     337           0 :     module procedure getQuanNEAR_ND1_QD0_WNO_RK1
     338             :         use pm_kind, only: TKC => RK1
     339             : #include "pm_sampleQuan@routines.inc.F90"
     340           0 :     end procedure
     341             : #endif
     342             : 
     343             : #undef RK_ENABLED
     344             : 
     345             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     346             : 
     347             : #undef QD0_ENABLED
     348             : 
     349             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     350             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     351             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     352             : 
     353             : #define QD1_ENABLED 1
     354             : 
     355             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     356             : 
     357             : #define RK_ENABLED 1
     358             : 
     359             : #if RK5_ENABLED
     360             :     module procedure getQuanNEAR_ND1_QD1_WNO_RK5
     361             :         use pm_kind, only: TKC => RK5
     362             : #include "pm_sampleQuan@routines.inc.F90"
     363             :     end procedure
     364             : #endif
     365             : 
     366             : #if RK4_ENABLED
     367           0 :     module procedure getQuanNEAR_ND1_QD1_WNO_RK4
     368             :         use pm_kind, only: TKC => RK4
     369             : #include "pm_sampleQuan@routines.inc.F90"
     370           0 :     end procedure
     371             : #endif
     372             : 
     373             : #if RK3_ENABLED
     374           0 :     module procedure getQuanNEAR_ND1_QD1_WNO_RK3
     375             :         use pm_kind, only: TKC => RK3
     376             : #include "pm_sampleQuan@routines.inc.F90"
     377           0 :     end procedure
     378             : #endif
     379             : 
     380             : #if RK2_ENABLED
     381           0 :     module procedure getQuanNEAR_ND1_QD1_WNO_RK2
     382             :         use pm_kind, only: TKC => RK2
     383             : #include "pm_sampleQuan@routines.inc.F90"
     384           0 :     end procedure
     385             : #endif
     386             : 
     387             : #if RK1_ENABLED
     388           1 :     module procedure getQuanNEAR_ND1_QD1_WNO_RK1
     389             :         use pm_kind, only: TKC => RK1
     390             : #include "pm_sampleQuan@routines.inc.F90"
     391           1 :     end procedure
     392             : #endif
     393             : 
     394             : #undef RK_ENABLED
     395             : 
     396             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     397             : 
     398             : #undef QD1_ENABLED
     399             : 
     400             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     401             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     402             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     403             : 
     404             : #undef NEAR_ENABLED
     405             : 
     406             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     407             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     408             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     409             : 
     410             : #define NEXT_ENABLED 1
     411             : 
     412             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     413             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     414             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     415             : 
     416             : #define QD0_ENABLED 1
     417             : 
     418             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     419             : 
     420             : #define RK_ENABLED 1
     421             : 
     422             : #if RK5_ENABLED
     423             :     module procedure getQuanNEXT_ND1_QD0_WNO_RK5
     424             :         use pm_kind, only: TKC => RK5
     425             : #include "pm_sampleQuan@routines.inc.F90"
     426             :     end procedure
     427             : #endif
     428             : 
     429             : #if RK4_ENABLED
     430           0 :     module procedure getQuanNEXT_ND1_QD0_WNO_RK4
     431             :         use pm_kind, only: TKC => RK4
     432             : #include "pm_sampleQuan@routines.inc.F90"
     433           0 :     end procedure
     434             : #endif
     435             : 
     436             : #if RK3_ENABLED
     437           0 :     module procedure getQuanNEXT_ND1_QD0_WNO_RK3
     438             :         use pm_kind, only: TKC => RK3
     439             : #include "pm_sampleQuan@routines.inc.F90"
     440           0 :     end procedure
     441             : #endif
     442             : 
     443             : #if RK2_ENABLED
     444           0 :     module procedure getQuanNEXT_ND1_QD0_WNO_RK2
     445             :         use pm_kind, only: TKC => RK2
     446             : #include "pm_sampleQuan@routines.inc.F90"
     447           0 :     end procedure
     448             : #endif
     449             : 
     450             : #if RK1_ENABLED
     451           0 :     module procedure getQuanNEXT_ND1_QD0_WNO_RK1
     452             :         use pm_kind, only: TKC => RK1
     453             : #include "pm_sampleQuan@routines.inc.F90"
     454           0 :     end procedure
     455             : #endif
     456             : 
     457             : #undef RK_ENABLED
     458             : 
     459             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     460             : 
     461             : #undef QD0_ENABLED
     462             : 
     463             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     464             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     465             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     466             : 
     467             : #define QD1_ENABLED 1
     468             : 
     469             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     470             : 
     471             : #define RK_ENABLED 1
     472             : 
     473             : #if RK5_ENABLED
     474             :     module procedure getQuanNEXT_ND1_QD1_WNO_RK5
     475             :         use pm_kind, only: TKC => RK5
     476             : #include "pm_sampleQuan@routines.inc.F90"
     477             :     end procedure
     478             : #endif
     479             : 
     480             : #if RK4_ENABLED
     481           0 :     module procedure getQuanNEXT_ND1_QD1_WNO_RK4
     482             :         use pm_kind, only: TKC => RK4
     483             : #include "pm_sampleQuan@routines.inc.F90"
     484           0 :     end procedure
     485             : #endif
     486             : 
     487             : #if RK3_ENABLED
     488           0 :     module procedure getQuanNEXT_ND1_QD1_WNO_RK3
     489             :         use pm_kind, only: TKC => RK3
     490             : #include "pm_sampleQuan@routines.inc.F90"
     491           0 :     end procedure
     492             : #endif
     493             : 
     494             : #if RK2_ENABLED
     495           0 :     module procedure getQuanNEXT_ND1_QD1_WNO_RK2
     496             :         use pm_kind, only: TKC => RK2
     497             : #include "pm_sampleQuan@routines.inc.F90"
     498           0 :     end procedure
     499             : #endif
     500             : 
     501             : #if RK1_ENABLED
     502           1 :     module procedure getQuanNEXT_ND1_QD1_WNO_RK1
     503             :         use pm_kind, only: TKC => RK1
     504             : #include "pm_sampleQuan@routines.inc.F90"
     505           1 :     end procedure
     506             : #endif
     507             : 
     508             : #undef RK_ENABLED
     509             : 
     510             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     511             : 
     512             : #undef QD1_ENABLED
     513             : 
     514             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     515             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     516             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     517             : 
     518             : #undef NEXT_ENABLED
     519             : 
     520             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     521             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     522             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     523             : 
     524             : #define PREV_ENABLED 1
     525             : 
     526             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     527             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     528             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     529             : 
     530             : #define QD0_ENABLED 1
     531             : 
     532             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     533             : 
     534             : #define RK_ENABLED 1
     535             : 
     536             : #if RK5_ENABLED
     537             :     module procedure getQuanPREV_ND1_QD0_WNO_RK5
     538             :         use pm_kind, only: TKC => RK5
     539             : #include "pm_sampleQuan@routines.inc.F90"
     540             :     end procedure
     541             : #endif
     542             : 
     543             : #if RK4_ENABLED
     544           0 :     module procedure getQuanPREV_ND1_QD0_WNO_RK4
     545             :         use pm_kind, only: TKC => RK4
     546             : #include "pm_sampleQuan@routines.inc.F90"
     547           0 :     end procedure
     548             : #endif
     549             : 
     550             : #if RK3_ENABLED
     551           0 :     module procedure getQuanPREV_ND1_QD0_WNO_RK3
     552             :         use pm_kind, only: TKC => RK3
     553             : #include "pm_sampleQuan@routines.inc.F90"
     554           0 :     end procedure
     555             : #endif
     556             : 
     557             : #if RK2_ENABLED
     558           0 :     module procedure getQuanPREV_ND1_QD0_WNO_RK2
     559             :         use pm_kind, only: TKC => RK2
     560             : #include "pm_sampleQuan@routines.inc.F90"
     561           0 :     end procedure
     562             : #endif
     563             : 
     564             : #if RK1_ENABLED
     565           0 :     module procedure getQuanPREV_ND1_QD0_WNO_RK1
     566             :         use pm_kind, only: TKC => RK1
     567             : #include "pm_sampleQuan@routines.inc.F90"
     568           0 :     end procedure
     569             : #endif
     570             : 
     571             : #undef RK_ENABLED
     572             : 
     573             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     574             : 
     575             : #undef QD0_ENABLED
     576             : 
     577             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     578             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     579             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     580             : 
     581             : #define QD1_ENABLED 1
     582             : 
     583             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     584             : 
     585             : #define RK_ENABLED 1
     586             : 
     587             : #if RK5_ENABLED
     588             :     module procedure getQuanPREV_ND1_QD1_WNO_RK5
     589             :         use pm_kind, only: TKC => RK5
     590             : #include "pm_sampleQuan@routines.inc.F90"
     591             :     end procedure
     592             : #endif
     593             : 
     594             : #if RK4_ENABLED
     595           0 :     module procedure getQuanPREV_ND1_QD1_WNO_RK4
     596             :         use pm_kind, only: TKC => RK4
     597             : #include "pm_sampleQuan@routines.inc.F90"
     598           0 :     end procedure
     599             : #endif
     600             : 
     601             : #if RK3_ENABLED
     602           0 :     module procedure getQuanPREV_ND1_QD1_WNO_RK3
     603             :         use pm_kind, only: TKC => RK3
     604             : #include "pm_sampleQuan@routines.inc.F90"
     605           0 :     end procedure
     606             : #endif
     607             : 
     608             : #if RK2_ENABLED
     609           0 :     module procedure getQuanPREV_ND1_QD1_WNO_RK2
     610             :         use pm_kind, only: TKC => RK2
     611             : #include "pm_sampleQuan@routines.inc.F90"
     612           0 :     end procedure
     613             : #endif
     614             : 
     615             : #if RK1_ENABLED
     616           1 :     module procedure getQuanPREV_ND1_QD1_WNO_RK1
     617             :         use pm_kind, only: TKC => RK1
     618             : #include "pm_sampleQuan@routines.inc.F90"
     619           1 :     end procedure
     620             : #endif
     621             : 
     622             : #undef RK_ENABLED
     623             : 
     624             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     625             : 
     626             : #undef QD1_ENABLED
     627             : 
     628             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     629             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     630             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     631             : 
     632             : #undef PREV_ENABLED
     633             : 
     634             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     635             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     636             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     637             : 
     638             : #undef WNO_ENABLED
     639             : 
     640             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     641             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     642             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     643             : 
     644             : #define WTI_ENABLED 1
     645             : 
     646             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     647             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     648             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     649             : 
     650             : #define PWLN_ENABLED 1
     651             : 
     652             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     653             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     654             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     655             : 
     656             : #define QD0_ENABLED 1
     657             : 
     658             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     659             : 
     660             : #define RK_ENABLED 1
     661             : 
     662             : #if RK5_ENABLED
     663             :     module procedure getQuanPWLN_ND1_QD0_WTI_RK5
     664             :         use pm_kind, only: TKC => RK5
     665             : #include "pm_sampleQuan@routines.inc.F90"
     666             :     end procedure
     667             : #endif
     668             : 
     669             : #if RK4_ENABLED
     670           0 :     module procedure getQuanPWLN_ND1_QD0_WTI_RK4
     671             :         use pm_kind, only: TKC => RK4
     672             : #include "pm_sampleQuan@routines.inc.F90"
     673           0 :     end procedure
     674             : #endif
     675             : 
     676             : #if RK3_ENABLED
     677           0 :     module procedure getQuanPWLN_ND1_QD0_WTI_RK3
     678             :         use pm_kind, only: TKC => RK3
     679             : #include "pm_sampleQuan@routines.inc.F90"
     680           0 :     end procedure
     681             : #endif
     682             : 
     683             : #if RK2_ENABLED
     684           0 :     module procedure getQuanPWLN_ND1_QD0_WTI_RK2
     685             :         use pm_kind, only: TKC => RK2
     686             : #include "pm_sampleQuan@routines.inc.F90"
     687           0 :     end procedure
     688             : #endif
     689             : 
     690             : #if RK1_ENABLED
     691           6 :     module procedure getQuanPWLN_ND1_QD0_WTI_RK1
     692             :         use pm_kind, only: TKC => RK1
     693             : #include "pm_sampleQuan@routines.inc.F90"
     694           6 :     end procedure
     695             : #endif
     696             : 
     697             : #undef RK_ENABLED
     698             : 
     699             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     700             : 
     701             : #undef QD0_ENABLED
     702             : 
     703             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     704             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     705             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     706             : 
     707             : #define QD1_ENABLED 1
     708             : 
     709             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     710             : 
     711             : #define RK_ENABLED 1
     712             : 
     713             : #if RK5_ENABLED
     714             :     module procedure getQuanPWLN_ND1_QD1_WTI_RK5
     715             :         use pm_kind, only: TKC => RK5
     716             : #include "pm_sampleQuan@routines.inc.F90"
     717             :     end procedure
     718             : #endif
     719             : 
     720             : #if RK4_ENABLED
     721           0 :     module procedure getQuanPWLN_ND1_QD1_WTI_RK4
     722             :         use pm_kind, only: TKC => RK4
     723             : #include "pm_sampleQuan@routines.inc.F90"
     724           0 :     end procedure
     725             : #endif
     726             : 
     727             : #if RK3_ENABLED
     728           0 :     module procedure getQuanPWLN_ND1_QD1_WTI_RK3
     729             :         use pm_kind, only: TKC => RK3
     730             : #include "pm_sampleQuan@routines.inc.F90"
     731           0 :     end procedure
     732             : #endif
     733             : 
     734             : #if RK2_ENABLED
     735           0 :     module procedure getQuanPWLN_ND1_QD1_WTI_RK2
     736             :         use pm_kind, only: TKC => RK2
     737             : #include "pm_sampleQuan@routines.inc.F90"
     738           0 :     end procedure
     739             : #endif
     740             : 
     741             : #if RK1_ENABLED
     742           1 :     module procedure getQuanPWLN_ND1_QD1_WTI_RK1
     743             :         use pm_kind, only: TKC => RK1
     744             : #include "pm_sampleQuan@routines.inc.F90"
     745           1 :     end procedure
     746             : #endif
     747             : 
     748             : #undef RK_ENABLED
     749             : 
     750             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     751             : 
     752             : #undef QD1_ENABLED
     753             : 
     754             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     755             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     756             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     757             : 
     758             : #undef PWLN_ENABLED
     759             : 
     760             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     761             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     762             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     763             : 
     764             : #define MEAN_ENABLED 1
     765             : 
     766             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     767             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     768             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     769             : 
     770             : #define QD0_ENABLED 1
     771             : 
     772             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     773             : 
     774             : #define RK_ENABLED 1
     775             : 
     776             : #if RK5_ENABLED
     777             :     module procedure getQuanMEAN_ND1_QD0_WTI_RK5
     778             :         use pm_kind, only: TKC => RK5
     779             : #include "pm_sampleQuan@routines.inc.F90"
     780             :     end procedure
     781             : #endif
     782             : 
     783             : #if RK4_ENABLED
     784           0 :     module procedure getQuanMEAN_ND1_QD0_WTI_RK4
     785             :         use pm_kind, only: TKC => RK4
     786             : #include "pm_sampleQuan@routines.inc.F90"
     787           0 :     end procedure
     788             : #endif
     789             : 
     790             : #if RK3_ENABLED
     791           0 :     module procedure getQuanMEAN_ND1_QD0_WTI_RK3
     792             :         use pm_kind, only: TKC => RK3
     793             : #include "pm_sampleQuan@routines.inc.F90"
     794           0 :     end procedure
     795             : #endif
     796             : 
     797             : #if RK2_ENABLED
     798           0 :     module procedure getQuanMEAN_ND1_QD0_WTI_RK2
     799             :         use pm_kind, only: TKC => RK2
     800             : #include "pm_sampleQuan@routines.inc.F90"
     801           0 :     end procedure
     802             : #endif
     803             : 
     804             : #if RK1_ENABLED
     805           0 :     module procedure getQuanMEAN_ND1_QD0_WTI_RK1
     806             :         use pm_kind, only: TKC => RK1
     807             : #include "pm_sampleQuan@routines.inc.F90"
     808           0 :     end procedure
     809             : #endif
     810             : 
     811             : #undef RK_ENABLED
     812             : 
     813             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     814             : 
     815             : #undef QD0_ENABLED
     816             : 
     817             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     818             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     819             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     820             : 
     821             : #define QD1_ENABLED 1
     822             : 
     823             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     824             : 
     825             : #define RK_ENABLED 1
     826             : 
     827             : #if RK5_ENABLED
     828             :     module procedure getQuanMEAN_ND1_QD1_WTI_RK5
     829             :         use pm_kind, only: TKC => RK5
     830             : #include "pm_sampleQuan@routines.inc.F90"
     831             :     end procedure
     832             : #endif
     833             : 
     834             : #if RK4_ENABLED
     835           0 :     module procedure getQuanMEAN_ND1_QD1_WTI_RK4
     836             :         use pm_kind, only: TKC => RK4
     837             : #include "pm_sampleQuan@routines.inc.F90"
     838           0 :     end procedure
     839             : #endif
     840             : 
     841             : #if RK3_ENABLED
     842           0 :     module procedure getQuanMEAN_ND1_QD1_WTI_RK3
     843             :         use pm_kind, only: TKC => RK3
     844             : #include "pm_sampleQuan@routines.inc.F90"
     845           0 :     end procedure
     846             : #endif
     847             : 
     848             : #if RK2_ENABLED
     849          46 :     module procedure getQuanMEAN_ND1_QD1_WTI_RK2
     850             :         use pm_kind, only: TKC => RK2
     851             : #include "pm_sampleQuan@routines.inc.F90"
     852          46 :     end procedure
     853             : #endif
     854             : 
     855             : #if RK1_ENABLED
     856           8 :     module procedure getQuanMEAN_ND1_QD1_WTI_RK1
     857             :         use pm_kind, only: TKC => RK1
     858             : #include "pm_sampleQuan@routines.inc.F90"
     859           8 :     end procedure
     860             : #endif
     861             : 
     862             : #undef RK_ENABLED
     863             : 
     864             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     865             : 
     866             : #undef QD1_ENABLED
     867             : 
     868             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     869             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     870             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     871             : 
     872             : #undef MEAN_ENABLED
     873             : 
     874             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     875             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     876             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     877             : 
     878             : #define NEAR_ENABLED 1
     879             : 
     880             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     881             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     882             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     883             : 
     884             : #define QD0_ENABLED 1
     885             : 
     886             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     887             : 
     888             : #define RK_ENABLED 1
     889             : 
     890             : #if RK5_ENABLED
     891             :     module procedure getQuanNEAR_ND1_QD0_WTI_RK5
     892             :         use pm_kind, only: TKC => RK5
     893             : #include "pm_sampleQuan@routines.inc.F90"
     894             :     end procedure
     895             : #endif
     896             : 
     897             : #if RK4_ENABLED
     898           0 :     module procedure getQuanNEAR_ND1_QD0_WTI_RK4
     899             :         use pm_kind, only: TKC => RK4
     900             : #include "pm_sampleQuan@routines.inc.F90"
     901           0 :     end procedure
     902             : #endif
     903             : 
     904             : #if RK3_ENABLED
     905           0 :     module procedure getQuanNEAR_ND1_QD0_WTI_RK3
     906             :         use pm_kind, only: TKC => RK3
     907             : #include "pm_sampleQuan@routines.inc.F90"
     908           0 :     end procedure
     909             : #endif
     910             : 
     911             : #if RK2_ENABLED
     912           0 :     module procedure getQuanNEAR_ND1_QD0_WTI_RK2
     913             :         use pm_kind, only: TKC => RK2
     914             : #include "pm_sampleQuan@routines.inc.F90"
     915           0 :     end procedure
     916             : #endif
     917             : 
     918             : #if RK1_ENABLED
     919           0 :     module procedure getQuanNEAR_ND1_QD0_WTI_RK1
     920             :         use pm_kind, only: TKC => RK1
     921             : #include "pm_sampleQuan@routines.inc.F90"
     922           0 :     end procedure
     923             : #endif
     924             : 
     925             : #undef RK_ENABLED
     926             : 
     927             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     928             : 
     929             : #undef QD0_ENABLED
     930             : 
     931             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     932             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     933             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     934             : 
     935             : #define QD1_ENABLED 1
     936             : 
     937             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     938             : 
     939             : #define RK_ENABLED 1
     940             : 
     941             : #if RK5_ENABLED
     942             :     module procedure getQuanNEAR_ND1_QD1_WTI_RK5
     943             :         use pm_kind, only: TKC => RK5
     944             : #include "pm_sampleQuan@routines.inc.F90"
     945             :     end procedure
     946             : #endif
     947             : 
     948             : #if RK4_ENABLED
     949           0 :     module procedure getQuanNEAR_ND1_QD1_WTI_RK4
     950             :         use pm_kind, only: TKC => RK4
     951             : #include "pm_sampleQuan@routines.inc.F90"
     952           0 :     end procedure
     953             : #endif
     954             : 
     955             : #if RK3_ENABLED
     956           0 :     module procedure getQuanNEAR_ND1_QD1_WTI_RK3
     957             :         use pm_kind, only: TKC => RK3
     958             : #include "pm_sampleQuan@routines.inc.F90"
     959           0 :     end procedure
     960             : #endif
     961             : 
     962             : #if RK2_ENABLED
     963           0 :     module procedure getQuanNEAR_ND1_QD1_WTI_RK2
     964             :         use pm_kind, only: TKC => RK2
     965             : #include "pm_sampleQuan@routines.inc.F90"
     966           0 :     end procedure
     967             : #endif
     968             : 
     969             : #if RK1_ENABLED
     970           1 :     module procedure getQuanNEAR_ND1_QD1_WTI_RK1
     971             :         use pm_kind, only: TKC => RK1
     972             : #include "pm_sampleQuan@routines.inc.F90"
     973           1 :     end procedure
     974             : #endif
     975             : 
     976             : #undef RK_ENABLED
     977             : 
     978             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     979             : 
     980             : #undef QD1_ENABLED
     981             : 
     982             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     983             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     984             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     985             : 
     986             : #undef NEAR_ENABLED
     987             : 
     988             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     989             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     990             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     991             : 
     992             : #define NEXT_ENABLED 1
     993             : 
     994             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     995             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     996             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     997             : 
     998             : #define QD0_ENABLED 1
     999             : 
    1000             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1001             : 
    1002             : #define RK_ENABLED 1
    1003             : 
    1004             : #if RK5_ENABLED
    1005             :     module procedure getQuanNEXT_ND1_QD0_WTI_RK5
    1006             :         use pm_kind, only: TKC => RK5
    1007             : #include "pm_sampleQuan@routines.inc.F90"
    1008             :     end procedure
    1009             : #endif
    1010             : 
    1011             : #if RK4_ENABLED
    1012           0 :     module procedure getQuanNEXT_ND1_QD0_WTI_RK4
    1013             :         use pm_kind, only: TKC => RK4
    1014             : #include "pm_sampleQuan@routines.inc.F90"
    1015           0 :     end procedure
    1016             : #endif
    1017             : 
    1018             : #if RK3_ENABLED
    1019           0 :     module procedure getQuanNEXT_ND1_QD0_WTI_RK3
    1020             :         use pm_kind, only: TKC => RK3
    1021             : #include "pm_sampleQuan@routines.inc.F90"
    1022           0 :     end procedure
    1023             : #endif
    1024             : 
    1025             : #if RK2_ENABLED
    1026           0 :     module procedure getQuanNEXT_ND1_QD0_WTI_RK2
    1027             :         use pm_kind, only: TKC => RK2
    1028             : #include "pm_sampleQuan@routines.inc.F90"
    1029           0 :     end procedure
    1030             : #endif
    1031             : 
    1032             : #if RK1_ENABLED
    1033           0 :     module procedure getQuanNEXT_ND1_QD0_WTI_RK1
    1034             :         use pm_kind, only: TKC => RK1
    1035             : #include "pm_sampleQuan@routines.inc.F90"
    1036           0 :     end procedure
    1037             : #endif
    1038             : 
    1039             : #undef RK_ENABLED
    1040             : 
    1041             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1042             : 
    1043             : #undef QD0_ENABLED
    1044             : 
    1045             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1046             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1047             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1048             : 
    1049             : #define QD1_ENABLED 1
    1050             : 
    1051             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1052             : 
    1053             : #define RK_ENABLED 1
    1054             : 
    1055             : #if RK5_ENABLED
    1056             :     module procedure getQuanNEXT_ND1_QD1_WTI_RK5
    1057             :         use pm_kind, only: TKC => RK5
    1058             : #include "pm_sampleQuan@routines.inc.F90"
    1059             :     end procedure
    1060             : #endif
    1061             : 
    1062             : #if RK4_ENABLED
    1063           0 :     module procedure getQuanNEXT_ND1_QD1_WTI_RK4
    1064             :         use pm_kind, only: TKC => RK4
    1065             : #include "pm_sampleQuan@routines.inc.F90"
    1066           0 :     end procedure
    1067             : #endif
    1068             : 
    1069             : #if RK3_ENABLED
    1070           0 :     module procedure getQuanNEXT_ND1_QD1_WTI_RK3
    1071             :         use pm_kind, only: TKC => RK3
    1072             : #include "pm_sampleQuan@routines.inc.F90"
    1073           0 :     end procedure
    1074             : #endif
    1075             : 
    1076             : #if RK2_ENABLED
    1077           0 :     module procedure getQuanNEXT_ND1_QD1_WTI_RK2
    1078             :         use pm_kind, only: TKC => RK2
    1079             : #include "pm_sampleQuan@routines.inc.F90"
    1080           0 :     end procedure
    1081             : #endif
    1082             : 
    1083             : #if RK1_ENABLED
    1084           1 :     module procedure getQuanNEXT_ND1_QD1_WTI_RK1
    1085             :         use pm_kind, only: TKC => RK1
    1086             : #include "pm_sampleQuan@routines.inc.F90"
    1087           1 :     end procedure
    1088             : #endif
    1089             : 
    1090             : #undef RK_ENABLED
    1091             : 
    1092             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1093             : 
    1094             : #undef QD1_ENABLED
    1095             : 
    1096             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1097             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1098             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1099             : 
    1100             : #undef NEXT_ENABLED
    1101             : 
    1102             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1103             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1104             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1105             : 
    1106             : #define PREV_ENABLED 1
    1107             : 
    1108             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1109             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1110             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1111             : 
    1112             : #define QD0_ENABLED 1
    1113             : 
    1114             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1115             : 
    1116             : #define RK_ENABLED 1
    1117             : 
    1118             : #if RK5_ENABLED
    1119             :     module procedure getQuanPREV_ND1_QD0_WTI_RK5
    1120             :         use pm_kind, only: TKC => RK5
    1121             : #include "pm_sampleQuan@routines.inc.F90"
    1122             :     end procedure
    1123             : #endif
    1124             : 
    1125             : #if RK4_ENABLED
    1126           0 :     module procedure getQuanPREV_ND1_QD0_WTI_RK4
    1127             :         use pm_kind, only: TKC => RK4
    1128             : #include "pm_sampleQuan@routines.inc.F90"
    1129           0 :     end procedure
    1130             : #endif
    1131             : 
    1132             : #if RK3_ENABLED
    1133           0 :     module procedure getQuanPREV_ND1_QD0_WTI_RK3
    1134             :         use pm_kind, only: TKC => RK3
    1135             : #include "pm_sampleQuan@routines.inc.F90"
    1136           0 :     end procedure
    1137             : #endif
    1138             : 
    1139             : #if RK2_ENABLED
    1140           0 :     module procedure getQuanPREV_ND1_QD0_WTI_RK2
    1141             :         use pm_kind, only: TKC => RK2
    1142             : #include "pm_sampleQuan@routines.inc.F90"
    1143           0 :     end procedure
    1144             : #endif
    1145             : 
    1146             : #if RK1_ENABLED
    1147           0 :     module procedure getQuanPREV_ND1_QD0_WTI_RK1
    1148             :         use pm_kind, only: TKC => RK1
    1149             : #include "pm_sampleQuan@routines.inc.F90"
    1150           0 :     end procedure
    1151             : #endif
    1152             : 
    1153             : #undef RK_ENABLED
    1154             : 
    1155             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1156             : 
    1157             : #undef QD0_ENABLED
    1158             : 
    1159             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1160             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1161             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1162             : 
    1163             : #define QD1_ENABLED 1
    1164             : 
    1165             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1166             : 
    1167             : #define RK_ENABLED 1
    1168             : 
    1169             : #if RK5_ENABLED
    1170             :     module procedure getQuanPREV_ND1_QD1_WTI_RK5
    1171             :         use pm_kind, only: TKC => RK5
    1172             : #include "pm_sampleQuan@routines.inc.F90"
    1173             :     end procedure
    1174             : #endif
    1175             : 
    1176             : #if RK4_ENABLED
    1177           0 :     module procedure getQuanPREV_ND1_QD1_WTI_RK4
    1178             :         use pm_kind, only: TKC => RK4
    1179             : #include "pm_sampleQuan@routines.inc.F90"
    1180           0 :     end procedure
    1181             : #endif
    1182             : 
    1183             : #if RK3_ENABLED
    1184           0 :     module procedure getQuanPREV_ND1_QD1_WTI_RK3
    1185             :         use pm_kind, only: TKC => RK3
    1186             : #include "pm_sampleQuan@routines.inc.F90"
    1187           0 :     end procedure
    1188             : #endif
    1189             : 
    1190             : #if RK2_ENABLED
    1191           0 :     module procedure getQuanPREV_ND1_QD1_WTI_RK2
    1192             :         use pm_kind, only: TKC => RK2
    1193             : #include "pm_sampleQuan@routines.inc.F90"
    1194           0 :     end procedure
    1195             : #endif
    1196             : 
    1197             : #if RK1_ENABLED
    1198           1 :     module procedure getQuanPREV_ND1_QD1_WTI_RK1
    1199             :         use pm_kind, only: TKC => RK1
    1200             : #include "pm_sampleQuan@routines.inc.F90"
    1201           1 :     end procedure
    1202             : #endif
    1203             : 
    1204             : #undef RK_ENABLED
    1205             : 
    1206             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1207             : 
    1208             : #undef QD1_ENABLED
    1209             : 
    1210             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1211             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1212             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1213             : 
    1214             : #undef PREV_ENABLED
    1215             : 
    1216             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1217             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1218             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1219             : 
    1220             : #undef WTI_ENABLED
    1221             : 
    1222             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1223             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1224             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1225             : 
    1226             : #define WTR_ENABLED 1
    1227             : 
    1228             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1229             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1230             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1231             : 
    1232             : #define PWLN_ENABLED 1
    1233             : 
    1234             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1235             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1236             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1237             : 
    1238             : #define QD0_ENABLED 1
    1239             : 
    1240             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1241             : 
    1242             : #define RK_ENABLED 1
    1243             : 
    1244             : #if RK5_ENABLED
    1245             :     module procedure getQuanPWLN_ND1_QD0_WTR_RK5
    1246             :         use pm_kind, only: TKC => RK5
    1247             : #include "pm_sampleQuan@routines.inc.F90"
    1248             :     end procedure
    1249             : #endif
    1250             : 
    1251             : #if RK4_ENABLED
    1252           0 :     module procedure getQuanPWLN_ND1_QD0_WTR_RK4
    1253             :         use pm_kind, only: TKC => RK4
    1254             : #include "pm_sampleQuan@routines.inc.F90"
    1255           0 :     end procedure
    1256             : #endif
    1257             : 
    1258             : #if RK3_ENABLED
    1259           0 :     module procedure getQuanPWLN_ND1_QD0_WTR_RK3
    1260             :         use pm_kind, only: TKC => RK3
    1261             : #include "pm_sampleQuan@routines.inc.F90"
    1262           0 :     end procedure
    1263             : #endif
    1264             : 
    1265             : #if RK2_ENABLED
    1266           0 :     module procedure getQuanPWLN_ND1_QD0_WTR_RK2
    1267             :         use pm_kind, only: TKC => RK2
    1268             : #include "pm_sampleQuan@routines.inc.F90"
    1269           0 :     end procedure
    1270             : #endif
    1271             : 
    1272             : #if RK1_ENABLED
    1273           6 :     module procedure getQuanPWLN_ND1_QD0_WTR_RK1
    1274             :         use pm_kind, only: TKC => RK1
    1275             : #include "pm_sampleQuan@routines.inc.F90"
    1276           6 :     end procedure
    1277             : #endif
    1278             : 
    1279             : #undef RK_ENABLED
    1280             : 
    1281             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1282             : 
    1283             : #undef QD0_ENABLED
    1284             : 
    1285             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1286             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1287             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1288             : 
    1289             : #define QD1_ENABLED 1
    1290             : 
    1291             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1292             : 
    1293             : #define RK_ENABLED 1
    1294             : 
    1295             : #if RK5_ENABLED
    1296             :     module procedure getQuanPWLN_ND1_QD1_WTR_RK5
    1297             :         use pm_kind, only: TKC => RK5
    1298             : #include "pm_sampleQuan@routines.inc.F90"
    1299             :     end procedure
    1300             : #endif
    1301             : 
    1302             : #if RK4_ENABLED
    1303           0 :     module procedure getQuanPWLN_ND1_QD1_WTR_RK4
    1304             :         use pm_kind, only: TKC => RK4
    1305             : #include "pm_sampleQuan@routines.inc.F90"
    1306           0 :     end procedure
    1307             : #endif
    1308             : 
    1309             : #if RK3_ENABLED
    1310           0 :     module procedure getQuanPWLN_ND1_QD1_WTR_RK3
    1311             :         use pm_kind, only: TKC => RK3
    1312             : #include "pm_sampleQuan@routines.inc.F90"
    1313           0 :     end procedure
    1314             : #endif
    1315             : 
    1316             : #if RK2_ENABLED
    1317           0 :     module procedure getQuanPWLN_ND1_QD1_WTR_RK2
    1318             :         use pm_kind, only: TKC => RK2
    1319             : #include "pm_sampleQuan@routines.inc.F90"
    1320           0 :     end procedure
    1321             : #endif
    1322             : 
    1323             : #if RK1_ENABLED
    1324           1 :     module procedure getQuanPWLN_ND1_QD1_WTR_RK1
    1325             :         use pm_kind, only: TKC => RK1
    1326             : #include "pm_sampleQuan@routines.inc.F90"
    1327           1 :     end procedure
    1328             : #endif
    1329             : 
    1330             : #undef RK_ENABLED
    1331             : 
    1332             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1333             : 
    1334             : #undef QD1_ENABLED
    1335             : 
    1336             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1337             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1338             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1339             : 
    1340             : #undef PWLN_ENABLED
    1341             : 
    1342             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1343             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1344             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1345             : 
    1346             : #define MEAN_ENABLED 1
    1347             : 
    1348             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1349             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1350             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1351             : 
    1352             : #define QD0_ENABLED 1
    1353             : 
    1354             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1355             : 
    1356             : #define RK_ENABLED 1
    1357             : 
    1358             : #if RK5_ENABLED
    1359             :     module procedure getQuanMEAN_ND1_QD0_WTR_RK5
    1360             :         use pm_kind, only: TKC => RK5
    1361             : #include "pm_sampleQuan@routines.inc.F90"
    1362             :     end procedure
    1363             : #endif
    1364             : 
    1365             : #if RK4_ENABLED
    1366           0 :     module procedure getQuanMEAN_ND1_QD0_WTR_RK4
    1367             :         use pm_kind, only: TKC => RK4
    1368             : #include "pm_sampleQuan@routines.inc.F90"
    1369           0 :     end procedure
    1370             : #endif
    1371             : 
    1372             : #if RK3_ENABLED
    1373           0 :     module procedure getQuanMEAN_ND1_QD0_WTR_RK3
    1374             :         use pm_kind, only: TKC => RK3
    1375             : #include "pm_sampleQuan@routines.inc.F90"
    1376           0 :     end procedure
    1377             : #endif
    1378             : 
    1379             : #if RK2_ENABLED
    1380           0 :     module procedure getQuanMEAN_ND1_QD0_WTR_RK2
    1381             :         use pm_kind, only: TKC => RK2
    1382             : #include "pm_sampleQuan@routines.inc.F90"
    1383           0 :     end procedure
    1384             : #endif
    1385             : 
    1386             : #if RK1_ENABLED
    1387           0 :     module procedure getQuanMEAN_ND1_QD0_WTR_RK1
    1388             :         use pm_kind, only: TKC => RK1
    1389             : #include "pm_sampleQuan@routines.inc.F90"
    1390           0 :     end procedure
    1391             : #endif
    1392             : 
    1393             : #undef RK_ENABLED
    1394             : 
    1395             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1396             : 
    1397             : #undef QD0_ENABLED
    1398             : 
    1399             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1400             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1401             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1402             : 
    1403             : #define QD1_ENABLED 1
    1404             : 
    1405             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1406             : 
    1407             : #define RK_ENABLED 1
    1408             : 
    1409             : #if RK5_ENABLED
    1410             :     module procedure getQuanMEAN_ND1_QD1_WTR_RK5
    1411             :         use pm_kind, only: TKC => RK5
    1412             : #include "pm_sampleQuan@routines.inc.F90"
    1413             :     end procedure
    1414             : #endif
    1415             : 
    1416             : #if RK4_ENABLED
    1417           0 :     module procedure getQuanMEAN_ND1_QD1_WTR_RK4
    1418             :         use pm_kind, only: TKC => RK4
    1419             : #include "pm_sampleQuan@routines.inc.F90"
    1420           0 :     end procedure
    1421             : #endif
    1422             : 
    1423             : #if RK3_ENABLED
    1424           0 :     module procedure getQuanMEAN_ND1_QD1_WTR_RK3
    1425             :         use pm_kind, only: TKC => RK3
    1426             : #include "pm_sampleQuan@routines.inc.F90"
    1427           0 :     end procedure
    1428             : #endif
    1429             : 
    1430             : #if RK2_ENABLED
    1431           0 :     module procedure getQuanMEAN_ND1_QD1_WTR_RK2
    1432             :         use pm_kind, only: TKC => RK2
    1433             : #include "pm_sampleQuan@routines.inc.F90"
    1434           0 :     end procedure
    1435             : #endif
    1436             : 
    1437             : #if RK1_ENABLED
    1438           0 :     module procedure getQuanMEAN_ND1_QD1_WTR_RK1
    1439             :         use pm_kind, only: TKC => RK1
    1440             : #include "pm_sampleQuan@routines.inc.F90"
    1441           0 :     end procedure
    1442             : #endif
    1443             : 
    1444             : #undef RK_ENABLED
    1445             : 
    1446             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1447             : 
    1448             : #undef QD1_ENABLED
    1449             : 
    1450             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1451             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1452             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1453             : 
    1454             : #undef MEAN_ENABLED
    1455             : 
    1456             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1457             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1458             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1459             : 
    1460             : #define NEAR_ENABLED 1
    1461             : 
    1462             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1463             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1464             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1465             : 
    1466             : #define QD0_ENABLED 1
    1467             : 
    1468             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1469             : 
    1470             : #define RK_ENABLED 1
    1471             : 
    1472             : #if RK5_ENABLED
    1473             :     module procedure getQuanNEAR_ND1_QD0_WTR_RK5
    1474             :         use pm_kind, only: TKC => RK5
    1475             : #include "pm_sampleQuan@routines.inc.F90"
    1476             :     end procedure
    1477             : #endif
    1478             : 
    1479             : #if RK4_ENABLED
    1480           0 :     module procedure getQuanNEAR_ND1_QD0_WTR_RK4
    1481             :         use pm_kind, only: TKC => RK4
    1482             : #include "pm_sampleQuan@routines.inc.F90"
    1483           0 :     end procedure
    1484             : #endif
    1485             : 
    1486             : #if RK3_ENABLED
    1487           0 :     module procedure getQuanNEAR_ND1_QD0_WTR_RK3
    1488             :         use pm_kind, only: TKC => RK3
    1489             : #include "pm_sampleQuan@routines.inc.F90"
    1490           0 :     end procedure
    1491             : #endif
    1492             : 
    1493             : #if RK2_ENABLED
    1494           0 :     module procedure getQuanNEAR_ND1_QD0_WTR_RK2
    1495             :         use pm_kind, only: TKC => RK2
    1496             : #include "pm_sampleQuan@routines.inc.F90"
    1497           0 :     end procedure
    1498             : #endif
    1499             : 
    1500             : #if RK1_ENABLED
    1501           0 :     module procedure getQuanNEAR_ND1_QD0_WTR_RK1
    1502             :         use pm_kind, only: TKC => RK1
    1503             : #include "pm_sampleQuan@routines.inc.F90"
    1504           0 :     end procedure
    1505             : #endif
    1506             : 
    1507             : #undef RK_ENABLED
    1508             : 
    1509             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1510             : 
    1511             : #undef QD0_ENABLED
    1512             : 
    1513             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1514             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1515             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1516             : 
    1517             : #define QD1_ENABLED 1
    1518             : 
    1519             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1520             : 
    1521             : #define RK_ENABLED 1
    1522             : 
    1523             : #if RK5_ENABLED
    1524             :     module procedure getQuanNEAR_ND1_QD1_WTR_RK5
    1525             :         use pm_kind, only: TKC => RK5
    1526             : #include "pm_sampleQuan@routines.inc.F90"
    1527             :     end procedure
    1528             : #endif
    1529             : 
    1530             : #if RK4_ENABLED
    1531           0 :     module procedure getQuanNEAR_ND1_QD1_WTR_RK4
    1532             :         use pm_kind, only: TKC => RK4
    1533             : #include "pm_sampleQuan@routines.inc.F90"
    1534           0 :     end procedure
    1535             : #endif
    1536             : 
    1537             : #if RK3_ENABLED
    1538           0 :     module procedure getQuanNEAR_ND1_QD1_WTR_RK3
    1539             :         use pm_kind, only: TKC => RK3
    1540             : #include "pm_sampleQuan@routines.inc.F90"
    1541           0 :     end procedure
    1542             : #endif
    1543             : 
    1544             : #if RK2_ENABLED
    1545           0 :     module procedure getQuanNEAR_ND1_QD1_WTR_RK2
    1546             :         use pm_kind, only: TKC => RK2
    1547             : #include "pm_sampleQuan@routines.inc.F90"
    1548           0 :     end procedure
    1549             : #endif
    1550             : 
    1551             : #if RK1_ENABLED
    1552           1 :     module procedure getQuanNEAR_ND1_QD1_WTR_RK1
    1553             :         use pm_kind, only: TKC => RK1
    1554             : #include "pm_sampleQuan@routines.inc.F90"
    1555           1 :     end procedure
    1556             : #endif
    1557             : 
    1558             : #undef RK_ENABLED
    1559             : 
    1560             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1561             : 
    1562             : #undef QD1_ENABLED
    1563             : 
    1564             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1565             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1566             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1567             : 
    1568             : #undef NEAR_ENABLED
    1569             : 
    1570             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1571             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1572             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1573             : 
    1574             : #define NEXT_ENABLED 1
    1575             : 
    1576             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1577             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1578             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1579             : 
    1580             : #define QD0_ENABLED 1
    1581             : 
    1582             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1583             : 
    1584             : #define RK_ENABLED 1
    1585             : 
    1586             : #if RK5_ENABLED
    1587             :     module procedure getQuanNEXT_ND1_QD0_WTR_RK5
    1588             :         use pm_kind, only: TKC => RK5
    1589             : #include "pm_sampleQuan@routines.inc.F90"
    1590             :     end procedure
    1591             : #endif
    1592             : 
    1593             : #if RK4_ENABLED
    1594           0 :     module procedure getQuanNEXT_ND1_QD0_WTR_RK4
    1595             :         use pm_kind, only: TKC => RK4
    1596             : #include "pm_sampleQuan@routines.inc.F90"
    1597           0 :     end procedure
    1598             : #endif
    1599             : 
    1600             : #if RK3_ENABLED
    1601           0 :     module procedure getQuanNEXT_ND1_QD0_WTR_RK3
    1602             :         use pm_kind, only: TKC => RK3
    1603             : #include "pm_sampleQuan@routines.inc.F90"
    1604           0 :     end procedure
    1605             : #endif
    1606             : 
    1607             : #if RK2_ENABLED
    1608           0 :     module procedure getQuanNEXT_ND1_QD0_WTR_RK2
    1609             :         use pm_kind, only: TKC => RK2
    1610             : #include "pm_sampleQuan@routines.inc.F90"
    1611           0 :     end procedure
    1612             : #endif
    1613             : 
    1614             : #if RK1_ENABLED
    1615           0 :     module procedure getQuanNEXT_ND1_QD0_WTR_RK1
    1616             :         use pm_kind, only: TKC => RK1
    1617             : #include "pm_sampleQuan@routines.inc.F90"
    1618           0 :     end procedure
    1619             : #endif
    1620             : 
    1621             : #undef RK_ENABLED
    1622             : 
    1623             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1624             : 
    1625             : #undef QD0_ENABLED
    1626             : 
    1627             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1628             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1629             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1630             : 
    1631             : #define QD1_ENABLED 1
    1632             : 
    1633             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1634             : 
    1635             : #define RK_ENABLED 1
    1636             : 
    1637             : #if RK5_ENABLED
    1638             :     module procedure getQuanNEXT_ND1_QD1_WTR_RK5
    1639             :         use pm_kind, only: TKC => RK5
    1640             : #include "pm_sampleQuan@routines.inc.F90"
    1641             :     end procedure
    1642             : #endif
    1643             : 
    1644             : #if RK4_ENABLED
    1645           0 :     module procedure getQuanNEXT_ND1_QD1_WTR_RK4
    1646             :         use pm_kind, only: TKC => RK4
    1647             : #include "pm_sampleQuan@routines.inc.F90"
    1648           0 :     end procedure
    1649             : #endif
    1650             : 
    1651             : #if RK3_ENABLED
    1652           0 :     module procedure getQuanNEXT_ND1_QD1_WTR_RK3
    1653             :         use pm_kind, only: TKC => RK3
    1654             : #include "pm_sampleQuan@routines.inc.F90"
    1655           0 :     end procedure
    1656             : #endif
    1657             : 
    1658             : #if RK2_ENABLED
    1659           0 :     module procedure getQuanNEXT_ND1_QD1_WTR_RK2
    1660             :         use pm_kind, only: TKC => RK2
    1661             : #include "pm_sampleQuan@routines.inc.F90"
    1662           0 :     end procedure
    1663             : #endif
    1664             : 
    1665             : #if RK1_ENABLED
    1666           1 :     module procedure getQuanNEXT_ND1_QD1_WTR_RK1
    1667             :         use pm_kind, only: TKC => RK1
    1668             : #include "pm_sampleQuan@routines.inc.F90"
    1669           1 :     end procedure
    1670             : #endif
    1671             : 
    1672             : #undef RK_ENABLED
    1673             : 
    1674             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1675             : 
    1676             : #undef QD1_ENABLED
    1677             : 
    1678             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1679             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1680             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1681             : 
    1682             : #undef NEXT_ENABLED
    1683             : 
    1684             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1685             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1686             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1687             : 
    1688             : #define PREV_ENABLED 1
    1689             : 
    1690             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1691             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1692             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1693             : 
    1694             : #define QD0_ENABLED 1
    1695             : 
    1696             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1697             : 
    1698             : #define RK_ENABLED 1
    1699             : 
    1700             : #if RK5_ENABLED
    1701             :     module procedure getQuanPREV_ND1_QD0_WTR_RK5
    1702             :         use pm_kind, only: TKC => RK5
    1703             : #include "pm_sampleQuan@routines.inc.F90"
    1704             :     end procedure
    1705             : #endif
    1706             : 
    1707             : #if RK4_ENABLED
    1708           0 :     module procedure getQuanPREV_ND1_QD0_WTR_RK4
    1709             :         use pm_kind, only: TKC => RK4
    1710             : #include "pm_sampleQuan@routines.inc.F90"
    1711           0 :     end procedure
    1712             : #endif
    1713             : 
    1714             : #if RK3_ENABLED
    1715           0 :     module procedure getQuanPREV_ND1_QD0_WTR_RK3
    1716             :         use pm_kind, only: TKC => RK3
    1717             : #include "pm_sampleQuan@routines.inc.F90"
    1718           0 :     end procedure
    1719             : #endif
    1720             : 
    1721             : #if RK2_ENABLED
    1722           0 :     module procedure getQuanPREV_ND1_QD0_WTR_RK2
    1723             :         use pm_kind, only: TKC => RK2
    1724             : #include "pm_sampleQuan@routines.inc.F90"
    1725           0 :     end procedure
    1726             : #endif
    1727             : 
    1728             : #if RK1_ENABLED
    1729           0 :     module procedure getQuanPREV_ND1_QD0_WTR_RK1
    1730             :         use pm_kind, only: TKC => RK1
    1731             : #include "pm_sampleQuan@routines.inc.F90"
    1732           0 :     end procedure
    1733             : #endif
    1734             : 
    1735             : #undef RK_ENABLED
    1736             : 
    1737             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1738             : 
    1739             : #undef QD0_ENABLED
    1740             : 
    1741             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1742             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1743             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1744             : 
    1745             : #define QD1_ENABLED 1
    1746             : 
    1747             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1748             : 
    1749             : #define RK_ENABLED 1
    1750             : 
    1751             : #if RK5_ENABLED
    1752             :     module procedure getQuanPREV_ND1_QD1_WTR_RK5
    1753             :         use pm_kind, only: TKC => RK5
    1754             : #include "pm_sampleQuan@routines.inc.F90"
    1755             :     end procedure
    1756             : #endif
    1757             : 
    1758             : #if RK4_ENABLED
    1759           0 :     module procedure getQuanPREV_ND1_QD1_WTR_RK4
    1760             :         use pm_kind, only: TKC => RK4
    1761             : #include "pm_sampleQuan@routines.inc.F90"
    1762           0 :     end procedure
    1763             : #endif
    1764             : 
    1765             : #if RK3_ENABLED
    1766           0 :     module procedure getQuanPREV_ND1_QD1_WTR_RK3
    1767             :         use pm_kind, only: TKC => RK3
    1768             : #include "pm_sampleQuan@routines.inc.F90"
    1769           0 :     end procedure
    1770             : #endif
    1771             : 
    1772             : #if RK2_ENABLED
    1773           0 :     module procedure getQuanPREV_ND1_QD1_WTR_RK2
    1774             :         use pm_kind, only: TKC => RK2
    1775             : #include "pm_sampleQuan@routines.inc.F90"
    1776           0 :     end procedure
    1777             : #endif
    1778             : 
    1779             : #if RK1_ENABLED
    1780           1 :     module procedure getQuanPREV_ND1_QD1_WTR_RK1
    1781             :         use pm_kind, only: TKC => RK1
    1782             : #include "pm_sampleQuan@routines.inc.F90"
    1783           1 :     end procedure
    1784             : #endif
    1785             : 
    1786             : #undef RK_ENABLED
    1787             : 
    1788             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1789             : 
    1790             : #undef QD1_ENABLED
    1791             : 
    1792             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1793             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1794             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1795             : 
    1796             : #undef PREV_ENABLED
    1797             : 
    1798             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1799             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1800             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1801             : 
    1802             : #undef WTR_ENABLED
    1803             : 
    1804             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1805             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1806             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1807             : 
    1808             : #undef ND1_ENABLED
    1809             : 
    1810             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1811             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1812             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1813             : 
    1814             : #define ND2_ENABLED 1
    1815             : 
    1816             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1817             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1818             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1819             : 
    1820             : #define WNO_ENABLED 1
    1821             : 
    1822             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1823             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1824             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1825             : 
    1826             : #define PWLN_ENABLED 1
    1827             : 
    1828             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1829             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1830             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1831             : 
    1832             : #define QD0_ENABLED 1
    1833             : 
    1834             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1835             : 
    1836             : #define RK_ENABLED 1
    1837             : 
    1838             : #if RK5_ENABLED
    1839             :     module procedure getQuanPWLN_ND2_QD0_WNO_RK5
    1840             :         use pm_kind, only: TKC => RK5
    1841             : #include "pm_sampleQuan@routines.inc.F90"
    1842             :     end procedure
    1843             : #endif
    1844             : 
    1845             : #if RK4_ENABLED
    1846           0 :     module procedure getQuanPWLN_ND2_QD0_WNO_RK4
    1847             :         use pm_kind, only: TKC => RK4
    1848             : #include "pm_sampleQuan@routines.inc.F90"
    1849           0 :     end procedure
    1850             : #endif
    1851             : 
    1852             : #if RK3_ENABLED
    1853           0 :     module procedure getQuanPWLN_ND2_QD0_WNO_RK3
    1854             :         use pm_kind, only: TKC => RK3
    1855             : #include "pm_sampleQuan@routines.inc.F90"
    1856           0 :     end procedure
    1857             : #endif
    1858             : 
    1859             : #if RK2_ENABLED
    1860           0 :     module procedure getQuanPWLN_ND2_QD0_WNO_RK2
    1861             :         use pm_kind, only: TKC => RK2
    1862             : #include "pm_sampleQuan@routines.inc.F90"
    1863           0 :     end procedure
    1864             : #endif
    1865             : 
    1866             : #if RK1_ENABLED
    1867           2 :     module procedure getQuanPWLN_ND2_QD0_WNO_RK1
    1868             :         use pm_kind, only: TKC => RK1
    1869             : #include "pm_sampleQuan@routines.inc.F90"
    1870           2 :     end procedure
    1871             : #endif
    1872             : 
    1873             : #undef RK_ENABLED
    1874             : 
    1875             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1876             : 
    1877             : #undef QD0_ENABLED
    1878             : 
    1879             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1880             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1881             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1882             : 
    1883             : #define QD1_ENABLED 1
    1884             : 
    1885             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1886             : 
    1887             : #define RK_ENABLED 1
    1888             : 
    1889             : #if RK5_ENABLED
    1890             :     module procedure getQuanPWLN_ND2_QD1_WNO_RK5
    1891             :         use pm_kind, only: TKC => RK5
    1892             : #include "pm_sampleQuan@routines.inc.F90"
    1893             :     end procedure
    1894             : #endif
    1895             : 
    1896             : #if RK4_ENABLED
    1897           0 :     module procedure getQuanPWLN_ND2_QD1_WNO_RK4
    1898             :         use pm_kind, only: TKC => RK4
    1899             : #include "pm_sampleQuan@routines.inc.F90"
    1900           0 :     end procedure
    1901             : #endif
    1902             : 
    1903             : #if RK3_ENABLED
    1904           0 :     module procedure getQuanPWLN_ND2_QD1_WNO_RK3
    1905             :         use pm_kind, only: TKC => RK3
    1906             : #include "pm_sampleQuan@routines.inc.F90"
    1907           0 :     end procedure
    1908             : #endif
    1909             : 
    1910             : #if RK2_ENABLED
    1911           0 :     module procedure getQuanPWLN_ND2_QD1_WNO_RK2
    1912             :         use pm_kind, only: TKC => RK2
    1913             : #include "pm_sampleQuan@routines.inc.F90"
    1914           0 :     end procedure
    1915             : #endif
    1916             : 
    1917             : #if RK1_ENABLED
    1918           2 :     module procedure getQuanPWLN_ND2_QD1_WNO_RK1
    1919             :         use pm_kind, only: TKC => RK1
    1920             : #include "pm_sampleQuan@routines.inc.F90"
    1921           2 :     end procedure
    1922             : #endif
    1923             : 
    1924             : #undef RK_ENABLED
    1925             : 
    1926             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1927             : 
    1928             : #undef QD1_ENABLED
    1929             : 
    1930             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1931             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1932             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1933             : 
    1934             : #undef PWLN_ENABLED
    1935             : 
    1936             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1937             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1938             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1939             : 
    1940             : #define MEAN_ENABLED 1
    1941             : 
    1942             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1943             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1944             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1945             : 
    1946             : #define QD0_ENABLED 1
    1947             : 
    1948             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1949             : 
    1950             : #define RK_ENABLED 1
    1951             : 
    1952             : #if RK5_ENABLED
    1953             :     module procedure getQuanMEAN_ND2_QD0_WNO_RK5
    1954             :         use pm_kind, only: TKC => RK5
    1955             : #include "pm_sampleQuan@routines.inc.F90"
    1956             :     end procedure
    1957             : #endif
    1958             : 
    1959             : #if RK4_ENABLED
    1960           0 :     module procedure getQuanMEAN_ND2_QD0_WNO_RK4
    1961             :         use pm_kind, only: TKC => RK4
    1962             : #include "pm_sampleQuan@routines.inc.F90"
    1963           0 :     end procedure
    1964             : #endif
    1965             : 
    1966             : #if RK3_ENABLED
    1967           0 :     module procedure getQuanMEAN_ND2_QD0_WNO_RK3
    1968             :         use pm_kind, only: TKC => RK3
    1969             : #include "pm_sampleQuan@routines.inc.F90"
    1970           0 :     end procedure
    1971             : #endif
    1972             : 
    1973             : #if RK2_ENABLED
    1974           0 :     module procedure getQuanMEAN_ND2_QD0_WNO_RK2
    1975             :         use pm_kind, only: TKC => RK2
    1976             : #include "pm_sampleQuan@routines.inc.F90"
    1977           0 :     end procedure
    1978             : #endif
    1979             : 
    1980             : #if RK1_ENABLED
    1981           2 :     module procedure getQuanMEAN_ND2_QD0_WNO_RK1
    1982             :         use pm_kind, only: TKC => RK1
    1983             : #include "pm_sampleQuan@routines.inc.F90"
    1984           2 :     end procedure
    1985             : #endif
    1986             : 
    1987             : #undef RK_ENABLED
    1988             : 
    1989             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1990             : 
    1991             : #undef QD0_ENABLED
    1992             : 
    1993             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1994             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1995             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1996             : 
    1997             : #define QD1_ENABLED 1
    1998             : 
    1999             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2000             : 
    2001             : #define RK_ENABLED 1
    2002             : 
    2003             : #if RK5_ENABLED
    2004             :     module procedure getQuanMEAN_ND2_QD1_WNO_RK5
    2005             :         use pm_kind, only: TKC => RK5
    2006             : #include "pm_sampleQuan@routines.inc.F90"
    2007             :     end procedure
    2008             : #endif
    2009             : 
    2010             : #if RK4_ENABLED
    2011           0 :     module procedure getQuanMEAN_ND2_QD1_WNO_RK4
    2012             :         use pm_kind, only: TKC => RK4
    2013             : #include "pm_sampleQuan@routines.inc.F90"
    2014           0 :     end procedure
    2015             : #endif
    2016             : 
    2017             : #if RK3_ENABLED
    2018           0 :     module procedure getQuanMEAN_ND2_QD1_WNO_RK3
    2019             :         use pm_kind, only: TKC => RK3
    2020             : #include "pm_sampleQuan@routines.inc.F90"
    2021           0 :     end procedure
    2022             : #endif
    2023             : 
    2024             : #if RK2_ENABLED
    2025           0 :     module procedure getQuanMEAN_ND2_QD1_WNO_RK2
    2026             :         use pm_kind, only: TKC => RK2
    2027             : #include "pm_sampleQuan@routines.inc.F90"
    2028           0 :     end procedure
    2029             : #endif
    2030             : 
    2031             : #if RK1_ENABLED
    2032           2 :     module procedure getQuanMEAN_ND2_QD1_WNO_RK1
    2033             :         use pm_kind, only: TKC => RK1
    2034             : #include "pm_sampleQuan@routines.inc.F90"
    2035           2 :     end procedure
    2036             : #endif
    2037             : 
    2038             : #undef RK_ENABLED
    2039             : 
    2040             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2041             : 
    2042             : #undef QD1_ENABLED
    2043             : 
    2044             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2045             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2046             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2047             : 
    2048             : #undef MEAN_ENABLED
    2049             : 
    2050             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2051             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2052             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2053             : 
    2054             : #define NEAR_ENABLED 1
    2055             : 
    2056             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2057             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2058             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2059             : 
    2060             : #define QD0_ENABLED 1
    2061             : 
    2062             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2063             : 
    2064             : #define RK_ENABLED 1
    2065             : 
    2066             : #if RK5_ENABLED
    2067             :     module procedure getQuanNEAR_ND2_QD0_WNO_RK5
    2068             :         use pm_kind, only: TKC => RK5
    2069             : #include "pm_sampleQuan@routines.inc.F90"
    2070             :     end procedure
    2071             : #endif
    2072             : 
    2073             : #if RK4_ENABLED
    2074           0 :     module procedure getQuanNEAR_ND2_QD0_WNO_RK4
    2075             :         use pm_kind, only: TKC => RK4
    2076             : #include "pm_sampleQuan@routines.inc.F90"
    2077           0 :     end procedure
    2078             : #endif
    2079             : 
    2080             : #if RK3_ENABLED
    2081           0 :     module procedure getQuanNEAR_ND2_QD0_WNO_RK3
    2082             :         use pm_kind, only: TKC => RK3
    2083             : #include "pm_sampleQuan@routines.inc.F90"
    2084           0 :     end procedure
    2085             : #endif
    2086             : 
    2087             : #if RK2_ENABLED
    2088           0 :     module procedure getQuanNEAR_ND2_QD0_WNO_RK2
    2089             :         use pm_kind, only: TKC => RK2
    2090             : #include "pm_sampleQuan@routines.inc.F90"
    2091           0 :     end procedure
    2092             : #endif
    2093             : 
    2094             : #if RK1_ENABLED
    2095           2 :     module procedure getQuanNEAR_ND2_QD0_WNO_RK1
    2096             :         use pm_kind, only: TKC => RK1
    2097             : #include "pm_sampleQuan@routines.inc.F90"
    2098           2 :     end procedure
    2099             : #endif
    2100             : 
    2101             : #undef RK_ENABLED
    2102             : 
    2103             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2104             : 
    2105             : #undef QD0_ENABLED
    2106             : 
    2107             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2108             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2109             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2110             : 
    2111             : #define QD1_ENABLED 1
    2112             : 
    2113             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2114             : 
    2115             : #define RK_ENABLED 1
    2116             : 
    2117             : #if RK5_ENABLED
    2118             :     module procedure getQuanNEAR_ND2_QD1_WNO_RK5
    2119             :         use pm_kind, only: TKC => RK5
    2120             : #include "pm_sampleQuan@routines.inc.F90"
    2121             :     end procedure
    2122             : #endif
    2123             : 
    2124             : #if RK4_ENABLED
    2125           0 :     module procedure getQuanNEAR_ND2_QD1_WNO_RK4
    2126             :         use pm_kind, only: TKC => RK4
    2127             : #include "pm_sampleQuan@routines.inc.F90"
    2128           0 :     end procedure
    2129             : #endif
    2130             : 
    2131             : #if RK3_ENABLED
    2132           0 :     module procedure getQuanNEAR_ND2_QD1_WNO_RK3
    2133             :         use pm_kind, only: TKC => RK3
    2134             : #include "pm_sampleQuan@routines.inc.F90"
    2135           0 :     end procedure
    2136             : #endif
    2137             : 
    2138             : #if RK2_ENABLED
    2139           0 :     module procedure getQuanNEAR_ND2_QD1_WNO_RK2
    2140             :         use pm_kind, only: TKC => RK2
    2141             : #include "pm_sampleQuan@routines.inc.F90"
    2142           0 :     end procedure
    2143             : #endif
    2144             : 
    2145             : #if RK1_ENABLED
    2146           2 :     module procedure getQuanNEAR_ND2_QD1_WNO_RK1
    2147             :         use pm_kind, only: TKC => RK1
    2148             : #include "pm_sampleQuan@routines.inc.F90"
    2149           2 :     end procedure
    2150             : #endif
    2151             : 
    2152             : #undef RK_ENABLED
    2153             : 
    2154             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2155             : 
    2156             : #undef QD1_ENABLED
    2157             : 
    2158             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2159             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2160             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2161             : 
    2162             : #undef NEAR_ENABLED
    2163             : 
    2164             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2165             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2166             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2167             : 
    2168             : #define NEXT_ENABLED 1
    2169             : 
    2170             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2171             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2172             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2173             : 
    2174             : #define QD0_ENABLED 1
    2175             : 
    2176             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2177             : 
    2178             : #define RK_ENABLED 1
    2179             : 
    2180             : #if RK5_ENABLED
    2181             :     module procedure getQuanNEXT_ND2_QD0_WNO_RK5
    2182             :         use pm_kind, only: TKC => RK5
    2183             : #include "pm_sampleQuan@routines.inc.F90"
    2184             :     end procedure
    2185             : #endif
    2186             : 
    2187             : #if RK4_ENABLED
    2188           0 :     module procedure getQuanNEXT_ND2_QD0_WNO_RK4
    2189             :         use pm_kind, only: TKC => RK4
    2190             : #include "pm_sampleQuan@routines.inc.F90"
    2191           0 :     end procedure
    2192             : #endif
    2193             : 
    2194             : #if RK3_ENABLED
    2195           0 :     module procedure getQuanNEXT_ND2_QD0_WNO_RK3
    2196             :         use pm_kind, only: TKC => RK3
    2197             : #include "pm_sampleQuan@routines.inc.F90"
    2198           0 :     end procedure
    2199             : #endif
    2200             : 
    2201             : #if RK2_ENABLED
    2202           0 :     module procedure getQuanNEXT_ND2_QD0_WNO_RK2
    2203             :         use pm_kind, only: TKC => RK2
    2204             : #include "pm_sampleQuan@routines.inc.F90"
    2205           0 :     end procedure
    2206             : #endif
    2207             : 
    2208             : #if RK1_ENABLED
    2209           2 :     module procedure getQuanNEXT_ND2_QD0_WNO_RK1
    2210             :         use pm_kind, only: TKC => RK1
    2211             : #include "pm_sampleQuan@routines.inc.F90"
    2212           2 :     end procedure
    2213             : #endif
    2214             : 
    2215             : #undef RK_ENABLED
    2216             : 
    2217             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2218             : 
    2219             : #undef QD0_ENABLED
    2220             : 
    2221             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2222             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2223             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2224             : 
    2225             : #define QD1_ENABLED 1
    2226             : 
    2227             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2228             : 
    2229             : #define RK_ENABLED 1
    2230             : 
    2231             : #if RK5_ENABLED
    2232             :     module procedure getQuanNEXT_ND2_QD1_WNO_RK5
    2233             :         use pm_kind, only: TKC => RK5
    2234             : #include "pm_sampleQuan@routines.inc.F90"
    2235             :     end procedure
    2236             : #endif
    2237             : 
    2238             : #if RK4_ENABLED
    2239           0 :     module procedure getQuanNEXT_ND2_QD1_WNO_RK4
    2240             :         use pm_kind, only: TKC => RK4
    2241             : #include "pm_sampleQuan@routines.inc.F90"
    2242           0 :     end procedure
    2243             : #endif
    2244             : 
    2245             : #if RK3_ENABLED
    2246           0 :     module procedure getQuanNEXT_ND2_QD1_WNO_RK3
    2247             :         use pm_kind, only: TKC => RK3
    2248             : #include "pm_sampleQuan@routines.inc.F90"
    2249           0 :     end procedure
    2250             : #endif
    2251             : 
    2252             : #if RK2_ENABLED
    2253           0 :     module procedure getQuanNEXT_ND2_QD1_WNO_RK2
    2254             :         use pm_kind, only: TKC => RK2
    2255             : #include "pm_sampleQuan@routines.inc.F90"
    2256           0 :     end procedure
    2257             : #endif
    2258             : 
    2259             : #if RK1_ENABLED
    2260           2 :     module procedure getQuanNEXT_ND2_QD1_WNO_RK1
    2261             :         use pm_kind, only: TKC => RK1
    2262             : #include "pm_sampleQuan@routines.inc.F90"
    2263           2 :     end procedure
    2264             : #endif
    2265             : 
    2266             : #undef RK_ENABLED
    2267             : 
    2268             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2269             : 
    2270             : #undef QD1_ENABLED
    2271             : 
    2272             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2273             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2274             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2275             : 
    2276             : #undef NEXT_ENABLED
    2277             : 
    2278             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2279             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2280             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2281             : 
    2282             : #define PREV_ENABLED 1
    2283             : 
    2284             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2285             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2286             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2287             : 
    2288             : #define QD0_ENABLED 1
    2289             : 
    2290             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2291             : 
    2292             : #define RK_ENABLED 1
    2293             : 
    2294             : #if RK5_ENABLED
    2295             :     module procedure getQuanPREV_ND2_QD0_WNO_RK5
    2296             :         use pm_kind, only: TKC => RK5
    2297             : #include "pm_sampleQuan@routines.inc.F90"
    2298             :     end procedure
    2299             : #endif
    2300             : 
    2301             : #if RK4_ENABLED
    2302           0 :     module procedure getQuanPREV_ND2_QD0_WNO_RK4
    2303             :         use pm_kind, only: TKC => RK4
    2304             : #include "pm_sampleQuan@routines.inc.F90"
    2305           0 :     end procedure
    2306             : #endif
    2307             : 
    2308             : #if RK3_ENABLED
    2309           0 :     module procedure getQuanPREV_ND2_QD0_WNO_RK3
    2310             :         use pm_kind, only: TKC => RK3
    2311             : #include "pm_sampleQuan@routines.inc.F90"
    2312           0 :     end procedure
    2313             : #endif
    2314             : 
    2315             : #if RK2_ENABLED
    2316           0 :     module procedure getQuanPREV_ND2_QD0_WNO_RK2
    2317             :         use pm_kind, only: TKC => RK2
    2318             : #include "pm_sampleQuan@routines.inc.F90"
    2319           0 :     end procedure
    2320             : #endif
    2321             : 
    2322             : #if RK1_ENABLED
    2323           2 :     module procedure getQuanPREV_ND2_QD0_WNO_RK1
    2324             :         use pm_kind, only: TKC => RK1
    2325             : #include "pm_sampleQuan@routines.inc.F90"
    2326           2 :     end procedure
    2327             : #endif
    2328             : 
    2329             : #undef RK_ENABLED
    2330             : 
    2331             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2332             : 
    2333             : #undef QD0_ENABLED
    2334             : 
    2335             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2336             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2337             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2338             : 
    2339             : #define QD1_ENABLED 1
    2340             : 
    2341             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2342             : 
    2343             : #define RK_ENABLED 1
    2344             : 
    2345             : #if RK5_ENABLED
    2346             :     module procedure getQuanPREV_ND2_QD1_WNO_RK5
    2347             :         use pm_kind, only: TKC => RK5
    2348             : #include "pm_sampleQuan@routines.inc.F90"
    2349             :     end procedure
    2350             : #endif
    2351             : 
    2352             : #if RK4_ENABLED
    2353           0 :     module procedure getQuanPREV_ND2_QD1_WNO_RK4
    2354             :         use pm_kind, only: TKC => RK4
    2355             : #include "pm_sampleQuan@routines.inc.F90"
    2356           0 :     end procedure
    2357             : #endif
    2358             : 
    2359             : #if RK3_ENABLED
    2360           0 :     module procedure getQuanPREV_ND2_QD1_WNO_RK3
    2361             :         use pm_kind, only: TKC => RK3
    2362             : #include "pm_sampleQuan@routines.inc.F90"
    2363           0 :     end procedure
    2364             : #endif
    2365             : 
    2366             : #if RK2_ENABLED
    2367           0 :     module procedure getQuanPREV_ND2_QD1_WNO_RK2
    2368             :         use pm_kind, only: TKC => RK2
    2369             : #include "pm_sampleQuan@routines.inc.F90"
    2370           0 :     end procedure
    2371             : #endif
    2372             : 
    2373             : #if RK1_ENABLED
    2374           2 :     module procedure getQuanPREV_ND2_QD1_WNO_RK1
    2375             :         use pm_kind, only: TKC => RK1
    2376             : #include "pm_sampleQuan@routines.inc.F90"
    2377           2 :     end procedure
    2378             : #endif
    2379             : 
    2380             : #undef RK_ENABLED
    2381             : 
    2382             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2383             : 
    2384             : #undef QD1_ENABLED
    2385             : 
    2386             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2387             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2388             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2389             : 
    2390             : #undef PREV_ENABLED
    2391             : 
    2392             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2393             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2394             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2395             : 
    2396             : #undef WNO_ENABLED
    2397             : 
    2398             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2399             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2400             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2401             : 
    2402             : #define WTI_ENABLED 1
    2403             : 
    2404             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2405             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2406             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2407             : 
    2408             : #define PWLN_ENABLED 1
    2409             : 
    2410             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2411             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2412             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2413             : 
    2414             : #define QD0_ENABLED 1
    2415             : 
    2416             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2417             : 
    2418             : #define RK_ENABLED 1
    2419             : 
    2420             : #if RK5_ENABLED
    2421             :     module procedure getQuanPWLN_ND2_QD0_WTI_RK5
    2422             :         use pm_kind, only: TKC => RK5
    2423             : #include "pm_sampleQuan@routines.inc.F90"
    2424             :     end procedure
    2425             : #endif
    2426             : 
    2427             : #if RK4_ENABLED
    2428           0 :     module procedure getQuanPWLN_ND2_QD0_WTI_RK4
    2429             :         use pm_kind, only: TKC => RK4
    2430             : #include "pm_sampleQuan@routines.inc.F90"
    2431           0 :     end procedure
    2432             : #endif
    2433             : 
    2434             : #if RK3_ENABLED
    2435           0 :     module procedure getQuanPWLN_ND2_QD0_WTI_RK3
    2436             :         use pm_kind, only: TKC => RK3
    2437             : #include "pm_sampleQuan@routines.inc.F90"
    2438           0 :     end procedure
    2439             : #endif
    2440             : 
    2441             : #if RK2_ENABLED
    2442           0 :     module procedure getQuanPWLN_ND2_QD0_WTI_RK2
    2443             :         use pm_kind, only: TKC => RK2
    2444             : #include "pm_sampleQuan@routines.inc.F90"
    2445           0 :     end procedure
    2446             : #endif
    2447             : 
    2448             : #if RK1_ENABLED
    2449           1 :     module procedure getQuanPWLN_ND2_QD0_WTI_RK1
    2450             :         use pm_kind, only: TKC => RK1
    2451             : #include "pm_sampleQuan@routines.inc.F90"
    2452           1 :     end procedure
    2453             : #endif
    2454             : 
    2455             : #undef RK_ENABLED
    2456             : 
    2457             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2458             : 
    2459             : #undef QD0_ENABLED
    2460             : 
    2461             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2462             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2463             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2464             : 
    2465             : #define QD1_ENABLED 1
    2466             : 
    2467             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2468             : 
    2469             : #define RK_ENABLED 1
    2470             : 
    2471             : #if RK5_ENABLED
    2472             :     module procedure getQuanPWLN_ND2_QD1_WTI_RK5
    2473             :         use pm_kind, only: TKC => RK5
    2474             : #include "pm_sampleQuan@routines.inc.F90"
    2475             :     end procedure
    2476             : #endif
    2477             : 
    2478             : #if RK4_ENABLED
    2479           0 :     module procedure getQuanPWLN_ND2_QD1_WTI_RK4
    2480             :         use pm_kind, only: TKC => RK4
    2481             : #include "pm_sampleQuan@routines.inc.F90"
    2482           0 :     end procedure
    2483             : #endif
    2484             : 
    2485             : #if RK3_ENABLED
    2486           0 :     module procedure getQuanPWLN_ND2_QD1_WTI_RK3
    2487             :         use pm_kind, only: TKC => RK3
    2488             : #include "pm_sampleQuan@routines.inc.F90"
    2489           0 :     end procedure
    2490             : #endif
    2491             : 
    2492             : #if RK2_ENABLED
    2493           0 :     module procedure getQuanPWLN_ND2_QD1_WTI_RK2
    2494             :         use pm_kind, only: TKC => RK2
    2495             : #include "pm_sampleQuan@routines.inc.F90"
    2496           0 :     end procedure
    2497             : #endif
    2498             : 
    2499             : #if RK1_ENABLED
    2500           1 :     module procedure getQuanPWLN_ND2_QD1_WTI_RK1
    2501             :         use pm_kind, only: TKC => RK1
    2502             : #include "pm_sampleQuan@routines.inc.F90"
    2503           1 :     end procedure
    2504             : #endif
    2505             : 
    2506             : #undef RK_ENABLED
    2507             : 
    2508             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2509             : 
    2510             : #undef QD1_ENABLED
    2511             : 
    2512             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2513             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2514             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2515             : 
    2516             : #undef PWLN_ENABLED
    2517             : 
    2518             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2519             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2520             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2521             : 
    2522             : #define MEAN_ENABLED 1
    2523             : 
    2524             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2525             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2526             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2527             : 
    2528             : #define QD0_ENABLED 1
    2529             : 
    2530             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2531             : 
    2532             : #define RK_ENABLED 1
    2533             : 
    2534             : #if RK5_ENABLED
    2535             :     module procedure getQuanMEAN_ND2_QD0_WTI_RK5
    2536             :         use pm_kind, only: TKC => RK5
    2537             : #include "pm_sampleQuan@routines.inc.F90"
    2538             :     end procedure
    2539             : #endif
    2540             : 
    2541             : #if RK4_ENABLED
    2542           0 :     module procedure getQuanMEAN_ND2_QD0_WTI_RK4
    2543             :         use pm_kind, only: TKC => RK4
    2544             : #include "pm_sampleQuan@routines.inc.F90"
    2545           0 :     end procedure
    2546             : #endif
    2547             : 
    2548             : #if RK3_ENABLED
    2549           0 :     module procedure getQuanMEAN_ND2_QD0_WTI_RK3
    2550             :         use pm_kind, only: TKC => RK3
    2551             : #include "pm_sampleQuan@routines.inc.F90"
    2552           0 :     end procedure
    2553             : #endif
    2554             : 
    2555             : #if RK2_ENABLED
    2556           0 :     module procedure getQuanMEAN_ND2_QD0_WTI_RK2
    2557             :         use pm_kind, only: TKC => RK2
    2558             : #include "pm_sampleQuan@routines.inc.F90"
    2559           0 :     end procedure
    2560             : #endif
    2561             : 
    2562             : #if RK1_ENABLED
    2563           1 :     module procedure getQuanMEAN_ND2_QD0_WTI_RK1
    2564             :         use pm_kind, only: TKC => RK1
    2565             : #include "pm_sampleQuan@routines.inc.F90"
    2566           1 :     end procedure
    2567             : #endif
    2568             : 
    2569             : #undef RK_ENABLED
    2570             : 
    2571             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2572             : 
    2573             : #undef QD0_ENABLED
    2574             : 
    2575             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2576             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2577             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2578             : 
    2579             : #define QD1_ENABLED 1
    2580             : 
    2581             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2582             : 
    2583             : #define RK_ENABLED 1
    2584             : 
    2585             : #if RK5_ENABLED
    2586             :     module procedure getQuanMEAN_ND2_QD1_WTI_RK5
    2587             :         use pm_kind, only: TKC => RK5
    2588             : #include "pm_sampleQuan@routines.inc.F90"
    2589             :     end procedure
    2590             : #endif
    2591             : 
    2592             : #if RK4_ENABLED
    2593           0 :     module procedure getQuanMEAN_ND2_QD1_WTI_RK4
    2594             :         use pm_kind, only: TKC => RK4
    2595             : #include "pm_sampleQuan@routines.inc.F90"
    2596           0 :     end procedure
    2597             : #endif
    2598             : 
    2599             : #if RK3_ENABLED
    2600           0 :     module procedure getQuanMEAN_ND2_QD1_WTI_RK3
    2601             :         use pm_kind, only: TKC => RK3
    2602             : #include "pm_sampleQuan@routines.inc.F90"
    2603           0 :     end procedure
    2604             : #endif
    2605             : 
    2606             : #if RK2_ENABLED
    2607           0 :     module procedure getQuanMEAN_ND2_QD1_WTI_RK2
    2608             :         use pm_kind, only: TKC => RK2
    2609             : #include "pm_sampleQuan@routines.inc.F90"
    2610           0 :     end procedure
    2611             : #endif
    2612             : 
    2613             : #if RK1_ENABLED
    2614           1 :     module procedure getQuanMEAN_ND2_QD1_WTI_RK1
    2615             :         use pm_kind, only: TKC => RK1
    2616             : #include "pm_sampleQuan@routines.inc.F90"
    2617           1 :     end procedure
    2618             : #endif
    2619             : 
    2620             : #undef RK_ENABLED
    2621             : 
    2622             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2623             : 
    2624             : #undef QD1_ENABLED
    2625             : 
    2626             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2627             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2628             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2629             : 
    2630             : #undef MEAN_ENABLED
    2631             : 
    2632             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2633             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2634             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2635             : 
    2636             : #define NEAR_ENABLED 1
    2637             : 
    2638             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2639             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2640             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2641             : 
    2642             : #define QD0_ENABLED 1
    2643             : 
    2644             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2645             : 
    2646             : #define RK_ENABLED 1
    2647             : 
    2648             : #if RK5_ENABLED
    2649             :     module procedure getQuanNEAR_ND2_QD0_WTI_RK5
    2650             :         use pm_kind, only: TKC => RK5
    2651             : #include "pm_sampleQuan@routines.inc.F90"
    2652             :     end procedure
    2653             : #endif
    2654             : 
    2655             : #if RK4_ENABLED
    2656           0 :     module procedure getQuanNEAR_ND2_QD0_WTI_RK4
    2657             :         use pm_kind, only: TKC => RK4
    2658             : #include "pm_sampleQuan@routines.inc.F90"
    2659           0 :     end procedure
    2660             : #endif
    2661             : 
    2662             : #if RK3_ENABLED
    2663           0 :     module procedure getQuanNEAR_ND2_QD0_WTI_RK3
    2664             :         use pm_kind, only: TKC => RK3
    2665             : #include "pm_sampleQuan@routines.inc.F90"
    2666           0 :     end procedure
    2667             : #endif
    2668             : 
    2669             : #if RK2_ENABLED
    2670           0 :     module procedure getQuanNEAR_ND2_QD0_WTI_RK2
    2671             :         use pm_kind, only: TKC => RK2
    2672             : #include "pm_sampleQuan@routines.inc.F90"
    2673           0 :     end procedure
    2674             : #endif
    2675             : 
    2676             : #if RK1_ENABLED
    2677           1 :     module procedure getQuanNEAR_ND2_QD0_WTI_RK1
    2678             :         use pm_kind, only: TKC => RK1
    2679             : #include "pm_sampleQuan@routines.inc.F90"
    2680           1 :     end procedure
    2681             : #endif
    2682             : 
    2683             : #undef RK_ENABLED
    2684             : 
    2685             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2686             : 
    2687             : #undef QD0_ENABLED
    2688             : 
    2689             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2690             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2691             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2692             : 
    2693             : #define QD1_ENABLED 1
    2694             : 
    2695             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2696             : 
    2697             : #define RK_ENABLED 1
    2698             : 
    2699             : #if RK5_ENABLED
    2700             :     module procedure getQuanNEAR_ND2_QD1_WTI_RK5
    2701             :         use pm_kind, only: TKC => RK5
    2702             : #include "pm_sampleQuan@routines.inc.F90"
    2703             :     end procedure
    2704             : #endif
    2705             : 
    2706             : #if RK4_ENABLED
    2707           0 :     module procedure getQuanNEAR_ND2_QD1_WTI_RK4
    2708             :         use pm_kind, only: TKC => RK4
    2709             : #include "pm_sampleQuan@routines.inc.F90"
    2710           0 :     end procedure
    2711             : #endif
    2712             : 
    2713             : #if RK3_ENABLED
    2714           0 :     module procedure getQuanNEAR_ND2_QD1_WTI_RK3
    2715             :         use pm_kind, only: TKC => RK3
    2716             : #include "pm_sampleQuan@routines.inc.F90"
    2717           0 :     end procedure
    2718             : #endif
    2719             : 
    2720             : #if RK2_ENABLED
    2721           0 :     module procedure getQuanNEAR_ND2_QD1_WTI_RK2
    2722             :         use pm_kind, only: TKC => RK2
    2723             : #include "pm_sampleQuan@routines.inc.F90"
    2724           0 :     end procedure
    2725             : #endif
    2726             : 
    2727             : #if RK1_ENABLED
    2728           1 :     module procedure getQuanNEAR_ND2_QD1_WTI_RK1
    2729             :         use pm_kind, only: TKC => RK1
    2730             : #include "pm_sampleQuan@routines.inc.F90"
    2731           1 :     end procedure
    2732             : #endif
    2733             : 
    2734             : #undef RK_ENABLED
    2735             : 
    2736             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2737             : 
    2738             : #undef QD1_ENABLED
    2739             : 
    2740             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2741             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2742             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2743             : 
    2744             : #undef NEAR_ENABLED
    2745             : 
    2746             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2747             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2748             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2749             : 
    2750             : #define NEXT_ENABLED 1
    2751             : 
    2752             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2753             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2754             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2755             : 
    2756             : #define QD0_ENABLED 1
    2757             : 
    2758             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2759             : 
    2760             : #define RK_ENABLED 1
    2761             : 
    2762             : #if RK5_ENABLED
    2763             :     module procedure getQuanNEXT_ND2_QD0_WTI_RK5
    2764             :         use pm_kind, only: TKC => RK5
    2765             : #include "pm_sampleQuan@routines.inc.F90"
    2766             :     end procedure
    2767             : #endif
    2768             : 
    2769             : #if RK4_ENABLED
    2770           0 :     module procedure getQuanNEXT_ND2_QD0_WTI_RK4
    2771             :         use pm_kind, only: TKC => RK4
    2772             : #include "pm_sampleQuan@routines.inc.F90"
    2773           0 :     end procedure
    2774             : #endif
    2775             : 
    2776             : #if RK3_ENABLED
    2777           0 :     module procedure getQuanNEXT_ND2_QD0_WTI_RK3
    2778             :         use pm_kind, only: TKC => RK3
    2779             : #include "pm_sampleQuan@routines.inc.F90"
    2780           0 :     end procedure
    2781             : #endif
    2782             : 
    2783             : #if RK2_ENABLED
    2784           0 :     module procedure getQuanNEXT_ND2_QD0_WTI_RK2
    2785             :         use pm_kind, only: TKC => RK2
    2786             : #include "pm_sampleQuan@routines.inc.F90"
    2787           0 :     end procedure
    2788             : #endif
    2789             : 
    2790             : #if RK1_ENABLED
    2791           1 :     module procedure getQuanNEXT_ND2_QD0_WTI_RK1
    2792             :         use pm_kind, only: TKC => RK1
    2793             : #include "pm_sampleQuan@routines.inc.F90"
    2794           1 :     end procedure
    2795             : #endif
    2796             : 
    2797             : #undef RK_ENABLED
    2798             : 
    2799             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2800             : 
    2801             : #undef QD0_ENABLED
    2802             : 
    2803             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2804             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2805             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2806             : 
    2807             : #define QD1_ENABLED 1
    2808             : 
    2809             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2810             : 
    2811             : #define RK_ENABLED 1
    2812             : 
    2813             : #if RK5_ENABLED
    2814             :     module procedure getQuanNEXT_ND2_QD1_WTI_RK5
    2815             :         use pm_kind, only: TKC => RK5
    2816             : #include "pm_sampleQuan@routines.inc.F90"
    2817             :     end procedure
    2818             : #endif
    2819             : 
    2820             : #if RK4_ENABLED
    2821           0 :     module procedure getQuanNEXT_ND2_QD1_WTI_RK4
    2822             :         use pm_kind, only: TKC => RK4
    2823             : #include "pm_sampleQuan@routines.inc.F90"
    2824           0 :     end procedure
    2825             : #endif
    2826             : 
    2827             : #if RK3_ENABLED
    2828           0 :     module procedure getQuanNEXT_ND2_QD1_WTI_RK3
    2829             :         use pm_kind, only: TKC => RK3
    2830             : #include "pm_sampleQuan@routines.inc.F90"
    2831           0 :     end procedure
    2832             : #endif
    2833             : 
    2834             : #if RK2_ENABLED
    2835           0 :     module procedure getQuanNEXT_ND2_QD1_WTI_RK2
    2836             :         use pm_kind, only: TKC => RK2
    2837             : #include "pm_sampleQuan@routines.inc.F90"
    2838           0 :     end procedure
    2839             : #endif
    2840             : 
    2841             : #if RK1_ENABLED
    2842           1 :     module procedure getQuanNEXT_ND2_QD1_WTI_RK1
    2843             :         use pm_kind, only: TKC => RK1
    2844             : #include "pm_sampleQuan@routines.inc.F90"
    2845           1 :     end procedure
    2846             : #endif
    2847             : 
    2848             : #undef RK_ENABLED
    2849             : 
    2850             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2851             : 
    2852             : #undef QD1_ENABLED
    2853             : 
    2854             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2855             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2856             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2857             : 
    2858             : #undef NEXT_ENABLED
    2859             : 
    2860             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2861             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2862             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2863             : 
    2864             : #define PREV_ENABLED 1
    2865             : 
    2866             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2867             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2868             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2869             : 
    2870             : #define QD0_ENABLED 1
    2871             : 
    2872             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2873             : 
    2874             : #define RK_ENABLED 1
    2875             : 
    2876             : #if RK5_ENABLED
    2877             :     module procedure getQuanPREV_ND2_QD0_WTI_RK5
    2878             :         use pm_kind, only: TKC => RK5
    2879             : #include "pm_sampleQuan@routines.inc.F90"
    2880             :     end procedure
    2881             : #endif
    2882             : 
    2883             : #if RK4_ENABLED
    2884           0 :     module procedure getQuanPREV_ND2_QD0_WTI_RK4
    2885             :         use pm_kind, only: TKC => RK4
    2886             : #include "pm_sampleQuan@routines.inc.F90"
    2887           0 :     end procedure
    2888             : #endif
    2889             : 
    2890             : #if RK3_ENABLED
    2891           0 :     module procedure getQuanPREV_ND2_QD0_WTI_RK3
    2892             :         use pm_kind, only: TKC => RK3
    2893             : #include "pm_sampleQuan@routines.inc.F90"
    2894           0 :     end procedure
    2895             : #endif
    2896             : 
    2897             : #if RK2_ENABLED
    2898           0 :     module procedure getQuanPREV_ND2_QD0_WTI_RK2
    2899             :         use pm_kind, only: TKC => RK2
    2900             : #include "pm_sampleQuan@routines.inc.F90"
    2901           0 :     end procedure
    2902             : #endif
    2903             : 
    2904             : #if RK1_ENABLED
    2905           1 :     module procedure getQuanPREV_ND2_QD0_WTI_RK1
    2906             :         use pm_kind, only: TKC => RK1
    2907             : #include "pm_sampleQuan@routines.inc.F90"
    2908           1 :     end procedure
    2909             : #endif
    2910             : 
    2911             : #undef RK_ENABLED
    2912             : 
    2913             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2914             : 
    2915             : #undef QD0_ENABLED
    2916             : 
    2917             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2918             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2919             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2920             : 
    2921             : #define QD1_ENABLED 1
    2922             : 
    2923             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2924             : 
    2925             : #define RK_ENABLED 1
    2926             : 
    2927             : #if RK5_ENABLED
    2928             :     module procedure getQuanPREV_ND2_QD1_WTI_RK5
    2929             :         use pm_kind, only: TKC => RK5
    2930             : #include "pm_sampleQuan@routines.inc.F90"
    2931             :     end procedure
    2932             : #endif
    2933             : 
    2934             : #if RK4_ENABLED
    2935           0 :     module procedure getQuanPREV_ND2_QD1_WTI_RK4
    2936             :         use pm_kind, only: TKC => RK4
    2937             : #include "pm_sampleQuan@routines.inc.F90"
    2938           0 :     end procedure
    2939             : #endif
    2940             : 
    2941             : #if RK3_ENABLED
    2942           0 :     module procedure getQuanPREV_ND2_QD1_WTI_RK3
    2943             :         use pm_kind, only: TKC => RK3
    2944             : #include "pm_sampleQuan@routines.inc.F90"
    2945           0 :     end procedure
    2946             : #endif
    2947             : 
    2948             : #if RK2_ENABLED
    2949           0 :     module procedure getQuanPREV_ND2_QD1_WTI_RK2
    2950             :         use pm_kind, only: TKC => RK2
    2951             : #include "pm_sampleQuan@routines.inc.F90"
    2952           0 :     end procedure
    2953             : #endif
    2954             : 
    2955             : #if RK1_ENABLED
    2956           1 :     module procedure getQuanPREV_ND2_QD1_WTI_RK1
    2957             :         use pm_kind, only: TKC => RK1
    2958             : #include "pm_sampleQuan@routines.inc.F90"
    2959           1 :     end procedure
    2960             : #endif
    2961             : 
    2962             : #undef RK_ENABLED
    2963             : 
    2964             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2965             : 
    2966             : #undef QD1_ENABLED
    2967             : 
    2968             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2969             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2970             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2971             : 
    2972             : #undef PREV_ENABLED
    2973             : 
    2974             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2975             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2976             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2977             : 
    2978             : #undef WTI_ENABLED
    2979             : 
    2980             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2981             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2982             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2983             : 
    2984             : #define WTR_ENABLED 1
    2985             : 
    2986             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2987             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2988             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2989             : 
    2990             : #define PWLN_ENABLED 1
    2991             : 
    2992             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2993             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2994             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2995             : 
    2996             : #define QD0_ENABLED 1
    2997             : 
    2998             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2999             : 
    3000             : #define RK_ENABLED 1
    3001             : 
    3002             : #if RK5_ENABLED
    3003             :     module procedure getQuanPWLN_ND2_QD0_WTR_RK5
    3004             :         use pm_kind, only: TKC => RK5
    3005             : #include "pm_sampleQuan@routines.inc.F90"
    3006             :     end procedure
    3007             : #endif
    3008             : 
    3009             : #if RK4_ENABLED
    3010           0 :     module procedure getQuanPWLN_ND2_QD0_WTR_RK4
    3011             :         use pm_kind, only: TKC => RK4
    3012             : #include "pm_sampleQuan@routines.inc.F90"
    3013           0 :     end procedure
    3014             : #endif
    3015             : 
    3016             : #if RK3_ENABLED
    3017           0 :     module procedure getQuanPWLN_ND2_QD0_WTR_RK3
    3018             :         use pm_kind, only: TKC => RK3
    3019             : #include "pm_sampleQuan@routines.inc.F90"
    3020           0 :     end procedure
    3021             : #endif
    3022             : 
    3023             : #if RK2_ENABLED
    3024           0 :     module procedure getQuanPWLN_ND2_QD0_WTR_RK2
    3025             :         use pm_kind, only: TKC => RK2
    3026             : #include "pm_sampleQuan@routines.inc.F90"
    3027           0 :     end procedure
    3028             : #endif
    3029             : 
    3030             : #if RK1_ENABLED
    3031           1 :     module procedure getQuanPWLN_ND2_QD0_WTR_RK1
    3032             :         use pm_kind, only: TKC => RK1
    3033             : #include "pm_sampleQuan@routines.inc.F90"
    3034           1 :     end procedure
    3035             : #endif
    3036             : 
    3037             : #undef RK_ENABLED
    3038             : 
    3039             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3040             : 
    3041             : #undef QD0_ENABLED
    3042             : 
    3043             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3044             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3045             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3046             : 
    3047             : #define QD1_ENABLED 1
    3048             : 
    3049             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3050             : 
    3051             : #define RK_ENABLED 1
    3052             : 
    3053             : #if RK5_ENABLED
    3054             :     module procedure getQuanPWLN_ND2_QD1_WTR_RK5
    3055             :         use pm_kind, only: TKC => RK5
    3056             : #include "pm_sampleQuan@routines.inc.F90"
    3057             :     end procedure
    3058             : #endif
    3059             : 
    3060             : #if RK4_ENABLED
    3061           0 :     module procedure getQuanPWLN_ND2_QD1_WTR_RK4
    3062             :         use pm_kind, only: TKC => RK4
    3063             : #include "pm_sampleQuan@routines.inc.F90"
    3064           0 :     end procedure
    3065             : #endif
    3066             : 
    3067             : #if RK3_ENABLED
    3068           0 :     module procedure getQuanPWLN_ND2_QD1_WTR_RK3
    3069             :         use pm_kind, only: TKC => RK3
    3070             : #include "pm_sampleQuan@routines.inc.F90"
    3071           0 :     end procedure
    3072             : #endif
    3073             : 
    3074             : #if RK2_ENABLED
    3075           0 :     module procedure getQuanPWLN_ND2_QD1_WTR_RK2
    3076             :         use pm_kind, only: TKC => RK2
    3077             : #include "pm_sampleQuan@routines.inc.F90"
    3078           0 :     end procedure
    3079             : #endif
    3080             : 
    3081             : #if RK1_ENABLED
    3082           1 :     module procedure getQuanPWLN_ND2_QD1_WTR_RK1
    3083             :         use pm_kind, only: TKC => RK1
    3084             : #include "pm_sampleQuan@routines.inc.F90"
    3085           1 :     end procedure
    3086             : #endif
    3087             : 
    3088             : #undef RK_ENABLED
    3089             : 
    3090             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3091             : 
    3092             : #undef QD1_ENABLED
    3093             : 
    3094             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3095             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3096             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3097             : 
    3098             : #undef PWLN_ENABLED
    3099             : 
    3100             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3101             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3102             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3103             : 
    3104             : #define MEAN_ENABLED 1
    3105             : 
    3106             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3107             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3108             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3109             : 
    3110             : #define QD0_ENABLED 1
    3111             : 
    3112             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3113             : 
    3114             : #define RK_ENABLED 1
    3115             : 
    3116             : #if RK5_ENABLED
    3117             :     module procedure getQuanMEAN_ND2_QD0_WTR_RK5
    3118             :         use pm_kind, only: TKC => RK5
    3119             : #include "pm_sampleQuan@routines.inc.F90"
    3120             :     end procedure
    3121             : #endif
    3122             : 
    3123             : #if RK4_ENABLED
    3124           0 :     module procedure getQuanMEAN_ND2_QD0_WTR_RK4
    3125             :         use pm_kind, only: TKC => RK4
    3126             : #include "pm_sampleQuan@routines.inc.F90"
    3127           0 :     end procedure
    3128             : #endif
    3129             : 
    3130             : #if RK3_ENABLED
    3131           0 :     module procedure getQuanMEAN_ND2_QD0_WTR_RK3
    3132             :         use pm_kind, only: TKC => RK3
    3133             : #include "pm_sampleQuan@routines.inc.F90"
    3134           0 :     end procedure
    3135             : #endif
    3136             : 
    3137             : #if RK2_ENABLED
    3138           0 :     module procedure getQuanMEAN_ND2_QD0_WTR_RK2
    3139             :         use pm_kind, only: TKC => RK2
    3140             : #include "pm_sampleQuan@routines.inc.F90"
    3141           0 :     end procedure
    3142             : #endif
    3143             : 
    3144             : #if RK1_ENABLED
    3145           1 :     module procedure getQuanMEAN_ND2_QD0_WTR_RK1
    3146             :         use pm_kind, only: TKC => RK1
    3147             : #include "pm_sampleQuan@routines.inc.F90"
    3148           1 :     end procedure
    3149             : #endif
    3150             : 
    3151             : #undef RK_ENABLED
    3152             : 
    3153             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3154             : 
    3155             : #undef QD0_ENABLED
    3156             : 
    3157             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3158             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3159             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3160             : 
    3161             : #define QD1_ENABLED 1
    3162             : 
    3163             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3164             : 
    3165             : #define RK_ENABLED 1
    3166             : 
    3167             : #if RK5_ENABLED
    3168             :     module procedure getQuanMEAN_ND2_QD1_WTR_RK5
    3169             :         use pm_kind, only: TKC => RK5
    3170             : #include "pm_sampleQuan@routines.inc.F90"
    3171             :     end procedure
    3172             : #endif
    3173             : 
    3174             : #if RK4_ENABLED
    3175           0 :     module procedure getQuanMEAN_ND2_QD1_WTR_RK4
    3176             :         use pm_kind, only: TKC => RK4
    3177             : #include "pm_sampleQuan@routines.inc.F90"
    3178           0 :     end procedure
    3179             : #endif
    3180             : 
    3181             : #if RK3_ENABLED
    3182           0 :     module procedure getQuanMEAN_ND2_QD1_WTR_RK3
    3183             :         use pm_kind, only: TKC => RK3
    3184             : #include "pm_sampleQuan@routines.inc.F90"
    3185           0 :     end procedure
    3186             : #endif
    3187             : 
    3188             : #if RK2_ENABLED
    3189           0 :     module procedure getQuanMEAN_ND2_QD1_WTR_RK2
    3190             :         use pm_kind, only: TKC => RK2
    3191             : #include "pm_sampleQuan@routines.inc.F90"
    3192           0 :     end procedure
    3193             : #endif
    3194             : 
    3195             : #if RK1_ENABLED
    3196           1 :     module procedure getQuanMEAN_ND2_QD1_WTR_RK1
    3197             :         use pm_kind, only: TKC => RK1
    3198             : #include "pm_sampleQuan@routines.inc.F90"
    3199           1 :     end procedure
    3200             : #endif
    3201             : 
    3202             : #undef RK_ENABLED
    3203             : 
    3204             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3205             : 
    3206             : #undef QD1_ENABLED
    3207             : 
    3208             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3209             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3210             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3211             : 
    3212             : #undef MEAN_ENABLED
    3213             : 
    3214             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3215             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3216             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3217             : 
    3218             : #define NEAR_ENABLED 1
    3219             : 
    3220             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3221             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3222             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3223             : 
    3224             : #define QD0_ENABLED 1
    3225             : 
    3226             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3227             : 
    3228             : #define RK_ENABLED 1
    3229             : 
    3230             : #if RK5_ENABLED
    3231             :     module procedure getQuanNEAR_ND2_QD0_WTR_RK5
    3232             :         use pm_kind, only: TKC => RK5
    3233             : #include "pm_sampleQuan@routines.inc.F90"
    3234             :     end procedure
    3235             : #endif
    3236             : 
    3237             : #if RK4_ENABLED
    3238           0 :     module procedure getQuanNEAR_ND2_QD0_WTR_RK4
    3239             :         use pm_kind, only: TKC => RK4
    3240             : #include "pm_sampleQuan@routines.inc.F90"
    3241           0 :     end procedure
    3242             : #endif
    3243             : 
    3244             : #if RK3_ENABLED
    3245           0 :     module procedure getQuanNEAR_ND2_QD0_WTR_RK3
    3246             :         use pm_kind, only: TKC => RK3
    3247             : #include "pm_sampleQuan@routines.inc.F90"
    3248           0 :     end procedure
    3249             : #endif
    3250             : 
    3251             : #if RK2_ENABLED
    3252           0 :     module procedure getQuanNEAR_ND2_QD0_WTR_RK2
    3253             :         use pm_kind, only: TKC => RK2
    3254             : #include "pm_sampleQuan@routines.inc.F90"
    3255           0 :     end procedure
    3256             : #endif
    3257             : 
    3258             : #if RK1_ENABLED
    3259           1 :     module procedure getQuanNEAR_ND2_QD0_WTR_RK1
    3260             :         use pm_kind, only: TKC => RK1
    3261             : #include "pm_sampleQuan@routines.inc.F90"
    3262           1 :     end procedure
    3263             : #endif
    3264             : 
    3265             : #undef RK_ENABLED
    3266             : 
    3267             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3268             : 
    3269             : #undef QD0_ENABLED
    3270             : 
    3271             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3272             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3273             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3274             : 
    3275             : #define QD1_ENABLED 1
    3276             : 
    3277             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3278             : 
    3279             : #define RK_ENABLED 1
    3280             : 
    3281             : #if RK5_ENABLED
    3282             :     module procedure getQuanNEAR_ND2_QD1_WTR_RK5
    3283             :         use pm_kind, only: TKC => RK5
    3284             : #include "pm_sampleQuan@routines.inc.F90"
    3285             :     end procedure
    3286             : #endif
    3287             : 
    3288             : #if RK4_ENABLED
    3289           0 :     module procedure getQuanNEAR_ND2_QD1_WTR_RK4
    3290             :         use pm_kind, only: TKC => RK4
    3291             : #include "pm_sampleQuan@routines.inc.F90"
    3292           0 :     end procedure
    3293             : #endif
    3294             : 
    3295             : #if RK3_ENABLED
    3296           0 :     module procedure getQuanNEAR_ND2_QD1_WTR_RK3
    3297             :         use pm_kind, only: TKC => RK3
    3298             : #include "pm_sampleQuan@routines.inc.F90"
    3299           0 :     end procedure
    3300             : #endif
    3301             : 
    3302             : #if RK2_ENABLED
    3303           0 :     module procedure getQuanNEAR_ND2_QD1_WTR_RK2
    3304             :         use pm_kind, only: TKC => RK2
    3305             : #include "pm_sampleQuan@routines.inc.F90"
    3306           0 :     end procedure
    3307             : #endif
    3308             : 
    3309             : #if RK1_ENABLED
    3310           1 :     module procedure getQuanNEAR_ND2_QD1_WTR_RK1
    3311             :         use pm_kind, only: TKC => RK1
    3312             : #include "pm_sampleQuan@routines.inc.F90"
    3313           1 :     end procedure
    3314             : #endif
    3315             : 
    3316             : #undef RK_ENABLED
    3317             : 
    3318             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3319             : 
    3320             : #undef QD1_ENABLED
    3321             : 
    3322             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3323             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3324             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3325             : 
    3326             : #undef NEAR_ENABLED
    3327             : 
    3328             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3329             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3330             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3331             : 
    3332             : #define NEXT_ENABLED 1
    3333             : 
    3334             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3335             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3336             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3337             : 
    3338             : #define QD0_ENABLED 1
    3339             : 
    3340             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3341             : 
    3342             : #define RK_ENABLED 1
    3343             : 
    3344             : #if RK5_ENABLED
    3345             :     module procedure getQuanNEXT_ND2_QD0_WTR_RK5
    3346             :         use pm_kind, only: TKC => RK5
    3347             : #include "pm_sampleQuan@routines.inc.F90"
    3348             :     end procedure
    3349             : #endif
    3350             : 
    3351             : #if RK4_ENABLED
    3352           0 :     module procedure getQuanNEXT_ND2_QD0_WTR_RK4
    3353             :         use pm_kind, only: TKC => RK4
    3354             : #include "pm_sampleQuan@routines.inc.F90"
    3355           0 :     end procedure
    3356             : #endif
    3357             : 
    3358             : #if RK3_ENABLED
    3359           0 :     module procedure getQuanNEXT_ND2_QD0_WTR_RK3
    3360             :         use pm_kind, only: TKC => RK3
    3361             : #include "pm_sampleQuan@routines.inc.F90"
    3362           0 :     end procedure
    3363             : #endif
    3364             : 
    3365             : #if RK2_ENABLED
    3366           0 :     module procedure getQuanNEXT_ND2_QD0_WTR_RK2
    3367             :         use pm_kind, only: TKC => RK2
    3368             : #include "pm_sampleQuan@routines.inc.F90"
    3369           0 :     end procedure
    3370             : #endif
    3371             : 
    3372             : #if RK1_ENABLED
    3373           1 :     module procedure getQuanNEXT_ND2_QD0_WTR_RK1
    3374             :         use pm_kind, only: TKC => RK1
    3375             : #include "pm_sampleQuan@routines.inc.F90"
    3376           1 :     end procedure
    3377             : #endif
    3378             : 
    3379             : #undef RK_ENABLED
    3380             : 
    3381             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3382             : 
    3383             : #undef QD0_ENABLED
    3384             : 
    3385             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3386             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3387             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3388             : 
    3389             : #define QD1_ENABLED 1
    3390             : 
    3391             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3392             : 
    3393             : #define RK_ENABLED 1
    3394             : 
    3395             : #if RK5_ENABLED
    3396             :     module procedure getQuanNEXT_ND2_QD1_WTR_RK5
    3397             :         use pm_kind, only: TKC => RK5
    3398             : #include "pm_sampleQuan@routines.inc.F90"
    3399             :     end procedure
    3400             : #endif
    3401             : 
    3402             : #if RK4_ENABLED
    3403           0 :     module procedure getQuanNEXT_ND2_QD1_WTR_RK4
    3404             :         use pm_kind, only: TKC => RK4
    3405             : #include "pm_sampleQuan@routines.inc.F90"
    3406           0 :     end procedure
    3407             : #endif
    3408             : 
    3409             : #if RK3_ENABLED
    3410           0 :     module procedure getQuanNEXT_ND2_QD1_WTR_RK3
    3411             :         use pm_kind, only: TKC => RK3
    3412             : #include "pm_sampleQuan@routines.inc.F90"
    3413           0 :     end procedure
    3414             : #endif
    3415             : 
    3416             : #if RK2_ENABLED
    3417           0 :     module procedure getQuanNEXT_ND2_QD1_WTR_RK2
    3418             :         use pm_kind, only: TKC => RK2
    3419             : #include "pm_sampleQuan@routines.inc.F90"
    3420           0 :     end procedure
    3421             : #endif
    3422             : 
    3423             : #if RK1_ENABLED
    3424           1 :     module procedure getQuanNEXT_ND2_QD1_WTR_RK1
    3425             :         use pm_kind, only: TKC => RK1
    3426             : #include "pm_sampleQuan@routines.inc.F90"
    3427           1 :     end procedure
    3428             : #endif
    3429             : 
    3430             : #undef RK_ENABLED
    3431             : 
    3432             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3433             : 
    3434             : #undef QD1_ENABLED
    3435             : 
    3436             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3437             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3438             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3439             : 
    3440             : #undef NEXT_ENABLED
    3441             : 
    3442             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3443             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3444             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3445             : 
    3446             : #define PREV_ENABLED 1
    3447             : 
    3448             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3449             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3450             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3451             : 
    3452             : #define QD0_ENABLED 1
    3453             : 
    3454             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3455             : 
    3456             : #define RK_ENABLED 1
    3457             : 
    3458             : #if RK5_ENABLED
    3459             :     module procedure getQuanPREV_ND2_QD0_WTR_RK5
    3460             :         use pm_kind, only: TKC => RK5
    3461             : #include "pm_sampleQuan@routines.inc.F90"
    3462             :     end procedure
    3463             : #endif
    3464             : 
    3465             : #if RK4_ENABLED
    3466           0 :     module procedure getQuanPREV_ND2_QD0_WTR_RK4
    3467             :         use pm_kind, only: TKC => RK4
    3468             : #include "pm_sampleQuan@routines.inc.F90"
    3469           0 :     end procedure
    3470             : #endif
    3471             : 
    3472             : #if RK3_ENABLED
    3473           0 :     module procedure getQuanPREV_ND2_QD0_WTR_RK3
    3474             :         use pm_kind, only: TKC => RK3
    3475             : #include "pm_sampleQuan@routines.inc.F90"
    3476           0 :     end procedure
    3477             : #endif
    3478             : 
    3479             : #if RK2_ENABLED
    3480           0 :     module procedure getQuanPREV_ND2_QD0_WTR_RK2
    3481             :         use pm_kind, only: TKC => RK2
    3482             : #include "pm_sampleQuan@routines.inc.F90"
    3483           0 :     end procedure
    3484             : #endif
    3485             : 
    3486             : #if RK1_ENABLED
    3487           1 :     module procedure getQuanPREV_ND2_QD0_WTR_RK1
    3488             :         use pm_kind, only: TKC => RK1
    3489             : #include "pm_sampleQuan@routines.inc.F90"
    3490           1 :     end procedure
    3491             : #endif
    3492             : 
    3493             : #undef RK_ENABLED
    3494             : 
    3495             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3496             : 
    3497             : #undef QD0_ENABLED
    3498             : 
    3499             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3500             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3501             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3502             : 
    3503             : #define QD1_ENABLED 1
    3504             : 
    3505             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3506             : 
    3507             : #define RK_ENABLED 1
    3508             : 
    3509             : #if RK5_ENABLED
    3510             :     module procedure getQuanPREV_ND2_QD1_WTR_RK5
    3511             :         use pm_kind, only: TKC => RK5
    3512             : #include "pm_sampleQuan@routines.inc.F90"
    3513             :     end procedure
    3514             : #endif
    3515             : 
    3516             : #if RK4_ENABLED
    3517           0 :     module procedure getQuanPREV_ND2_QD1_WTR_RK4
    3518             :         use pm_kind, only: TKC => RK4
    3519             : #include "pm_sampleQuan@routines.inc.F90"
    3520           0 :     end procedure
    3521             : #endif
    3522             : 
    3523             : #if RK3_ENABLED
    3524           0 :     module procedure getQuanPREV_ND2_QD1_WTR_RK3
    3525             :         use pm_kind, only: TKC => RK3
    3526             : #include "pm_sampleQuan@routines.inc.F90"
    3527           0 :     end procedure
    3528             : #endif
    3529             : 
    3530             : #if RK2_ENABLED
    3531           0 :     module procedure getQuanPREV_ND2_QD1_WTR_RK2
    3532             :         use pm_kind, only: TKC => RK2
    3533             : #include "pm_sampleQuan@routines.inc.F90"
    3534           0 :     end procedure
    3535             : #endif
    3536             : 
    3537             : #if RK1_ENABLED
    3538           1 :     module procedure getQuanPREV_ND2_QD1_WTR_RK1
    3539             :         use pm_kind, only: TKC => RK1
    3540             : #include "pm_sampleQuan@routines.inc.F90"
    3541           1 :     end procedure
    3542             : #endif
    3543             : 
    3544             : #undef RK_ENABLED
    3545             : 
    3546             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3547             : 
    3548             : #undef QD1_ENABLED
    3549             : 
    3550             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3551             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3552             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3553             : 
    3554             : #undef PREV_ENABLED
    3555             : 
    3556             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3557             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3558             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3559             : 
    3560             : #undef WTR_ENABLED
    3561             : 
    3562             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3563             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3564             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3565             : 
    3566             : #undef ND2_ENABLED
    3567             : 
    3568             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3569             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3570             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3571             : 
    3572             : #undef getQuan_ENABLED
    3573             : 
    3574             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3575             : 
    3576             : #undef CHECK_ASSERTION
    3577             : 
    3578             : end submodule routines

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