17 type(display_type) :: disp
18 character(:, SK),
allocatable :: cform, gform
19 integer(IK) :: nrow, ncol, ndim, roffA, coffA, roffB, coffB, incB
20 cform
= getFormat([
cmplx(
0.,
0., CKG)], ed
= SK_
'f', signed
= .true.)
21 gform
= getFormat([
real(
0., RKG)], ed
= SK_
'f', signed
= .true.)
26 call disp%show(
"!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%")
27 call disp%show(
"! BLAS 3 TRSV / TRMV: triangular matrix-vector multiplication: complex.")
28 call disp%show(
"!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%")
33 complex(CKG) :: alpha, beta
34 complex(CKG),
parameter :: COMPLEXDUM
= cmplx(
huge(
0._CKG),
huge(
0._CKG), CKG)
35 complex(CKG),
allocatable :: triMat(:,:), genMat(:), genRef(:), solMat(:)
37 genRef
= [
complex(CKG) :: COMPLEXDUM, COMPLEXDUM, (
5.0,
5.0), (
24.0,
4.0), (
49.0,
3.0), (
80.0,
2.0), COMPLEXDUM]
38 triMat
= reshape([
complex(CKG) :: COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
39 , COMPLEXDUM, COMPLEXDUM, (
2.0,
2.0), (
3.0,
3.0), (
2.0,
2.0), COMPLEXDUM, COMPLEXDUM
&
40 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, (
2.0,
2.0), (
5.0,
5.0), COMPLEXDUM, COMPLEXDUM
&
41 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, (
3.0,
3.0), COMPLEXDUM, COMPLEXDUM
&
42 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
43 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
44 ], shape
= [
6,
7], order
= [
2,
1])
45 solMat
= [
complex(CKG) :: COMPLEXDUM, COMPLEXDUM, (
5.0,
5.0), (
4.0,
4.0), (
3.0,
3.0), (
2.0,
2.0), COMPLEXDUM]
49 call disp%show( triMat ,
format = cform )
51 call disp%show( genMat ,
format = cform )
52 call disp%show(
"ndim = 4; roffA = 1; coffA = 1; incB = 1;")
53 ndim
= 4; roffA
= 1; coffA
= 1; incB
= 1;
54 call disp%show(
"call setMatMulTri(triMat, upperUnit, transUnit, genMat(3:6), ndim, roffA, coffA, incB) ! blas trsv contiguous interface.")
55 call setMatMulTri(triMat, upperUnit, transUnit, genMat(
3:
6), ndim, roffA, coffA, incB)
57 call disp%show( genMat ,
format = cform )
59 call disp%show( genMat
- solMat ,
format = cform )
64 call disp%show( genMat ,
format = cform )
65 call disp%show(
"call setMatMulTri(triMat(2:5, 2:5), upperUnit, transUnit, genMat(3:6)) ! blas trsv simplified interface.")
66 call setMatMulTri(triMat(
2:
5,
2:
5), upperUnit, transUnit, genMat(
3:
6))
68 call disp%show( genMat ,
format = cform )
70 call disp%show( genMat
- solMat ,
format = cform )
72 call disp%show(
"call setMatMulTri(triMat, upperUnit, transHerm, genMat(3:6), ndim, roffA, coffA, incB) ! blas trmv contiguous interface.")
73 call setMatMulTri(triMat, upperUnit, transHerm, genMat(
3:
6), ndim, roffA, coffA, incB)
75 call disp%show( genMat ,
format = cform )
77 call disp%show( genMat
- genRef ,
format = cform )
82 call disp%show( genMat ,
format = cform )
83 call disp%show(
"call setMatMulTri(triMat(2:5, 2:5), upperUnit, transHerm, genMat(3:6)) ! blas trmv simplified interface.")
84 call setMatMulTri(triMat(
2:
5,
2:
5), upperUnit, transHerm, genMat(
3:
6))
86 call disp%show( genMat ,
format = cform )
88 call disp%show( genMat
- genRef ,
format = cform )
94 call disp%show(
"!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%")
95 call disp%show(
"! BLAS 3 TRSV / TRMV: triangular matrix-vector multiplication: real.")
96 call disp%show(
"!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%")
101 real(RKG),
parameter :: DUM
= huge(DUM)
102 real(RKG),
allocatable :: triMat(:,:), genMat(:), genRef(:), solMat(:)
104 triMat
= reshape([
real(RKG):: DUM, DUM, DUM, DUM, DUM, DUM
&
105 , DUM, DUM, DUM, DUM, DUM, DUM
&
106 , DUM, DUM, DUM, DUM, DUM, DUM
&
107 , DUM,
1.0, DUM, DUM, DUM, DUM
&
108 , DUM,
2.0,
3.0, DUM, DUM, DUM
&
109 , DUM,
3.0,
4.0,
3.0, DUM, DUM
&
110 , DUM, DUM, DUM, DUM, DUM, DUM
&
111 , DUM, DUM, DUM, DUM, DUM, DUM
&
112 , DUM, DUM, DUM, DUM, DUM, DUM
&
113 , DUM, DUM, DUM, DUM, DUM, DUM
&
114 ], shape
= [
10,
6], order
= [
2,
1])
115 genRef
= [
real(RKG):: DUM, DUM,
1.0, DUM, DUM,
3.0, DUM, DUM,
11.0, DUM, DUM,
24.0, DUM]
116 solMat
= [
real(RKG):: DUM, DUM,
1.0, DUM, DUM,
2.0, DUM, DUM,
3.0, DUM, DUM,
4.0, DUM]
120 call disp%show( triMat ,
format = gform )
122 call disp%show( genMat ,
format = gform )
123 call disp%show(
"ndim = 4; roffA = 2; coffA = 1; incB = 3;")
124 ndim
= 4; roffA
= 2; coffA
= 1; incB
= 3;
125 call disp%show(
"call setMatMulTri(triMat, lowerUnit, inversion, genMat(3:), ndim, roffA, coffA, incB) ! blas trsv contiguous interface.")
126 call setMatMulTri(triMat, lowerUnit, inversion, genMat(
3:), ndim, roffA, coffA, incB)
128 call disp%show( genMat ,
format = gform )
130 call disp%show( genMat
- solMat ,
format = gform )
134 call disp%show(
"call setMatMulTri(triMat(3:6, 2:5), lowerUnit, inversion, genMat(3:size(genMat)-1:3)) ! blas trsv simplified interface.")
135 call setMatMulTri(triMat(
3:
6,
2:
5), lowerUnit, inversion, genMat(
3:
size(genMat)
-1:
3))
137 call disp%show( genMat ,
format = gform )
139 call disp%show( genMat
- solMat ,
format = gform )
141 call disp%show(
"call setMatMulTri(triMat, lowerUnit, nothing, genMat(3:), ndim, roffA, coffA, incB) ! blas trmv contiguous interface.")
142 call setMatMulTri(triMat, lowerUnit, nothing, genMat(
3:), ndim, roffA, coffA, incB)
144 call disp%show( genMat ,
format = gform )
146 call disp%show( genMat
- genRef ,
format = gform )
150 call disp%show(
"call setMatMulTri(triMat(3:6, 2:5), lowerUnit, nothing, genMat(3:size(genMat)-1:3)) ! blas trmv simplified interface.")
151 call setMatMulTri(triMat(
3:
6,
2:
5), lowerUnit, nothing, genMat(
3:
size(genMat)
-1:
3))
153 call disp%show( genMat ,
format = gform )
155 call disp%show( genMat
- genRef ,
format = gform )
158 triMat
= reshape([
real(RKG)::
1.0,
2.0,
3.0,
2.0, DUM
&
159 , DUM,
2.0,
2.0,
5.0, DUM
&
160 , DUM, DUM,
3.0,
3.0, DUM
&
161 , DUM, DUM, DUM,
1.0, DUM
&
162 , DUM, DUM, DUM, DUM, DUM
&
163 , DUM, DUM, DUM, DUM, DUM
&
164 , DUM, DUM, DUM, DUM, DUM
&
165 ], shape
= [
7,
5], order
= [
2,
1])
166 genRef
= [
real(RKG) ::
5.0,
18.0,
32.0,
41.0]
167 solMat
= [
real(RKG) ::
5.0,
4.0,
3.0,
2.0]
171 call disp%show( triMat ,
format = gform )
173 call disp%show( genMat ,
format = gform )
174 call disp%show(
"ndim = 4; roffA = 0; coffA = 0; incB = 1;")
175 ndim
= 4; roffA
= 0; coffA
= 0; incB
= 1;
176 call disp%show(
"call setMatMulTri(triMat, upperDiag, transOrth, genMat, ndim, roffA, coffA, incB) ! blas trsm contiguous interface.")
177 call setMatMulTri(triMat, upperDiag, transOrth, genMat, ndim, roffA, coffA, incB)
179 call disp%show( genMat ,
format = gform )
181 call disp%show( genMat
- solMat ,
format = gform )
185 call disp%show(
"call setMatMulTri(triMat(1:4, 1:4), upperDiag, transOrth, genMat) ! blas trsv simplified interface.")
186 call setMatMulTri(triMat(
1:
4,
1:
4), upperDiag, transOrth, genMat)
188 call disp%show( genMat ,
format = gform )
190 call disp%show( genMat
- solMat ,
format = gform )
192 call disp%show(
"call setMatMulTri(triMat, upperDiag, transSymm, genMat, ndim, roffA, coffA, incB) ! blas trmv contiguous interface.")
193 call setMatMulTri(triMat, upperDiag, transSymm, genMat, ndim, roffA, coffA, incB)
195 call disp%show( genMat ,
format = gform )
197 call disp%show( genMat
- genRef ,
format = gform )
201 call disp%show(
"call setMatMulTri(triMat(1:4, 1:4), upperDiag, transSymm, genMat) ! blas trmv simplified interface.")
202 call setMatMulTri(triMat(
1:
4,
1:
4), upperDiag, transSymm, genMat)
204 call disp%show( genMat ,
format = gform )
206 call disp%show( genMat
- genRef ,
format = gform )
212 call disp%show(
"!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%")
213 call disp%show(
"! BLAS 3 TRSM / TRMM: triangular-general / general-triangular matrix multiplication: complex.")
214 call disp%show(
"!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%")
219 complex(CKG) :: alpha, beta
220 complex(CKG),
parameter :: COMPLEXDUM
= cmplx(
huge(
0._CKG),
huge(
0._CKG), CKG)
221 complex(CKG),
allocatable, dimension(:,:) :: triMat, genMat, genRef, solMat
223 genRef
= reshape([
complex(CKG) :: COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
224 , COMPLEXDUM, (
22.0,
-41.0), (
7.0,
-26.0), (
9.0,
0.0), (
-15.0,
-3.0), (
-15.0,
8.0)
&
225 , COMPLEXDUM, (
29.0,
-18.0), (
24.0,
-10.0), (
9.0,
6.0), (
-12.0,
-24.0), (
-19.0,
-8.0)
&
226 , COMPLEXDUM, (
-15.0,
2.0), (
-3.0,
-21.0), (
-2.0,
4.0), (
-4.0,
-12.0), (
-10.0,
-6.0)
&
227 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
228 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
229 ], shape
= [
6,
6], order
= [
2,
1])
230 triMat
= reshape([
complex(CKG) :: COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
231 , COMPLEXDUM, COMPLEXDUM, (
2.0,
-3.0), COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
232 , COMPLEXDUM, COMPLEXDUM, (
2.0,
-4.0), (
3.0,
-1.0), COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
233 , COMPLEXDUM, COMPLEXDUM, (
2.0,
2.0), (
1.0,
2.0), (
1.0,
1.0), COMPLEXDUM, COMPLEXDUM
&
234 , COMPLEXDUM, COMPLEXDUM, (
0.0,
0.0), (
3.0,
-1.0), (
0.0,
-1.0), (
-2.0,
1.0), COMPLEXDUM
&
235 , COMPLEXDUM, COMPLEXDUM, (
2.0,
2.0), (
4.0,
0.0), (
-1.0,
2.0), (
2.0,
-4.0), (
-1.0,
-4.0)
&
236 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
237 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
238 ], shape
= [
8,
7], order
= [
2,
1])
239 solMat
= reshape([
complex(CKG) :: COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
240 , COMPLEXDUM, (
3.0,
0.0), (
4.0,
0.0), (
-1.0,
-2.0), (
-1.0,
-1.0), (
-1.0,
-4.0)
&
241 , COMPLEXDUM, (
2.0,
-1.0), (
1.0,
2.0), (
-1.0,
-3.0), (
0.0,
2.0), (
3.0,
-4.0)
&
242 , COMPLEXDUM, (
-2.0,
1.0), (
-1.0,
-3.0), (
-3.0,
1.0), (
0.0,
0.0), (
2.0,
-2.0)
&
243 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
244 , COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM, COMPLEXDUM
&
245 ], shape
= [
6,
6], order
= [
2,
1])
249 call disp%show( triMat ,
format = cform )
251 call disp%show( genMat ,
format = cform )
252 call disp%show(
"alpha = (1._CKG, 0._CKG); nrow = 3; ncol = 5; roffA = 1; coffA = 1; roffB = 1; coffB = 2;")
253 alpha
= (
1._CKG,
0._CKG); nrow
= 3; ncol
= 5; roffA
= 1; coffA
= 1; roffB
= 1; coffB
= 2;
254 call disp%show(
"call setMatMulTri(genMat, triMat, lowerDiag, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trsm contiguous interface.")
255 call setMatMulTri(genMat, triMat, lowerDiag, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
257 call disp%show( genMat ,
format = cform )
259 call disp%show( genMat
- solMat ,
format = cform )
264 call disp%show( genMat ,
format = cform )
265 call disp%show(
"call setMatMulTri(genMat(2:4, 2:), triMat(2:6, 3:), lowerDiag, inversion) ! blas trsm simplified interface.")
266 call setMatMulTri(genMat(
2:
4,
2:), triMat(
2:
6,
3:), lowerDiag, inversion)
268 call disp%show( genMat ,
format = cform )
270 call disp%show( genMat
- solMat ,
format = cform )
272 call disp%show(
"call setMatMulTri(genMat, triMat, lowerDiag, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trmm contiguous interface.")
273 call setMatMulTri(genMat, triMat, lowerDiag, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
275 call disp%show( genMat ,
format = cform )
277 call disp%show( genMat
- genRef ,
format = cform )
282 call disp%show( genMat ,
format = cform )
283 call disp%show(
"call setMatMulTri(genMat(2:4, 2:), triMat(2:6, 3:), lowerDiag, nothing) ! blas trmm simplified interface.")
284 call setMatMulTri(genMat(
2:
4,
2:), triMat(
2:
6,
3:), lowerDiag, nothing)
286 call disp%show( genMat ,
format = cform )
288 call disp%show( genMat
- genRef ,
format = cform )
295 call disp%show( triMat ,
format = cform )
297 call disp%show( genMat ,
format = cform )
298 call disp%show(
"alpha = (1._CKG, 0._CKG); nrow = 3; ncol = 5; roffA = 1; coffA = 1; roffB = 2; coffB = 1;")
299 alpha
= (
1._CKG,
0._CKG); nrow
= 3; ncol
= 5; roffA
= 1; coffA
= 1; roffB
= 2; coffB
= 1;
300 call disp%show(
"call setMatMulTri(genMat, transpose(triMat), upperDiag, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trsm contiguous interface.")
301 call setMatMulTri(genMat,
transpose(triMat), upperDiag, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
303 call disp%show( genMat ,
format = cform )
305 call disp%show( genMat
- solMat ,
format = cform )
310 call disp%show( genMat ,
format = cform )
311 call disp%show(
"call setMatMulTri(genMat(2:4, 2:), transpose(triMat(2:6, 3:)), upperDiag, inversion) ! blas trsm simplified interface.")
312 call setMatMulTri(genMat(
2:
4,
2:),
transpose(triMat(
2:
6,
3:)), upperDiag, inversion)
314 call disp%show( genMat ,
format = cform )
316 call disp%show( genMat
- solMat ,
format = cform )
318 call disp%show(
"call setMatMulTri(genMat, transpose(triMat), upperDiag, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trmm contiguous interface.")
319 call setMatMulTri(genMat,
transpose(triMat), upperDiag, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
321 call disp%show( genMat ,
format = cform )
323 call disp%show( genMat
- genRef ,
format = cform )
328 call disp%show( genMat ,
format = cform )
329 call disp%show(
"call setMatMulTri(genMat(2:4, 2:), transpose(triMat(2:6, 3:)), upperDiag, nothing) ! blas trmm simplified interface.")
330 call setMatMulTri(genMat(
2:
4,
2:),
transpose(triMat(
2:
6,
3:)), upperDiag, nothing)
332 call disp%show( genMat ,
format = cform )
334 call disp%show( genMat
- genRef ,
format = cform )
340 call disp%show(
"!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%")
341 call disp%show(
"! BLAS 3 TRSM / TRMM: triangular-general / general-triangular matrix multiplication: real.")
342 call disp%show(
"!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%")
348 real(RKG),
parameter :: DUM
= huge(DUM), ONE_THIRD
= 1._RKG / 3._RKG
349 real(RKG),
allocatable, dimension(:,:) :: triMat, genMat, genRef, solMat
351 triMat
= reshape([
real(RKG)::
3.0,
-1.0,
2.0,
2.0,
1.0 &
352 , DUM,
-2.0,
4.0,
-1.0,
3.0 &
353 , DUM, DUM,
-3.0,
0.0,
2.0 &
354 , DUM, DUM, DUM,
4.0,
-2.0 &
355 , DUM, DUM, DUM, DUM,
1.0 &
356 , DUM, DUM, DUM, DUM, DUM
&
357 , DUM, DUM, DUM, DUM, DUM
&
358 ], shape
= [
7,
5], order
= [
2,
1])
359 genRef
= reshape([
real(RKG)::
6.0,
10.0,
-2.0 &
365 ], shape
= [
6,
3], order
= [
2,
1])
366 solMat
= reshape([
real(RKG)::
2.0,
3.0,
1.0 &
372 ], shape
= [
6,
3], order
= [
2,
1])
376 call disp%show( triMat ,
format = gform )
378 call disp%show( genMat ,
format = gform )
379 call disp%show(
"alpha = 1._RKG; nrow = 5; ncol = 3; roffA = 0; coffA = 0; roffB = 0; coffB = 0;")
380 alpha
= 1._RKG; nrow
= 5; ncol
= 3; roffA
= 0; coffA
= 0; roffB
= 0; coffB
= 0;
381 call disp%show(
"call setMatMulTri(triMat, upperDiag, inversion, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trsm contiguous interface.")
382 call setMatMulTri(triMat, upperDiag, inversion, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
384 call disp%show( genMat ,
format = gform )
386 call disp%show( genMat
- solMat ,
format = gform )
390 call disp%show(
"call setMatMulTri(triMat(1:5, 1:5), upperDiag, inversion, genMat(1:5, 1:3), alpha) ! blas trsm simplified interface.")
391 call setMatMulTri(triMat(
1:
5,
1:
5), upperDiag, inversion, genMat(
1:
5,
1:
3), alpha)
393 call disp%show( genMat ,
format = gform )
395 call disp%show( genMat
- solMat ,
format = gform )
397 call disp%show(
"call setMatMulTri(triMat, upperDiag, nothing, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trmm contiguous interface.")
398 call setMatMulTri(triMat, upperDiag, nothing, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
400 call disp%show( genMat ,
format = gform )
402 call disp%show( genMat
- genRef ,
format = gform )
406 call disp%show(
"call setMatMulTri(triMat(1:5, 1:5), upperDiag, nothing, genMat(1:5, 1:3), alpha) ! blas trmm simplified interface.")
407 call setMatMulTri(triMat(
1:
5,
1:
5), upperDiag, nothing, genMat(
1:
5,
1:
3), alpha)
409 call disp%show( genMat ,
format = gform )
411 call disp%show( genMat
- genRef ,
format = gform )
414 triMat
= reshape([
real(RKG)::
-1.0,
-4.0,
-2.0,
2.0,
3.0 &
415 , DUM,
-2.0,
2.0,
2.0,
2.0 &
416 , DUM, DUM,
-3.0,
-1.0,
4.0 &
417 , DUM, DUM, DUM,
1.0,
0.0 &
418 , DUM, DUM, DUM, DUM,
-2.0 &
419 , DUM, DUM, DUM, DUM, DUM
&
420 , DUM, DUM, DUM, DUM, DUM
&
421 ], shape
= [
7,
5], order
= [
2,
1])
422 genRef
= reshape([
real(RKG)::
-1.0,
-2.0,
-3.0,
-4.0 &
423 ,
2.0,
-2.0,
-14.0,
-12.0 &
424 ,
10.0,
5.0,
-8.0,
-7.0 &
425 ,
14.0,
15.0,
1.0,
8.0 &
426 ,
-3.0,
4.0,
3.0,
16.0 &
427 , DUM, DUM, DUM, DUM
&
428 ], shape
= [
6,
4], order
= [
2,
1])
429 solMat
= reshape([
real(RKG)::
1._RKG,
2._RKG,
3._RKG,
4._RKG &
430 ,
-3._RKG,
-3._RKG,
1._RKG,
-2._RKG &
431 ,
-6._RKG,
-5._RKG,
1._RKG + ONE_THIRD,
-2._RKG + ONE_THIRD
&
432 ,
12._RKG,
12._RKG,
-6._RKG + ONE_THIRD,
2._RKG + ONE_THIRD
&
433 ,
-12._RKG,
-12._RKG,
+7._RKG - ONE_THIRD,
-7._RKG - ONE_THIRD
&
434 , DUM, DUM, DUM, DUM
&
435 ], shape
= [
6,
4], order
= [
2,
1])
439 call disp%show( triMat ,
format = gform )
441 call disp%show( genMat ,
format = gform )
442 call disp%show(
"alpha = 1._RKG; nrow = 5; ncol = 4; roffA = 0; coffA = 0; roffB = 0; coffB = 0;")
443 alpha
= 1._RKG; nrow
= 5; ncol
= 4; roffA
= 0; coffA
= 0; roffB
= 0; coffB
= 0;
444 call disp%show(
"call setMatMulTri(triMat, upperDiag, transOrth, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trsm contiguous interface.")
445 call setMatMulTri(triMat, upperDiag, transOrth, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
447 call disp%show( genMat ,
format = gform )
449 call disp%show( genMat
- solMat ,
format = gform )
453 call disp%show(
"call setMatMulTri(triMat(1:5, 1:5), upperDiag, transOrth, genMat(1:5, 1:4)) ! trsm simplified interface.")
454 call setMatMulTri(triMat(
1:
5,
1:
5), upperDiag, transOrth, genMat(
1:
5,
1:
4))
456 call disp%show( genMat ,
format = gform )
458 call disp%show( genMat
- solMat ,
format = gform )
460 call disp%show(
"call setMatMulTri(triMat, upperDiag, transSymm, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trmm contiguous interface.")
461 call setMatMulTri(triMat, upperDiag, transSymm, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
463 call disp%show( genMat ,
format = gform )
465 call disp%show( genMat
- genRef ,
format = gform )
469 call disp%show(
"call setMatMulTri(triMat(1:5, 1:5), upperDiag, transSymm, genMat(1:5, 1:4)) ! trmm simplified interface.")
470 call setMatMulTri(triMat(
1:
5,
1:
5), upperDiag, transSymm, genMat(
1:
5,
1:
4))
472 call disp%show( genMat ,
format = gform )
474 call disp%show( genMat
- genRef ,
format = gform )
477 genRef
= reshape([
real(RKG):: DUM, DUM, DUM, DUM, DUM, DUM
&
478 , DUM,
10.0,
4.0,
0.0,
0.0,
1.0 &
479 , DUM,
10.0,
14.0,
-4.0,
6.0,
-3.0 &
480 , DUM,
-8.0,
2.0,
-5.0,
4.0,
-2.0 &
481 , DUM, DUM, DUM, DUM, DUM, DUM
&
482 ], shape
= [
5,
6], order
= [
2,
1])
483 triMat
= reshape([
real(RKG):: DUM, DUM, DUM, DUM, DUM, DUM
&
484 , DUM, DUM, DUM, DUM, DUM, DUM
&
485 , DUM, DUM, DUM, DUM, DUM, DUM
&
486 , DUM,
2.0, DUM, DUM, DUM, DUM
&
487 , DUM,
2.0,
3.0, DUM, DUM, DUM
&
488 , DUM,
2.0,
1.0,
1.0, DUM, DUM
&
489 , DUM,
0.0,
3.0,
0.0,
-2.0, DUM
&
490 , DUM,
2.0,
4.0,
-1.0,
2.0,
-1.0 &
491 , DUM, DUM, DUM, DUM, DUM, DUM
&
492 , DUM, DUM, DUM, DUM, DUM, DUM
&
493 ], shape
= [
10,
6], order
= [
2,
1])
494 solMat
= reshape([
real(RKG):: DUM, DUM, DUM, DUM, DUM, DUM
&
495 , DUM,
3.0,
4.0,
-1.0,
-1.0,
-1.0 &
496 , DUM,
2.0,
1.0,
-1.0,
0.0,
3.0 &
497 , DUM,
-2.0,
-1.0,
-3.0,
0.0,
2.0 &
498 , DUM, DUM, DUM, DUM, DUM, DUM
&
499 ], shape
= [
5,
6], order
= [
2,
1])
503 call disp%show( triMat ,
format = gform )
505 call disp%show( genMat ,
format = gform )
506 call disp%show(
"alpha = 1._RKG; nrow = 3; ncol = 5; roffA = 1; coffA = 1; roffB = 3; coffB = 1;")
507 alpha
= 1._RKG; nrow
= 3; ncol
= 5; roffA
= 1; coffA
= 1; roffB
= 3; coffB
= 1;
508 call disp%show(
"call setMatMulTri(genMat, triMat, lowerDiag, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trsm contiguous interface.")
509 call setMatMulTri(genMat, triMat, lowerDiag, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
511 call disp%show( genMat ,
format = gform )
513 call disp%show( genMat
- solMat ,
format = gform )
517 call disp%show(
"call setMatMulTri(genMat(2:4, 2:6), triMat(4:8, 2:6), lowerDiag, inversion) ! trsm simplified interface.")
518 call setMatMulTri(genMat(
2:
4,
2:
6), triMat(
4:
8,
2:
6), lowerDiag, inversion)
520 call disp%show( genMat ,
format = gform )
522 call disp%show( genMat
- solMat ,
format = gform )
524 call disp%show(
"call setMatMulTri(genMat, triMat, lowerDiag, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trmm contiguous interface.")
525 call setMatMulTri(genMat, triMat, lowerDiag, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
527 call disp%show( genMat ,
format = gform )
529 call disp%show( genMat
- genRef ,
format = gform )
533 call disp%show(
"call setMatMulTri(genMat(2:4, 2:6), triMat(4:8, 2:6), lowerDiag, nothing) ! trmm simplified interface.")
534 call setMatMulTri(genMat(
2:
4,
2:
6), triMat(
4:
8,
2:
6), lowerDiag, nothing)
536 call disp%show( genMat ,
format = gform )
538 call disp%show( genMat
- genRef ,
format = gform )
541 genRef
= reshape([
real(RKG):: DUM, DUM, DUM, DUM, DUM, DUM
&
542 , DUM, DUM, DUM, DUM, DUM, DUM
&
543 ,
1.0,
4.0,
-2.0,
10.0,
2.0,
-6.0 &
544 , DUM, DUM, DUM, DUM, DUM, DUM
&
545 ], shape
= [
4,
6], order
= [
2,
1])
546 triMat
= reshape([
real(RKG):: DUM, DUM, DUM, DUM, DUM, DUM
&
547 , DUM,
2.0,
-3.0,
1.0,
2.0,
4.0 &
548 , DUM, DUM,
0.0,
1.0,
1.0,
-2.0 &
549 , DUM, DUM, DUM,
4.0,
-1.0,
1.0 &
550 , DUM, DUM, DUM, DUM,
0.0,
-1.0 &
551 , DUM, DUM, DUM, DUM, DUM,
2.0 &
552 , DUM, DUM, DUM, DUM, DUM, DUM
&
553 , DUM, DUM, DUM, DUM, DUM, DUM
&
554 ], shape
= [
8,
6], order
= [
2,
1])
555 solMat
= reshape([
real(RKG):: DUM, DUM, DUM, DUM, DUM, DUM
&
556 , DUM, DUM, DUM, DUM, DUM, DUM
&
557 ,
1.0,
2.0,
1.0,
3.0,
-1.0,
-2.0 &
558 , DUM, DUM, DUM, DUM, DUM, DUM
&
559 ], shape
= [
4,
6], order
= [
2,
1])
563 call disp%show( genMat ,
format = gform )
565 call disp%show( triMat ,
format = gform )
566 call disp%show(
"alpha = 1._RKG; nrow = 1; ncol = 6; roffA = 2; coffA = 0; roffB = 1; coffB = 0;")
567 alpha
= 1._RKG; nrow
= 1; ncol
= 6; roffA
= 2; coffA
= 0; roffB
= 1; coffB
= 0;
568 call disp%show(
"call setMatMulTri(genMat, triMat, upperUnit, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trsm contiguous interface.")
569 call setMatMulTri(genMat, triMat, upperUnit, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
571 call disp%show( genMat ,
format = gform )
573 call disp%show( genMat
- solMat ,
format = gform )
577 call disp%show(
"call setMatMulTri(genMat(3:3, 1:), triMat(2:7, 1:), upperUnit, inversion) ! trsm simplified interface.")
578 call setMatMulTri(genMat(
3:
3,
1:), triMat(
2:
7,
1:), upperUnit, inversion)
580 call disp%show( genMat ,
format = gform )
582 call disp%show( genMat
- solMat ,
format = gform )
584 call disp%show(
"call setMatMulTri(genMat, triMat, upperUnit, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB) ! blas trmm contiguous interface.")
585 call setMatMulTri(genMat, triMat, upperUnit, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
587 call disp%show( genMat ,
format = gform )
589 call disp%show( genMat
- genRef ,
format = gform )
593 call disp%show(
"call setMatMulTri(genMat(3:3, 1:), triMat(2:7, 1:), upperUnit, nothing) ! trmm simplified interface.")
594 call setMatMulTri(genMat(
3:
3,
1:), triMat(
2:
7,
1:), upperUnit, nothing)
596 call disp%show( genMat ,
format = gform )
598 call disp%show( genMat
- genRef ,
format = gform )
This is a generic method of the derived type display_type with pass attribute.
This is a generic method of the derived type display_type with pass attribute.
This module contains classes and procedures for input/output (IO) or generic display operations on st...
type(display_type) disp
This is a scalar module variable an object of type display_type for general display.
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
integer, parameter LK
The default logical kind in the ParaMonte library: kind(.true.) in Fortran, kind(....
integer, parameter CKS
The single-precision complex kind in Fortran mode. On most platforms, this is a 32-bit real kind.
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
integer, parameter RKS
The single-precision real kind in Fortran mode. On most platforms, this is an 32-bit real kind.
Generate and return an object of type display_type.
8(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
9(
***************,
***************), (
***************,
***************), (
+2.000000,
+2.000000), (
+3.000000,
+3.000000), (
+2.000000,
+2.000000), (
***************,
***************), (
***************,
***************)
10(
***************,
***************), (
***************,
***************), (
***************,
***************), (
+2.000000,
+2.000000), (
+5.000000,
+5.000000), (
***************,
***************), (
***************,
***************)
11(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
+3.000000,
+3.000000), (
***************,
***************), (
***************,
***************)
12(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
13(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
15(
***************,
***************), (
***************,
***************), (
+5.000000,
+5.000000), (
+24.000000,
+4.000000), (
+49.000000,
+3.000000), (
+80.000000,
+2.000000), (
***************,
***************)
16ndim
= 4; roffA
= 1; coffA
= 1; incB
= 1;
17call setMatMulTri(triMat, upperUnit, transUnit, genMat(
3:
6), ndim, roffA, coffA, incB)
19(
***************,
***************), (
***************,
***************), (
+5.000000,
+5.000000), (
+4.000000,
+4.000000), (
+3.000000,
+3.000000), (
+2.000000,
+2.000000), (
***************,
***************)
21(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
25(
***************,
***************), (
***************,
***************), (
+5.000000,
+5.000000), (
+24.000000,
+4.000000), (
+49.000000,
+3.000000), (
+80.000000,
+2.000000), (
***************,
***************)
26call setMatMulTri(triMat(
2:
5,
2:
5), upperUnit, transUnit, genMat(
3:
6))
28(
***************,
***************), (
***************,
***************), (
+5.000000,
+5.000000), (
+4.000000,
+4.000000), (
+3.000000,
+3.000000), (
+2.000000,
+2.000000), (
***************,
***************)
30(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
32call setMatMulTri(triMat, upperUnit, transHerm, genMat(
3:
6), ndim, roffA, coffA, incB)
34(
***************,
***************), (
***************,
***************), (
+5.000000,
+5.000000), (
+24.000000,
+4.000000), (
+49.000000,
+3.000000), (
+80.000000,
+2.000000), (
***************,
***************)
36(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
40(
***************,
***************), (
***************,
***************), (
+5.000000,
+5.000000), (
+4.000000,
+4.000000), (
+3.000000,
+3.000000), (
+2.000000,
+2.000000), (
***************,
***************)
41call setMatMulTri(triMat(
2:
5,
2:
5), upperUnit, transHerm, genMat(
3:
6))
43(
***************,
***************), (
***************,
***************), (
+5.000000,
+5.000000), (
+24.000000,
+4.000000), (
+49.000000,
+3.000000), (
+80.000000,
+2.000000), (
***************,
***************)
45(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
54***************,
***************,
***************,
***************,
***************,
***************
55***************,
***************,
***************,
***************,
***************,
***************
56***************,
***************,
***************,
***************,
***************,
***************
57***************,
+1.000000,
***************,
***************,
***************,
***************
58***************,
+2.000000,
+3.000000,
***************,
***************,
***************
59***************,
+3.000000,
+4.000000,
+3.000000,
***************,
***************
60***************,
***************,
***************,
***************,
***************,
***************
61***************,
***************,
***************,
***************,
***************,
***************
62***************,
***************,
***************,
***************,
***************,
***************
63***************,
***************,
***************,
***************,
***************,
***************
65***************,
***************,
+1.000000,
***************,
***************,
+3.000000,
***************,
***************,
+11.000000,
***************,
***************,
+24.000000,
***************
66ndim
= 4; roffA
= 2; coffA
= 1; incB
= 3;
67call setMatMulTri(triMat, lowerUnit, inversion, genMat(
3:), ndim, roffA, coffA, incB)
69***************,
***************,
+1.000000,
***************,
***************,
+2.000000,
***************,
***************,
+3.000000,
***************,
***************,
+4.000000,
***************
71 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
74call setMatMulTri(triMat(
3:
6,
2:
5), lowerUnit, inversion, genMat(
3:
size(genMat)
-1:
3))
76***************,
***************,
+1.000000,
***************,
***************,
+2.000000,
***************,
***************,
+3.000000,
***************,
***************,
+4.000000,
***************
78 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
80call setMatMulTri(triMat, lowerUnit, nothing, genMat(
3:), ndim, roffA, coffA, incB)
82***************,
***************,
+1.000000,
***************,
***************,
+3.000000,
***************,
***************,
+11.000000,
***************,
***************,
+24.000000,
***************
84 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
87call setMatMulTri(triMat(
3:
6,
2:
5), lowerUnit, nothing, genMat(
3:
size(genMat)
-1:
3))
89***************,
***************,
+1.000000,
***************,
***************,
+3.000000,
***************,
***************,
+11.000000,
***************,
***************,
+24.000000,
***************
91 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
95 +1.000000,
+2.000000,
+3.000000,
+2.000000,
***************
96***************,
+2.000000,
+2.000000,
+5.000000,
***************
97***************,
***************,
+3.000000,
+3.000000,
***************
98***************,
***************,
***************,
+1.000000,
***************
99***************,
***************,
***************,
***************,
***************
100***************,
***************,
***************,
***************,
***************
101***************,
***************,
***************,
***************,
***************
103 +5.000000,
+18.000000,
+32.000000,
+41.000000
104ndim
= 4; roffA
= 0; coffA
= 0; incB
= 1;
105call setMatMulTri(triMat, upperDiag, transOrth, genMat, ndim, roffA, coffA, incB)
107 +5.000000,
+4.000000,
+3.000000,
+2.000000
109 +0.000000,
+0.000000,
+0.000000,
+0.000000
112call setMatMulTri(triMat(
1:
4,
1:
4), upperDiag, transOrth, genMat)
114 +5.000000,
+4.000000,
+3.000000,
+2.000000
116 +0.000000,
+0.000000,
+0.000000,
+0.000000
118call setMatMulTri(triMat, upperDiag, transSymm, genMat, ndim, roffA, coffA, incB)
120 +5.000000,
+18.000000,
+32.000000,
+41.000000
122 +0.000000,
+0.000000,
+0.000000,
+0.000000
125call setMatMulTri(triMat(
1:
4,
1:
4), upperDiag, transSymm, genMat)
127 +5.000000,
+18.000000,
+32.000000,
+41.000000
129 +0.000000,
+0.000000,
+0.000000,
+0.000000
138(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
139(
***************,
***************), (
***************,
***************), (
+2.000000,
-3.000000), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
140(
***************,
***************), (
***************,
***************), (
+2.000000,
-4.000000), (
+3.000000,
-1.000000), (
***************,
***************), (
***************,
***************), (
***************,
***************)
141(
***************,
***************), (
***************,
***************), (
+2.000000,
+2.000000), (
+1.000000,
+2.000000), (
+1.000000,
+1.000000), (
***************,
***************), (
***************,
***************)
142(
***************,
***************), (
***************,
***************), (
+0.000000,
+0.000000), (
+3.000000,
-1.000000), (
+0.000000,
-1.000000), (
-2.000000,
+1.000000), (
***************,
***************)
143(
***************,
***************), (
***************,
***************), (
+2.000000,
+2.000000), (
+4.000000,
+0.000000), (
-1.000000,
+2.000000), (
+2.000000,
-4.000000), (
-1.000000,
-4.000000)
144(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
145(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
147(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
148(
***************,
***************), (
+22.000000,
-41.000000), (
+7.000000,
-26.000000), (
+9.000000,
+0.000000), (
-15.000000,
-3.000000), (
-15.000000,
+8.000000)
149(
***************,
***************), (
+29.000000,
-18.000000), (
+24.000000,
-10.000000), (
+9.000000,
+6.000000), (
-12.000000,
-24.000000), (
-19.000000,
-8.000000)
150(
***************,
***************), (
-15.000000,
+2.000000), (
-3.000000,
-21.000000), (
-2.000000,
+4.000000), (
-4.000000,
-12.000000), (
-10.000000,
-6.000000)
151(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
152(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
153alpha
= (
1._CKG,
0._CKG); nrow
= 3; ncol
= 5; roffA
= 1; coffA
= 1; roffB
= 1; coffB
= 2;
154call setMatMulTri(genMat, triMat, lowerDiag, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
156(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
157(
***************,
***************), (
+3.000000,
-0.000000), (
+4.000000,
+0.000000), (
-1.000000,
-2.000000), (
-1.000000,
-1.000000), (
-1.000000,
-4.000000)
158(
***************,
***************), (
+2.000000,
-1.000000), (
+1.000000,
+2.000000), (
-1.000000,
-3.000000), (
+0.000000,
+2.000000), (
+3.000000,
-4.000000)
159(
***************,
***************), (
-2.000000,
+1.000000), (
-1.000000,
-3.000000), (
-3.000000,
+1.000000), (
+0.000000,
-0.000000), (
+2.000000,
-2.000000)
160(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
161(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
163(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
164(
+0.000000,
+0.000000), (
+0.000000,
-0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
165(
+0.000000,
+0.000000), (
-0.000000,
+0.000000), (
-0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
166(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
-0.000000), (
+0.000000,
+0.000000)
167(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
168(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
172(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
173(
***************,
***************), (
+22.000000,
-41.000000), (
+7.000000,
-26.000000), (
+9.000000,
+0.000000), (
-15.000000,
-3.000000), (
-15.000000,
+8.000000)
174(
***************,
***************), (
+29.000000,
-18.000000), (
+24.000000,
-10.000000), (
+9.000000,
+6.000000), (
-12.000000,
-24.000000), (
-19.000000,
-8.000000)
175(
***************,
***************), (
-15.000000,
+2.000000), (
-3.000000,
-21.000000), (
-2.000000,
+4.000000), (
-4.000000,
-12.000000), (
-10.000000,
-6.000000)
176(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
177(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
178call setMatMulTri(genMat(
2:
4,
2:), triMat(
2:
6,
3:), lowerDiag, inversion)
180(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
181(
***************,
***************), (
+3.000000,
-0.000000), (
+4.000000,
+0.000000), (
-1.000000,
-2.000000), (
-1.000000,
-1.000000), (
-1.000000,
-4.000000)
182(
***************,
***************), (
+2.000000,
-1.000000), (
+1.000000,
+2.000000), (
-1.000000,
-3.000000), (
+0.000000,
+2.000000), (
+3.000000,
-4.000000)
183(
***************,
***************), (
-2.000000,
+1.000000), (
-1.000000,
-3.000000), (
-3.000000,
+1.000000), (
+0.000000,
-0.000000), (
+2.000000,
-2.000000)
184(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
185(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
187(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
188(
+0.000000,
+0.000000), (
+0.000000,
-0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
189(
+0.000000,
+0.000000), (
-0.000000,
+0.000000), (
-0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
190(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
-0.000000), (
+0.000000,
+0.000000)
191(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
192(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
194call setMatMulTri(genMat, triMat, lowerDiag, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
196(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
197(
***************,
***************), (
+22.000000,
-41.000000), (
+7.000000,
-26.000000), (
+9.000000,
+0.000000), (
-15.000000,
-3.000000), (
-15.000000,
+8.000000)
198(
***************,
***************), (
+29.000000,
-18.000000), (
+24.000000,
-10.000000), (
+9.000000,
+6.000000), (
-12.000000,
-24.000000), (
-19.000000,
-8.000000)
199(
***************,
***************), (
-15.000000,
+2.000000), (
-3.000000,
-21.000000), (
-2.000000,
+4.000000), (
-4.000000,
-12.000000), (
-10.000000,
-6.000000)
200(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
201(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
203(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
204(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
205(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
206(
+0.000000,
+0.000000), (
+0.000000,
-0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
207(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
208(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
212(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
213(
***************,
***************), (
+3.000000,
+0.000000), (
+4.000000,
+0.000000), (
-1.000000,
-2.000000), (
-1.000000,
-1.000000), (
-1.000000,
-4.000000)
214(
***************,
***************), (
+2.000000,
-1.000000), (
+1.000000,
+2.000000), (
-1.000000,
-3.000000), (
+0.000000,
+2.000000), (
+3.000000,
-4.000000)
215(
***************,
***************), (
-2.000000,
+1.000000), (
-1.000000,
-3.000000), (
-3.000000,
+1.000000), (
+0.000000,
+0.000000), (
+2.000000,
-2.000000)
216(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
217(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
218call setMatMulTri(genMat(
2:
4,
2:), triMat(
2:
6,
3:), lowerDiag, nothing)
220(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
221(
***************,
***************), (
+22.000000,
-41.000000), (
+7.000000,
-26.000000), (
+9.000000,
+0.000000), (
-15.000000,
-3.000000), (
-15.000000,
+8.000000)
222(
***************,
***************), (
+29.000000,
-18.000000), (
+24.000000,
-10.000000), (
+9.000000,
+6.000000), (
-12.000000,
-24.000000), (
-19.000000,
-8.000000)
223(
***************,
***************), (
-15.000000,
+2.000000), (
-3.000000,
-21.000000), (
-2.000000,
+4.000000), (
-4.000000,
-12.000000), (
-10.000000,
-6.000000)
224(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
225(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
227(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
228(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
229(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
230(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
231(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
232(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
236(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
237(
***************,
***************), (
***************,
***************), (
+2.000000,
-3.000000), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
238(
***************,
***************), (
***************,
***************), (
+2.000000,
-4.000000), (
+3.000000,
-1.000000), (
***************,
***************), (
***************,
***************), (
***************,
***************)
239(
***************,
***************), (
***************,
***************), (
+2.000000,
+2.000000), (
+1.000000,
+2.000000), (
+1.000000,
+1.000000), (
***************,
***************), (
***************,
***************)
240(
***************,
***************), (
***************,
***************), (
+0.000000,
+0.000000), (
+3.000000,
-1.000000), (
+0.000000,
-1.000000), (
-2.000000,
+1.000000), (
***************,
***************)
241(
***************,
***************), (
***************,
***************), (
+2.000000,
+2.000000), (
+4.000000,
+0.000000), (
-1.000000,
+2.000000), (
+2.000000,
-4.000000), (
-1.000000,
-4.000000)
242(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
243(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
245(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
246(
***************,
***************), (
+22.000000,
-41.000000), (
+7.000000,
-26.000000), (
+9.000000,
+0.000000), (
-15.000000,
-3.000000), (
-15.000000,
+8.000000)
247(
***************,
***************), (
+29.000000,
-18.000000), (
+24.000000,
-10.000000), (
+9.000000,
+6.000000), (
-12.000000,
-24.000000), (
-19.000000,
-8.000000)
248(
***************,
***************), (
-15.000000,
+2.000000), (
-3.000000,
-21.000000), (
-2.000000,
+4.000000), (
-4.000000,
-12.000000), (
-10.000000,
-6.000000)
249(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
250(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
251alpha
= (
1._CKG,
0._CKG); nrow
= 3; ncol
= 5; roffA
= 1; coffA
= 1; roffB
= 2; coffB
= 1;
252call setMatMulTri(genMat,
transpose(triMat), upperDiag, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
254(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
255(
***************,
***************), (
+12.846153,
-1.230770), (
-6.915384,
+6.976923), (
-7.330768,
-9.046153), (
-10.761538,
+13.707692), (
+29.774204,
-11.112217)
256(
***************,
***************), (
+8.615385,
+3.923077), (
-4.338462,
+4.092309), (
-1.176923,
-13.315385), (
-12.453847,
+14.669232), (
+37.109055,
-8.874660)
257(
***************,
***************), (
-2.769231,
-3.153846), (
+7.123077,
-6.215385), (
-7.253847,
+15.069231), (
+14.992308,
+4.238461), (
-22.576021,
-21.472851)
258(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
259(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
261(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
262(
+0.000000,
+0.000000), (
+9.846153,
-1.230770), (
-10.915384,
+6.976923), (
-6.330768,
-7.046153), (
-9.761538,
+14.707692), (
+30.774204,
-7.112217)
263(
+0.000000,
+0.000000), (
+6.615385,
+4.923077), (
-5.338462,
+2.092309), (
-0.176923,
-10.315385), (
-12.453847,
+12.669232), (
+34.109055,
-4.874660)
264(
+0.000000,
+0.000000), (
-0.769231,
-4.153846), (
+8.123077,
-3.215385), (
-4.253847,
+14.069231), (
+14.992308,
+4.238461), (
-24.576021,
-19.472851)
265(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
266(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
270(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
271(
***************,
***************), (
+22.000000,
-41.000000), (
+7.000000,
-26.000000), (
+9.000000,
+0.000000), (
-15.000000,
-3.000000), (
-15.000000,
+8.000000)
272(
***************,
***************), (
+29.000000,
-18.000000), (
+24.000000,
-10.000000), (
+9.000000,
+6.000000), (
-12.000000,
-24.000000), (
-19.000000,
-8.000000)
273(
***************,
***************), (
-15.000000,
+2.000000), (
-3.000000,
-21.000000), (
-2.000000,
+4.000000), (
-4.000000,
-12.000000), (
-10.000000,
-6.000000)
274(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
275(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
276call setMatMulTri(genMat(
2:
4,
2:),
transpose(triMat(
2:
6,
3:)), upperDiag, inversion)
278(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
279(
***************,
***************), (
+12.846153,
-1.230770), (
-6.915384,
+6.976923), (
-7.330768,
-9.046153), (
-10.761538,
+13.707692), (
+29.774204,
-11.112217)
280(
***************,
***************), (
+8.615385,
+3.923077), (
-4.338462,
+4.092309), (
-1.176923,
-13.315385), (
-12.453847,
+14.669232), (
+37.109055,
-8.874660)
281(
***************,
***************), (
-2.769231,
-3.153846), (
+7.123077,
-6.215385), (
-7.253847,
+15.069231), (
+14.992308,
+4.238461), (
-22.576021,
-21.472851)
282(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
283(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
285(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
286(
+0.000000,
+0.000000), (
+9.846153,
-1.230770), (
-10.915384,
+6.976923), (
-6.330768,
-7.046153), (
-9.761538,
+14.707692), (
+30.774204,
-7.112217)
287(
+0.000000,
+0.000000), (
+6.615385,
+4.923077), (
-5.338462,
+2.092309), (
-0.176923,
-10.315385), (
-12.453847,
+12.669232), (
+34.109055,
-4.874660)
288(
+0.000000,
+0.000000), (
-0.769231,
-4.153846), (
+8.123077,
-3.215385), (
-4.253847,
+14.069231), (
+14.992308,
+4.238461), (
-24.576021,
-19.472851)
289(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
290(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
292call setMatMulTri(genMat,
transpose(triMat), upperDiag, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
294(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
295(
***************,
***************), (
+21.999998,
-41.000000), (
+6.999998,
-25.999998), (
+9.000000,
+0.000000), (
-15.000000,
-2.999999), (
-14.999992,
+8.000004)
296(
***************,
***************), (
+29.000000,
-18.000002), (
+24.000000,
-10.000000), (
+9.000000,
+6.000000), (
-12.000000,
-24.000004), (
-19.000000,
-8.000008)
297(
***************,
***************), (
-15.000000,
+2.000000), (
-3.000000,
-21.000000), (
-2.000000,
+4.000000), (
-3.999998,
-12.000000), (
-10.000000,
-6.000000)
298(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
299(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
301(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
302(
+0.000000,
+0.000000), (
-0.000002,
+0.000000), (
-0.000002,
+0.000002), (
+0.000000,
+0.000000), (
+0.000000,
+0.000001), (
+0.000008,
+0.000004)
303(
+0.000000,
+0.000000), (
+0.000000,
-0.000002), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
-0.000004), (
+0.000000,
-0.000008)
304(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000002,
+0.000000), (
+0.000000,
+0.000000)
305(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
306(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
310(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
311(
***************,
***************), (
+3.000000,
+0.000000), (
+4.000000,
+0.000000), (
-1.000000,
-2.000000), (
-1.000000,
-1.000000), (
-1.000000,
-4.000000)
312(
***************,
***************), (
+2.000000,
-1.000000), (
+1.000000,
+2.000000), (
-1.000000,
-3.000000), (
+0.000000,
+2.000000), (
+3.000000,
-4.000000)
313(
***************,
***************), (
-2.000000,
+1.000000), (
-1.000000,
-3.000000), (
-3.000000,
+1.000000), (
+0.000000,
+0.000000), (
+2.000000,
-2.000000)
314(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
315(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
316call setMatMulTri(genMat(
2:
4,
2:),
transpose(triMat(
2:
6,
3:)), upperDiag, nothing)
318(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
319(
***************,
***************), (
+6.000000,
-9.000000), (
+18.000000,
-16.000000), (
+11.000000,
+11.000000), (
+13.000000,
-2.000000), (
+6.000000,
+16.000000)
320(
***************,
***************), (
+1.000000,
-8.000000), (
+5.000000,
-5.000000), (
+5.000000,
+2.000000), (
+0.000000,
+2.000000), (
+6.000000,
+7.000000)
321(
***************,
***************), (
-1.000000,
+8.000000), (
-6.000000,
+2.000000), (
-5.000000,
-9.000000), (
-5.000000,
-5.000000), (
-19.000000,
-27.000000)
322(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
323(
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************), (
***************,
***************)
325(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
326(
+0.000000,
+0.000000), (
-16.000000,
+32.000000), (
+11.000000,
+10.000000), (
+2.000000,
+11.000000), (
+28.000000,
+1.000000), (
+21.000000,
+8.000000)
327(
+0.000000,
+0.000000), (
-28.000000,
+10.000000), (
-19.000000,
+5.000000), (
-4.000000,
-4.000000), (
+12.000000,
+26.000000), (
+25.000000,
+15.000000)
328(
+0.000000,
+0.000000), (
+14.000000,
+6.000000), (
-3.000000,
+23.000000), (
-3.000000,
-13.000000), (
-1.000000,
+7.000000), (
-9.000000,
-21.000000)
329(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
330(
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000), (
+0.000000,
+0.000000)
339 +3.000000,
-1.000000,
+2.000000,
+2.000000,
+1.000000
340***************,
-2.000000,
+4.000000,
-1.000000,
+3.000000
341***************,
***************,
-3.000000,
+0.000000,
+2.000000
342***************,
***************,
***************,
+4.000000,
-2.000000
343***************,
***************,
***************,
***************,
+1.000000
344***************,
***************,
***************,
***************,
***************
345***************,
***************,
***************,
***************,
***************
347 +6.000000,
+10.000000,
-2.000000
348 -16.000000,
-1.000000,
+6.000000
349 -2.000000,
+1.000000,
-4.000000
350 +14.000000,
+0.000000,
-14.000000
351 -1.000000,
+2.000000,
+1.000000
352***************,
***************,
***************
353alpha
= 1._RKG; nrow
= 5; ncol
= 3; roffA
= 0; coffA
= 0; roffB
= 0; coffB
= 0;
354call setMatMulTri(triMat, upperDiag, inversion, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
356 +2.000000,
+3.000000,
+1.000000
357 +5.000000,
+5.000000,
+4.000000
358 +0.000000,
+1.000000,
+2.000000
359 +3.000000,
+1.000000,
-3.000000
360 -1.000000,
+2.000000,
+1.000000
361***************,
***************,
***************
363 +0.000000,
+0.000000,
+0.000000
364 +0.000000,
+0.000000,
+0.000000
365 +0.000000,
+0.000000,
+0.000000
366 +0.000000,
+0.000000,
+0.000000
367 +0.000000,
+0.000000,
+0.000000
368 +0.000000,
+0.000000,
+0.000000
371call setMatMulTri(triMat(
1:
5,
1:
5), upperDiag, inversion, genMat(
1:
5,
1:
3), alpha)
373 +2.000000,
+3.000000,
+1.000000
374 +5.000000,
+5.000000,
+4.000000
375 +0.000000,
+1.000000,
+2.000000
376 +3.000000,
+1.000000,
-3.000000
377 -1.000000,
+2.000000,
+1.000000
378***************,
***************,
***************
380 +0.000000,
+0.000000,
+0.000000
381 +0.000000,
+0.000000,
+0.000000
382 +0.000000,
+0.000000,
+0.000000
383 +0.000000,
+0.000000,
+0.000000
384 +0.000000,
+0.000000,
+0.000000
385 +0.000000,
+0.000000,
+0.000000
387call setMatMulTri(triMat, upperDiag, nothing, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
389 +6.000000,
+10.000000,
-2.000000
390 -16.000000,
-1.000000,
+6.000000
391 -2.000000,
+1.000000,
-4.000000
392 +14.000000,
+0.000000,
-14.000000
393 -1.000000,
+2.000000,
+1.000000
394***************,
***************,
***************
396 +0.000000,
+0.000000,
+0.000000
397 +0.000000,
+0.000000,
+0.000000
398 +0.000000,
+0.000000,
+0.000000
399 +0.000000,
+0.000000,
+0.000000
400 +0.000000,
+0.000000,
+0.000000
401 +0.000000,
+0.000000,
+0.000000
404call setMatMulTri(triMat(
1:
5,
1:
5), upperDiag, nothing, genMat(
1:
5,
1:
3), alpha)
406 +6.000000,
+10.000000,
-2.000000
407 -16.000000,
-1.000000,
+6.000000
408 -2.000000,
+1.000000,
-4.000000
409 +14.000000,
+0.000000,
-14.000000
410 -1.000000,
+2.000000,
+1.000000
411***************,
***************,
***************
413 +0.000000,
+0.000000,
+0.000000
414 +0.000000,
+0.000000,
+0.000000
415 +0.000000,
+0.000000,
+0.000000
416 +0.000000,
+0.000000,
+0.000000
417 +0.000000,
+0.000000,
+0.000000
418 +0.000000,
+0.000000,
+0.000000
422 -1.000000,
-4.000000,
-2.000000,
+2.000000,
+3.000000
423***************,
-2.000000,
+2.000000,
+2.000000,
+2.000000
424***************,
***************,
-3.000000,
-1.000000,
+4.000000
425***************,
***************,
***************,
+1.000000,
+0.000000
426***************,
***************,
***************,
***************,
-2.000000
427***************,
***************,
***************,
***************,
***************
428***************,
***************,
***************,
***************,
***************
430 -1.000000,
-2.000000,
-3.000000,
-4.000000
431 +2.000000,
-2.000000,
-14.000000,
-12.000000
432 +10.000000,
+5.000000,
-8.000000,
-7.000000
433 +14.000000,
+15.000000,
+1.000000,
+8.000000
434 -3.000000,
+4.000000,
+3.000000,
+16.000000
435***************,
***************,
***************,
***************
436alpha
= 1._RKG; nrow
= 5; ncol
= 4; roffA
= 0; coffA
= 0; roffB
= 0; coffB
= 0;
437call setMatMulTri(triMat, upperDiag, transOrth, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
439 +1.000000,
+2.000000,
+3.000000,
+4.000000
440 -3.000000,
-3.000000,
+1.000000,
-2.000000
441 -6.000000,
-5.000000,
+1.333333,
-1.666667
442 +12.000000,
+12.000000,
-5.666667,
+2.333333
443 -12.000000,
-12.000000,
+6.666667,
-7.333333
444***************,
***************,
***************,
***************
446 +0.000000,
+0.000000,
+0.000000,
+0.000000
447 +0.000000,
+0.000000,
+0.000000,
+0.000000
448 +0.000000,
+0.000000,
+0.000000,
+0.000000
449 +0.000000,
+0.000000,
+0.000000,
+0.000000
450 +0.000000,
+0.000000,
+0.000000,
+0.000000
451 +0.000000,
+0.000000,
+0.000000,
+0.000000
454call setMatMulTri(triMat(
1:
5,
1:
5), upperDiag, transOrth, genMat(
1:
5,
1:
4))
456 +1.000000,
+2.000000,
+3.000000,
+4.000000
457 -3.000000,
-3.000000,
+1.000000,
-2.000000
458 -6.000000,
-5.000000,
+1.333333,
-1.666667
459 +12.000000,
+12.000000,
-5.666667,
+2.333333
460 -12.000000,
-12.000000,
+6.666667,
-7.333333
461***************,
***************,
***************,
***************
463 +0.000000,
+0.000000,
+0.000000,
+0.000000
464 +0.000000,
+0.000000,
+0.000000,
+0.000000
465 +0.000000,
+0.000000,
+0.000000,
+0.000000
466 +0.000000,
+0.000000,
+0.000000,
+0.000000
467 +0.000000,
+0.000000,
+0.000000,
+0.000000
468 +0.000000,
+0.000000,
+0.000000,
+0.000000
470call setMatMulTri(triMat, upperDiag, transSymm, genMat, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
472 -1.000000,
-2.000000,
-3.000000,
-4.000000
473 +2.000000,
-2.000000,
-14.000000,
-12.000000
474 +10.000000,
+5.000000,
-8.000000,
-7.000000
475 +14.000000,
+15.000000,
+1.000000,
+8.000001
476 -3.000000,
+4.000000,
+3.000000,
+16.000000
477***************,
***************,
***************,
***************
479 +0.000000,
+0.000000,
+0.000000,
+0.000000
480 +0.000000,
+0.000000,
+0.000000,
+0.000000
481 +0.000000,
+0.000000,
+0.000000,
+0.000000
482 +0.000000,
+0.000000,
+0.000000,
+0.000001
483 +0.000000,
+0.000000,
-0.000000,
+0.000000
484 +0.000000,
+0.000000,
+0.000000,
+0.000000
487call setMatMulTri(triMat(
1:
5,
1:
5), upperDiag, transSymm, genMat(
1:
5,
1:
4))
489 -1.000000,
-2.000000,
-3.000000,
-4.000000
490 +2.000000,
-2.000000,
-14.000000,
-12.000000
491 +10.000000,
+5.000000,
-8.000000,
-7.000000
492 +14.000000,
+15.000000,
+1.000000,
+8.000000
493 -3.000000,
+4.000000,
+3.000000,
+16.000002
494***************,
***************,
***************,
***************
496 +0.000000,
+0.000000,
+0.000000,
+0.000000
497 +0.000000,
+0.000000,
+0.000000,
+0.000000
498 +0.000000,
+0.000000,
+0.000000,
+0.000000
499 +0.000000,
+0.000000,
+0.000000,
-0.000000
500 +0.000000,
+0.000000,
+0.000000,
+0.000002
501 +0.000000,
+0.000000,
+0.000000,
+0.000000
505***************,
***************,
***************,
***************,
***************,
***************
506***************,
***************,
***************,
***************,
***************,
***************
507***************,
***************,
***************,
***************,
***************,
***************
508***************,
+2.000000,
***************,
***************,
***************,
***************
509***************,
+2.000000,
+3.000000,
***************,
***************,
***************
510***************,
+2.000000,
+1.000000,
+1.000000,
***************,
***************
511***************,
+0.000000,
+3.000000,
+0.000000,
-2.000000,
***************
512***************,
+2.000000,
+4.000000,
-1.000000,
+2.000000,
-1.000000
513***************,
***************,
***************,
***************,
***************,
***************
514***************,
***************,
***************,
***************,
***************,
***************
516***************,
***************,
***************,
***************,
***************,
***************
517***************,
+10.000000,
+4.000000,
+0.000000,
+0.000000,
+1.000000
518***************,
+10.000000,
+14.000000,
-4.000000,
+6.000000,
-3.000000
519***************,
-8.000000,
+2.000000,
-5.000000,
+4.000000,
-2.000000
520***************,
***************,
***************,
***************,
***************,
***************
521alpha
= 1._RKG; nrow
= 3; ncol
= 5; roffA
= 1; coffA
= 1; roffB
= 3; coffB
= 1;
522call setMatMulTri(genMat, triMat, lowerDiag, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
524***************,
***************,
***************,
***************,
***************,
***************
525***************,
+3.000000,
+4.000000,
-1.000000,
-1.000000,
-1.000000
526***************,
+2.000000,
+1.000000,
-1.000000,
-0.000000,
+3.000000
527***************,
-2.000000,
-1.000000,
-3.000000,
-0.000000,
+2.000000
528***************,
***************,
***************,
***************,
***************,
***************
530 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
531 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
532 +0.000000,
+0.000000,
+0.000000,
+0.000000,
-0.000000,
+0.000000
533 +0.000000,
+0.000000,
+0.000000,
+0.000000,
-0.000000,
+0.000000
534 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
537call setMatMulTri(genMat(
2:
4,
2:
6), triMat(
4:
8,
2:
6), lowerDiag, inversion)
539***************,
***************,
***************,
***************,
***************,
***************
540***************,
+3.000000,
+4.000000,
-1.000000,
-1.000000,
-1.000000
541***************,
+2.000000,
+1.000000,
-1.000000,
-0.000000,
+3.000000
542***************,
-2.000000,
-1.000000,
-3.000000,
-0.000000,
+2.000000
543***************,
***************,
***************,
***************,
***************,
***************
545 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
546 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
547 +0.000000,
+0.000000,
+0.000000,
+0.000000,
-0.000000,
+0.000000
548 +0.000000,
+0.000000,
+0.000000,
+0.000000,
-0.000000,
+0.000000
549 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
551call setMatMulTri(genMat, triMat, lowerDiag, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
553***************,
***************,
***************,
***************,
***************,
***************
554***************,
+10.000000,
+4.000000,
+0.000000,
+0.000000,
+1.000000
555***************,
+10.000000,
+14.000000,
-4.000000,
+6.000000,
-3.000000
556***************,
-8.000000,
+2.000000,
-5.000000,
+4.000000,
-2.000000
557***************,
***************,
***************,
***************,
***************,
***************
559 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
560 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
561 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
562 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
563 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
566call setMatMulTri(genMat(
2:
4,
2:
6), triMat(
4:
8,
2:
6), lowerDiag, nothing)
568***************,
***************,
***************,
***************,
***************,
***************
569***************,
+10.000000,
+4.000000,
+0.000000,
+0.000000,
+1.000000
570***************,
+10.000000,
+14.000000,
-4.000000,
+6.000000,
-3.000000
571***************,
-8.000000,
+2.000000,
-5.000000,
+4.000000,
-2.000000
572***************,
***************,
***************,
***************,
***************,
***************
574 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
575 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
576 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
577 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
578 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
582***************,
***************,
***************,
***************,
***************,
***************
583***************,
***************,
***************,
***************,
***************,
***************
584 +1.000000,
+4.000000,
-2.000000,
+10.000000,
+2.000000,
-6.000000
585***************,
***************,
***************,
***************,
***************,
***************
587***************,
***************,
***************,
***************,
***************,
***************
588***************,
+2.000000,
-3.000000,
+1.000000,
+2.000000,
+4.000000
589***************,
***************,
+0.000000,
+1.000000,
+1.000000,
-2.000000
590***************,
***************,
***************,
+4.000000,
-1.000000,
+1.000000
591***************,
***************,
***************,
***************,
+0.000000,
-1.000000
592***************,
***************,
***************,
***************,
***************,
+2.000000
593***************,
***************,
***************,
***************,
***************,
***************
594***************,
***************,
***************,
***************,
***************,
***************
595alpha
= 1._RKG; nrow
= 1; ncol
= 6; roffA
= 2; coffA
= 0; roffB
= 1; coffB
= 0;
596call setMatMulTri(genMat, triMat, upperUnit, inversion, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
598***************,
***************,
***************,
***************,
***************,
***************
599***************,
***************,
***************,
***************,
***************,
***************
600 +1.000000,
+2.000000,
+1.000000,
+3.000000,
-1.000000,
-2.000000
601***************,
***************,
***************,
***************,
***************,
***************
603 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
604 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
605 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
606 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
609call setMatMulTri(genMat(
3:
3,
1:), triMat(
2:
7,
1:), upperUnit, inversion)
611***************,
***************,
***************,
***************,
***************,
***************
612***************,
***************,
***************,
***************,
***************,
***************
613 +1.000000,
+2.000000,
+1.000000,
+3.000000,
-1.000000,
-2.000000
614***************,
***************,
***************,
***************,
***************,
***************
616 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
617 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
618 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
619 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
621call setMatMulTri(genMat, triMat, upperUnit, nothing, alpha, nrow, ncol, roffA, coffA, roffB, coffB)
623***************,
***************,
***************,
***************,
***************,
***************
624***************,
***************,
***************,
***************,
***************,
***************
625 +1.000000,
+4.000000,
-2.000000,
+10.000000,
+2.000000,
-6.000000
626***************,
***************,
***************,
***************,
***************,
***************
628 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
629 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
630 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
631 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
634call setMatMulTri(genMat(
3:
3,
1:), triMat(
2:
7,
1:), upperUnit, nothing)
636***************,
***************,
***************,
***************,
***************,
***************
637***************,
***************,
***************,
***************,
***************,
***************
638 +1.000000,
+4.000000,
-2.000000,
+10.000000,
+2.000000,
-6.000000
639***************,
***************,
***************,
***************,
***************,
***************
641 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
642 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
643 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000
644 +0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000,
+0.000000