ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
test_pm_sampleCCF.F90
Go to the documentation of this file.
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
24
25!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
26
28
29 use pm_sampleCCF
30 use pm_kind, only: IK
31 use pm_test, only: test_type, LK
32 implicit none
33
34 private
35 public :: setTest
36 type(test_type) :: test
37
38!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
39
40 ! getCCF
41
42 interface
43
44 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
45
46#if CK5_ENABLED
47 module function test_getCCF_CK5() result(assertion); logical(LK) :: assertion; end function
48#endif
49#if CK4_ENABLED
50 module function test_getCCF_CK4() result(assertion); logical(LK) :: assertion; end function
51#endif
52#if CK3_ENABLED
53 module function test_getCCF_CK3() result(assertion); logical(LK) :: assertion; end function
54#endif
55#if CK2_ENABLED
56 module function test_getCCF_CK2() result(assertion); logical(LK) :: assertion; end function
57#endif
58#if CK1_ENABLED
59 module function test_getCCF_CK1() result(assertion); logical(LK) :: assertion; end function
60#endif
61
62 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
63
64#if RK5_ENABLED
65 module function test_getCCF_RK5() result(assertion); logical(LK) :: assertion; end function
66#endif
67#if RK4_ENABLED
68 module function test_getCCF_RK4() result(assertion); logical(LK) :: assertion; end function
69#endif
70#if RK3_ENABLED
71 module function test_getCCF_RK3() result(assertion); logical(LK) :: assertion; end function
72#endif
73#if RK2_ENABLED
74 module function test_getCCF_RK2() result(assertion); logical(LK) :: assertion; end function
75#endif
76#if RK1_ENABLED
77 module function test_getCCF_RK1() result(assertion); logical(LK) :: assertion; end function
78#endif
79
80 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
81
82 end interface
83
84!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
85
86 ! setCCF
87
88 interface
89
90 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
91
92#if CK5_ENABLED
93 module function test_setCCF_CK5() result(assertion); logical(LK) :: assertion; end function
94#endif
95#if CK4_ENABLED
96 module function test_setCCF_CK4() result(assertion); logical(LK) :: assertion; end function
97#endif
98#if CK3_ENABLED
99 module function test_setCCF_CK3() result(assertion); logical(LK) :: assertion; end function
100#endif
101#if CK2_ENABLED
102 module function test_setCCF_CK2() result(assertion); logical(LK) :: assertion; end function
103#endif
104#if CK1_ENABLED
105 module function test_setCCF_CK1() result(assertion); logical(LK) :: assertion; end function
106#endif
107
108 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
109
110#if RK5_ENABLED
111 module function test_setCCF_RK5() result(assertion); logical(LK) :: assertion; end function
112#endif
113#if RK4_ENABLED
114 module function test_setCCF_RK4() result(assertion); logical(LK) :: assertion; end function
115#endif
116#if RK3_ENABLED
117 module function test_setCCF_RK3() result(assertion); logical(LK) :: assertion; end function
118#endif
119#if RK2_ENABLED
120 module function test_setCCF_RK2() result(assertion); logical(LK) :: assertion; end function
121#endif
122#if RK1_ENABLED
123 module function test_setCCF_RK1() result(assertion); logical(LK) :: assertion; end function
124#endif
125
126 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
127
128 end interface
129
130!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
131
132 ! getACF
133
134 interface
135
136 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
137
138#if CK5_ENABLED
139 module function test_getACF_CK5() result(assertion); logical(LK) :: assertion; end function
140#endif
141#if CK4_ENABLED
142 module function test_getACF_CK4() result(assertion); logical(LK) :: assertion; end function
143#endif
144#if CK3_ENABLED
145 module function test_getACF_CK3() result(assertion); logical(LK) :: assertion; end function
146#endif
147#if CK2_ENABLED
148 module function test_getACF_CK2() result(assertion); logical(LK) :: assertion; end function
149#endif
150#if CK1_ENABLED
151 module function test_getACF_CK1() result(assertion); logical(LK) :: assertion; end function
152#endif
153
154 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
155
156#if RK5_ENABLED
157 module function test_getACF_RK5() result(assertion); logical(LK) :: assertion; end function
158#endif
159#if RK4_ENABLED
160 module function test_getACF_RK4() result(assertion); logical(LK) :: assertion; end function
161#endif
162#if RK3_ENABLED
163 module function test_getACF_RK3() result(assertion); logical(LK) :: assertion; end function
164#endif
165#if RK2_ENABLED
166 module function test_getACF_RK2() result(assertion); logical(LK) :: assertion; end function
167#endif
168#if RK1_ENABLED
169 module function test_getACF_RK1() result(assertion); logical(LK) :: assertion; end function
170#endif
171
172 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
173
174 end interface
175
176!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
177
178 ! setACF
179
180 interface
181
182 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
183
184#if CK5_ENABLED
185 module function test_setACF_CK5() result(assertion); logical(LK) :: assertion; end function
186#endif
187#if CK4_ENABLED
188 module function test_setACF_CK4() result(assertion); logical(LK) :: assertion; end function
189#endif
190#if CK3_ENABLED
191 module function test_setACF_CK3() result(assertion); logical(LK) :: assertion; end function
192#endif
193#if CK2_ENABLED
194 module function test_setACF_CK2() result(assertion); logical(LK) :: assertion; end function
195#endif
196#if CK1_ENABLED
197 module function test_setACF_CK1() result(assertion); logical(LK) :: assertion; end function
198#endif
199
200 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
201
202#if RK5_ENABLED
203 module function test_setACF_RK5() result(assertion); logical(LK) :: assertion; end function
204#endif
205#if RK4_ENABLED
206 module function test_setACF_RK4() result(assertion); logical(LK) :: assertion; end function
207#endif
208#if RK3_ENABLED
209 module function test_setACF_RK3() result(assertion); logical(LK) :: assertion; end function
210#endif
211#if RK2_ENABLED
212 module function test_setACF_RK2() result(assertion); logical(LK) :: assertion; end function
213#endif
214#if RK1_ENABLED
215 module function test_setACF_RK1() result(assertion); logical(LK) :: assertion; end function
216#endif
217
218 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
219
220 end interface
221
222!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
223
224contains
225
226!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
227
228 subroutine setTest()
229
230 implicit none
231
233
234 ! getCCF
235
236 block
237
238 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
239
240#if CK5_ENABLED
241 call test%run(test_getCCF_CK5, SK_"test_getCCF_CK5")
242#endif
243#if CK4_ENABLED
244 call test%run(test_getCCF_CK4, SK_"test_getCCF_CK4")
245#endif
246#if CK3_ENABLED
247 call test%run(test_getCCF_CK3, SK_"test_getCCF_CK3")
248#endif
249#if CK2_ENABLED
250 call test%run(test_getCCF_CK2, SK_"test_getCCF_CK2")
251#endif
252#if CK1_ENABLED
253 call test%run(test_getCCF_CK1, SK_"test_getCCF_CK1")
254#endif
255
256 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
257
258#if RK5_ENABLED
259 call test%run(test_getCCF_RK5, SK_"test_getCCF_RK5")
260#endif
261#if RK4_ENABLED
262 call test%run(test_getCCF_RK4, SK_"test_getCCF_RK4")
263#endif
264#if RK3_ENABLED
265 call test%run(test_getCCF_RK3, SK_"test_getCCF_RK3")
266#endif
267#if RK2_ENABLED
268 call test%run(test_getCCF_RK2, SK_"test_getCCF_RK2")
269#endif
270#if RK1_ENABLED
271 call test%run(test_getCCF_RK1, SK_"test_getCCF_RK1")
272#endif
273
274 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
275
276 end block
277
278 ! setCCF
279
280 block
281
282 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
283
284#if CK5_ENABLED
285 call test%run(test_setCCF_CK5, SK_"test_setCCF_CK5")
286#endif
287#if CK4_ENABLED
288 call test%run(test_setCCF_CK4, SK_"test_setCCF_CK4")
289#endif
290#if CK3_ENABLED
291 call test%run(test_setCCF_CK3, SK_"test_setCCF_CK3")
292#endif
293#if CK2_ENABLED
294 call test%run(test_setCCF_CK2, SK_"test_setCCF_CK2")
295#endif
296#if CK1_ENABLED
297 call test%run(test_setCCF_CK1, SK_"test_setCCF_CK1")
298#endif
299
300 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
301
302#if RK5_ENABLED
303 call test%run(test_setCCF_RK5, SK_"test_setCCF_RK5")
304#endif
305#if RK4_ENABLED
306 call test%run(test_setCCF_RK4, SK_"test_setCCF_RK4")
307#endif
308#if RK3_ENABLED
309 call test%run(test_setCCF_RK3, SK_"test_setCCF_RK3")
310#endif
311#if RK2_ENABLED
312 call test%run(test_setCCF_RK2, SK_"test_setCCF_RK2")
313#endif
314#if RK1_ENABLED
315 call test%run(test_setCCF_RK1, SK_"test_setCCF_RK1")
316#endif
317
318 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
319
320 end block
321
322 ! getACF
323
324 block
325
326 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
327
328#if CK5_ENABLED
329 call test%run(test_getACF_CK5, SK_"test_getACF_CK5")
330#endif
331#if CK4_ENABLED
332 call test%run(test_getACF_CK4, SK_"test_getACF_CK4")
333#endif
334#if CK3_ENABLED
335 call test%run(test_getACF_CK3, SK_"test_getACF_CK3")
336#endif
337#if CK2_ENABLED
338 call test%run(test_getACF_CK2, SK_"test_getACF_CK2")
339#endif
340#if CK1_ENABLED
341 call test%run(test_getACF_CK1, SK_"test_getACF_CK1")
342#endif
343
344 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
345
346#if RK5_ENABLED
347 call test%run(test_getACF_RK5, SK_"test_getACF_RK5")
348#endif
349#if RK4_ENABLED
350 call test%run(test_getACF_RK4, SK_"test_getACF_RK4")
351#endif
352#if RK3_ENABLED
353 call test%run(test_getACF_RK3, SK_"test_getACF_RK3")
354#endif
355#if RK2_ENABLED
356 call test%run(test_getACF_RK2, SK_"test_getACF_RK2")
357#endif
358#if RK1_ENABLED
359 call test%run(test_getACF_RK1, SK_"test_getACF_RK1")
360#endif
361
362 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
363
364 end block
365
366 ! setACF
367
368 block
369
370 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
371
372#if CK5_ENABLED
373 call test%run(test_setACF_CK5, SK_"test_setACF_CK5")
374#endif
375#if CK4_ENABLED
376 call test%run(test_setACF_CK4, SK_"test_setACF_CK4")
377#endif
378#if CK3_ENABLED
379 call test%run(test_setACF_CK3, SK_"test_setACF_CK3")
380#endif
381#if CK2_ENABLED
382 call test%run(test_setACF_CK2, SK_"test_setACF_CK2")
383#endif
384#if CK1_ENABLED
385 call test%run(test_setACF_CK1, SK_"test_setACF_CK1")
386#endif
387
388 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
389
390#if RK5_ENABLED
391 call test%run(test_setACF_RK5, SK_"test_setACF_RK5")
392#endif
393#if RK4_ENABLED
394 call test%run(test_setACF_RK4, SK_"test_setACF_RK4")
395#endif
396#if RK3_ENABLED
397 call test%run(test_setACF_RK3, SK_"test_setACF_RK3")
398#endif
399#if RK2_ENABLED
400 call test%run(test_setACF_RK2, SK_"test_setACF_RK2")
401#endif
402#if RK1_ENABLED
403 call test%run(test_setACF_RK1, SK_"test_setACF_RK1")
404#endif
405
406 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
407
408 end block
409
410 call test%summarize()
411
412 end subroutine setTest
413
414!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
415
416end module test_pm_sampleCCF
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
Definition: pm_kind.F90:268
integer, parameter LK
The default logical kind in the ParaMonte library: kind(.true.) in Fortran, kind(....
Definition: pm_kind.F90:541
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
Definition: pm_kind.F90:540
This module contains classes and procedures for computing properties related to the cross correlation...
character(*, SK), parameter MODULE_NAME
This module contains a simple unit-testing framework for the Fortran libraries, including the ParaMon...
Definition: pm_test.F90:42
This module contains tests of the module pm_sampleCCF.
type(test_type) test
This is the derived type test_type for generating objects that facilitate testing of a series of proc...
Definition: pm_test.F90:209