@@ -22,17 +22,22 @@ module test_linalg_determinant
22
22
allocate(tests(0))
23
23
24
24
#:for rk,rt in RC_KINDS_TYPES
25
+ #:if rk!="xdp"
25
26
tests = [tests,new_unittest("$eye_det_${rt[0]}$${rk}$",test_${rt[0]}$${rk}$_eye_determinant)]
26
27
tests = [tests,new_unittest("$eye_det_multiple_${rt[0]}$${rk}$",test_${rt[0]}$${rk}$_eye_multiple)]
28
+ #:endif
27
29
#:endfor
28
30
#:for ck,ct in CMPLX_KINDS_TYPES
31
+ #:if ck!="xdp"
29
32
tests = [tests,new_unittest("$complex_det_${rt[0]}$${rk}$",test_${ct[0]}$${ck}$_complex_determinant)]
33
+ #:endif
30
34
#: endfor
31
35
32
36
end subroutine test_matrix_determinant
33
37
34
38
!> Determinant of identity matrix
35
39
#:for rk,rt in RC_KINDS_TYPES
40
+ #:if rk!="xdp"
36
41
subroutine test_${rt[0]}$${rk}$_eye_determinant(error)
37
42
type(error_type), allocatable, intent(out) :: error
38
43
@@ -61,8 +66,8 @@ module test_linalg_determinant
61
66
62
67
type(linalg_state_type) :: state
63
68
64
- integer(ilp), parameter :: n = 10_ilp
65
- real(${rk}$), parameter :: coef = 0.0001_ ${rk}$
69
+ integer(ilp), parameter :: n = 4_ilp
70
+ real(${rk}$), parameter :: coef = 0.01_ ${rk}$
66
71
integer(ilp) :: i,j
67
72
${rt}$ :: a(n,n),deta
68
73
@@ -78,14 +83,15 @@ module test_linalg_determinant
78
83
if (allocated(error)) return
79
84
80
85
call check(error, abs(deta-coef**n)<max(tiny(0.0_${rk}$),epsilon(0.0_${rk}$)*coef**n), &
81
- 'det(0.0001 *eye(n))==0.0001 ^n')
86
+ 'det(0.01 *eye(n))==0.01 ^n')
82
87
83
88
end subroutine test_${rt[0]}$${rk}$_eye_multiple
84
-
89
+ #:endif
85
90
#:endfor
86
91
87
92
!> Determinant of complex identity matrix
88
93
#:for ck,ct in CMPLX_KINDS_TYPES
94
+ #:if ck!="xdp"
89
95
subroutine test_${ct[0]}$${ck}$_complex_determinant(error)
90
96
type(error_type), allocatable, intent(out) :: error
91
97
@@ -125,6 +131,7 @@ module test_linalg_determinant
125
131
126
132
end subroutine test_${ct[0]}$${ck}$_complex_determinant
127
133
134
+ #:endif
128
135
#:endfor
129
136
130
137
end module test_linalg_determinant
0 commit comments