1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
mx1 =
(diag 1.0-1.0i 1.0-1.0i 1.0-1.0i 1.0-1.0i 1.0-1.0i) OK
(diagonal-matrix-ref mx5 0) = 3.0-2.0i OK
(matrix-ref mx5 1 1) = 4.0+5.0i OK
(matrix-ref mx5 0 1) = 0.0+0.0i OK
mx5 =
(diag 3.0-2.0i 4.0+5.0i 1.0-1.0i 1.0-1.0i 1.0-1.0i) OK
(number-of-rows mx2) = 4 OK
(number-of-columns mx2) = 4 OK
(diag-matrix-numel mx2) = 4 OK
(diag->normal-matrix mx2) =
2.0+1.0i 0.0+0.0i 0.0+0.0i 0.0+0.0i
0.0+0.0i -1.0+0.0i 0.0+0.0i 0.0+0.0i
0.0+0.0i 0.0+0.0i 0.0+4.0i 0.0+0.0i
0.0+0.0i 0.0+0.0i 0.0+0.0i 10.0-5.0i
OK
(is-instance? mx6 <bvm-complex-matrix>) = #t OK
(->complex-diag-matrix mx2) =
(diag 2.0+1.0i -1.0+0.0i 0.0+4.0i 10.0-5.0i) OK
(->single-complex-diag-matrix mx2) =
(diag 2.0+1.0i -1.0+0.0i 0.0+4.0i 10.0-5.0i) OK
(+ mx2 mx3) =
(diag 2.0+2.0i 9.0+5.0i 2.5+1.5i 18.0-12.0i) OK
(+ mx2 mx7) =
3.0+12.0i 2.0+0.0i 3.0+3.0i 1.0+4.0i
4.0+0.0i 4.0+6.0i 6.0+7.0i -1.0+8.0i
7.0-7.5i 8.0-8.5i 9.0-5.5i 10.0-10.5i
-1.0+4.0i -2.0+3.0i -3.0+2.0i 6.0-4.0i
OK
(+ mx7 mx2) =
3.0+12.0i 2.0+0.0i 3.0+3.0i 1.0+4.0i
4.0+0.0i 4.0+6.0i 6.0+7.0i -1.0+8.0i
7.0-7.5i 8.0-8.5i 9.0-5.5i 10.0-10.5i
-1.0+4.0i -2.0+3.0i -3.0+2.0i 6.0-4.0i
OK
(- mx2 mx3) =
(diag 2.0+0.0i -11.0-5.0i -2.5+6.5i 2.0+2.0i) OK
(- mx2 mx7) =
1.0-10.0i -2.0+0.0i -3.0-3.0i -1.0-4.0i
-4.0+0.0i -6.0-6.0i -6.0-7.0i 1.0-8.0i
-7.0+7.5i -8.0+8.5i -9.0+13.5i -10.0+10.5i
1.0-4.0i 2.0-3.0i 3.0-2.0i 14.0-6.0i
OK
(- mx7 mx2) =
-1.0+10.0i 2.0+0.0i 3.0+3.0i 1.0+4.0i
4.0+0.0i 6.0+6.0i 6.0+7.0i -1.0+8.0i
7.0-7.5i 8.0-8.5i 9.0-13.5i 10.0-10.5i
-1.0+4.0i -2.0+3.0i -3.0+2.0i -14.0+6.0i
OK
(- mx2) =
(diag -2.0-1.0i 1.0+-0.0i -0.0-4.0i -10.0+5.0i) OK
(* mx2 mx3) =
(diag -1.0+2.0i -10.0-5.0i 10.0+10.0i 45.0-110.0i) OK
(* mx2 mx4) =
14.0-23.0i -7.0+24.0i 16.0-17.0i
-4.0+9.0i -5.0-8.0i -6.0+7.0i
24.0+28.0i -20.0+32.0i 16.0+36.0i
85.0-80.0i 120.0-35.0i 115.0-70.0i
OK
(* (transpose mx4) mx2) =
14.0-23.0i -4.0+9.0i 24.0+28.0i 85.0-80.0i
-7.0+24.0i -5.0-8.0i -20.0+32.0i 120.0-35.0i
16.0-17.0i -6.0+7.0i 16.0+36.0i 115.0-70.0i
OK
(* (complex 5.0 -2.0) mx2) =
(diag 12.0+1.0i -5.0+2.0i 8.0+20.0i 40.0-45.0i) OK
(* mx2 (complex 5.0 -2.0)) =
(diag 12.0+1.0i -5.0+2.0i 8.0+20.0i 40.0-45.0i) OK
(= mx2 mx2) = #t OK
(= mx2 mx3) = #f OK
(= (diag->normal-matrix mx2) mx2) = #t OK
(= (diag->normal-matrix mx3) mx2) = #f OK
(conj mx2) =
(diag 2.0-1.0i -1.0+-0.0i 0.0-4.0i 10.0+5.0i) OK
(transpose mx2) =
(diag 2.0+1.0i -1.0+0.0i 0.0+4.0i 10.0-5.0i) OK
(herm mx2) =
(diag 2.0-1.0i -1.0+-0.0i 0.0-4.0i 10.0+5.0i) OK
(diag-of mx4) =
(diag 1.0-12.0i 5.0+8.0i 9.0-4.0i) OK
(bvm-generate-diag-matrix 3 (lambda (((i <integer>)) <complex> pure) (let ((r (integer->real i))) (complex (* -2.0 r) (+ r 3.0))))) =
(diag -0.0+3.0i -2.0+4.0i -4.0+5.0i) OK
(matrix-map c-square mx2) =
(diag 3.0+4.0i 1.0+-0.0i -16.0+0.0i 75.0-100.0i) OK
(diag-matrix-map-w-ind (lambda (((i <integer>) (cx-elem <complex>)) <complex> pure) (+ (integer->real i) (conj cx-elem))) mx2) =
(diag 2.0-1.0i 0.0+-0.0i 2.0-4.0i 13.0+5.0i) OK
(+ mx2 (bvm-diag-matrix (list (complex 1.0 -1.0) (complex -10.0 5.0))))
exception add-op-dm-dm:dim-mismatch OK
(- mx2 (bvm-diag-matrix (list (complex 1.0 -1.0) (complex -10.0 5.0))))
exception add-op-dm-dm:dim-mismatch OK
(+ mx2 mx4)
exception add-op-dm-mx:dim-mismatch OK
(+ mx4 mx2)
exception add-op-dm-mx:dim-mismatch OK
(- mx2 mx4)
exception add-op-dm-mx:dim-mismatch OK
(- mx4 mx2)
exception add-op-mx-dm:dim-mismatch OK
(* mx2 (bvm-diag-matrix (list (complex 1.0 -1.0) (complex -10.0 5.0))))
exception mult-op-dm-dm:dim-mismatch OK
(* mx2 (bvm-matrix (list (list cx1m1 cx0) (list (complex 4.0 3.0) (complex -1.0 -1.0)))))
exception mult-op-dm-mx:dim-mismatch OK
(* (bvm-matrix (list (list cx1m1 cx0) (list (complex 4.0 3.0) (complex -1.0 -1.0)))) mx2)
exception mult-op-mx-dm:dim-mismatch OK
|