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 include file contains procedure implementations of the tests of [pm_distBern](@ref pm_distBern).
19 : !>
20 : !> \fintest
21 : !>
22 : !> \author
23 : !> \AmirShahmoradi, Tuesday 2:06 AM, September 21, 2021, Dallas, TX
24 :
25 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26 :
27 : module test_pm_distBern
28 :
29 : use pm_distBern
30 : use pm_err, only: err_type
31 : use pm_test, only: test_type, LK
32 :
33 : implicit none
34 :
35 : private
36 : public :: setTest
37 : type(test_type) :: test
38 :
39 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
40 :
41 : interface
42 : #if RK5_ENABLED
43 : module function test_isHead_RK5_1() result(assertion); logical(LK) :: assertion; end function
44 : #endif
45 : #if RK4_ENABLED
46 : module function test_isHead_RK4_1() result(assertion); logical(LK) :: assertion; end function
47 : #endif
48 : #if RK3_ENABLED
49 : module function test_isHead_RK3_1() result(assertion); logical(LK) :: assertion; end function
50 : #endif
51 : #if RK2_ENABLED
52 : module function test_isHead_RK2_1() result(assertion); logical(LK) :: assertion; end function
53 : #endif
54 : #if RK1_ENABLED
55 : module function test_isHead_RK1_1() result(assertion); logical(LK) :: assertion; end function
56 : #endif
57 : end interface
58 :
59 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
60 :
61 : interface
62 : #if RK5_ENABLED
63 : module function test_getBernRand_RK5_1() result(assertion); logical(LK) :: assertion; end function
64 : #endif
65 : #if RK4_ENABLED
66 : module function test_getBernRand_RK4_1() result(assertion); logical(LK) :: assertion; end function
67 : #endif
68 : #if RK3_ENABLED
69 : module function test_getBernRand_RK3_1() result(assertion); logical(LK) :: assertion; end function
70 : #endif
71 : #if RK2_ENABLED
72 : module function test_getBernRand_RK2_1() result(assertion); logical(LK) :: assertion; end function
73 : #endif
74 : #if RK1_ENABLED
75 : module function test_getBernRand_RK1_1() result(assertion); logical(LK) :: assertion; end function
76 : #endif
77 : end interface
78 :
79 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
80 :
81 : interface
82 :
83 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
84 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
85 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
86 :
87 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
88 :
89 : #if IK5_ENABLED && RK5_ENABLED
90 : module function test_setBernRand_IK5_RK5_1() result(assertion); logical(LK) :: assertion; end function
91 : #endif
92 : #if IK5_ENABLED && RK4_ENABLED
93 : module function test_setBernRand_IK5_RK4_1() result(assertion); logical(LK) :: assertion; end function
94 : #endif
95 : #if IK5_ENABLED && RK3_ENABLED
96 : module function test_setBernRand_IK5_RK3_1() result(assertion); logical(LK) :: assertion; end function
97 : #endif
98 : #if IK5_ENABLED && RK2_ENABLED
99 : module function test_setBernRand_IK5_RK2_1() result(assertion); logical(LK) :: assertion; end function
100 : #endif
101 : #if IK5_ENABLED && RK1_ENABLED
102 : module function test_setBernRand_IK5_RK1_1() result(assertion); logical(LK) :: assertion; end function
103 : #endif
104 :
105 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
106 :
107 : #if IK4_ENABLED && RK5_ENABLED
108 : module function test_setBernRand_IK4_RK5_1() result(assertion); logical(LK) :: assertion; end function
109 : #endif
110 : #if IK4_ENABLED && RK4_ENABLED
111 : module function test_setBernRand_IK4_RK4_1() result(assertion); logical(LK) :: assertion; end function
112 : #endif
113 : #if IK4_ENABLED && RK3_ENABLED
114 : module function test_setBernRand_IK4_RK3_1() result(assertion); logical(LK) :: assertion; end function
115 : #endif
116 : #if IK4_ENABLED && RK2_ENABLED
117 : module function test_setBernRand_IK4_RK2_1() result(assertion); logical(LK) :: assertion; end function
118 : #endif
119 : #if IK4_ENABLED && RK1_ENABLED
120 : module function test_setBernRand_IK4_RK1_1() result(assertion); logical(LK) :: assertion; end function
121 : #endif
122 :
123 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
124 :
125 : #if IK3_ENABLED && RK5_ENABLED
126 : module function test_setBernRand_IK3_RK5_1() result(assertion); logical(LK) :: assertion; end function
127 : #endif
128 : #if IK3_ENABLED && RK4_ENABLED
129 : module function test_setBernRand_IK3_RK4_1() result(assertion); logical(LK) :: assertion; end function
130 : #endif
131 : #if IK3_ENABLED && RK3_ENABLED
132 : module function test_setBernRand_IK3_RK3_1() result(assertion); logical(LK) :: assertion; end function
133 : #endif
134 : #if IK3_ENABLED && RK2_ENABLED
135 : module function test_setBernRand_IK3_RK2_1() result(assertion); logical(LK) :: assertion; end function
136 : #endif
137 : #if IK3_ENABLED && RK1_ENABLED
138 : module function test_setBernRand_IK3_RK1_1() result(assertion); logical(LK) :: assertion; end function
139 : #endif
140 :
141 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
142 :
143 : #if IK2_ENABLED && RK5_ENABLED
144 : module function test_setBernRand_IK2_RK5_1() result(assertion); logical(LK) :: assertion; end function
145 : #endif
146 : #if IK2_ENABLED && RK4_ENABLED
147 : module function test_setBernRand_IK2_RK4_1() result(assertion); logical(LK) :: assertion; end function
148 : #endif
149 : #if IK2_ENABLED && RK3_ENABLED
150 : module function test_setBernRand_IK2_RK3_1() result(assertion); logical(LK) :: assertion; end function
151 : #endif
152 : #if IK2_ENABLED && RK2_ENABLED
153 : module function test_setBernRand_IK2_RK2_1() result(assertion); logical(LK) :: assertion; end function
154 : #endif
155 : #if IK2_ENABLED && RK1_ENABLED
156 : module function test_setBernRand_IK2_RK1_1() result(assertion); logical(LK) :: assertion; end function
157 : #endif
158 :
159 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
160 :
161 : #if IK1_ENABLED && RK5_ENABLED
162 : module function test_setBernRand_IK1_RK5_1() result(assertion); logical(LK) :: assertion; end function
163 : #endif
164 : #if IK1_ENABLED && RK4_ENABLED
165 : module function test_setBernRand_IK1_RK4_1() result(assertion); logical(LK) :: assertion; end function
166 : #endif
167 : #if IK1_ENABLED && RK3_ENABLED
168 : module function test_setBernRand_IK1_RK3_1() result(assertion); logical(LK) :: assertion; end function
169 : #endif
170 : #if IK1_ENABLED && RK2_ENABLED
171 : module function test_setBernRand_IK1_RK2_1() result(assertion); logical(LK) :: assertion; end function
172 : #endif
173 : #if IK1_ENABLED && RK1_ENABLED
174 : module function test_setBernRand_IK1_RK1_1() result(assertion); logical(LK) :: assertion; end function
175 : #endif
176 :
177 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
178 :
179 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
180 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
181 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
182 :
183 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
184 :
185 : #if LK5_ENABLED && RK5_ENABLED
186 : module function test_setBernRand_LK5_RK5_1() result(assertion); logical(LK) :: assertion; end function
187 : #endif
188 : #if LK5_ENABLED && RK4_ENABLED
189 : module function test_setBernRand_LK5_RK4_1() result(assertion); logical(LK) :: assertion; end function
190 : #endif
191 : #if LK5_ENABLED && RK3_ENABLED
192 : module function test_setBernRand_LK5_RK3_1() result(assertion); logical(LK) :: assertion; end function
193 : #endif
194 : #if LK5_ENABLED && RK2_ENABLED
195 : module function test_setBernRand_LK5_RK2_1() result(assertion); logical(LK) :: assertion; end function
196 : #endif
197 : #if LK5_ENABLED && RK1_ENABLED
198 : module function test_setBernRand_LK5_RK1_1() result(assertion); logical(LK) :: assertion; end function
199 : #endif
200 :
201 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
202 :
203 : #if LK4_ENABLED && RK5_ENABLED
204 : module function test_setBernRand_LK4_RK5_1() result(assertion); logical(LK) :: assertion; end function
205 : #endif
206 : #if LK4_ENABLED && RK4_ENABLED
207 : module function test_setBernRand_LK4_RK4_1() result(assertion); logical(LK) :: assertion; end function
208 : #endif
209 : #if LK4_ENABLED && RK3_ENABLED
210 : module function test_setBernRand_LK4_RK3_1() result(assertion); logical(LK) :: assertion; end function
211 : #endif
212 : #if LK4_ENABLED && RK2_ENABLED
213 : module function test_setBernRand_LK4_RK2_1() result(assertion); logical(LK) :: assertion; end function
214 : #endif
215 : #if LK4_ENABLED && RK1_ENABLED
216 : module function test_setBernRand_LK4_RK1_1() result(assertion); logical(LK) :: assertion; end function
217 : #endif
218 :
219 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
220 :
221 : #if LK3_ENABLED && RK5_ENABLED
222 : module function test_setBernRand_LK3_RK5_1() result(assertion); logical(LK) :: assertion; end function
223 : #endif
224 : #if LK3_ENABLED && RK4_ENABLED
225 : module function test_setBernRand_LK3_RK4_1() result(assertion); logical(LK) :: assertion; end function
226 : #endif
227 : #if LK3_ENABLED && RK3_ENABLED
228 : module function test_setBernRand_LK3_RK3_1() result(assertion); logical(LK) :: assertion; end function
229 : #endif
230 : #if LK3_ENABLED && RK2_ENABLED
231 : module function test_setBernRand_LK3_RK2_1() result(assertion); logical(LK) :: assertion; end function
232 : #endif
233 : #if LK3_ENABLED && RK1_ENABLED
234 : module function test_setBernRand_LK3_RK1_1() result(assertion); logical(LK) :: assertion; end function
235 : #endif
236 :
237 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
238 :
239 : #if LK2_ENABLED && RK5_ENABLED
240 : module function test_setBernRand_LK2_RK5_1() result(assertion); logical(LK) :: assertion; end function
241 : #endif
242 : #if LK2_ENABLED && RK4_ENABLED
243 : module function test_setBernRand_LK2_RK4_1() result(assertion); logical(LK) :: assertion; end function
244 : #endif
245 : #if LK2_ENABLED && RK3_ENABLED
246 : module function test_setBernRand_LK2_RK3_1() result(assertion); logical(LK) :: assertion; end function
247 : #endif
248 : #if LK2_ENABLED && RK2_ENABLED
249 : module function test_setBernRand_LK2_RK2_1() result(assertion); logical(LK) :: assertion; end function
250 : #endif
251 : #if LK2_ENABLED && RK1_ENABLED
252 : module function test_setBernRand_LK2_RK1_1() result(assertion); logical(LK) :: assertion; end function
253 : #endif
254 :
255 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
256 :
257 : #if LK1_ENABLED && RK5_ENABLED
258 : module function test_setBernRand_LK1_RK5_1() result(assertion); logical(LK) :: assertion; end function
259 : #endif
260 : #if LK1_ENABLED && RK4_ENABLED
261 : module function test_setBernRand_LK1_RK4_1() result(assertion); logical(LK) :: assertion; end function
262 : #endif
263 : #if LK1_ENABLED && RK3_ENABLED
264 : module function test_setBernRand_LK1_RK3_1() result(assertion); logical(LK) :: assertion; end function
265 : #endif
266 : #if LK1_ENABLED && RK2_ENABLED
267 : module function test_setBernRand_LK1_RK2_1() result(assertion); logical(LK) :: assertion; end function
268 : #endif
269 : #if LK1_ENABLED && RK1_ENABLED
270 : module function test_setBernRand_LK1_RK1_1() result(assertion); logical(LK) :: assertion; end function
271 : #endif
272 :
273 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
274 :
275 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
276 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
277 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
278 :
279 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
280 :
281 : #if RK5_ENABLED
282 : module function test_setBernRand_RK5_RK5_1() result(assertion); logical(LK) :: assertion; end function
283 : #endif
284 : #if RK4_ENABLED
285 : module function test_setBernRand_RK4_RK4_1() result(assertion); logical(LK) :: assertion; end function
286 : #endif
287 : #if RK3_ENABLED
288 : module function test_setBernRand_RK3_RK3_1() result(assertion); logical(LK) :: assertion; end function
289 : #endif
290 : #if RK2_ENABLED
291 : module function test_setBernRand_RK2_RK2_1() result(assertion); logical(LK) :: assertion; end function
292 : #endif
293 : #if RK1_ENABLED
294 : module function test_setBernRand_RK1_RK1_1() result(assertion); logical(LK) :: assertion; end function
295 : #endif
296 :
297 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
298 :
299 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
300 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
301 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
302 :
303 : end interface
304 :
305 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
306 :
307 : contains
308 :
309 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
310 :
311 1 : subroutine setTest()
312 :
313 1 : test = test_type(MODULE_NAME)
314 :
315 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
316 :
317 : #if RK5_ENABLED
318 : call test%run(test_isHead_RK5_1, SK_"test_isHead_RK5_1")
319 : #endif
320 : #if RK4_ENABLED
321 1 : call test%run(test_isHead_RK4_1, SK_"test_isHead_RK4_1")
322 : #endif
323 : #if RK3_ENABLED
324 1 : call test%run(test_isHead_RK3_1, SK_"test_isHead_RK3_1")
325 : #endif
326 : #if RK2_ENABLED
327 1 : call test%run(test_isHead_RK2_1, SK_"test_isHead_RK2_1")
328 : #endif
329 : #if RK1_ENABLED
330 1 : call test%run(test_isHead_RK1_1, SK_"test_isHead_RK1_1")
331 : #endif
332 :
333 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
334 :
335 : #if RK5_ENABLED
336 : call test%run(test_getBernRand_RK5_1, SK_"test_getBernRand_RK5_1")
337 : #endif
338 : #if RK4_ENABLED
339 1 : call test%run(test_getBernRand_RK4_1, SK_"test_getBernRand_RK4_1")
340 : #endif
341 : #if RK3_ENABLED
342 1 : call test%run(test_getBernRand_RK3_1, SK_"test_getBernRand_RK3_1")
343 : #endif
344 : #if RK2_ENABLED
345 1 : call test%run(test_getBernRand_RK2_1, SK_"test_getBernRand_RK2_1")
346 : #endif
347 : #if RK1_ENABLED
348 1 : call test%run(test_getBernRand_RK1_1, SK_"test_getBernRand_RK1_1")
349 : #endif
350 :
351 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
352 :
353 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
354 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
355 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
356 :
357 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
358 :
359 : #if IK5_ENABLED && RK5_ENABLED
360 : call test%run(test_setBernRand_IK5_RK5_1, SK_"test_setBernRand_IK5_RK5_1")
361 : #endif
362 : #if IK5_ENABLED && RK4_ENABLED
363 1 : call test%run(test_setBernRand_IK5_RK4_1, SK_"test_setBernRand_IK5_RK4_1")
364 : #endif
365 : #if IK5_ENABLED && RK3_ENABLED
366 1 : call test%run(test_setBernRand_IK5_RK3_1, SK_"test_setBernRand_IK5_RK3_1")
367 : #endif
368 : #if IK5_ENABLED && RK2_ENABLED
369 1 : call test%run(test_setBernRand_IK5_RK2_1, SK_"test_setBernRand_IK5_RK2_1")
370 : #endif
371 : #if IK5_ENABLED && RK1_ENABLED
372 1 : call test%run(test_setBernRand_IK5_RK1_1, SK_"test_setBernRand_IK5_RK1_1")
373 : #endif
374 :
375 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
376 :
377 : #if IK4_ENABLED && RK5_ENABLED
378 : call test%run(test_setBernRand_IK4_RK5_1, SK_"test_setBernRand_IK4_RK5_1")
379 : #endif
380 : #if IK4_ENABLED && RK4_ENABLED
381 1 : call test%run(test_setBernRand_IK4_RK4_1, SK_"test_setBernRand_IK4_RK4_1")
382 : #endif
383 : #if IK4_ENABLED && RK3_ENABLED
384 1 : call test%run(test_setBernRand_IK4_RK3_1, SK_"test_setBernRand_IK4_RK3_1")
385 : #endif
386 : #if IK4_ENABLED && RK2_ENABLED
387 1 : call test%run(test_setBernRand_IK4_RK2_1, SK_"test_setBernRand_IK4_RK2_1")
388 : #endif
389 : #if IK4_ENABLED && RK1_ENABLED
390 1 : call test%run(test_setBernRand_IK4_RK1_1, SK_"test_setBernRand_IK4_RK1_1")
391 : #endif
392 :
393 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
394 :
395 : #if IK3_ENABLED && RK5_ENABLED
396 : call test%run(test_setBernRand_IK3_RK5_1, SK_"test_setBernRand_IK3_RK5_1")
397 : #endif
398 : #if IK3_ENABLED && RK4_ENABLED
399 1 : call test%run(test_setBernRand_IK3_RK4_1, SK_"test_setBernRand_IK3_RK4_1")
400 : #endif
401 : #if IK3_ENABLED && RK3_ENABLED
402 1 : call test%run(test_setBernRand_IK3_RK3_1, SK_"test_setBernRand_IK3_RK3_1")
403 : #endif
404 : #if IK3_ENABLED && RK2_ENABLED
405 1 : call test%run(test_setBernRand_IK3_RK2_1, SK_"test_setBernRand_IK3_RK2_1")
406 : #endif
407 : #if IK3_ENABLED && RK1_ENABLED
408 1 : call test%run(test_setBernRand_IK3_RK1_1, SK_"test_setBernRand_IK3_RK1_1")
409 : #endif
410 :
411 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
412 :
413 : #if IK2_ENABLED && RK5_ENABLED
414 : call test%run(test_setBernRand_IK2_RK5_1, SK_"test_setBernRand_IK2_RK5_1")
415 : #endif
416 : #if IK2_ENABLED && RK4_ENABLED
417 1 : call test%run(test_setBernRand_IK2_RK4_1, SK_"test_setBernRand_IK2_RK4_1")
418 : #endif
419 : #if IK2_ENABLED && RK3_ENABLED
420 1 : call test%run(test_setBernRand_IK2_RK3_1, SK_"test_setBernRand_IK2_RK3_1")
421 : #endif
422 : #if IK2_ENABLED && RK2_ENABLED
423 1 : call test%run(test_setBernRand_IK2_RK2_1, SK_"test_setBernRand_IK2_RK2_1")
424 : #endif
425 : #if IK2_ENABLED && RK1_ENABLED
426 1 : call test%run(test_setBernRand_IK2_RK1_1, SK_"test_setBernRand_IK2_RK1_1")
427 : #endif
428 :
429 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
430 :
431 : #if IK1_ENABLED && RK5_ENABLED
432 : call test%run(test_setBernRand_IK1_RK5_1, SK_"test_setBernRand_IK1_RK5_1")
433 : #endif
434 : #if IK1_ENABLED && RK4_ENABLED
435 1 : call test%run(test_setBernRand_IK1_RK4_1, SK_"test_setBernRand_IK1_RK4_1")
436 : #endif
437 : #if IK1_ENABLED && RK3_ENABLED
438 1 : call test%run(test_setBernRand_IK1_RK3_1, SK_"test_setBernRand_IK1_RK3_1")
439 : #endif
440 : #if IK1_ENABLED && RK2_ENABLED
441 1 : call test%run(test_setBernRand_IK1_RK2_1, SK_"test_setBernRand_IK1_RK2_1")
442 : #endif
443 : #if IK1_ENABLED && RK1_ENABLED
444 1 : call test%run(test_setBernRand_IK1_RK1_1, SK_"test_setBernRand_IK1_RK1_1")
445 : #endif
446 :
447 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
448 :
449 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
450 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
451 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
452 :
453 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
454 :
455 : #if LK5_ENABLED && RK5_ENABLED
456 : call test%run(test_setBernRand_LK5_RK5_1, SK_"test_setBernRand_LK5_RK5_1")
457 : #endif
458 : #if LK5_ENABLED && RK4_ENABLED
459 1 : call test%run(test_setBernRand_LK5_RK4_1, SK_"test_setBernRand_LK5_RK4_1")
460 : #endif
461 : #if LK5_ENABLED && RK3_ENABLED
462 1 : call test%run(test_setBernRand_LK5_RK3_1, SK_"test_setBernRand_LK5_RK3_1")
463 : #endif
464 : #if LK5_ENABLED && RK2_ENABLED
465 1 : call test%run(test_setBernRand_LK5_RK2_1, SK_"test_setBernRand_LK5_RK2_1")
466 : #endif
467 : #if LK5_ENABLED && RK1_ENABLED
468 1 : call test%run(test_setBernRand_LK5_RK1_1, SK_"test_setBernRand_LK5_RK1_1")
469 : #endif
470 :
471 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
472 :
473 : #if LK4_ENABLED && RK5_ENABLED
474 : call test%run(test_setBernRand_LK4_RK5_1, SK_"test_setBernRand_LK4_RK5_1")
475 : #endif
476 : #if LK4_ENABLED && RK4_ENABLED
477 1 : call test%run(test_setBernRand_LK4_RK4_1, SK_"test_setBernRand_LK4_RK4_1")
478 : #endif
479 : #if LK4_ENABLED && RK3_ENABLED
480 1 : call test%run(test_setBernRand_LK4_RK3_1, SK_"test_setBernRand_LK4_RK3_1")
481 : #endif
482 : #if LK4_ENABLED && RK2_ENABLED
483 1 : call test%run(test_setBernRand_LK4_RK2_1, SK_"test_setBernRand_LK4_RK2_1")
484 : #endif
485 : #if LK4_ENABLED && RK1_ENABLED
486 1 : call test%run(test_setBernRand_LK4_RK1_1, SK_"test_setBernRand_LK4_RK1_1")
487 : #endif
488 :
489 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
490 :
491 : #if LK3_ENABLED && RK5_ENABLED
492 : call test%run(test_setBernRand_LK3_RK5_1, SK_"test_setBernRand_LK3_RK5_1")
493 : #endif
494 : #if LK3_ENABLED && RK4_ENABLED
495 1 : call test%run(test_setBernRand_LK3_RK4_1, SK_"test_setBernRand_LK3_RK4_1")
496 : #endif
497 : #if LK3_ENABLED && RK3_ENABLED
498 1 : call test%run(test_setBernRand_LK3_RK3_1, SK_"test_setBernRand_LK3_RK3_1")
499 : #endif
500 : #if LK3_ENABLED && RK2_ENABLED
501 1 : call test%run(test_setBernRand_LK3_RK2_1, SK_"test_setBernRand_LK3_RK2_1")
502 : #endif
503 : #if LK3_ENABLED && RK1_ENABLED
504 1 : call test%run(test_setBernRand_LK3_RK1_1, SK_"test_setBernRand_LK3_RK1_1")
505 : #endif
506 :
507 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
508 :
509 : #if LK2_ENABLED && RK5_ENABLED
510 : call test%run(test_setBernRand_LK2_RK5_1, SK_"test_setBernRand_LK2_RK5_1")
511 : #endif
512 : #if LK2_ENABLED && RK4_ENABLED
513 1 : call test%run(test_setBernRand_LK2_RK4_1, SK_"test_setBernRand_LK2_RK4_1")
514 : #endif
515 : #if LK2_ENABLED && RK3_ENABLED
516 1 : call test%run(test_setBernRand_LK2_RK3_1, SK_"test_setBernRand_LK2_RK3_1")
517 : #endif
518 : #if LK2_ENABLED && RK2_ENABLED
519 1 : call test%run(test_setBernRand_LK2_RK2_1, SK_"test_setBernRand_LK2_RK2_1")
520 : #endif
521 : #if LK2_ENABLED && RK1_ENABLED
522 1 : call test%run(test_setBernRand_LK2_RK1_1, SK_"test_setBernRand_LK2_RK1_1")
523 : #endif
524 :
525 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
526 :
527 : #if LK1_ENABLED && RK5_ENABLED
528 : call test%run(test_setBernRand_LK1_RK5_1, SK_"test_setBernRand_LK1_RK5_1")
529 : #endif
530 : #if LK1_ENABLED && RK4_ENABLED
531 1 : call test%run(test_setBernRand_LK1_RK4_1, SK_"test_setBernRand_LK1_RK4_1")
532 : #endif
533 : #if LK1_ENABLED && RK3_ENABLED
534 1 : call test%run(test_setBernRand_LK1_RK3_1, SK_"test_setBernRand_LK1_RK3_1")
535 : #endif
536 : #if LK1_ENABLED && RK2_ENABLED
537 1 : call test%run(test_setBernRand_LK1_RK2_1, SK_"test_setBernRand_LK1_RK2_1")
538 : #endif
539 : #if LK1_ENABLED && RK1_ENABLED
540 1 : call test%run(test_setBernRand_LK1_RK1_1, SK_"test_setBernRand_LK1_RK1_1")
541 : #endif
542 :
543 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
544 :
545 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
546 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
547 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
548 :
549 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
550 :
551 : #if RK5_ENABLED
552 : call test%run(test_setBernRand_RK5_RK5_1, SK_"test_setBernRand_RK5_RK5_1")
553 : #endif
554 : #if RK4_ENABLED
555 1 : call test%run(test_setBernRand_RK4_RK4_1, SK_"test_setBernRand_RK4_RK4_1")
556 : #endif
557 : #if RK3_ENABLED
558 1 : call test%run(test_setBernRand_RK3_RK3_1, SK_"test_setBernRand_RK3_RK3_1")
559 : #endif
560 : #if RK2_ENABLED
561 1 : call test%run(test_setBernRand_RK2_RK2_1, SK_"test_setBernRand_RK2_RK2_1")
562 : #endif
563 : #if RK1_ENABLED
564 1 : call test%run(test_setBernRand_RK1_RK1_1, SK_"test_setBernRand_RK1_RK1_1")
565 : #endif
566 :
567 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
568 :
569 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
570 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
571 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
572 :
573 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
574 :
575 1 : call test%summarize()
576 :
577 1 : end subroutine setTest
578 :
579 : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
580 :
581 : end module test_pm_distBern
|