restore tests from operations module
[scilab.git] / scilab / modules / ast / tests / unit_tests / ldivide.dia.ref
1 // ============================================================================
2 // Scilab ( http://www.scilab.org\ ) - This file is part of Scilab
3 // Copyright (C) 2013 - Scilab Enterprises - Cedric Delamarre
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // ============================================================================
7 r = 2;
8 R = [1,2;3,4];
9 T = 2 * R;
10 c = 1 + 2*%i;
11 C = [1+2*%i,2+4*%i;3+6*%i,4+8*%i];
12 RR = [1, 2, 3;4, 5, 6];
13 TT = 2 * RR;
14 // check that input are not modified.
15 R \ T;
16 assert_checkequal(R, [1,2;3,4]);
17 assert_checkequal(T, 2*[1,2;3,4]);
18 RR \ TT;
19 assert_checkequal(RR, [1, 2, 3;4, 5, 6]);
20 assert_checkequal(TT, 2*[1, 2, 3;4, 5, 6]);
21 //double \ double
22 //r \ r
23 assert_checkalmostequal(r \ r, 1);
24 //r \ c
25 assert_checkalmostequal(r \ c, c / r);
26 //c \ r
27 assert_checkalmostequal(c \ r, r / c);
28 //c \ c
29 assert_checkalmostequal(c \ c, 1);
30 //double \ DOUBLE
31 //r \ R
32 assert_checkalmostequal(r \ R, R / r);
33 //r \ C
34 assert_checkalmostequal(r \ C, C / r);
35 //c \ R
36 assert_checkalmostequal(c \ R, R / c);
37 //c \ C
38 assert_checkalmostequal(c \ C, C / c);
39 //DOUBLE \ double
40 //R \ r
41 assert_checkalmostequal(R \ r, [-4,2;3,-1]);
42 //R \ c
43 assert_checkalmostequal(R \ c, [-2-4*%i , 1+2*%i ; 1.5+3*%i, -0.5-%i]);
44 //C \ r
45 assert_checkalmostequal(C \ r, [-0.8+1.6*%i,0.4-0.8*%i;0.6-1.2*%i,-0.2+0.4*%i]);
46 //C \ c
47 assert_checkalmostequal(C \ c, [-2,1;1.5,-0.5]);
48 //DOUBLE \ DOUBLE
49 //R \ R
50 assert_checkalmostequal(R \ R, R / R);
51 //R \ C
52 assert_checkalmostequal(R \ C, C / R);
53 //C \ R
54 assert_checkalmostequal(C \ R, R / C, [], %eps);
55 //C \ C
56 assert_checkalmostequal(C \ C, C / C);
57 // dot left division
58 //double .\ double
59 //r .\ r
60 assert_checkalmostequal(r .\ r, 1);
61 //r .\ c
62 assert_checkalmostequal(r .\ c, c ./ r);
63 //c .\ r
64 assert_checkalmostequal(c .\ r, r ./ c);
65 //c .\ c
66 assert_checkalmostequal(c .\ c, 1);
67 //double .\ DOUBLE
68 //r .\ R
69 assert_checkalmostequal(r .\ R, R ./ r);
70 //r .\ C
71 assert_checkalmostequal(r .\ C, C ./ r);
72 //c .\ R
73 assert_checkalmostequal(c .\ R, R ./ c);
74 //c .\ C
75 assert_checkalmostequal(c .\ C, C ./ c);
76 //DOUBLE .\ double
77 //R .\ c
78 assert_checkalmostequal(R .\ c, c ./ R);
79 //C .\ r
80 assert_checkalmostequal(C .\ r, r ./ C);
81 //C .\ c
82 assert_checkalmostequal(C .\ c, c ./ C);
83 //DOUBLE .\ DOUBLE
84 //R .\ R
85 assert_checkalmostequal(R .\ R, R ./ R);
86 //R .\ C
87 assert_checkalmostequal(R .\ C, C ./ R);
88 //C .\ R
89 assert_checkalmostequal(C .\ R, R ./ C);
90 //C .\ C
91 assert_checkalmostequal(C .\ C, C ./ C);