ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
test_pm_distMultiNorm.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
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_getMultiNormRand_RK5() result(assertion); logical(LK) :: assertion; end function
44#endif
45#if RK4_ENABLED
46 module function test_getMultiNormRand_RK4() result(assertion); logical(LK) :: assertion; end function
47#endif
48#if RK3_ENABLED
49 module function test_getMultiNormRand_RK3() result(assertion); logical(LK) :: assertion; end function
50#endif
51#if RK2_ENABLED
52 module function test_getMultiNormRand_RK2() result(assertion); logical(LK) :: assertion; end function
53#endif
54#if RK1_ENABLED
55 module function test_getMultiNormRand_RK1() 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_setMultiNormRand_RK5() result(assertion); logical(LK) :: assertion; end function
64#endif
65#if RK4_ENABLED
66 module function test_setMultiNormRand_RK4() result(assertion); logical(LK) :: assertion; end function
67#endif
68#if RK3_ENABLED
69 module function test_setMultiNormRand_RK3() result(assertion); logical(LK) :: assertion; end function
70#endif
71#if RK2_ENABLED
72 module function test_setMultiNormRand_RK2() result(assertion); logical(LK) :: assertion; end function
73#endif
74#if RK1_ENABLED
75 module function test_setMultiNormRand_RK1() result(assertion); logical(LK) :: assertion; end function
76#endif
77 end interface
78
79!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
80
81contains
82
83!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
84
85 subroutine setTest()
86
88
89 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
90
91#if RK5_ENABLED
92 call test%run(test_getMultiNormRand_RK5, SK_"test_getMultiNormRand_RK5")
93#endif
94#if RK4_ENABLED
95 call test%run(test_getMultiNormRand_RK4, SK_"test_getMultiNormRand_RK4")
96#endif
97#if RK3_ENABLED
98 call test%run(test_getMultiNormRand_RK3, SK_"test_setMultiNormRand_RK3")
99#endif
100#if RK2_ENABLED
101 call test%run(test_getMultiNormRand_RK2, SK_"test_setMultiNormRand_RK2")
102#endif
103#if RK1_ENABLED
104 call test%run(test_getMultiNormRand_RK1, SK_"test_setMultiNormRand_RK1")
105#endif
106
107 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
108
109#if RK5_ENABLED
110 call test%run(test_setMultiNormRand_RK5, SK_"test_setMultiNormRand_RK5")
111#endif
112#if RK4_ENABLED
113 call test%run(test_setMultiNormRand_RK4, SK_"test_setMultiNormRand_RK4")
114#endif
115#if RK3_ENABLED
116 call test%run(test_setMultiNormRand_RK3, SK_"test_setMultiNormRand_RK3")
117#endif
118#if RK2_ENABLED
119 call test%run(test_setMultiNormRand_RK2, SK_"test_setMultiNormRand_RK2")
120#endif
121#if RK1_ENABLED
122 call test%run(test_setMultiNormRand_RK1, SK_"test_setMultiNormRand_RK1")
123#endif
124
125 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
126 call test%summarize()
127
128 end subroutine setTest
129
130!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
131
132end module test_pm_distMultiNorm
This module contains classes and procedures for computing various statistical quantities related to t...
character(*, SK), parameter MODULE_NAME
This module contains classes and procedures for reporting and handling errors.
Definition: pm_err.F90:52
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_distMultiNorm.
This is the derived type for generating objects to gracefully and verbosely handle runtime unexpected...
Definition: pm_err.F90:157
This is the derived type test_type for generating objects that facilitate testing of a series of proc...
Definition: pm_test.F90:209