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

          Line data    Source code
       1             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
       2             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
       3             : !!!!                                                                                                                            !!!!
       4             : !!!!    ParaMonte: Parallel Monte Carlo and Machine Learning Library.                                                           !!!!
       5             : !!!!                                                                                                                            !!!!
       6             : !!!!    Copyright (C) 2012-present, The Computational Data Science Lab                                                          !!!!
       7             : !!!!                                                                                                                            !!!!
       8             : !!!!    This file is part of the ParaMonte library.                                                                             !!!!
       9             : !!!!                                                                                                                            !!!!
      10             : !!!!    LICENSE                                                                                                                 !!!!
      11             : !!!!                                                                                                                            !!!!
      12             : !!!!       https://github.com/cdslaborg/paramonte/blob/main/LICENSE.md                                                          !!!!
      13             : !!!!                                                                                                                            !!!!
      14             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      15             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      16             : 
      17             : !>  \brief
      18             : !>  This file contains procedure implementations of [pm_sampleMean](@ref pm_sampleMean).
      19             : !>
      20             : !>  \finmain
      21             : !>
      22             : !>  \author
      23             : !>  \FatemehBagheri, Wednesday 5:03 PM, August 11, 2021, Dallas, TX
      24             : 
      25             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      26             : 
      27             : submodule (pm_sampleMean) routines ! LCOV_EXCL_LINE
      28             : 
      29             : #if CHECK_ENABLED
      30             :     use pm_err, only: getFine
      31             :     use pm_val2str, only: getStr
      32             :     use pm_err, only: setAsserted
      33             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) \
      34             : call setAsserted(ASSERTION,getFine(__FILE__,LINE)//MODULE_NAME//MSG);
      35             : #else
      36             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) continue;
      37             : #endif
      38             : 
      39             :     implicit none
      40             : 
      41             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      42             : 
      43             : contains
      44             : 
      45             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      46             : 
      47             : #define getMean_ENABLED 1
      48             : 
      49             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      50             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      51             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      52             : 
      53             : #define ALL_ENABLED 1
      54             : 
      55             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      56             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      57             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      58             : 
      59             : #define WNO_ENABLED 1
      60             : 
      61             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      62             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      63             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      64             : 
      65             : #define D1_ENABLED 1
      66             : 
      67             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      68             : 
      69             : #define CK_ENABLED 1
      70             : 
      71             : #if CK5_ENABLED
      72             :     module procedure getMeanALL_WNO_D1_CK5
      73             :         use pm_kind, only: TKC => CK5
      74             : #include "pm_sampleMean@routines.inc.F90"
      75             :     end procedure
      76             : #endif
      77             : 
      78             : #if CK4_ENABLED
      79        4600 :     module procedure getMeanALL_WNO_D1_CK4
      80             :         use pm_kind, only: TKC => CK4
      81             : #include "pm_sampleMean@routines.inc.F90"
      82        4600 :     end procedure
      83             : #endif
      84             : 
      85             : #if CK3_ENABLED
      86        4600 :     module procedure getMeanALL_WNO_D1_CK3
      87             :         use pm_kind, only: TKC => CK3
      88             : #include "pm_sampleMean@routines.inc.F90"
      89        4600 :     end procedure
      90             : #endif
      91             : 
      92             : #if CK2_ENABLED
      93        4600 :     module procedure getMeanALL_WNO_D1_CK2
      94             :         use pm_kind, only: TKC => CK2
      95             : #include "pm_sampleMean@routines.inc.F90"
      96        4600 :     end procedure
      97             : #endif
      98             : 
      99             : #if CK1_ENABLED
     100        4691 :     module procedure getMeanALL_WNO_D1_CK1
     101             :         use pm_kind, only: TKC => CK1
     102             : #include "pm_sampleMean@routines.inc.F90"
     103        4691 :     end procedure
     104             : #endif
     105             : 
     106             : #undef CK_ENABLED
     107             : 
     108             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     109             : 
     110             : #define RK_ENABLED 1
     111             : 
     112             : #if RK5_ENABLED
     113             :     module procedure getMeanALL_WNO_D1_RK5
     114             :         use pm_kind, only: TKC => RK5
     115             : #include "pm_sampleMean@routines.inc.F90"
     116             :     end procedure
     117             : #endif
     118             : 
     119             : #if RK4_ENABLED
     120        4637 :     module procedure getMeanALL_WNO_D1_RK4
     121             :         use pm_kind, only: TKC => RK4
     122             : #include "pm_sampleMean@routines.inc.F90"
     123        4637 :     end procedure
     124             : #endif
     125             : 
     126             : #if RK3_ENABLED
     127        4637 :     module procedure getMeanALL_WNO_D1_RK3
     128             :         use pm_kind, only: TKC => RK3
     129             : #include "pm_sampleMean@routines.inc.F90"
     130        4637 :     end procedure
     131             : #endif
     132             : 
     133             : #if RK2_ENABLED
     134        4683 :     module procedure getMeanALL_WNO_D1_RK2
     135             :         use pm_kind, only: TKC => RK2
     136             : #include "pm_sampleMean@routines.inc.F90"
     137        4683 :     end procedure
     138             : #endif
     139             : 
     140             : #if RK1_ENABLED
     141        4855 :     module procedure getMeanALL_WNO_D1_RK1
     142             :         use pm_kind, only: TKC => RK1
     143             : #include "pm_sampleMean@routines.inc.F90"
     144        4855 :     end procedure
     145             : #endif
     146             : 
     147             : #undef RK_ENABLED
     148             : 
     149             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     150             : 
     151             : #undef D1_ENABLED
     152             : 
     153             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     154             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     155             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     156             : 
     157             : #define D2_ENABLED 1
     158             : 
     159             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     160             : 
     161             : #define CK_ENABLED 1
     162             : 
     163             : #if CK5_ENABLED
     164             :     module procedure getMeanALL_WNO_D2_CK5
     165             :         use pm_kind, only: TKC => CK5
     166             : #include "pm_sampleMean@routines.inc.F90"
     167             :     end procedure
     168             : #endif
     169             : 
     170             : #if CK4_ENABLED
     171         350 :     module procedure getMeanALL_WNO_D2_CK4
     172             :         use pm_kind, only: TKC => CK4
     173             : #include "pm_sampleMean@routines.inc.F90"
     174         350 :     end procedure
     175             : #endif
     176             : 
     177             : #if CK3_ENABLED
     178         350 :     module procedure getMeanALL_WNO_D2_CK3
     179             :         use pm_kind, only: TKC => CK3
     180             : #include "pm_sampleMean@routines.inc.F90"
     181         350 :     end procedure
     182             : #endif
     183             : 
     184             : #if CK2_ENABLED
     185         350 :     module procedure getMeanALL_WNO_D2_CK2
     186             :         use pm_kind, only: TKC => CK2
     187             : #include "pm_sampleMean@routines.inc.F90"
     188         350 :     end procedure
     189             : #endif
     190             : 
     191             : #if CK1_ENABLED
     192         356 :     module procedure getMeanALL_WNO_D2_CK1
     193             :         use pm_kind, only: TKC => CK1
     194             : #include "pm_sampleMean@routines.inc.F90"
     195         356 :     end procedure
     196             : #endif
     197             : 
     198             : #undef CK_ENABLED
     199             : 
     200             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     201             : 
     202             : #define RK_ENABLED 1
     203             : 
     204             : #if RK5_ENABLED
     205             :     module procedure getMeanALL_WNO_D2_RK5
     206             :         use pm_kind, only: TKC => RK5
     207             : #include "pm_sampleMean@routines.inc.F90"
     208             :     end procedure
     209             : #endif
     210             : 
     211             : #if RK4_ENABLED
     212         350 :     module procedure getMeanALL_WNO_D2_RK4
     213             :         use pm_kind, only: TKC => RK4
     214             : #include "pm_sampleMean@routines.inc.F90"
     215         350 :     end procedure
     216             : #endif
     217             : 
     218             : #if RK3_ENABLED
     219         350 :     module procedure getMeanALL_WNO_D2_RK3
     220             :         use pm_kind, only: TKC => RK3
     221             : #include "pm_sampleMean@routines.inc.F90"
     222         350 :     end procedure
     223             : #endif
     224             : 
     225             : #if RK2_ENABLED
     226         350 :     module procedure getMeanALL_WNO_D2_RK2
     227             :         use pm_kind, only: TKC => RK2
     228             : #include "pm_sampleMean@routines.inc.F90"
     229         350 :     end procedure
     230             : #endif
     231             : 
     232             : #if RK1_ENABLED
     233         357 :     module procedure getMeanALL_WNO_D2_RK1
     234             :         use pm_kind, only: TKC => RK1
     235             : #include "pm_sampleMean@routines.inc.F90"
     236         357 :     end procedure
     237             : #endif
     238             : 
     239             : #undef RK_ENABLED
     240             : 
     241             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     242             : 
     243             : #undef D2_ENABLED
     244             : 
     245             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     246             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     247             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     248             : 
     249             : #undef WNO_ENABLED
     250             : 
     251             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     252             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     253             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     254             : 
     255             : #define WTI_ENABLED 1
     256             : 
     257             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     258             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     259             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     260             : 
     261             : #define D1_ENABLED 1
     262             : 
     263             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     264             : 
     265             : #define CK_ENABLED 1
     266             : 
     267             : #if CK5_ENABLED
     268             :     module procedure getMeanALL_WTI_D1_CK5
     269             :         use pm_kind, only: TKC => CK5
     270             : #include "pm_sampleMean@routines.inc.F90"
     271             :     end procedure
     272             : #endif
     273             : 
     274             : #if CK4_ENABLED
     275         350 :     module procedure getMeanALL_WTI_D1_CK4
     276             :         use pm_kind, only: TKC => CK4
     277             : #include "pm_sampleMean@routines.inc.F90"
     278         350 :     end procedure
     279             : #endif
     280             : 
     281             : #if CK3_ENABLED
     282         350 :     module procedure getMeanALL_WTI_D1_CK3
     283             :         use pm_kind, only: TKC => CK3
     284             : #include "pm_sampleMean@routines.inc.F90"
     285         350 :     end procedure
     286             : #endif
     287             : 
     288             : #if CK2_ENABLED
     289         350 :     module procedure getMeanALL_WTI_D1_CK2
     290             :         use pm_kind, only: TKC => CK2
     291             : #include "pm_sampleMean@routines.inc.F90"
     292         350 :     end procedure
     293             : #endif
     294             : 
     295             : #if CK1_ENABLED
     296         405 :     module procedure getMeanALL_WTI_D1_CK1
     297             :         use pm_kind, only: TKC => CK1
     298             : #include "pm_sampleMean@routines.inc.F90"
     299         405 :     end procedure
     300             : #endif
     301             : 
     302             : #undef CK_ENABLED
     303             : 
     304             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     305             : 
     306             : #define RK_ENABLED 1
     307             : 
     308             : #if RK5_ENABLED
     309             :     module procedure getMeanALL_WTI_D1_RK5
     310             :         use pm_kind, only: TKC => RK5
     311             : #include "pm_sampleMean@routines.inc.F90"
     312             :     end procedure
     313             : #endif
     314             : 
     315             : #if RK4_ENABLED
     316         350 :     module procedure getMeanALL_WTI_D1_RK4
     317             :         use pm_kind, only: TKC => RK4
     318             : #include "pm_sampleMean@routines.inc.F90"
     319         350 :     end procedure
     320             : #endif
     321             : 
     322             : #if RK3_ENABLED
     323         350 :     module procedure getMeanALL_WTI_D1_RK3
     324             :         use pm_kind, only: TKC => RK3
     325             : #include "pm_sampleMean@routines.inc.F90"
     326         350 :     end procedure
     327             : #endif
     328             : 
     329             : #if RK2_ENABLED
     330         350 :     module procedure getMeanALL_WTI_D1_RK2
     331             :         use pm_kind, only: TKC => RK2
     332             : #include "pm_sampleMean@routines.inc.F90"
     333         350 :     end procedure
     334             : #endif
     335             : 
     336             : #if RK1_ENABLED
     337         516 :     module procedure getMeanALL_WTI_D1_RK1
     338             :         use pm_kind, only: TKC => RK1
     339             : #include "pm_sampleMean@routines.inc.F90"
     340         516 :     end procedure
     341             : #endif
     342             : 
     343             : #undef RK_ENABLED
     344             : 
     345             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     346             : 
     347             : #undef D1_ENABLED
     348             : 
     349             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     350             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     351             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     352             : 
     353             : #define D2_ENABLED 1
     354             : 
     355             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     356             : 
     357             : #define CK_ENABLED 1
     358             : 
     359             : #if CK5_ENABLED
     360             :     module procedure getMeanALL_WTI_D2_CK5
     361             :         use pm_kind, only: TKC => CK5
     362             : #include "pm_sampleMean@routines.inc.F90"
     363             :     end procedure
     364             : #endif
     365             : 
     366             : #if CK4_ENABLED
     367         350 :     module procedure getMeanALL_WTI_D2_CK4
     368             :         use pm_kind, only: TKC => CK4
     369             : #include "pm_sampleMean@routines.inc.F90"
     370         350 :     end procedure
     371             : #endif
     372             : 
     373             : #if CK3_ENABLED
     374         350 :     module procedure getMeanALL_WTI_D2_CK3
     375             :         use pm_kind, only: TKC => CK3
     376             : #include "pm_sampleMean@routines.inc.F90"
     377         350 :     end procedure
     378             : #endif
     379             : 
     380             : #if CK2_ENABLED
     381         350 :     module procedure getMeanALL_WTI_D2_CK2
     382             :         use pm_kind, only: TKC => CK2
     383             : #include "pm_sampleMean@routines.inc.F90"
     384         350 :     end procedure
     385             : #endif
     386             : 
     387             : #if CK1_ENABLED
     388         350 :     module procedure getMeanALL_WTI_D2_CK1
     389             :         use pm_kind, only: TKC => CK1
     390             : #include "pm_sampleMean@routines.inc.F90"
     391         350 :     end procedure
     392             : #endif
     393             : 
     394             : #undef CK_ENABLED
     395             : 
     396             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     397             : 
     398             : #define RK_ENABLED 1
     399             : 
     400             : #if RK5_ENABLED
     401             :     module procedure getMeanALL_WTI_D2_RK5
     402             :         use pm_kind, only: TKC => RK5
     403             : #include "pm_sampleMean@routines.inc.F90"
     404             :     end procedure
     405             : #endif
     406             : 
     407             : #if RK4_ENABLED
     408         350 :     module procedure getMeanALL_WTI_D2_RK4
     409             :         use pm_kind, only: TKC => RK4
     410             : #include "pm_sampleMean@routines.inc.F90"
     411         350 :     end procedure
     412             : #endif
     413             : 
     414             : #if RK3_ENABLED
     415         350 :     module procedure getMeanALL_WTI_D2_RK3
     416             :         use pm_kind, only: TKC => RK3
     417             : #include "pm_sampleMean@routines.inc.F90"
     418         350 :     end procedure
     419             : #endif
     420             : 
     421             : #if RK2_ENABLED
     422         350 :     module procedure getMeanALL_WTI_D2_RK2
     423             :         use pm_kind, only: TKC => RK2
     424             : #include "pm_sampleMean@routines.inc.F90"
     425         350 :     end procedure
     426             : #endif
     427             : 
     428             : #if RK1_ENABLED
     429         352 :     module procedure getMeanALL_WTI_D2_RK1
     430             :         use pm_kind, only: TKC => RK1
     431             : #include "pm_sampleMean@routines.inc.F90"
     432         352 :     end procedure
     433             : #endif
     434             : 
     435             : #undef RK_ENABLED
     436             : 
     437             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     438             : 
     439             : #undef D2_ENABLED
     440             : 
     441             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     442             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     443             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     444             : 
     445             : #undef WTI_ENABLED
     446             : 
     447             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     448             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     449             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     450             : 
     451             : #define WTR_ENABLED 1
     452             : 
     453             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     454             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     455             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     456             : 
     457             : #define D1_ENABLED 1
     458             : 
     459             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     460             : 
     461             : #define CK_ENABLED 1
     462             : 
     463             : #if CK5_ENABLED
     464             :     module procedure getMeanALL_WTR_D1_CK5
     465             :         use pm_kind, only: TKC => CK5
     466             : #include "pm_sampleMean@routines.inc.F90"
     467             :     end procedure
     468             : #endif
     469             : 
     470             : #if CK4_ENABLED
     471         400 :     module procedure getMeanALL_WTR_D1_CK4
     472             :         use pm_kind, only: TKC => CK4
     473             : #include "pm_sampleMean@routines.inc.F90"
     474         400 :     end procedure
     475             : #endif
     476             : 
     477             : #if CK3_ENABLED
     478         400 :     module procedure getMeanALL_WTR_D1_CK3
     479             :         use pm_kind, only: TKC => CK3
     480             : #include "pm_sampleMean@routines.inc.F90"
     481         400 :     end procedure
     482             : #endif
     483             : 
     484             : #if CK2_ENABLED
     485         400 :     module procedure getMeanALL_WTR_D1_CK2
     486             :         use pm_kind, only: TKC => CK2
     487             : #include "pm_sampleMean@routines.inc.F90"
     488         400 :     end procedure
     489             : #endif
     490             : 
     491             : #if CK1_ENABLED
     492         457 :     module procedure getMeanALL_WTR_D1_CK1
     493             :         use pm_kind, only: TKC => CK1
     494             : #include "pm_sampleMean@routines.inc.F90"
     495         457 :     end procedure
     496             : #endif
     497             : 
     498             : #undef CK_ENABLED
     499             : 
     500             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     501             : 
     502             : #define RK_ENABLED 1
     503             : 
     504             : #if RK5_ENABLED
     505             :     module procedure getMeanALL_WTR_D1_RK5
     506             :         use pm_kind, only: TKC => RK5
     507             : #include "pm_sampleMean@routines.inc.F90"
     508             :     end procedure
     509             : #endif
     510             : 
     511             : #if RK4_ENABLED
     512         400 :     module procedure getMeanALL_WTR_D1_RK4
     513             :         use pm_kind, only: TKC => RK4
     514             : #include "pm_sampleMean@routines.inc.F90"
     515         400 :     end procedure
     516             : #endif
     517             : 
     518             : #if RK3_ENABLED
     519         400 :     module procedure getMeanALL_WTR_D1_RK3
     520             :         use pm_kind, only: TKC => RK3
     521             : #include "pm_sampleMean@routines.inc.F90"
     522         400 :     end procedure
     523             : #endif
     524             : 
     525             : #if RK2_ENABLED
     526         400 :     module procedure getMeanALL_WTR_D1_RK2
     527             :         use pm_kind, only: TKC => RK2
     528             : #include "pm_sampleMean@routines.inc.F90"
     529         400 :     end procedure
     530             : #endif
     531             : 
     532             : #if RK1_ENABLED
     533         571 :     module procedure getMeanALL_WTR_D1_RK1
     534             :         use pm_kind, only: TKC => RK1
     535             : #include "pm_sampleMean@routines.inc.F90"
     536         571 :     end procedure
     537             : #endif
     538             : 
     539             : #undef RK_ENABLED
     540             : 
     541             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     542             : 
     543             : #undef D1_ENABLED
     544             : 
     545             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     546             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     547             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     548             : 
     549             : #define D2_ENABLED 1
     550             : 
     551             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     552             : 
     553             : #define CK_ENABLED 1
     554             : 
     555             : #if CK5_ENABLED
     556             :     module procedure getMeanALL_WTR_D2_CK5
     557             :         use pm_kind, only: TKC => CK5
     558             : #include "pm_sampleMean@routines.inc.F90"
     559             :     end procedure
     560             : #endif
     561             : 
     562             : #if CK4_ENABLED
     563         350 :     module procedure getMeanALL_WTR_D2_CK4
     564             :         use pm_kind, only: TKC => CK4
     565             : #include "pm_sampleMean@routines.inc.F90"
     566         350 :     end procedure
     567             : #endif
     568             : 
     569             : #if CK3_ENABLED
     570         350 :     module procedure getMeanALL_WTR_D2_CK3
     571             :         use pm_kind, only: TKC => CK3
     572             : #include "pm_sampleMean@routines.inc.F90"
     573         350 :     end procedure
     574             : #endif
     575             : 
     576             : #if CK2_ENABLED
     577         350 :     module procedure getMeanALL_WTR_D2_CK2
     578             :         use pm_kind, only: TKC => CK2
     579             : #include "pm_sampleMean@routines.inc.F90"
     580         350 :     end procedure
     581             : #endif
     582             : 
     583             : #if CK1_ENABLED
     584         350 :     module procedure getMeanALL_WTR_D2_CK1
     585             :         use pm_kind, only: TKC => CK1
     586             : #include "pm_sampleMean@routines.inc.F90"
     587         350 :     end procedure
     588             : #endif
     589             : 
     590             : #undef CK_ENABLED
     591             : 
     592             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     593             : 
     594             : #define RK_ENABLED 1
     595             : 
     596             : #if RK5_ENABLED
     597             :     module procedure getMeanALL_WTR_D2_RK5
     598             :         use pm_kind, only: TKC => RK5
     599             : #include "pm_sampleMean@routines.inc.F90"
     600             :     end procedure
     601             : #endif
     602             : 
     603             : #if RK4_ENABLED
     604         350 :     module procedure getMeanALL_WTR_D2_RK4
     605             :         use pm_kind, only: TKC => RK4
     606             : #include "pm_sampleMean@routines.inc.F90"
     607         350 :     end procedure
     608             : #endif
     609             : 
     610             : #if RK3_ENABLED
     611         350 :     module procedure getMeanALL_WTR_D2_RK3
     612             :         use pm_kind, only: TKC => RK3
     613             : #include "pm_sampleMean@routines.inc.F90"
     614         350 :     end procedure
     615             : #endif
     616             : 
     617             : #if RK2_ENABLED
     618         350 :     module procedure getMeanALL_WTR_D2_RK2
     619             :         use pm_kind, only: TKC => RK2
     620             : #include "pm_sampleMean@routines.inc.F90"
     621         350 :     end procedure
     622             : #endif
     623             : 
     624             : #if RK1_ENABLED
     625         356 :     module procedure getMeanALL_WTR_D2_RK1
     626             :         use pm_kind, only: TKC => RK1
     627             : #include "pm_sampleMean@routines.inc.F90"
     628         356 :     end procedure
     629             : #endif
     630             : 
     631             : #undef RK_ENABLED
     632             : 
     633             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     634             : 
     635             : #undef D2_ENABLED
     636             : 
     637             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     638             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     639             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     640             : 
     641             : #undef WTR_ENABLED
     642             : 
     643             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     644             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     645             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     646             : 
     647             : #undef ALL_ENABLED
     648             : 
     649             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     650             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     651             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     652             : 
     653             : #undef getMean_ENABLED
     654             : 
     655             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     656             : 
     657             : #define getMean_ENABLED 1
     658             : 
     659             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     660             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     661             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     662             : 
     663             : #define DIM_ENABLED 1
     664             : 
     665             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     666             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     667             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     668             : 
     669             : #define WNO_ENABLED 1
     670             : 
     671             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     672             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     673             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     674             : 
     675             : #define D1_ENABLED 1
     676             : 
     677             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     678             : 
     679             : #define CK_ENABLED 1
     680             : 
     681             : #if CK5_ENABLED
     682             :     module procedure getMeanDIM_WNO_D1_CK5
     683             :         use pm_kind, only: TKC => CK5
     684             : #include "pm_sampleMean@routines.inc.F90"
     685             :     end procedure
     686             : #endif
     687             : 
     688             : #if CK4_ENABLED
     689         300 :     module procedure getMeanDIM_WNO_D1_CK4
     690             :         use pm_kind, only: TKC => CK4
     691             : #include "pm_sampleMean@routines.inc.F90"
     692         300 :     end procedure
     693             : #endif
     694             : 
     695             : #if CK3_ENABLED
     696         300 :     module procedure getMeanDIM_WNO_D1_CK3
     697             :         use pm_kind, only: TKC => CK3
     698             : #include "pm_sampleMean@routines.inc.F90"
     699         300 :     end procedure
     700             : #endif
     701             : 
     702             : #if CK2_ENABLED
     703         300 :     module procedure getMeanDIM_WNO_D1_CK2
     704             :         use pm_kind, only: TKC => CK2
     705             : #include "pm_sampleMean@routines.inc.F90"
     706         300 :     end procedure
     707             : #endif
     708             : 
     709             : #if CK1_ENABLED
     710         305 :     module procedure getMeanDIM_WNO_D1_CK1
     711             :         use pm_kind, only: TKC => CK1
     712             : #include "pm_sampleMean@routines.inc.F90"
     713         305 :     end procedure
     714             : #endif
     715             : 
     716             : #undef CK_ENABLED
     717             : 
     718             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     719             : 
     720             : #define RK_ENABLED 1
     721             : 
     722             : #if RK5_ENABLED
     723             :     module procedure getMeanDIM_WNO_D1_RK5
     724             :         use pm_kind, only: TKC => RK5
     725             : #include "pm_sampleMean@routines.inc.F90"
     726             :     end procedure
     727             : #endif
     728             : 
     729             : #if RK4_ENABLED
     730         300 :     module procedure getMeanDIM_WNO_D1_RK4
     731             :         use pm_kind, only: TKC => RK4
     732             : #include "pm_sampleMean@routines.inc.F90"
     733         300 :     end procedure
     734             : #endif
     735             : 
     736             : #if RK3_ENABLED
     737         300 :     module procedure getMeanDIM_WNO_D1_RK3
     738             :         use pm_kind, only: TKC => RK3
     739             : #include "pm_sampleMean@routines.inc.F90"
     740         300 :     end procedure
     741             : #endif
     742             : 
     743             : #if RK2_ENABLED
     744         300 :     module procedure getMeanDIM_WNO_D1_RK2
     745             :         use pm_kind, only: TKC => RK2
     746             : #include "pm_sampleMean@routines.inc.F90"
     747         300 :     end procedure
     748             : #endif
     749             : 
     750             : #if RK1_ENABLED
     751         306 :     module procedure getMeanDIM_WNO_D1_RK1
     752             :         use pm_kind, only: TKC => RK1
     753             : #include "pm_sampleMean@routines.inc.F90"
     754         306 :     end procedure
     755             : #endif
     756             : 
     757             : #undef RK_ENABLED
     758             : 
     759             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     760             : 
     761             : #undef D1_ENABLED
     762             : 
     763             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     764             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     765             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     766             : 
     767             : #define D2_ENABLED 1
     768             : 
     769             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     770             : 
     771             : #define CK_ENABLED 1
     772             : 
     773             : #if CK5_ENABLED
     774             :     module procedure getMeanDIM_WNO_D2_CK5
     775             :         use pm_kind, only: TKC => CK5
     776             : #include "pm_sampleMean@routines.inc.F90"
     777             :     end procedure
     778             : #endif
     779             : 
     780             : #if CK4_ENABLED
     781        3450 :     module procedure getMeanDIM_WNO_D2_CK4
     782             :         use pm_kind, only: TKC => CK4
     783             : #include "pm_sampleMean@routines.inc.F90"
     784        3450 :     end procedure
     785             : #endif
     786             : 
     787             : #if CK3_ENABLED
     788        3450 :     module procedure getMeanDIM_WNO_D2_CK3
     789             :         use pm_kind, only: TKC => CK3
     790             : #include "pm_sampleMean@routines.inc.F90"
     791        3450 :     end procedure
     792             : #endif
     793             : 
     794             : #if CK2_ENABLED
     795        3450 :     module procedure getMeanDIM_WNO_D2_CK2
     796             :         use pm_kind, only: TKC => CK2
     797             : #include "pm_sampleMean@routines.inc.F90"
     798        3450 :     end procedure
     799             : #endif
     800             : 
     801             : #if CK1_ENABLED
     802        3559 :     module procedure getMeanDIM_WNO_D2_CK1
     803             :         use pm_kind, only: TKC => CK1
     804             : #include "pm_sampleMean@routines.inc.F90"
     805        3559 :     end procedure
     806             : #endif
     807             : 
     808             : #undef CK_ENABLED
     809             : 
     810             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     811             : 
     812             : #define RK_ENABLED 1
     813             : 
     814             : #if RK5_ENABLED
     815             :     module procedure getMeanDIM_WNO_D2_RK5
     816             :         use pm_kind, only: TKC => RK5
     817             : #include "pm_sampleMean@routines.inc.F90"
     818             :     end procedure
     819             : #endif
     820             : 
     821             : #if RK4_ENABLED
     822        3450 :     module procedure getMeanDIM_WNO_D2_RK4
     823             :         use pm_kind, only: TKC => RK4
     824             : #include "pm_sampleMean@routines.inc.F90"
     825        3450 :     end procedure
     826             : #endif
     827             : 
     828             : #if RK3_ENABLED
     829        3450 :     module procedure getMeanDIM_WNO_D2_RK3
     830             :         use pm_kind, only: TKC => RK3
     831             : #include "pm_sampleMean@routines.inc.F90"
     832        3450 :     end procedure
     833             : #endif
     834             : 
     835             : #if RK2_ENABLED
     836        3450 :     module procedure getMeanDIM_WNO_D2_RK2
     837             :         use pm_kind, only: TKC => RK2
     838             : #include "pm_sampleMean@routines.inc.F90"
     839        3450 :     end procedure
     840             : #endif
     841             : 
     842             : #if RK1_ENABLED
     843        3742 :     module procedure getMeanDIM_WNO_D2_RK1
     844             :         use pm_kind, only: TKC => RK1
     845             : #include "pm_sampleMean@routines.inc.F90"
     846        3742 :     end procedure
     847             : #endif
     848             : 
     849             : #undef RK_ENABLED
     850             : 
     851             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     852             : 
     853             : #undef D2_ENABLED
     854             : 
     855             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     856             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     857             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     858             : 
     859             : #undef WNO_ENABLED
     860             : 
     861             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     862             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     863             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     864             : 
     865             : #define WTI_ENABLED 1
     866             : 
     867             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     868             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     869             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     870             : 
     871             : #define D1_ENABLED 1
     872             : 
     873             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     874             : 
     875             : #define CK_ENABLED 1
     876             : 
     877             : #if CK5_ENABLED
     878             :     module procedure getMeanDIM_WTI_D1_CK5
     879             :         use pm_kind, only: TKC => CK5
     880             : #include "pm_sampleMean@routines.inc.F90"
     881             :     end procedure
     882             : #endif
     883             : 
     884             : #if CK4_ENABLED
     885         350 :     module procedure getMeanDIM_WTI_D1_CK4
     886             :         use pm_kind, only: TKC => CK4
     887             : #include "pm_sampleMean@routines.inc.F90"
     888         350 :     end procedure
     889             : #endif
     890             : 
     891             : #if CK3_ENABLED
     892         350 :     module procedure getMeanDIM_WTI_D1_CK3
     893             :         use pm_kind, only: TKC => CK3
     894             : #include "pm_sampleMean@routines.inc.F90"
     895         350 :     end procedure
     896             : #endif
     897             : 
     898             : #if CK2_ENABLED
     899         350 :     module procedure getMeanDIM_WTI_D1_CK2
     900             :         use pm_kind, only: TKC => CK2
     901             : #include "pm_sampleMean@routines.inc.F90"
     902         350 :     end procedure
     903             : #endif
     904             : 
     905             : #if CK1_ENABLED
     906         350 :     module procedure getMeanDIM_WTI_D1_CK1
     907             :         use pm_kind, only: TKC => CK1
     908             : #include "pm_sampleMean@routines.inc.F90"
     909         350 :     end procedure
     910             : #endif
     911             : 
     912             : #undef CK_ENABLED
     913             : 
     914             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     915             : 
     916             : #define RK_ENABLED 1
     917             : 
     918             : #if RK5_ENABLED
     919             :     module procedure getMeanDIM_WTI_D1_RK5
     920             :         use pm_kind, only: TKC => RK5
     921             : #include "pm_sampleMean@routines.inc.F90"
     922             :     end procedure
     923             : #endif
     924             : 
     925             : #if RK4_ENABLED
     926         350 :     module procedure getMeanDIM_WTI_D1_RK4
     927             :         use pm_kind, only: TKC => RK4
     928             : #include "pm_sampleMean@routines.inc.F90"
     929         350 :     end procedure
     930             : #endif
     931             : 
     932             : #if RK3_ENABLED
     933         350 :     module procedure getMeanDIM_WTI_D1_RK3
     934             :         use pm_kind, only: TKC => RK3
     935             : #include "pm_sampleMean@routines.inc.F90"
     936         350 :     end procedure
     937             : #endif
     938             : 
     939             : #if RK2_ENABLED
     940         350 :     module procedure getMeanDIM_WTI_D1_RK2
     941             :         use pm_kind, only: TKC => RK2
     942             : #include "pm_sampleMean@routines.inc.F90"
     943         350 :     end procedure
     944             : #endif
     945             : 
     946             : #if RK1_ENABLED
     947         351 :     module procedure getMeanDIM_WTI_D1_RK1
     948             :         use pm_kind, only: TKC => RK1
     949             : #include "pm_sampleMean@routines.inc.F90"
     950         351 :     end procedure
     951             : #endif
     952             : 
     953             : #undef RK_ENABLED
     954             : 
     955             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     956             : 
     957             : #undef D1_ENABLED
     958             : 
     959             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     960             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     961             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     962             : 
     963             : #define D2_ENABLED 1
     964             : 
     965             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     966             : 
     967             : #define CK_ENABLED 1
     968             : 
     969             : #if CK5_ENABLED
     970             :     module procedure getMeanDIM_WTI_D2_CK5
     971             :         use pm_kind, only: TKC => CK5
     972             : #include "pm_sampleMean@routines.inc.F90"
     973             :     end procedure
     974             : #endif
     975             : 
     976             : #if CK4_ENABLED
     977         900 :     module procedure getMeanDIM_WTI_D2_CK4
     978             :         use pm_kind, only: TKC => CK4
     979             : #include "pm_sampleMean@routines.inc.F90"
     980         900 :     end procedure
     981             : #endif
     982             : 
     983             : #if CK3_ENABLED
     984         900 :     module procedure getMeanDIM_WTI_D2_CK3
     985             :         use pm_kind, only: TKC => CK3
     986             : #include "pm_sampleMean@routines.inc.F90"
     987         900 :     end procedure
     988             : #endif
     989             : 
     990             : #if CK2_ENABLED
     991         900 :     module procedure getMeanDIM_WTI_D2_CK2
     992             :         use pm_kind, only: TKC => CK2
     993             : #include "pm_sampleMean@routines.inc.F90"
     994         900 :     end procedure
     995             : #endif
     996             : 
     997             : #if CK1_ENABLED
     998         955 :     module procedure getMeanDIM_WTI_D2_CK1
     999             :         use pm_kind, only: TKC => CK1
    1000             : #include "pm_sampleMean@routines.inc.F90"
    1001         955 :     end procedure
    1002             : #endif
    1003             : 
    1004             : #undef CK_ENABLED
    1005             : 
    1006             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1007             : 
    1008             : #define RK_ENABLED 1
    1009             : 
    1010             : #if RK5_ENABLED
    1011             :     module procedure getMeanDIM_WTI_D2_RK5
    1012             :         use pm_kind, only: TKC => RK5
    1013             : #include "pm_sampleMean@routines.inc.F90"
    1014             :     end procedure
    1015             : #endif
    1016             : 
    1017             : #if RK4_ENABLED
    1018         900 :     module procedure getMeanDIM_WTI_D2_RK4
    1019             :         use pm_kind, only: TKC => RK4
    1020             : #include "pm_sampleMean@routines.inc.F90"
    1021         900 :     end procedure
    1022             : #endif
    1023             : 
    1024             : #if RK3_ENABLED
    1025         900 :     module procedure getMeanDIM_WTI_D2_RK3
    1026             :         use pm_kind, only: TKC => RK3
    1027             : #include "pm_sampleMean@routines.inc.F90"
    1028         900 :     end procedure
    1029             : #endif
    1030             : 
    1031             : #if RK2_ENABLED
    1032         900 :     module procedure getMeanDIM_WTI_D2_RK2
    1033             :         use pm_kind, only: TKC => RK2
    1034             : #include "pm_sampleMean@routines.inc.F90"
    1035         900 :     end procedure
    1036             : #endif
    1037             : 
    1038             : #if RK1_ENABLED
    1039        1139 :     module procedure getMeanDIM_WTI_D2_RK1
    1040             :         use pm_kind, only: TKC => RK1
    1041             : #include "pm_sampleMean@routines.inc.F90"
    1042        1139 :     end procedure
    1043             : #endif
    1044             : 
    1045             : #undef RK_ENABLED
    1046             : 
    1047             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1048             : 
    1049             : #undef D2_ENABLED
    1050             : 
    1051             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1052             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1053             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1054             : 
    1055             : #undef WTI_ENABLED
    1056             : 
    1057             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1058             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1059             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1060             : 
    1061             : #define WTR_ENABLED 1
    1062             : 
    1063             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1064             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1065             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1066             : 
    1067             : #define D1_ENABLED 1
    1068             : 
    1069             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1070             : 
    1071             : #define CK_ENABLED 1
    1072             : 
    1073             : #if CK5_ENABLED
    1074             :     module procedure getMeanDIM_WTR_D1_CK5
    1075             :         use pm_kind, only: TKC => CK5
    1076             : #include "pm_sampleMean@routines.inc.F90"
    1077             :     end procedure
    1078             : #endif
    1079             : 
    1080             : #if CK4_ENABLED
    1081         300 :     module procedure getMeanDIM_WTR_D1_CK4
    1082             :         use pm_kind, only: TKC => CK4
    1083             : #include "pm_sampleMean@routines.inc.F90"
    1084         300 :     end procedure
    1085             : #endif
    1086             : 
    1087             : #if CK3_ENABLED
    1088         300 :     module procedure getMeanDIM_WTR_D1_CK3
    1089             :         use pm_kind, only: TKC => CK3
    1090             : #include "pm_sampleMean@routines.inc.F90"
    1091         300 :     end procedure
    1092             : #endif
    1093             : 
    1094             : #if CK2_ENABLED
    1095         300 :     module procedure getMeanDIM_WTR_D1_CK2
    1096             :         use pm_kind, only: TKC => CK2
    1097             : #include "pm_sampleMean@routines.inc.F90"
    1098         300 :     end procedure
    1099             : #endif
    1100             : 
    1101             : #if CK1_ENABLED
    1102         302 :     module procedure getMeanDIM_WTR_D1_CK1
    1103             :         use pm_kind, only: TKC => CK1
    1104             : #include "pm_sampleMean@routines.inc.F90"
    1105         302 :     end procedure
    1106             : #endif
    1107             : 
    1108             : #undef CK_ENABLED
    1109             : 
    1110             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1111             : 
    1112             : #define RK_ENABLED 1
    1113             : 
    1114             : #if RK5_ENABLED
    1115             :     module procedure getMeanDIM_WTR_D1_RK5
    1116             :         use pm_kind, only: TKC => RK5
    1117             : #include "pm_sampleMean@routines.inc.F90"
    1118             :     end procedure
    1119             : #endif
    1120             : 
    1121             : #if RK4_ENABLED
    1122         300 :     module procedure getMeanDIM_WTR_D1_RK4
    1123             :         use pm_kind, only: TKC => RK4
    1124             : #include "pm_sampleMean@routines.inc.F90"
    1125         300 :     end procedure
    1126             : #endif
    1127             : 
    1128             : #if RK3_ENABLED
    1129         300 :     module procedure getMeanDIM_WTR_D1_RK3
    1130             :         use pm_kind, only: TKC => RK3
    1131             : #include "pm_sampleMean@routines.inc.F90"
    1132         300 :     end procedure
    1133             : #endif
    1134             : 
    1135             : #if RK2_ENABLED
    1136         300 :     module procedure getMeanDIM_WTR_D1_RK2
    1137             :         use pm_kind, only: TKC => RK2
    1138             : #include "pm_sampleMean@routines.inc.F90"
    1139         300 :     end procedure
    1140             : #endif
    1141             : 
    1142             : #if RK1_ENABLED
    1143         306 :     module procedure getMeanDIM_WTR_D1_RK1
    1144             :         use pm_kind, only: TKC => RK1
    1145             : #include "pm_sampleMean@routines.inc.F90"
    1146         306 :     end procedure
    1147             : #endif
    1148             : 
    1149             : #undef RK_ENABLED
    1150             : 
    1151             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1152             : 
    1153             : #undef D1_ENABLED
    1154             : 
    1155             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1156             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1157             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1158             : 
    1159             : #define D2_ENABLED 1
    1160             : 
    1161             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1162             : 
    1163             : #define CK_ENABLED 1
    1164             : 
    1165             : #if CK5_ENABLED
    1166             :     module procedure getMeanDIM_WTR_D2_CK5
    1167             :         use pm_kind, only: TKC => CK5
    1168             : #include "pm_sampleMean@routines.inc.F90"
    1169             :     end procedure
    1170             : #endif
    1171             : 
    1172             : #if CK4_ENABLED
    1173         900 :     module procedure getMeanDIM_WTR_D2_CK4
    1174             :         use pm_kind, only: TKC => CK4
    1175             : #include "pm_sampleMean@routines.inc.F90"
    1176         900 :     end procedure
    1177             : #endif
    1178             : 
    1179             : #if CK3_ENABLED
    1180         900 :     module procedure getMeanDIM_WTR_D2_CK3
    1181             :         use pm_kind, only: TKC => CK3
    1182             : #include "pm_sampleMean@routines.inc.F90"
    1183         900 :     end procedure
    1184             : #endif
    1185             : 
    1186             : #if CK2_ENABLED
    1187         900 :     module procedure getMeanDIM_WTR_D2_CK2
    1188             :         use pm_kind, only: TKC => CK2
    1189             : #include "pm_sampleMean@routines.inc.F90"
    1190         900 :     end procedure
    1191             : #endif
    1192             : 
    1193             : #if CK1_ENABLED
    1194         955 :     module procedure getMeanDIM_WTR_D2_CK1
    1195             :         use pm_kind, only: TKC => CK1
    1196             : #include "pm_sampleMean@routines.inc.F90"
    1197         955 :     end procedure
    1198             : #endif
    1199             : 
    1200             : #undef CK_ENABLED
    1201             : 
    1202             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1203             : 
    1204             : #define RK_ENABLED 1
    1205             : 
    1206             : #if RK5_ENABLED
    1207             :     module procedure getMeanDIM_WTR_D2_RK5
    1208             :         use pm_kind, only: TKC => RK5
    1209             : #include "pm_sampleMean@routines.inc.F90"
    1210             :     end procedure
    1211             : #endif
    1212             : 
    1213             : #if RK4_ENABLED
    1214         900 :     module procedure getMeanDIM_WTR_D2_RK4
    1215             :         use pm_kind, only: TKC => RK4
    1216             : #include "pm_sampleMean@routines.inc.F90"
    1217         900 :     end procedure
    1218             : #endif
    1219             : 
    1220             : #if RK3_ENABLED
    1221         900 :     module procedure getMeanDIM_WTR_D2_RK3
    1222             :         use pm_kind, only: TKC => RK3
    1223             : #include "pm_sampleMean@routines.inc.F90"
    1224         900 :     end procedure
    1225             : #endif
    1226             : 
    1227             : #if RK2_ENABLED
    1228         900 :     module procedure getMeanDIM_WTR_D2_RK2
    1229             :         use pm_kind, only: TKC => RK2
    1230             : #include "pm_sampleMean@routines.inc.F90"
    1231         900 :     end procedure
    1232             : #endif
    1233             : 
    1234             : #if RK1_ENABLED
    1235        1143 :     module procedure getMeanDIM_WTR_D2_RK1
    1236             :         use pm_kind, only: TKC => RK1
    1237             : #include "pm_sampleMean@routines.inc.F90"
    1238        1143 :     end procedure
    1239             : #endif
    1240             : 
    1241             : #undef RK_ENABLED
    1242             : 
    1243             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1244             : 
    1245             : #undef D2_ENABLED
    1246             : 
    1247             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1248             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1249             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1250             : 
    1251             : #undef WTR_ENABLED
    1252             : 
    1253             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1254             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1255             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1256             : 
    1257             : #undef DIM_ENABLED
    1258             : 
    1259             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1260             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1261             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1262             : 
    1263             : #undef getMean_ENABLED
    1264             : 
    1265             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1266             : 
    1267             : #define setMean_ENABLED 1
    1268             : 
    1269             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1270             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1271             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1272             : 
    1273             : #define ALL_ENABLED 1
    1274             : 
    1275             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1276             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1277             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1278             : 
    1279             : #define XY_ENABLED 1
    1280             : 
    1281             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1282             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1283             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1284             : 
    1285             : #define WNO_ENABLED 1
    1286             : 
    1287             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1288             : 
    1289             : #define CK_ENABLED 1
    1290             : 
    1291             : #if CK5_ENABLED
    1292             :     module procedure setMeanALL_WNO_XY_CK5
    1293             :         use pm_kind, only: TKC => CK5
    1294             : #include "pm_sampleMean@routines.inc.F90"
    1295             :     end procedure
    1296             : #endif
    1297             : 
    1298             : #if CK4_ENABLED
    1299         100 :     module procedure setMeanALL_WNO_XY_CK4
    1300             :         use pm_kind, only: TKC => CK4
    1301             : #include "pm_sampleMean@routines.inc.F90"
    1302         100 :     end procedure
    1303             : #endif
    1304             : 
    1305             : #if CK3_ENABLED
    1306         100 :     module procedure setMeanALL_WNO_XY_CK3
    1307             :         use pm_kind, only: TKC => CK3
    1308             : #include "pm_sampleMean@routines.inc.F90"
    1309         100 :     end procedure
    1310             : #endif
    1311             : 
    1312             : #if CK2_ENABLED
    1313         100 :     module procedure setMeanALL_WNO_XY_CK2
    1314             :         use pm_kind, only: TKC => CK2
    1315             : #include "pm_sampleMean@routines.inc.F90"
    1316         100 :     end procedure
    1317             : #endif
    1318             : 
    1319             : #if CK1_ENABLED
    1320         100 :     module procedure setMeanALL_WNO_XY_CK1
    1321             :         use pm_kind, only: TKC => CK1
    1322             : #include "pm_sampleMean@routines.inc.F90"
    1323         100 :     end procedure
    1324             : #endif
    1325             : 
    1326             : #undef CK_ENABLED
    1327             : 
    1328             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1329             : 
    1330             : #define RK_ENABLED 1
    1331             : 
    1332             : #if RK5_ENABLED
    1333             :     module procedure setMeanALL_WNO_XY_RK5
    1334             :         use pm_kind, only: TKC => RK5
    1335             : #include "pm_sampleMean@routines.inc.F90"
    1336             :     end procedure
    1337             : #endif
    1338             : 
    1339             : #if RK4_ENABLED
    1340         100 :     module procedure setMeanALL_WNO_XY_RK4
    1341             :         use pm_kind, only: TKC => RK4
    1342             : #include "pm_sampleMean@routines.inc.F90"
    1343         100 :     end procedure
    1344             : #endif
    1345             : 
    1346             : #if RK3_ENABLED
    1347         100 :     module procedure setMeanALL_WNO_XY_RK3
    1348             :         use pm_kind, only: TKC => RK3
    1349             : #include "pm_sampleMean@routines.inc.F90"
    1350         100 :     end procedure
    1351             : #endif
    1352             : 
    1353             : #if RK2_ENABLED
    1354        2505 :     module procedure setMeanALL_WNO_XY_RK2
    1355             :         use pm_kind, only: TKC => RK2
    1356             : #include "pm_sampleMean@routines.inc.F90"
    1357        2505 :     end procedure
    1358             : #endif
    1359             : 
    1360             : #if RK1_ENABLED
    1361         102 :     module procedure setMeanALL_WNO_XY_RK1
    1362             :         use pm_kind, only: TKC => RK1
    1363             : #include "pm_sampleMean@routines.inc.F90"
    1364         102 :     end procedure
    1365             : #endif
    1366             : 
    1367             : #undef RK_ENABLED
    1368             : 
    1369             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1370             : 
    1371             : #undef WNO_ENABLED
    1372             : 
    1373             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1374             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1375             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1376             : 
    1377             : #define WTI_ENABLED 1
    1378             : 
    1379             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1380             : 
    1381             : #define CK_ENABLED 1
    1382             : 
    1383             : #if CK5_ENABLED
    1384             :     module procedure setMeanALL_WTI_XY_CK5
    1385             :         use pm_kind, only: TKC => CK5
    1386             : #include "pm_sampleMean@routines.inc.F90"
    1387             :     end procedure
    1388             : #endif
    1389             : 
    1390             : #if CK4_ENABLED
    1391         100 :     module procedure setMeanALL_WTI_XY_CK4
    1392             :         use pm_kind, only: TKC => CK4
    1393             : #include "pm_sampleMean@routines.inc.F90"
    1394         100 :     end procedure
    1395             : #endif
    1396             : 
    1397             : #if CK3_ENABLED
    1398         100 :     module procedure setMeanALL_WTI_XY_CK3
    1399             :         use pm_kind, only: TKC => CK3
    1400             : #include "pm_sampleMean@routines.inc.F90"
    1401         100 :     end procedure
    1402             : #endif
    1403             : 
    1404             : #if CK2_ENABLED
    1405         100 :     module procedure setMeanALL_WTI_XY_CK2
    1406             :         use pm_kind, only: TKC => CK2
    1407             : #include "pm_sampleMean@routines.inc.F90"
    1408         100 :     end procedure
    1409             : #endif
    1410             : 
    1411             : #if CK1_ENABLED
    1412         100 :     module procedure setMeanALL_WTI_XY_CK1
    1413             :         use pm_kind, only: TKC => CK1
    1414             : #include "pm_sampleMean@routines.inc.F90"
    1415         100 :     end procedure
    1416             : #endif
    1417             : 
    1418             : #undef CK_ENABLED
    1419             : 
    1420             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1421             : 
    1422             : #define RK_ENABLED 1
    1423             : 
    1424             : #if RK5_ENABLED
    1425             :     module procedure setMeanALL_WTI_XY_RK5
    1426             :         use pm_kind, only: TKC => RK5
    1427             : #include "pm_sampleMean@routines.inc.F90"
    1428             :     end procedure
    1429             : #endif
    1430             : 
    1431             : #if RK4_ENABLED
    1432         100 :     module procedure setMeanALL_WTI_XY_RK4
    1433             :         use pm_kind, only: TKC => RK4
    1434             : #include "pm_sampleMean@routines.inc.F90"
    1435         100 :     end procedure
    1436             : #endif
    1437             : 
    1438             : #if RK3_ENABLED
    1439         100 :     module procedure setMeanALL_WTI_XY_RK3
    1440             :         use pm_kind, only: TKC => RK3
    1441             : #include "pm_sampleMean@routines.inc.F90"
    1442         100 :     end procedure
    1443             : #endif
    1444             : 
    1445             : #if RK2_ENABLED
    1446        1302 :     module procedure setMeanALL_WTI_XY_RK2
    1447             :         use pm_kind, only: TKC => RK2
    1448             : #include "pm_sampleMean@routines.inc.F90"
    1449        1302 :     end procedure
    1450             : #endif
    1451             : 
    1452             : #if RK1_ENABLED
    1453         101 :     module procedure setMeanALL_WTI_XY_RK1
    1454             :         use pm_kind, only: TKC => RK1
    1455             : #include "pm_sampleMean@routines.inc.F90"
    1456         101 :     end procedure
    1457             : #endif
    1458             : 
    1459             : #undef RK_ENABLED
    1460             : 
    1461             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1462             : 
    1463             : #undef WTI_ENABLED
    1464             : 
    1465             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1466             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1467             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1468             : 
    1469             : #define WTR_ENABLED 1
    1470             : 
    1471             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1472             : 
    1473             : #define CK_ENABLED 1
    1474             : 
    1475             : #if CK5_ENABLED
    1476             :     module procedure setMeanALL_WTR_XY_CK5
    1477             :         use pm_kind, only: TKC => CK5
    1478             : #include "pm_sampleMean@routines.inc.F90"
    1479             :     end procedure
    1480             : #endif
    1481             : 
    1482             : #if CK4_ENABLED
    1483         100 :     module procedure setMeanALL_WTR_XY_CK4
    1484             :         use pm_kind, only: TKC => CK4
    1485             : #include "pm_sampleMean@routines.inc.F90"
    1486         100 :     end procedure
    1487             : #endif
    1488             : 
    1489             : #if CK3_ENABLED
    1490         100 :     module procedure setMeanALL_WTR_XY_CK3
    1491             :         use pm_kind, only: TKC => CK3
    1492             : #include "pm_sampleMean@routines.inc.F90"
    1493         100 :     end procedure
    1494             : #endif
    1495             : 
    1496             : #if CK2_ENABLED
    1497         100 :     module procedure setMeanALL_WTR_XY_CK2
    1498             :         use pm_kind, only: TKC => CK2
    1499             : #include "pm_sampleMean@routines.inc.F90"
    1500         100 :     end procedure
    1501             : #endif
    1502             : 
    1503             : #if CK1_ENABLED
    1504         100 :     module procedure setMeanALL_WTR_XY_CK1
    1505             :         use pm_kind, only: TKC => CK1
    1506             : #include "pm_sampleMean@routines.inc.F90"
    1507         100 :     end procedure
    1508             : #endif
    1509             : 
    1510             : #undef CK_ENABLED
    1511             : 
    1512             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1513             : 
    1514             : #define RK_ENABLED 1
    1515             : 
    1516             : #if RK5_ENABLED
    1517             :     module procedure setMeanALL_WTR_XY_RK5
    1518             :         use pm_kind, only: TKC => RK5
    1519             : #include "pm_sampleMean@routines.inc.F90"
    1520             :     end procedure
    1521             : #endif
    1522             : 
    1523             : #if RK4_ENABLED
    1524         100 :     module procedure setMeanALL_WTR_XY_RK4
    1525             :         use pm_kind, only: TKC => RK4
    1526             : #include "pm_sampleMean@routines.inc.F90"
    1527         100 :     end procedure
    1528             : #endif
    1529             : 
    1530             : #if RK3_ENABLED
    1531         100 :     module procedure setMeanALL_WTR_XY_RK3
    1532             :         use pm_kind, only: TKC => RK3
    1533             : #include "pm_sampleMean@routines.inc.F90"
    1534         100 :     end procedure
    1535             : #endif
    1536             : 
    1537             : #if RK2_ENABLED
    1538        3702 :     module procedure setMeanALL_WTR_XY_RK2
    1539             :         use pm_kind, only: TKC => RK2
    1540             : #include "pm_sampleMean@routines.inc.F90"
    1541        3702 :     end procedure
    1542             : #endif
    1543             : 
    1544             : #if RK1_ENABLED
    1545         103 :     module procedure setMeanALL_WTR_XY_RK1
    1546             :         use pm_kind, only: TKC => RK1
    1547             : #include "pm_sampleMean@routines.inc.F90"
    1548         103 :     end procedure
    1549             : #endif
    1550             : 
    1551             : #undef RK_ENABLED
    1552             : 
    1553             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1554             : 
    1555             : #undef WTR_ENABLED
    1556             : 
    1557             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1558             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1559             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1560             : 
    1561             : #undef XY_ENABLED
    1562             : 
    1563             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1564             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1565             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1566             : 
    1567             : #undef ALL_ENABLED
    1568             : 
    1569             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1570             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1571             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1572             : 
    1573             : #undef setMean_ENABLED
    1574             : 
    1575             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1576             : 
    1577             : #define setMean_ENABLED 1
    1578             : 
    1579             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1580             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1581             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1582             : 
    1583             : #define ALL_ENABLED 1
    1584             : 
    1585             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1586             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1587             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1588             : 
    1589             : #define WNO_ENABLED 1
    1590             : 
    1591             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1592             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1593             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1594             : 
    1595             : #define D1_ENABLED 1
    1596             : 
    1597             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1598             : 
    1599             : #define CK_ENABLED 1
    1600             : 
    1601             : #if CK5_ENABLED
    1602             :     module procedure setMeanALL_WNO_D1_CK5
    1603             :         use pm_kind, only: TKC => CK5
    1604             : #include "pm_sampleMean@routines.inc.F90"
    1605             :     end procedure
    1606             : #endif
    1607             : 
    1608             : #if CK4_ENABLED
    1609        4700 :     module procedure setMeanALL_WNO_D1_CK4
    1610             :         use pm_kind, only: TKC => CK4
    1611             : #include "pm_sampleMean@routines.inc.F90"
    1612        4700 :     end procedure
    1613             : #endif
    1614             : 
    1615             : #if CK3_ENABLED
    1616        4700 :     module procedure setMeanALL_WNO_D1_CK3
    1617             :         use pm_kind, only: TKC => CK3
    1618             : #include "pm_sampleMean@routines.inc.F90"
    1619        4700 :     end procedure
    1620             : #endif
    1621             : 
    1622             : #if CK2_ENABLED
    1623        4700 :     module procedure setMeanALL_WNO_D1_CK2
    1624             :         use pm_kind, only: TKC => CK2
    1625             : #include "pm_sampleMean@routines.inc.F90"
    1626        4700 :     end procedure
    1627             : #endif
    1628             : 
    1629             : #if CK1_ENABLED
    1630        4791 :     module procedure setMeanALL_WNO_D1_CK1
    1631             :         use pm_kind, only: TKC => CK1
    1632             : #include "pm_sampleMean@routines.inc.F90"
    1633        4791 :     end procedure
    1634             : #endif
    1635             : 
    1636             : #undef CK_ENABLED
    1637             : 
    1638             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1639             : 
    1640             : #define RK_ENABLED 1
    1641             : 
    1642             : #if RK5_ENABLED
    1643             :     module procedure setMeanALL_WNO_D1_RK5
    1644             :         use pm_kind, only: TKC => RK5
    1645             : #include "pm_sampleMean@routines.inc.F90"
    1646             :     end procedure
    1647             : #endif
    1648             : 
    1649             : #if RK4_ENABLED
    1650        4737 :     module procedure setMeanALL_WNO_D1_RK4
    1651             :         use pm_kind, only: TKC => RK4
    1652             : #include "pm_sampleMean@routines.inc.F90"
    1653        4737 :     end procedure
    1654             : #endif
    1655             : 
    1656             : #if RK3_ENABLED
    1657        4737 :     module procedure setMeanALL_WNO_D1_RK3
    1658             :         use pm_kind, only: TKC => RK3
    1659             : #include "pm_sampleMean@routines.inc.F90"
    1660        4737 :     end procedure
    1661             : #endif
    1662             : 
    1663             : #if RK2_ENABLED
    1664        4783 :     module procedure setMeanALL_WNO_D1_RK2
    1665             :         use pm_kind, only: TKC => RK2
    1666             : #include "pm_sampleMean@routines.inc.F90"
    1667        4783 :     end procedure
    1668             : #endif
    1669             : 
    1670             : #if RK1_ENABLED
    1671        4959 :     module procedure setMeanALL_WNO_D1_RK1
    1672             :         use pm_kind, only: TKC => RK1
    1673             : #include "pm_sampleMean@routines.inc.F90"
    1674        4959 :     end procedure
    1675             : #endif
    1676             : 
    1677             : #undef RK_ENABLED
    1678             : 
    1679             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1680             : 
    1681             : #undef D1_ENABLED
    1682             : 
    1683             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1684             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1685             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1686             : 
    1687             : #define D2_ENABLED 1
    1688             : 
    1689             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1690             : 
    1691             : #define CK_ENABLED 1
    1692             : 
    1693             : #if CK5_ENABLED
    1694             :     module procedure setMeanALL_WNO_D2_CK5
    1695             :         use pm_kind, only: TKC => CK5
    1696             : #include "pm_sampleMean@routines.inc.F90"
    1697             :     end procedure
    1698             : #endif
    1699             : 
    1700             : #if CK4_ENABLED
    1701         450 :     module procedure setMeanALL_WNO_D2_CK4
    1702             :         use pm_kind, only: TKC => CK4
    1703             : #include "pm_sampleMean@routines.inc.F90"
    1704         450 :     end procedure
    1705             : #endif
    1706             : 
    1707             : #if CK3_ENABLED
    1708         450 :     module procedure setMeanALL_WNO_D2_CK3
    1709             :         use pm_kind, only: TKC => CK3
    1710             : #include "pm_sampleMean@routines.inc.F90"
    1711         450 :     end procedure
    1712             : #endif
    1713             : 
    1714             : #if CK2_ENABLED
    1715         450 :     module procedure setMeanALL_WNO_D2_CK2
    1716             :         use pm_kind, only: TKC => CK2
    1717             : #include "pm_sampleMean@routines.inc.F90"
    1718         450 :     end procedure
    1719             : #endif
    1720             : 
    1721             : #if CK1_ENABLED
    1722         456 :     module procedure setMeanALL_WNO_D2_CK1
    1723             :         use pm_kind, only: TKC => CK1
    1724             : #include "pm_sampleMean@routines.inc.F90"
    1725         456 :     end procedure
    1726             : #endif
    1727             : 
    1728             : #undef CK_ENABLED
    1729             : 
    1730             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1731             : 
    1732             : #define RK_ENABLED 1
    1733             : 
    1734             : #if RK5_ENABLED
    1735             :     module procedure setMeanALL_WNO_D2_RK5
    1736             :         use pm_kind, only: TKC => RK5
    1737             : #include "pm_sampleMean@routines.inc.F90"
    1738             :     end procedure
    1739             : #endif
    1740             : 
    1741             : #if RK4_ENABLED
    1742         450 :     module procedure setMeanALL_WNO_D2_RK4
    1743             :         use pm_kind, only: TKC => RK4
    1744             : #include "pm_sampleMean@routines.inc.F90"
    1745         450 :     end procedure
    1746             : #endif
    1747             : 
    1748             : #if RK3_ENABLED
    1749         450 :     module procedure setMeanALL_WNO_D2_RK3
    1750             :         use pm_kind, only: TKC => RK3
    1751             : #include "pm_sampleMean@routines.inc.F90"
    1752         450 :     end procedure
    1753             : #endif
    1754             : 
    1755             : #if RK2_ENABLED
    1756         450 :     module procedure setMeanALL_WNO_D2_RK2
    1757             :         use pm_kind, only: TKC => RK2
    1758             : #include "pm_sampleMean@routines.inc.F90"
    1759         450 :     end procedure
    1760             : #endif
    1761             : 
    1762             : #if RK1_ENABLED
    1763         458 :     module procedure setMeanALL_WNO_D2_RK1
    1764             :         use pm_kind, only: TKC => RK1
    1765             : #include "pm_sampleMean@routines.inc.F90"
    1766         458 :     end procedure
    1767             : #endif
    1768             : 
    1769             : #undef RK_ENABLED
    1770             : 
    1771             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1772             : 
    1773             : #undef D2_ENABLED
    1774             : 
    1775             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1776             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1777             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1778             : 
    1779             : #undef WNO_ENABLED
    1780             : 
    1781             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1782             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1783             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1784             : 
    1785             : #define WTI_ENABLED 1
    1786             : 
    1787             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1788             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1789             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1790             : 
    1791             : #define D1_ENABLED 1
    1792             : 
    1793             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1794             : 
    1795             : #define CK_ENABLED 1
    1796             : 
    1797             : #if CK5_ENABLED
    1798             :     module procedure setMeanALL_WTI_D1_CK5
    1799             :         use pm_kind, only: TKC => CK5
    1800             : #include "pm_sampleMean@routines.inc.F90"
    1801             :     end procedure
    1802             : #endif
    1803             : 
    1804             : #if CK4_ENABLED
    1805         450 :     module procedure setMeanALL_WTI_D1_CK4
    1806             :         use pm_kind, only: TKC => CK4
    1807             : #include "pm_sampleMean@routines.inc.F90"
    1808         450 :     end procedure
    1809             : #endif
    1810             : 
    1811             : #if CK3_ENABLED
    1812         450 :     module procedure setMeanALL_WTI_D1_CK3
    1813             :         use pm_kind, only: TKC => CK3
    1814             : #include "pm_sampleMean@routines.inc.F90"
    1815         450 :     end procedure
    1816             : #endif
    1817             : 
    1818             : #if CK2_ENABLED
    1819         450 :     module procedure setMeanALL_WTI_D1_CK2
    1820             :         use pm_kind, only: TKC => CK2
    1821             : #include "pm_sampleMean@routines.inc.F90"
    1822         450 :     end procedure
    1823             : #endif
    1824             : 
    1825             : #if CK1_ENABLED
    1826         505 :     module procedure setMeanALL_WTI_D1_CK1
    1827             :         use pm_kind, only: TKC => CK1
    1828             : #include "pm_sampleMean@routines.inc.F90"
    1829         505 :     end procedure
    1830             : #endif
    1831             : 
    1832             : #undef CK_ENABLED
    1833             : 
    1834             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1835             : 
    1836             : #define RK_ENABLED 1
    1837             : 
    1838             : #if RK5_ENABLED
    1839             :     module procedure setMeanALL_WTI_D1_RK5
    1840             :         use pm_kind, only: TKC => RK5
    1841             : #include "pm_sampleMean@routines.inc.F90"
    1842             :     end procedure
    1843             : #endif
    1844             : 
    1845             : #if RK4_ENABLED
    1846         450 :     module procedure setMeanALL_WTI_D1_RK4
    1847             :         use pm_kind, only: TKC => RK4
    1848             : #include "pm_sampleMean@routines.inc.F90"
    1849         450 :     end procedure
    1850             : #endif
    1851             : 
    1852             : #if RK3_ENABLED
    1853         450 :     module procedure setMeanALL_WTI_D1_RK3
    1854             :         use pm_kind, only: TKC => RK3
    1855             : #include "pm_sampleMean@routines.inc.F90"
    1856         450 :     end procedure
    1857             : #endif
    1858             : 
    1859             : #if RK2_ENABLED
    1860         450 :     module procedure setMeanALL_WTI_D1_RK2
    1861             :         use pm_kind, only: TKC => RK2
    1862             : #include "pm_sampleMean@routines.inc.F90"
    1863         450 :     end procedure
    1864             : #endif
    1865             : 
    1866             : #if RK1_ENABLED
    1867         616 :     module procedure setMeanALL_WTI_D1_RK1
    1868             :         use pm_kind, only: TKC => RK1
    1869             : #include "pm_sampleMean@routines.inc.F90"
    1870         616 :     end procedure
    1871             : #endif
    1872             : 
    1873             : #undef RK_ENABLED
    1874             : 
    1875             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1876             : 
    1877             : #undef D1_ENABLED
    1878             : 
    1879             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1880             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1881             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1882             : 
    1883             : #define D2_ENABLED 1
    1884             : 
    1885             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1886             : 
    1887             : #define CK_ENABLED 1
    1888             : 
    1889             : #if CK5_ENABLED
    1890             :     module procedure setMeanALL_WTI_D2_CK5
    1891             :         use pm_kind, only: TKC => CK5
    1892             : #include "pm_sampleMean@routines.inc.F90"
    1893             :     end procedure
    1894             : #endif
    1895             : 
    1896             : #if CK4_ENABLED
    1897         450 :     module procedure setMeanALL_WTI_D2_CK4
    1898             :         use pm_kind, only: TKC => CK4
    1899             : #include "pm_sampleMean@routines.inc.F90"
    1900         450 :     end procedure
    1901             : #endif
    1902             : 
    1903             : #if CK3_ENABLED
    1904         450 :     module procedure setMeanALL_WTI_D2_CK3
    1905             :         use pm_kind, only: TKC => CK3
    1906             : #include "pm_sampleMean@routines.inc.F90"
    1907         450 :     end procedure
    1908             : #endif
    1909             : 
    1910             : #if CK2_ENABLED
    1911         450 :     module procedure setMeanALL_WTI_D2_CK2
    1912             :         use pm_kind, only: TKC => CK2
    1913             : #include "pm_sampleMean@routines.inc.F90"
    1914         450 :     end procedure
    1915             : #endif
    1916             : 
    1917             : #if CK1_ENABLED
    1918         450 :     module procedure setMeanALL_WTI_D2_CK1
    1919             :         use pm_kind, only: TKC => CK1
    1920             : #include "pm_sampleMean@routines.inc.F90"
    1921         450 :     end procedure
    1922             : #endif
    1923             : 
    1924             : #undef CK_ENABLED
    1925             : 
    1926             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1927             : 
    1928             : #define RK_ENABLED 1
    1929             : 
    1930             : #if RK5_ENABLED
    1931             :     module procedure setMeanALL_WTI_D2_RK5
    1932             :         use pm_kind, only: TKC => RK5
    1933             : #include "pm_sampleMean@routines.inc.F90"
    1934             :     end procedure
    1935             : #endif
    1936             : 
    1937             : #if RK4_ENABLED
    1938         450 :     module procedure setMeanALL_WTI_D2_RK4
    1939             :         use pm_kind, only: TKC => RK4
    1940             : #include "pm_sampleMean@routines.inc.F90"
    1941         450 :     end procedure
    1942             : #endif
    1943             : 
    1944             : #if RK3_ENABLED
    1945         450 :     module procedure setMeanALL_WTI_D2_RK3
    1946             :         use pm_kind, only: TKC => RK3
    1947             : #include "pm_sampleMean@routines.inc.F90"
    1948         450 :     end procedure
    1949             : #endif
    1950             : 
    1951             : #if RK2_ENABLED
    1952         450 :     module procedure setMeanALL_WTI_D2_RK2
    1953             :         use pm_kind, only: TKC => RK2
    1954             : #include "pm_sampleMean@routines.inc.F90"
    1955         450 :     end procedure
    1956             : #endif
    1957             : 
    1958             : #if RK1_ENABLED
    1959         452 :     module procedure setMeanALL_WTI_D2_RK1
    1960             :         use pm_kind, only: TKC => RK1
    1961             : #include "pm_sampleMean@routines.inc.F90"
    1962         452 :     end procedure
    1963             : #endif
    1964             : 
    1965             : #undef RK_ENABLED
    1966             : 
    1967             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1968             : 
    1969             : #undef D2_ENABLED
    1970             : 
    1971             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1972             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1973             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1974             : 
    1975             : #undef WTI_ENABLED
    1976             : 
    1977             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1978             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1979             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1980             : 
    1981             : #define WTR_ENABLED 1
    1982             : 
    1983             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1984             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1985             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1986             : 
    1987             : #define D1_ENABLED 1
    1988             : 
    1989             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1990             : 
    1991             : #define CK_ENABLED 1
    1992             : 
    1993             : #if CK5_ENABLED
    1994             :     module procedure setMeanALL_WTR_D1_CK5
    1995             :         use pm_kind, only: TKC => CK5
    1996             : #include "pm_sampleMean@routines.inc.F90"
    1997             :     end procedure
    1998             : #endif
    1999             : 
    2000             : #if CK4_ENABLED
    2001         500 :     module procedure setMeanALL_WTR_D1_CK4
    2002             :         use pm_kind, only: TKC => CK4
    2003             : #include "pm_sampleMean@routines.inc.F90"
    2004         500 :     end procedure
    2005             : #endif
    2006             : 
    2007             : #if CK3_ENABLED
    2008         500 :     module procedure setMeanALL_WTR_D1_CK3
    2009             :         use pm_kind, only: TKC => CK3
    2010             : #include "pm_sampleMean@routines.inc.F90"
    2011         500 :     end procedure
    2012             : #endif
    2013             : 
    2014             : #if CK2_ENABLED
    2015         500 :     module procedure setMeanALL_WTR_D1_CK2
    2016             :         use pm_kind, only: TKC => CK2
    2017             : #include "pm_sampleMean@routines.inc.F90"
    2018         500 :     end procedure
    2019             : #endif
    2020             : 
    2021             : #if CK1_ENABLED
    2022         558 :     module procedure setMeanALL_WTR_D1_CK1
    2023             :         use pm_kind, only: TKC => CK1
    2024             : #include "pm_sampleMean@routines.inc.F90"
    2025         558 :     end procedure
    2026             : #endif
    2027             : 
    2028             : #undef CK_ENABLED
    2029             : 
    2030             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2031             : 
    2032             : #define RK_ENABLED 1
    2033             : 
    2034             : #if RK5_ENABLED
    2035             :     module procedure setMeanALL_WTR_D1_RK5
    2036             :         use pm_kind, only: TKC => RK5
    2037             : #include "pm_sampleMean@routines.inc.F90"
    2038             :     end procedure
    2039             : #endif
    2040             : 
    2041             : #if RK4_ENABLED
    2042         500 :     module procedure setMeanALL_WTR_D1_RK4
    2043             :         use pm_kind, only: TKC => RK4
    2044             : #include "pm_sampleMean@routines.inc.F90"
    2045         500 :     end procedure
    2046             : #endif
    2047             : 
    2048             : #if RK3_ENABLED
    2049         500 :     module procedure setMeanALL_WTR_D1_RK3
    2050             :         use pm_kind, only: TKC => RK3
    2051             : #include "pm_sampleMean@routines.inc.F90"
    2052         500 :     end procedure
    2053             : #endif
    2054             : 
    2055             : #if RK2_ENABLED
    2056         500 :     module procedure setMeanALL_WTR_D1_RK2
    2057             :         use pm_kind, only: TKC => RK2
    2058             : #include "pm_sampleMean@routines.inc.F90"
    2059         500 :     end procedure
    2060             : #endif
    2061             : 
    2062             : #if RK1_ENABLED
    2063         673 :     module procedure setMeanALL_WTR_D1_RK1
    2064             :         use pm_kind, only: TKC => RK1
    2065             : #include "pm_sampleMean@routines.inc.F90"
    2066         673 :     end procedure
    2067             : #endif
    2068             : 
    2069             : #undef RK_ENABLED
    2070             : 
    2071             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2072             : 
    2073             : #undef D1_ENABLED
    2074             : 
    2075             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2076             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2077             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2078             : 
    2079             : #define D2_ENABLED 1
    2080             : 
    2081             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2082             : 
    2083             : #define CK_ENABLED 1
    2084             : 
    2085             : #if CK5_ENABLED
    2086             :     module procedure setMeanALL_WTR_D2_CK5
    2087             :         use pm_kind, only: TKC => CK5
    2088             : #include "pm_sampleMean@routines.inc.F90"
    2089             :     end procedure
    2090             : #endif
    2091             : 
    2092             : #if CK4_ENABLED
    2093         450 :     module procedure setMeanALL_WTR_D2_CK4
    2094             :         use pm_kind, only: TKC => CK4
    2095             : #include "pm_sampleMean@routines.inc.F90"
    2096         450 :     end procedure
    2097             : #endif
    2098             : 
    2099             : #if CK3_ENABLED
    2100         450 :     module procedure setMeanALL_WTR_D2_CK3
    2101             :         use pm_kind, only: TKC => CK3
    2102             : #include "pm_sampleMean@routines.inc.F90"
    2103         450 :     end procedure
    2104             : #endif
    2105             : 
    2106             : #if CK2_ENABLED
    2107         450 :     module procedure setMeanALL_WTR_D2_CK2
    2108             :         use pm_kind, only: TKC => CK2
    2109             : #include "pm_sampleMean@routines.inc.F90"
    2110         450 :     end procedure
    2111             : #endif
    2112             : 
    2113             : #if CK1_ENABLED
    2114         450 :     module procedure setMeanALL_WTR_D2_CK1
    2115             :         use pm_kind, only: TKC => CK1
    2116             : #include "pm_sampleMean@routines.inc.F90"
    2117         450 :     end procedure
    2118             : #endif
    2119             : 
    2120             : #undef CK_ENABLED
    2121             : 
    2122             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2123             : 
    2124             : #define RK_ENABLED 1
    2125             : 
    2126             : #if RK5_ENABLED
    2127             :     module procedure setMeanALL_WTR_D2_RK5
    2128             :         use pm_kind, only: TKC => RK5
    2129             : #include "pm_sampleMean@routines.inc.F90"
    2130             :     end procedure
    2131             : #endif
    2132             : 
    2133             : #if RK4_ENABLED
    2134         450 :     module procedure setMeanALL_WTR_D2_RK4
    2135             :         use pm_kind, only: TKC => RK4
    2136             : #include "pm_sampleMean@routines.inc.F90"
    2137         450 :     end procedure
    2138             : #endif
    2139             : 
    2140             : #if RK3_ENABLED
    2141         450 :     module procedure setMeanALL_WTR_D2_RK3
    2142             :         use pm_kind, only: TKC => RK3
    2143             : #include "pm_sampleMean@routines.inc.F90"
    2144         450 :     end procedure
    2145             : #endif
    2146             : 
    2147             : #if RK2_ENABLED
    2148         450 :     module procedure setMeanALL_WTR_D2_RK2
    2149             :         use pm_kind, only: TKC => RK2
    2150             : #include "pm_sampleMean@routines.inc.F90"
    2151         450 :     end procedure
    2152             : #endif
    2153             : 
    2154             : #if RK1_ENABLED
    2155         457 :     module procedure setMeanALL_WTR_D2_RK1
    2156             :         use pm_kind, only: TKC => RK1
    2157             : #include "pm_sampleMean@routines.inc.F90"
    2158         457 :     end procedure
    2159             : #endif
    2160             : 
    2161             : #undef RK_ENABLED
    2162             : 
    2163             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2164             : 
    2165             : #undef D2_ENABLED
    2166             : 
    2167             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2168             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2169             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2170             : 
    2171             : #undef WTR_ENABLED
    2172             : 
    2173             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2174             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2175             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2176             : 
    2177             : #undef ALL_ENABLED
    2178             : 
    2179             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2180             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2181             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2182             : 
    2183             : #undef setMean_ENABLED
    2184             : 
    2185             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2186             : 
    2187             : #define setMean_ENABLED 1
    2188             : 
    2189             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2190             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2191             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2192             : 
    2193             : #define DIM_ENABLED 1
    2194             : 
    2195             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2196             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2197             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2198             : 
    2199             : #define WNO_ENABLED 1
    2200             : 
    2201             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2202             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2203             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2204             : 
    2205             : #define D1_ENABLED 1
    2206             : 
    2207             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2208             : 
    2209             : #define CK_ENABLED 1
    2210             : 
    2211             : #if CK5_ENABLED
    2212             :     module procedure setMeanDIM_WNO_D1_CK5
    2213             :         use pm_kind, only: TKC => CK5
    2214             : #include "pm_sampleMean@routines.inc.F90"
    2215             :     end procedure
    2216             : #endif
    2217             : 
    2218             : #if CK4_ENABLED
    2219         400 :     module procedure setMeanDIM_WNO_D1_CK4
    2220             :         use pm_kind, only: TKC => CK4
    2221             : #include "pm_sampleMean@routines.inc.F90"
    2222         400 :     end procedure
    2223             : #endif
    2224             : 
    2225             : #if CK3_ENABLED
    2226         400 :     module procedure setMeanDIM_WNO_D1_CK3
    2227             :         use pm_kind, only: TKC => CK3
    2228             : #include "pm_sampleMean@routines.inc.F90"
    2229         400 :     end procedure
    2230             : #endif
    2231             : 
    2232             : #if CK2_ENABLED
    2233         400 :     module procedure setMeanDIM_WNO_D1_CK2
    2234             :         use pm_kind, only: TKC => CK2
    2235             : #include "pm_sampleMean@routines.inc.F90"
    2236         400 :     end procedure
    2237             : #endif
    2238             : 
    2239             : #if CK1_ENABLED
    2240         405 :     module procedure setMeanDIM_WNO_D1_CK1
    2241             :         use pm_kind, only: TKC => CK1
    2242             : #include "pm_sampleMean@routines.inc.F90"
    2243         405 :     end procedure
    2244             : #endif
    2245             : 
    2246             : #undef CK_ENABLED
    2247             : 
    2248             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2249             : 
    2250             : #define RK_ENABLED 1
    2251             : 
    2252             : #if RK5_ENABLED
    2253             :     module procedure setMeanDIM_WNO_D1_RK5
    2254             :         use pm_kind, only: TKC => RK5
    2255             : #include "pm_sampleMean@routines.inc.F90"
    2256             :     end procedure
    2257             : #endif
    2258             : 
    2259             : #if RK4_ENABLED
    2260         400 :     module procedure setMeanDIM_WNO_D1_RK4
    2261             :         use pm_kind, only: TKC => RK4
    2262             : #include "pm_sampleMean@routines.inc.F90"
    2263         400 :     end procedure
    2264             : #endif
    2265             : 
    2266             : #if RK3_ENABLED
    2267         400 :     module procedure setMeanDIM_WNO_D1_RK3
    2268             :         use pm_kind, only: TKC => RK3
    2269             : #include "pm_sampleMean@routines.inc.F90"
    2270         400 :     end procedure
    2271             : #endif
    2272             : 
    2273             : #if RK2_ENABLED
    2274         400 :     module procedure setMeanDIM_WNO_D1_RK2
    2275             :         use pm_kind, only: TKC => RK2
    2276             : #include "pm_sampleMean@routines.inc.F90"
    2277         400 :     end procedure
    2278             : #endif
    2279             : 
    2280             : #if RK1_ENABLED
    2281         408 :     module procedure setMeanDIM_WNO_D1_RK1
    2282             :         use pm_kind, only: TKC => RK1
    2283             : #include "pm_sampleMean@routines.inc.F90"
    2284         408 :     end procedure
    2285             : #endif
    2286             : 
    2287             : #undef RK_ENABLED
    2288             : 
    2289             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2290             : 
    2291             : #undef D1_ENABLED
    2292             : 
    2293             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2294             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2295             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2296             : 
    2297             : #define D2_ENABLED 1
    2298             : 
    2299             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2300             : 
    2301             : #define CK_ENABLED 1
    2302             : 
    2303             : #if CK5_ENABLED
    2304             :     module procedure setMeanDIM_WNO_D2_CK5
    2305             :         use pm_kind, only: TKC => CK5
    2306             : #include "pm_sampleMean@routines.inc.F90"
    2307             :     end procedure
    2308             : #endif
    2309             : 
    2310             : #if CK4_ENABLED
    2311        3600 :     module procedure setMeanDIM_WNO_D2_CK4
    2312             :         use pm_kind, only: TKC => CK4
    2313             : #include "pm_sampleMean@routines.inc.F90"
    2314        3600 :     end procedure
    2315             : #endif
    2316             : 
    2317             : #if CK3_ENABLED
    2318        3600 :     module procedure setMeanDIM_WNO_D2_CK3
    2319             :         use pm_kind, only: TKC => CK3
    2320             : #include "pm_sampleMean@routines.inc.F90"
    2321        3600 :     end procedure
    2322             : #endif
    2323             : 
    2324             : #if CK2_ENABLED
    2325        3600 :     module procedure setMeanDIM_WNO_D2_CK2
    2326             :         use pm_kind, only: TKC => CK2
    2327             : #include "pm_sampleMean@routines.inc.F90"
    2328        3600 :     end procedure
    2329             : #endif
    2330             : 
    2331             : #if CK1_ENABLED
    2332        3709 :     module procedure setMeanDIM_WNO_D2_CK1
    2333             :         use pm_kind, only: TKC => CK1
    2334             : #include "pm_sampleMean@routines.inc.F90"
    2335        3709 :     end procedure
    2336             : #endif
    2337             : 
    2338             : #undef CK_ENABLED
    2339             : 
    2340             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2341             : 
    2342             : #define RK_ENABLED 1
    2343             : 
    2344             : #if RK5_ENABLED
    2345             :     module procedure setMeanDIM_WNO_D2_RK5
    2346             :         use pm_kind, only: TKC => RK5
    2347             : #include "pm_sampleMean@routines.inc.F90"
    2348             :     end procedure
    2349             : #endif
    2350             : 
    2351             : #if RK4_ENABLED
    2352        3600 :     module procedure setMeanDIM_WNO_D2_RK4
    2353             :         use pm_kind, only: TKC => RK4
    2354             : #include "pm_sampleMean@routines.inc.F90"
    2355        3600 :     end procedure
    2356             : #endif
    2357             : 
    2358             : #if RK3_ENABLED
    2359        3600 :     module procedure setMeanDIM_WNO_D2_RK3
    2360             :         use pm_kind, only: TKC => RK3
    2361             : #include "pm_sampleMean@routines.inc.F90"
    2362        3600 :     end procedure
    2363             : #endif
    2364             : 
    2365             : #if RK2_ENABLED
    2366        6911 :     module procedure setMeanDIM_WNO_D2_RK2
    2367             :         use pm_kind, only: TKC => RK2
    2368             : #include "pm_sampleMean@routines.inc.F90"
    2369        6911 :     end procedure
    2370             : #endif
    2371             : 
    2372             : #if RK1_ENABLED
    2373        3897 :     module procedure setMeanDIM_WNO_D2_RK1
    2374             :         use pm_kind, only: TKC => RK1
    2375             : #include "pm_sampleMean@routines.inc.F90"
    2376        3897 :     end procedure
    2377             : #endif
    2378             : 
    2379             : #undef RK_ENABLED
    2380             : 
    2381             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2382             : 
    2383             : #undef D2_ENABLED
    2384             : 
    2385             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2386             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2387             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2388             : 
    2389             : #undef WNO_ENABLED
    2390             : 
    2391             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2392             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2393             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2394             : 
    2395             : #define WTI_ENABLED 1
    2396             : 
    2397             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2398             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2399             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2400             : 
    2401             : #define D1_ENABLED 1
    2402             : 
    2403             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2404             : 
    2405             : #define CK_ENABLED 1
    2406             : 
    2407             : #if CK5_ENABLED
    2408             :     module procedure setMeanDIM_WTI_D1_CK5
    2409             :         use pm_kind, only: TKC => CK5
    2410             : #include "pm_sampleMean@routines.inc.F90"
    2411             :     end procedure
    2412             : #endif
    2413             : 
    2414             : #if CK4_ENABLED
    2415         450 :     module procedure setMeanDIM_WTI_D1_CK4
    2416             :         use pm_kind, only: TKC => CK4
    2417             : #include "pm_sampleMean@routines.inc.F90"
    2418         450 :     end procedure
    2419             : #endif
    2420             : 
    2421             : #if CK3_ENABLED
    2422         450 :     module procedure setMeanDIM_WTI_D1_CK3
    2423             :         use pm_kind, only: TKC => CK3
    2424             : #include "pm_sampleMean@routines.inc.F90"
    2425         450 :     end procedure
    2426             : #endif
    2427             : 
    2428             : #if CK2_ENABLED
    2429         450 :     module procedure setMeanDIM_WTI_D1_CK2
    2430             :         use pm_kind, only: TKC => CK2
    2431             : #include "pm_sampleMean@routines.inc.F90"
    2432         450 :     end procedure
    2433             : #endif
    2434             : 
    2435             : #if CK1_ENABLED
    2436         450 :     module procedure setMeanDIM_WTI_D1_CK1
    2437             :         use pm_kind, only: TKC => CK1
    2438             : #include "pm_sampleMean@routines.inc.F90"
    2439         450 :     end procedure
    2440             : #endif
    2441             : 
    2442             : #undef CK_ENABLED
    2443             : 
    2444             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2445             : 
    2446             : #define RK_ENABLED 1
    2447             : 
    2448             : #if RK5_ENABLED
    2449             :     module procedure setMeanDIM_WTI_D1_RK5
    2450             :         use pm_kind, only: TKC => RK5
    2451             : #include "pm_sampleMean@routines.inc.F90"
    2452             :     end procedure
    2453             : #endif
    2454             : 
    2455             : #if RK4_ENABLED
    2456         450 :     module procedure setMeanDIM_WTI_D1_RK4
    2457             :         use pm_kind, only: TKC => RK4
    2458             : #include "pm_sampleMean@routines.inc.F90"
    2459         450 :     end procedure
    2460             : #endif
    2461             : 
    2462             : #if RK3_ENABLED
    2463         450 :     module procedure setMeanDIM_WTI_D1_RK3
    2464             :         use pm_kind, only: TKC => RK3
    2465             : #include "pm_sampleMean@routines.inc.F90"
    2466         450 :     end procedure
    2467             : #endif
    2468             : 
    2469             : #if RK2_ENABLED
    2470         450 :     module procedure setMeanDIM_WTI_D1_RK2
    2471             :         use pm_kind, only: TKC => RK2
    2472             : #include "pm_sampleMean@routines.inc.F90"
    2473         450 :     end procedure
    2474             : #endif
    2475             : 
    2476             : #if RK1_ENABLED
    2477         451 :     module procedure setMeanDIM_WTI_D1_RK1
    2478             :         use pm_kind, only: TKC => RK1
    2479             : #include "pm_sampleMean@routines.inc.F90"
    2480         451 :     end procedure
    2481             : #endif
    2482             : 
    2483             : #undef RK_ENABLED
    2484             : 
    2485             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2486             : 
    2487             : #undef D1_ENABLED
    2488             : 
    2489             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2490             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2491             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2492             : 
    2493             : #define D2_ENABLED 1
    2494             : 
    2495             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2496             : 
    2497             : #define CK_ENABLED 1
    2498             : 
    2499             : #if CK5_ENABLED
    2500             :     module procedure setMeanDIM_WTI_D2_CK5
    2501             :         use pm_kind, only: TKC => CK5
    2502             : #include "pm_sampleMean@routines.inc.F90"
    2503             :     end procedure
    2504             : #endif
    2505             : 
    2506             : #if CK4_ENABLED
    2507        1050 :     module procedure setMeanDIM_WTI_D2_CK4
    2508             :         use pm_kind, only: TKC => CK4
    2509             : #include "pm_sampleMean@routines.inc.F90"
    2510        1050 :     end procedure
    2511             : #endif
    2512             : 
    2513             : #if CK3_ENABLED
    2514        1050 :     module procedure setMeanDIM_WTI_D2_CK3
    2515             :         use pm_kind, only: TKC => CK3
    2516             : #include "pm_sampleMean@routines.inc.F90"
    2517        1050 :     end procedure
    2518             : #endif
    2519             : 
    2520             : #if CK2_ENABLED
    2521        1050 :     module procedure setMeanDIM_WTI_D2_CK2
    2522             :         use pm_kind, only: TKC => CK2
    2523             : #include "pm_sampleMean@routines.inc.F90"
    2524        1050 :     end procedure
    2525             : #endif
    2526             : 
    2527             : #if CK1_ENABLED
    2528        1106 :     module procedure setMeanDIM_WTI_D2_CK1
    2529             :         use pm_kind, only: TKC => CK1
    2530             : #include "pm_sampleMean@routines.inc.F90"
    2531        1106 :     end procedure
    2532             : #endif
    2533             : 
    2534             : #undef CK_ENABLED
    2535             : 
    2536             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2537             : 
    2538             : #define RK_ENABLED 1
    2539             : 
    2540             : #if RK5_ENABLED
    2541             :     module procedure setMeanDIM_WTI_D2_RK5
    2542             :         use pm_kind, only: TKC => RK5
    2543             : #include "pm_sampleMean@routines.inc.F90"
    2544             :     end procedure
    2545             : #endif
    2546             : 
    2547             : #if RK4_ENABLED
    2548        1050 :     module procedure setMeanDIM_WTI_D2_RK4
    2549             :         use pm_kind, only: TKC => RK4
    2550             : #include "pm_sampleMean@routines.inc.F90"
    2551        1050 :     end procedure
    2552             : #endif
    2553             : 
    2554             : #if RK3_ENABLED
    2555        1050 :     module procedure setMeanDIM_WTI_D2_RK3
    2556             :         use pm_kind, only: TKC => RK3
    2557             : #include "pm_sampleMean@routines.inc.F90"
    2558        1050 :     end procedure
    2559             : #endif
    2560             : 
    2561             : #if RK2_ENABLED
    2562       52858 :     module procedure setMeanDIM_WTI_D2_RK2
    2563             :         use pm_kind, only: TKC => RK2
    2564             : #include "pm_sampleMean@routines.inc.F90"
    2565       52858 :     end procedure
    2566             : #endif
    2567             : 
    2568             : #if RK1_ENABLED
    2569        1994 :     module procedure setMeanDIM_WTI_D2_RK1
    2570             :         use pm_kind, only: TKC => RK1
    2571             : #include "pm_sampleMean@routines.inc.F90"
    2572        1994 :     end procedure
    2573             : #endif
    2574             : 
    2575             : #undef RK_ENABLED
    2576             : 
    2577             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2578             : 
    2579             : #undef D2_ENABLED
    2580             : 
    2581             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2582             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2583             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2584             : 
    2585             : #undef WTI_ENABLED
    2586             : 
    2587             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2588             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2589             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2590             : 
    2591             : #define WTR_ENABLED 1
    2592             : 
    2593             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2594             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2595             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2596             : 
    2597             : #define D1_ENABLED 1
    2598             : 
    2599             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2600             : 
    2601             : #define CK_ENABLED 1
    2602             : 
    2603             : #if CK5_ENABLED
    2604             :     module procedure setMeanDIM_WTR_D1_CK5
    2605             :         use pm_kind, only: TKC => CK5
    2606             : #include "pm_sampleMean@routines.inc.F90"
    2607             :     end procedure
    2608             : #endif
    2609             : 
    2610             : #if CK4_ENABLED
    2611         400 :     module procedure setMeanDIM_WTR_D1_CK4
    2612             :         use pm_kind, only: TKC => CK4
    2613             : #include "pm_sampleMean@routines.inc.F90"
    2614         400 :     end procedure
    2615             : #endif
    2616             : 
    2617             : #if CK3_ENABLED
    2618         400 :     module procedure setMeanDIM_WTR_D1_CK3
    2619             :         use pm_kind, only: TKC => CK3
    2620             : #include "pm_sampleMean@routines.inc.F90"
    2621         400 :     end procedure
    2622             : #endif
    2623             : 
    2624             : #if CK2_ENABLED
    2625         400 :     module procedure setMeanDIM_WTR_D1_CK2
    2626             :         use pm_kind, only: TKC => CK2
    2627             : #include "pm_sampleMean@routines.inc.F90"
    2628         400 :     end procedure
    2629             : #endif
    2630             : 
    2631             : #if CK1_ENABLED
    2632         402 :     module procedure setMeanDIM_WTR_D1_CK1
    2633             :         use pm_kind, only: TKC => CK1
    2634             : #include "pm_sampleMean@routines.inc.F90"
    2635         402 :     end procedure
    2636             : #endif
    2637             : 
    2638             : #undef CK_ENABLED
    2639             : 
    2640             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2641             : 
    2642             : #define RK_ENABLED 1
    2643             : 
    2644             : #if RK5_ENABLED
    2645             :     module procedure setMeanDIM_WTR_D1_RK5
    2646             :         use pm_kind, only: TKC => RK5
    2647             : #include "pm_sampleMean@routines.inc.F90"
    2648             :     end procedure
    2649             : #endif
    2650             : 
    2651             : #if RK4_ENABLED
    2652         400 :     module procedure setMeanDIM_WTR_D1_RK4
    2653             :         use pm_kind, only: TKC => RK4
    2654             : #include "pm_sampleMean@routines.inc.F90"
    2655         400 :     end procedure
    2656             : #endif
    2657             : 
    2658             : #if RK3_ENABLED
    2659         400 :     module procedure setMeanDIM_WTR_D1_RK3
    2660             :         use pm_kind, only: TKC => RK3
    2661             : #include "pm_sampleMean@routines.inc.F90"
    2662         400 :     end procedure
    2663             : #endif
    2664             : 
    2665             : #if RK2_ENABLED
    2666         400 :     module procedure setMeanDIM_WTR_D1_RK2
    2667             :         use pm_kind, only: TKC => RK2
    2668             : #include "pm_sampleMean@routines.inc.F90"
    2669         400 :     end procedure
    2670             : #endif
    2671             : 
    2672             : #if RK1_ENABLED
    2673         407 :     module procedure setMeanDIM_WTR_D1_RK1
    2674             :         use pm_kind, only: TKC => RK1
    2675             : #include "pm_sampleMean@routines.inc.F90"
    2676         407 :     end procedure
    2677             : #endif
    2678             : 
    2679             : #undef RK_ENABLED
    2680             : 
    2681             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2682             : 
    2683             : #undef D1_ENABLED
    2684             : 
    2685             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2686             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2687             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2688             : 
    2689             : #define D2_ENABLED 1
    2690             : 
    2691             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2692             : 
    2693             : #define CK_ENABLED 1
    2694             : 
    2695             : #if CK5_ENABLED
    2696             :     module procedure setMeanDIM_WTR_D2_CK5
    2697             :         use pm_kind, only: TKC => CK5
    2698             : #include "pm_sampleMean@routines.inc.F90"
    2699             :     end procedure
    2700             : #endif
    2701             : 
    2702             : #if CK4_ENABLED
    2703        1050 :     module procedure setMeanDIM_WTR_D2_CK4
    2704             :         use pm_kind, only: TKC => CK4
    2705             : #include "pm_sampleMean@routines.inc.F90"
    2706        1050 :     end procedure
    2707             : #endif
    2708             : 
    2709             : #if CK3_ENABLED
    2710        1050 :     module procedure setMeanDIM_WTR_D2_CK3
    2711             :         use pm_kind, only: TKC => CK3
    2712             : #include "pm_sampleMean@routines.inc.F90"
    2713        1050 :     end procedure
    2714             : #endif
    2715             : 
    2716             : #if CK2_ENABLED
    2717        1050 :     module procedure setMeanDIM_WTR_D2_CK2
    2718             :         use pm_kind, only: TKC => CK2
    2719             : #include "pm_sampleMean@routines.inc.F90"
    2720        1050 :     end procedure
    2721             : #endif
    2722             : 
    2723             : #if CK1_ENABLED
    2724        1106 :     module procedure setMeanDIM_WTR_D2_CK1
    2725             :         use pm_kind, only: TKC => CK1
    2726             : #include "pm_sampleMean@routines.inc.F90"
    2727        1106 :     end procedure
    2728             : #endif
    2729             : 
    2730             : #undef CK_ENABLED
    2731             : 
    2732             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2733             : 
    2734             : #define RK_ENABLED 1
    2735             : 
    2736             : #if RK5_ENABLED
    2737             :     module procedure setMeanDIM_WTR_D2_RK5
    2738             :         use pm_kind, only: TKC => RK5
    2739             : #include "pm_sampleMean@routines.inc.F90"
    2740             :     end procedure
    2741             : #endif
    2742             : 
    2743             : #if RK4_ENABLED
    2744        1050 :     module procedure setMeanDIM_WTR_D2_RK4
    2745             :         use pm_kind, only: TKC => RK4
    2746             : #include "pm_sampleMean@routines.inc.F90"
    2747        1050 :     end procedure
    2748             : #endif
    2749             : 
    2750             : #if RK3_ENABLED
    2751        1050 :     module procedure setMeanDIM_WTR_D2_RK3
    2752             :         use pm_kind, only: TKC => RK3
    2753             : #include "pm_sampleMean@routines.inc.F90"
    2754        1050 :     end procedure
    2755             : #endif
    2756             : 
    2757             : #if RK2_ENABLED
    2758        6006 :     module procedure setMeanDIM_WTR_D2_RK2
    2759             :         use pm_kind, only: TKC => RK2
    2760             : #include "pm_sampleMean@routines.inc.F90"
    2761        6006 :     end procedure
    2762             : #endif
    2763             : 
    2764             : #if RK1_ENABLED
    2765        1303 :     module procedure setMeanDIM_WTR_D2_RK1
    2766             :         use pm_kind, only: TKC => RK1
    2767             : #include "pm_sampleMean@routines.inc.F90"
    2768        1303 :     end procedure
    2769             : #endif
    2770             : 
    2771             : #undef RK_ENABLED
    2772             : 
    2773             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2774             : 
    2775             : #undef D2_ENABLED
    2776             : 
    2777             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2778             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2779             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2780             : 
    2781             : #undef WTR_ENABLED
    2782             : 
    2783             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2784             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2785             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2786             : 
    2787             : #undef DIM_ENABLED
    2788             : 
    2789             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2790             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2791             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2792             : 
    2793             : #undef setMean_ENABLED
    2794             : 
    2795             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2796             : 
    2797             : #define getMeanMerged_ENABLED 1
    2798             : 
    2799             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2800             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2801             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2802             : 
    2803             : #define New_ENABLED 1
    2804             : 
    2805             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2806             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2807             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2808             : 
    2809             : #define D0_ENABLED 1
    2810             : 
    2811             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2812             : 
    2813             : #define CK_ENABLED 1
    2814             : 
    2815             : #if CK5_ENABLED
    2816             :     module procedure getMeanMergedNew_D0_CK5
    2817             :         use pm_kind, only: TKC => CK5
    2818             : #include "pm_sampleMean@routines.inc.F90"
    2819             :     end procedure
    2820             : #endif
    2821             : 
    2822             : #if CK4_ENABLED
    2823          50 :     module procedure getMeanMergedNew_D0_CK4
    2824             :         use pm_kind, only: TKC => CK4
    2825             : #include "pm_sampleMean@routines.inc.F90"
    2826          50 :     end procedure
    2827             : #endif
    2828             : 
    2829             : #if CK3_ENABLED
    2830          50 :     module procedure getMeanMergedNew_D0_CK3
    2831             :         use pm_kind, only: TKC => CK3
    2832             : #include "pm_sampleMean@routines.inc.F90"
    2833          50 :     end procedure
    2834             : #endif
    2835             : 
    2836             : #if CK2_ENABLED
    2837          50 :     module procedure getMeanMergedNew_D0_CK2
    2838             :         use pm_kind, only: TKC => CK2
    2839             : #include "pm_sampleMean@routines.inc.F90"
    2840          50 :     end procedure
    2841             : #endif
    2842             : 
    2843             : #if CK1_ENABLED
    2844          50 :     module procedure getMeanMergedNew_D0_CK1
    2845             :         use pm_kind, only: TKC => CK1
    2846             : #include "pm_sampleMean@routines.inc.F90"
    2847          50 :     end procedure
    2848             : #endif
    2849             : 
    2850             : #undef CK_ENABLED
    2851             : 
    2852             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2853             : 
    2854             : #define RK_ENABLED 1
    2855             : 
    2856             : #if RK5_ENABLED
    2857             :     module procedure getMeanMergedNew_D0_RK5
    2858             :         use pm_kind, only: TKC => RK5
    2859             : #include "pm_sampleMean@routines.inc.F90"
    2860             :     end procedure
    2861             : #endif
    2862             : 
    2863             : #if RK4_ENABLED
    2864          50 :     module procedure getMeanMergedNew_D0_RK4
    2865             :         use pm_kind, only: TKC => RK4
    2866             : #include "pm_sampleMean@routines.inc.F90"
    2867          50 :     end procedure
    2868             : #endif
    2869             : 
    2870             : #if RK3_ENABLED
    2871          50 :     module procedure getMeanMergedNew_D0_RK3
    2872             :         use pm_kind, only: TKC => RK3
    2873             : #include "pm_sampleMean@routines.inc.F90"
    2874          50 :     end procedure
    2875             : #endif
    2876             : 
    2877             : #if RK2_ENABLED
    2878          50 :     module procedure getMeanMergedNew_D0_RK2
    2879             :         use pm_kind, only: TKC => RK2
    2880             : #include "pm_sampleMean@routines.inc.F90"
    2881          50 :     end procedure
    2882             : #endif
    2883             : 
    2884             : #if RK1_ENABLED
    2885          80 :     module procedure getMeanMergedNew_D0_RK1
    2886             :         use pm_kind, only: TKC => RK1
    2887             : #include "pm_sampleMean@routines.inc.F90"
    2888          80 :     end procedure
    2889             : #endif
    2890             : 
    2891             : #undef RK_ENABLED
    2892             : 
    2893             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2894             : 
    2895             : #undef D0_ENABLED
    2896             : 
    2897             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2898             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2899             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2900             : 
    2901             : #define D1_ENABLED 1
    2902             : 
    2903             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2904             : 
    2905             : #define CK_ENABLED 1
    2906             : 
    2907             : #if CK5_ENABLED
    2908             :     module procedure getMeanMergedNew_D1_CK5
    2909             :         use pm_kind, only: TKC => CK5
    2910             : #include "pm_sampleMean@routines.inc.F90"
    2911             :     end procedure
    2912             : #endif
    2913             : 
    2914             : #if CK4_ENABLED
    2915          50 :     module procedure getMeanMergedNew_D1_CK4
    2916             :         use pm_kind, only: TKC => CK4
    2917             : #include "pm_sampleMean@routines.inc.F90"
    2918          50 :     end procedure
    2919             : #endif
    2920             : 
    2921             : #if CK3_ENABLED
    2922          50 :     module procedure getMeanMergedNew_D1_CK3
    2923             :         use pm_kind, only: TKC => CK3
    2924             : #include "pm_sampleMean@routines.inc.F90"
    2925          50 :     end procedure
    2926             : #endif
    2927             : 
    2928             : #if CK2_ENABLED
    2929          50 :     module procedure getMeanMergedNew_D1_CK2
    2930             :         use pm_kind, only: TKC => CK2
    2931             : #include "pm_sampleMean@routines.inc.F90"
    2932          50 :     end procedure
    2933             : #endif
    2934             : 
    2935             : #if CK1_ENABLED
    2936          50 :     module procedure getMeanMergedNew_D1_CK1
    2937             :         use pm_kind, only: TKC => CK1
    2938             : #include "pm_sampleMean@routines.inc.F90"
    2939          50 :     end procedure
    2940             : #endif
    2941             : 
    2942             : #undef CK_ENABLED
    2943             : 
    2944             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2945             : 
    2946             : #define RK_ENABLED 1
    2947             : 
    2948             : #if RK5_ENABLED
    2949             :     module procedure getMeanMergedNew_D1_RK5
    2950             :         use pm_kind, only: TKC => RK5
    2951             : #include "pm_sampleMean@routines.inc.F90"
    2952             :     end procedure
    2953             : #endif
    2954             : 
    2955             : #if RK4_ENABLED
    2956          50 :     module procedure getMeanMergedNew_D1_RK4
    2957             :         use pm_kind, only: TKC => RK4
    2958             : #include "pm_sampleMean@routines.inc.F90"
    2959          50 :     end procedure
    2960             : #endif
    2961             : 
    2962             : #if RK3_ENABLED
    2963          50 :     module procedure getMeanMergedNew_D1_RK3
    2964             :         use pm_kind, only: TKC => RK3
    2965             : #include "pm_sampleMean@routines.inc.F90"
    2966          50 :     end procedure
    2967             : #endif
    2968             : 
    2969             : #if RK2_ENABLED
    2970          50 :     module procedure getMeanMergedNew_D1_RK2
    2971             :         use pm_kind, only: TKC => RK2
    2972             : #include "pm_sampleMean@routines.inc.F90"
    2973          50 :     end procedure
    2974             : #endif
    2975             : 
    2976             : #if RK1_ENABLED
    2977          80 :     module procedure getMeanMergedNew_D1_RK1
    2978             :         use pm_kind, only: TKC => RK1
    2979             : #include "pm_sampleMean@routines.inc.F90"
    2980          80 :     end procedure
    2981             : #endif
    2982             : 
    2983             : #undef RK_ENABLED
    2984             : 
    2985             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2986             : 
    2987             : #undef D1_ENABLED
    2988             : 
    2989             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2990             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2991             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2992             : 
    2993             : #undef New_ENABLED
    2994             : 
    2995             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2996             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2997             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2998             : 
    2999             : #undef getMeanMerged_ENABLED
    3000             : 
    3001             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3002             : 
    3003             : #define setMeanMerged_ENABLED 1
    3004             : 
    3005             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3006             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3007             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3008             : 
    3009             : #define New_ENABLED 1
    3010             : 
    3011             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3012             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3013             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3014             : 
    3015             : #define D0_ENABLED 1
    3016             : 
    3017             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3018             : 
    3019             : #define CK_ENABLED 1
    3020             : 
    3021             : #if CK5_ENABLED
    3022             :     module procedure setMeanMergedNew_D0_CK5
    3023             :         use pm_kind, only: TKC => CK5
    3024             : #include "pm_sampleMean@routines.inc.F90"
    3025             :     end procedure
    3026             : #endif
    3027             : 
    3028             : #if CK4_ENABLED
    3029         100 :     module procedure setMeanMergedNew_D0_CK4
    3030             :         use pm_kind, only: TKC => CK4
    3031             : #include "pm_sampleMean@routines.inc.F90"
    3032         100 :     end procedure
    3033             : #endif
    3034             : 
    3035             : #if CK3_ENABLED
    3036         100 :     module procedure setMeanMergedNew_D0_CK3
    3037             :         use pm_kind, only: TKC => CK3
    3038             : #include "pm_sampleMean@routines.inc.F90"
    3039         100 :     end procedure
    3040             : #endif
    3041             : 
    3042             : #if CK2_ENABLED
    3043         100 :     module procedure setMeanMergedNew_D0_CK2
    3044             :         use pm_kind, only: TKC => CK2
    3045             : #include "pm_sampleMean@routines.inc.F90"
    3046         100 :     end procedure
    3047             : #endif
    3048             : 
    3049             : #if CK1_ENABLED
    3050         100 :     module procedure setMeanMergedNew_D0_CK1
    3051             :         use pm_kind, only: TKC => CK1
    3052             : #include "pm_sampleMean@routines.inc.F90"
    3053         100 :     end procedure
    3054             : #endif
    3055             : 
    3056             : #undef CK_ENABLED
    3057             : 
    3058             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3059             : 
    3060             : #define RK_ENABLED 1
    3061             : 
    3062             : #if RK5_ENABLED
    3063             :     module procedure setMeanMergedNew_D0_RK5
    3064             :         use pm_kind, only: TKC => RK5
    3065             : #include "pm_sampleMean@routines.inc.F90"
    3066             :     end procedure
    3067             : #endif
    3068             : 
    3069             : #if RK4_ENABLED
    3070         100 :     module procedure setMeanMergedNew_D0_RK4
    3071             :         use pm_kind, only: TKC => RK4
    3072             : #include "pm_sampleMean@routines.inc.F90"
    3073         100 :     end procedure
    3074             : #endif
    3075             : 
    3076             : #if RK3_ENABLED
    3077         100 :     module procedure setMeanMergedNew_D0_RK3
    3078             :         use pm_kind, only: TKC => RK3
    3079             : #include "pm_sampleMean@routines.inc.F90"
    3080         100 :     end procedure
    3081             : #endif
    3082             : 
    3083             : #if RK2_ENABLED
    3084         100 :     module procedure setMeanMergedNew_D0_RK2
    3085             :         use pm_kind, only: TKC => RK2
    3086             : #include "pm_sampleMean@routines.inc.F90"
    3087         100 :     end procedure
    3088             : #endif
    3089             : 
    3090             : #if RK1_ENABLED
    3091         160 :     module procedure setMeanMergedNew_D0_RK1
    3092             :         use pm_kind, only: TKC => RK1
    3093             : #include "pm_sampleMean@routines.inc.F90"
    3094         160 :     end procedure
    3095             : #endif
    3096             : 
    3097             : #undef RK_ENABLED
    3098             : 
    3099             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3100             : 
    3101             : #undef D0_ENABLED
    3102             : 
    3103             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3104             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3105             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3106             : 
    3107             : #define D1_ENABLED 1
    3108             : 
    3109             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3110             : 
    3111             : #define CK_ENABLED 1
    3112             : 
    3113             : #if CK5_ENABLED
    3114             :     module procedure setMeanMergedNew_D1_CK5
    3115             :         use pm_kind, only: TKC => CK5
    3116             : #include "pm_sampleMean@routines.inc.F90"
    3117             :     end procedure
    3118             : #endif
    3119             : 
    3120             : #if CK4_ENABLED
    3121         100 :     module procedure setMeanMergedNew_D1_CK4
    3122             :         use pm_kind, only: TKC => CK4
    3123             : #include "pm_sampleMean@routines.inc.F90"
    3124         100 :     end procedure
    3125             : #endif
    3126             : 
    3127             : #if CK3_ENABLED
    3128         100 :     module procedure setMeanMergedNew_D1_CK3
    3129             :         use pm_kind, only: TKC => CK3
    3130             : #include "pm_sampleMean@routines.inc.F90"
    3131         100 :     end procedure
    3132             : #endif
    3133             : 
    3134             : #if CK2_ENABLED
    3135         100 :     module procedure setMeanMergedNew_D1_CK2
    3136             :         use pm_kind, only: TKC => CK2
    3137             : #include "pm_sampleMean@routines.inc.F90"
    3138         100 :     end procedure
    3139             : #endif
    3140             : 
    3141             : #if CK1_ENABLED
    3142         100 :     module procedure setMeanMergedNew_D1_CK1
    3143             :         use pm_kind, only: TKC => CK1
    3144             : #include "pm_sampleMean@routines.inc.F90"
    3145         100 :     end procedure
    3146             : #endif
    3147             : 
    3148             : #undef CK_ENABLED
    3149             : 
    3150             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3151             : 
    3152             : #define RK_ENABLED 1
    3153             : 
    3154             : #if RK5_ENABLED
    3155             :     module procedure setMeanMergedNew_D1_RK5
    3156             :         use pm_kind, only: TKC => RK5
    3157             : #include "pm_sampleMean@routines.inc.F90"
    3158             :     end procedure
    3159             : #endif
    3160             : 
    3161             : #if RK4_ENABLED
    3162         100 :     module procedure setMeanMergedNew_D1_RK4
    3163             :         use pm_kind, only: TKC => RK4
    3164             : #include "pm_sampleMean@routines.inc.F90"
    3165         100 :     end procedure
    3166             : #endif
    3167             : 
    3168             : #if RK3_ENABLED
    3169         100 :     module procedure setMeanMergedNew_D1_RK3
    3170             :         use pm_kind, only: TKC => RK3
    3171             : #include "pm_sampleMean@routines.inc.F90"
    3172         100 :     end procedure
    3173             : #endif
    3174             : 
    3175             : #if RK2_ENABLED
    3176         100 :     module procedure setMeanMergedNew_D1_RK2
    3177             :         use pm_kind, only: TKC => RK2
    3178             : #include "pm_sampleMean@routines.inc.F90"
    3179         100 :     end procedure
    3180             : #endif
    3181             : 
    3182             : #if RK1_ENABLED
    3183         160 :     module procedure setMeanMergedNew_D1_RK1
    3184             :         use pm_kind, only: TKC => RK1
    3185             : #include "pm_sampleMean@routines.inc.F90"
    3186         160 :     end procedure
    3187             : #endif
    3188             : 
    3189             : #undef RK_ENABLED
    3190             : 
    3191             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3192             : 
    3193             : #undef D1_ENABLED
    3194             : 
    3195             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3196             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3197             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3198             : 
    3199             : #undef New_ENABLED
    3200             : 
    3201             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3202             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3203             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3204             : 
    3205             : #define Old_ENABLED 1
    3206             : 
    3207             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3208             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3209             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3210             : 
    3211             : #define D0_ENABLED 1
    3212             : 
    3213             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3214             : 
    3215             : #define CK_ENABLED 1
    3216             : 
    3217             : #if CK5_ENABLED
    3218             :     module procedure setMeanMergedOld_D0_CK5
    3219             :         use pm_kind, only: TKC => CK5
    3220             : #include "pm_sampleMean@routines.inc.F90"
    3221             :     end procedure
    3222             : #endif
    3223             : 
    3224             : #if CK4_ENABLED
    3225          50 :     module procedure setMeanMergedOld_D0_CK4
    3226             :         use pm_kind, only: TKC => CK4
    3227             : #include "pm_sampleMean@routines.inc.F90"
    3228          50 :     end procedure
    3229             : #endif
    3230             : 
    3231             : #if CK3_ENABLED
    3232          50 :     module procedure setMeanMergedOld_D0_CK3
    3233             :         use pm_kind, only: TKC => CK3
    3234             : #include "pm_sampleMean@routines.inc.F90"
    3235          50 :     end procedure
    3236             : #endif
    3237             : 
    3238             : #if CK2_ENABLED
    3239          50 :     module procedure setMeanMergedOld_D0_CK2
    3240             :         use pm_kind, only: TKC => CK2
    3241             : #include "pm_sampleMean@routines.inc.F90"
    3242          50 :     end procedure
    3243             : #endif
    3244             : 
    3245             : #if CK1_ENABLED
    3246          50 :     module procedure setMeanMergedOld_D0_CK1
    3247             :         use pm_kind, only: TKC => CK1
    3248             : #include "pm_sampleMean@routines.inc.F90"
    3249          50 :     end procedure
    3250             : #endif
    3251             : 
    3252             : #undef CK_ENABLED
    3253             : 
    3254             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3255             : 
    3256             : #define RK_ENABLED 1
    3257             : 
    3258             : #if RK5_ENABLED
    3259             :     module procedure setMeanMergedOld_D0_RK5
    3260             :         use pm_kind, only: TKC => RK5
    3261             : #include "pm_sampleMean@routines.inc.F90"
    3262             :     end procedure
    3263             : #endif
    3264             : 
    3265             : #if RK4_ENABLED
    3266          50 :     module procedure setMeanMergedOld_D0_RK4
    3267             :         use pm_kind, only: TKC => RK4
    3268             : #include "pm_sampleMean@routines.inc.F90"
    3269          50 :     end procedure
    3270             : #endif
    3271             : 
    3272             : #if RK3_ENABLED
    3273          50 :     module procedure setMeanMergedOld_D0_RK3
    3274             :         use pm_kind, only: TKC => RK3
    3275             : #include "pm_sampleMean@routines.inc.F90"
    3276          50 :     end procedure
    3277             : #endif
    3278             : 
    3279             : #if RK2_ENABLED
    3280          50 :     module procedure setMeanMergedOld_D0_RK2
    3281             :         use pm_kind, only: TKC => RK2
    3282             : #include "pm_sampleMean@routines.inc.F90"
    3283          50 :     end procedure
    3284             : #endif
    3285             : 
    3286             : #if RK1_ENABLED
    3287          80 :     module procedure setMeanMergedOld_D0_RK1
    3288             :         use pm_kind, only: TKC => RK1
    3289             : #include "pm_sampleMean@routines.inc.F90"
    3290          80 :     end procedure
    3291             : #endif
    3292             : 
    3293             : #undef RK_ENABLED
    3294             : 
    3295             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3296             : 
    3297             : #undef D0_ENABLED
    3298             : 
    3299             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3300             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3301             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3302             : 
    3303             : #define D1_ENABLED 1
    3304             : 
    3305             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3306             : 
    3307             : #define CK_ENABLED 1
    3308             : 
    3309             : #if CK5_ENABLED
    3310             :     module procedure setMeanMergedOld_D1_CK5
    3311             :         use pm_kind, only: TKC => CK5
    3312             : #include "pm_sampleMean@routines.inc.F90"
    3313             :     end procedure
    3314             : #endif
    3315             : 
    3316             : #if CK4_ENABLED
    3317          50 :     module procedure setMeanMergedOld_D1_CK4
    3318             :         use pm_kind, only: TKC => CK4
    3319             : #include "pm_sampleMean@routines.inc.F90"
    3320          50 :     end procedure
    3321             : #endif
    3322             : 
    3323             : #if CK3_ENABLED
    3324          50 :     module procedure setMeanMergedOld_D1_CK3
    3325             :         use pm_kind, only: TKC => CK3
    3326             : #include "pm_sampleMean@routines.inc.F90"
    3327          50 :     end procedure
    3328             : #endif
    3329             : 
    3330             : #if CK2_ENABLED
    3331          50 :     module procedure setMeanMergedOld_D1_CK2
    3332             :         use pm_kind, only: TKC => CK2
    3333             : #include "pm_sampleMean@routines.inc.F90"
    3334          50 :     end procedure
    3335             : #endif
    3336             : 
    3337             : #if CK1_ENABLED
    3338          50 :     module procedure setMeanMergedOld_D1_CK1
    3339             :         use pm_kind, only: TKC => CK1
    3340             : #include "pm_sampleMean@routines.inc.F90"
    3341          50 :     end procedure
    3342             : #endif
    3343             : 
    3344             : #undef CK_ENABLED
    3345             : 
    3346             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3347             : 
    3348             : #define RK_ENABLED 1
    3349             : 
    3350             : #if RK5_ENABLED
    3351             :     module procedure setMeanMergedOld_D1_RK5
    3352             :         use pm_kind, only: TKC => RK5
    3353             : #include "pm_sampleMean@routines.inc.F90"
    3354             :     end procedure
    3355             : #endif
    3356             : 
    3357             : #if RK4_ENABLED
    3358          50 :     module procedure setMeanMergedOld_D1_RK4
    3359             :         use pm_kind, only: TKC => RK4
    3360             : #include "pm_sampleMean@routines.inc.F90"
    3361          50 :     end procedure
    3362             : #endif
    3363             : 
    3364             : #if RK3_ENABLED
    3365          50 :     module procedure setMeanMergedOld_D1_RK3
    3366             :         use pm_kind, only: TKC => RK3
    3367             : #include "pm_sampleMean@routines.inc.F90"
    3368          50 :     end procedure
    3369             : #endif
    3370             : 
    3371             : #if RK2_ENABLED
    3372          50 :     module procedure setMeanMergedOld_D1_RK2
    3373             :         use pm_kind, only: TKC => RK2
    3374             : #include "pm_sampleMean@routines.inc.F90"
    3375          50 :     end procedure
    3376             : #endif
    3377             : 
    3378             : #if RK1_ENABLED
    3379          80 :     module procedure setMeanMergedOld_D1_RK1
    3380             :         use pm_kind, only: TKC => RK1
    3381             : #include "pm_sampleMean@routines.inc.F90"
    3382          80 :     end procedure
    3383             : #endif
    3384             : 
    3385             : #undef RK_ENABLED
    3386             : 
    3387             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3388             : 
    3389             : #undef D1_ENABLED
    3390             : 
    3391             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3392             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3393             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3394             : 
    3395             : #undef Old_ENABLED
    3396             : 
    3397             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3398             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3399             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3400             : 
    3401             : #undef setMeanMerged_ENABLED
    3402             : 
    3403             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3404             : 
    3405             : #undef CHECK_ASSERTION
    3406             : 
    3407             : end submodule routines

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