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 This file contains the implementations of the tests of module [pm_mathCumSum](@ref pm_mathCumSum).
18 : !>
19 : !> \fintest
20 : !>
21 : !> \author
22 : !> \AmirShahmoradi, Tuesday 12:01 AM, August 11, 2021, Dallas, TX
23 :
24 : submodule (test_pm_mathCumSum) routines
25 :
26 : use pm_complexCompareAll, only: operator(<=)
27 : use pm_arrayReverse, only: setReversed
28 : use pm_arrayResize, only: setResized
29 : use pm_mathCumSum, only: getCumSum
30 : use pm_distUnif, only: getUnifRand
31 : use pm_val2str, only: getStr
32 :
33 : implicit none
34 :
35 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
36 :
37 : contains
38 :
39 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
40 :
41 : #define getCumSum_ENABLED 1
42 :
43 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
44 :
45 : #define IK_ENABLED 1
46 :
47 : #if IK5_ENABLED
48 1 : module procedure test_getCumSum_IK5
49 : use pm_kind, only: TKC => IK5
50 : #include "test_pm_mathCumSum@routines.inc.F90"
51 : end procedure
52 : #endif
53 :
54 : #if IK4_ENABLED
55 2 : module procedure test_getCumSum_IK4
56 : use pm_kind, only: TKC => IK4
57 : #include "test_pm_mathCumSum@routines.inc.F90"
58 : end procedure
59 : #endif
60 :
61 : #if IK3_ENABLED
62 1 : module procedure test_getCumSum_IK3
63 : use pm_kind, only: TKC => IK3
64 : #include "test_pm_mathCumSum@routines.inc.F90"
65 : end procedure
66 : #endif
67 :
68 : #if IK2_ENABLED
69 1 : module procedure test_getCumSum_IK2
70 : use pm_kind, only: TKC => IK2
71 : #include "test_pm_mathCumSum@routines.inc.F90"
72 : end procedure
73 : #endif
74 :
75 : #if IK1_ENABLED
76 1 : module procedure test_getCumSum_IK1
77 : use pm_kind, only: TKC => IK1
78 : #include "test_pm_mathCumSum@routines.inc.F90"
79 : end procedure
80 : #endif
81 :
82 : #undef IK_ENABLED
83 :
84 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
85 :
86 : #define CK_ENABLED 1
87 :
88 : #if CK5_ENABLED
89 : module procedure test_getCumSum_CK5
90 : use pm_kind, only: TKC => CK5
91 : #include "test_pm_mathCumSum@routines.inc.F90"
92 : end procedure
93 : #endif
94 :
95 : #if CK4_ENABLED
96 1 : module procedure test_getCumSum_CK4
97 : use pm_kind, only: TKC => CK4
98 : #include "test_pm_mathCumSum@routines.inc.F90"
99 : end procedure
100 : #endif
101 :
102 : #if CK3_ENABLED
103 1 : module procedure test_getCumSum_CK3
104 : use pm_kind, only: TKC => CK3
105 : #include "test_pm_mathCumSum@routines.inc.F90"
106 : end procedure
107 : #endif
108 :
109 : #if CK2_ENABLED
110 1 : module procedure test_getCumSum_CK2
111 : use pm_kind, only: TKC => CK2
112 : #include "test_pm_mathCumSum@routines.inc.F90"
113 : end procedure
114 : #endif
115 :
116 : #if CK1_ENABLED
117 1 : module procedure test_getCumSum_CK1
118 : use pm_kind, only: TKC => CK1
119 : #include "test_pm_mathCumSum@routines.inc.F90"
120 : end procedure
121 : #endif
122 :
123 : #undef CK_ENABLED
124 :
125 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
126 :
127 : #define RK_ENABLED 1
128 :
129 : #if RK5_ENABLED
130 : module procedure test_getCumSum_RK5
131 : use pm_kind, only: TKC => RK5
132 : #include "test_pm_mathCumSum@routines.inc.F90"
133 : end procedure
134 : #endif
135 :
136 : #if RK4_ENABLED
137 1 : module procedure test_getCumSum_RK4
138 : use pm_kind, only: TKC => RK4
139 : #include "test_pm_mathCumSum@routines.inc.F90"
140 : end procedure
141 : #endif
142 :
143 : #if RK3_ENABLED
144 1 : module procedure test_getCumSum_RK3
145 : use pm_kind, only: TKC => RK3
146 : #include "test_pm_mathCumSum@routines.inc.F90"
147 : end procedure
148 : #endif
149 :
150 : #if RK2_ENABLED
151 1 : module procedure test_getCumSum_RK2
152 : use pm_kind, only: TKC => RK2
153 : #include "test_pm_mathCumSum@routines.inc.F90"
154 : end procedure
155 : #endif
156 :
157 : #if RK1_ENABLED
158 1 : module procedure test_getCumSum_RK1
159 : use pm_kind, only: TKC => RK1
160 : #include "test_pm_mathCumSum@routines.inc.F90"
161 : end procedure
162 : #endif
163 :
164 : #undef RK_ENABLED
165 :
166 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
167 :
168 : #undef getCumSum_ENABLED
169 :
170 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
171 :
172 : #define setCumSum_ENABLED 1
173 :
174 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
175 :
176 : #define IK_ENABLED 1
177 :
178 : #if IK5_ENABLED
179 1 : module procedure test_setCumSum_IK5
180 : use pm_kind, only: TKC => IK5
181 : #include "test_pm_mathCumSum@routines.inc.F90"
182 : end procedure
183 : #endif
184 :
185 : #if IK4_ENABLED
186 1 : module procedure test_setCumSum_IK4
187 : use pm_kind, only: TKC => IK4
188 : #include "test_pm_mathCumSum@routines.inc.F90"
189 : end procedure
190 : #endif
191 :
192 : #if IK3_ENABLED
193 1 : module procedure test_setCumSum_IK3
194 : use pm_kind, only: TKC => IK3
195 : #include "test_pm_mathCumSum@routines.inc.F90"
196 : end procedure
197 : #endif
198 :
199 : #if IK2_ENABLED
200 1 : module procedure test_setCumSum_IK2
201 : use pm_kind, only: TKC => IK2
202 : #include "test_pm_mathCumSum@routines.inc.F90"
203 : end procedure
204 : #endif
205 :
206 : #if IK1_ENABLED
207 1 : module procedure test_setCumSum_IK1
208 : use pm_kind, only: TKC => IK1
209 : #include "test_pm_mathCumSum@routines.inc.F90"
210 : end procedure
211 : #endif
212 :
213 : #undef IK_ENABLED
214 :
215 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
216 :
217 : #define CK_ENABLED 1
218 :
219 : #if CK5_ENABLED
220 : module procedure test_setCumSum_CK5
221 : use pm_kind, only: TKC => CK5
222 : #include "test_pm_mathCumSum@routines.inc.F90"
223 : end procedure
224 : #endif
225 :
226 : #if CK4_ENABLED
227 1 : module procedure test_setCumSum_CK4
228 : use pm_kind, only: TKC => CK4
229 : #include "test_pm_mathCumSum@routines.inc.F90"
230 : end procedure
231 : #endif
232 :
233 : #if CK3_ENABLED
234 1 : module procedure test_setCumSum_CK3
235 : use pm_kind, only: TKC => CK3
236 : #include "test_pm_mathCumSum@routines.inc.F90"
237 : end procedure
238 : #endif
239 :
240 : #if CK2_ENABLED
241 1 : module procedure test_setCumSum_CK2
242 : use pm_kind, only: TKC => CK2
243 : #include "test_pm_mathCumSum@routines.inc.F90"
244 : end procedure
245 : #endif
246 :
247 : #if CK1_ENABLED
248 1 : module procedure test_setCumSum_CK1
249 : use pm_kind, only: TKC => CK1
250 : #include "test_pm_mathCumSum@routines.inc.F90"
251 : end procedure
252 : #endif
253 :
254 : #undef CK_ENABLED
255 :
256 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
257 :
258 : #define RK_ENABLED 1
259 :
260 : #if RK5_ENABLED
261 : module procedure test_setCumSum_RK5
262 : use pm_kind, only: TKC => RK5
263 : #include "test_pm_mathCumSum@routines.inc.F90"
264 : end procedure
265 : #endif
266 :
267 : #if RK4_ENABLED
268 1 : module procedure test_setCumSum_RK4
269 : use pm_kind, only: TKC => RK4
270 : #include "test_pm_mathCumSum@routines.inc.F90"
271 : end procedure
272 : #endif
273 :
274 : #if RK3_ENABLED
275 1 : module procedure test_setCumSum_RK3
276 : use pm_kind, only: TKC => RK3
277 : #include "test_pm_mathCumSum@routines.inc.F90"
278 : end procedure
279 : #endif
280 :
281 : #if RK2_ENABLED
282 1 : module procedure test_setCumSum_RK2
283 : use pm_kind, only: TKC => RK2
284 : #include "test_pm_mathCumSum@routines.inc.F90"
285 : end procedure
286 : #endif
287 :
288 : #if RK1_ENABLED
289 1 : module procedure test_setCumSum_RK1
290 : use pm_kind, only: TKC => RK1
291 : #include "test_pm_mathCumSum@routines.inc.F90"
292 : end procedure
293 : #endif
294 :
295 : #undef RK_ENABLED
296 :
297 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
298 :
299 : #undef setCumSum_ENABLED
300 :
301 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
302 :
303 : end submodule routines ! LCOV_EXCL_LINE
|