1 // ============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2012 - DIGITEO - Antoine ELIAS
5 // This file is distributed under the same license as the Scilab package.
6 // ============================================================================
7 // <-- JVM NOT MANDATORY -->
13 C = [1+2*%i,2+4*%i;3+6*%i,4+8*%i];
18 assert_checkequal(r - r, 0);
20 assert_checkequal(r - c, 1+%i*2);
22 assert_checkequal(c - r, -1-%i*2);
24 assert_checkequal(c - c, 0*%i);
27 assert_checkequal(r - R, [1,0;-1,-2]);
28 rR3ref(:,:,1) = [1,0;-1,-2];
29 rR3ref(:,:,2) = [1,-1;0,-2] ;
30 assert_checkequal(r - R3, rR3ref);
32 assert_checkequal(r - C, [ 1-%i*2,-%i*4;-1-%i*6,-2-%i*8]);
33 rC3ref(:,:,1) = [ 1-%i*2,-%i*4;-1-%i*6,-2-%i*8];
34 rC3ref(:,:,2) = [ 1+%i*2,-1+%i*6;%i*4,-2+%i*8];
35 assert_checkequal(r - C3, rC3ref);
37 assert_checkequal(c - R, [-%i*2,-1-%i*2;-2-%i*2,-3-%i*2]);
38 cR3ref(:,:,1) = [-%i*2,-1-%i*2;-2-%i*2,-3-%i*2];
39 cR3ref(:,:,2) = [-%i*2,-2-%i*2;-1-%i*2,-3-%i*2];
40 assert_checkequal(c - R3, cR3ref);
42 assert_checkequal(c - C, [-%i*4,-1-%i*6;-2-%i*8,-3-%i*10]);
43 cC3ref(:,:,1) = [-%i*4,-1-%i*6;-2-%i*8,-3-%i*10];
44 cC3ref(:,:,2) = [0,-2+%i*4;-1+%i*2,-3+%i*6];
45 assert_checkequal(c - C3, cC3ref);
48 assert_checkequal(R - r, [-1,0;1,2]);
49 R3rref(:,:,1) = [-1,0;1,2];
50 R3rref(:,:,2) = [-1,1;0,2];
51 assert_checkequal(R3 - r, R3rref);
53 assert_checkequal(R - c, [%i*2, 1+%i*2; 2+%i*2, 3+%i*2]);
54 R3cref(:,:,1) = [%i*2, 1+%i*2; 2+%i*2, 3+%i*2];
55 R3cref(:,:,2) = [%i*2, 2+%i*2; 1+%i*2, 3+%i*2];
56 assert_checkequal(R3 - c, R3cref);
58 assert_checkequal(C - r, [-1+%i*2,%i*4; 1+%i*6, 2+%i*8]);
59 C3rref(:,:,1) = [-1+%i*2,%i*4; 1+%i*6, 2+%i*8];
60 C3rref(:,:,2) = [-1-%i*2, 1-%i*6;-%i*4, 2-%i*8];
61 assert_checkequal(C3 - r, C3rref);
63 assert_checkequal(C - c, [%i*4, 1+%i*6; 2+%i*8, 3+%i*10]);
64 C3cref(:,:,1) = [%i*4, 1+%i*6; 2+%i*8, 3+%i*10];
65 C3cref(:,:,2) = [0, 2-%i*4; 1-%i*2, 3-%i*6];
66 assert_checkequal(C3 - c, C3cref);
69 assert_checkequal(R - R, [0,0;0,0]);
70 R3R3ref(:,:,1) = [0,0;0,0];
71 R3R3ref(:,:,2) = [0,0;0,0];
72 assert_checkequal(R3 - R3, R3R3ref);
74 assert_checkequal(R - C, [-%i*2,-%i*4;-%i*6,-%i*8]);
75 R3C3ref(:,:,1) = [-%i*2,-%i*4;-%i*6,-%i*8];
76 R3C3ref(:,:,2) = [%i*2,%i*6;%i*4,%i*8];
77 assert_checkequal(R3 - C3, R3C3ref);
79 assert_checkequal(C - R, [%i*2,%i*4;%i*6,%i*8]);
80 C3R3ref(:,:,1) = [%i*2,%i*4;%i*6,%i*8];
81 C3R3ref(:,:,2) = [-%i*2,-%i*6;-%i*4,-%i*8];
82 assert_checkequal(C3 - R3, C3R3ref);
84 assert_checkequal(C - C, [0,0;0,0]*%i);
85 C3C3ref(:,:,1) = [0,0;0,0];
86 C3C3ref(:,:,2) = [0,0;0,0];
87 assert_checkequal(C3 - C3, C3C3ref*%i);