restore tests from operations module
[scilab.git] / scilab / modules / ast / tests / unit_tests / kron.tst
1 // ============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2012 - DIGITEO - Antoine ELIAS
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // ============================================================================
7
8 // <-- JVM NOT MANDATORY -->
9
10 r = 2;
11 R = [1,2;3,4];
12 c = 1 + 2*%i;
13 C = [1+2*%i,2+4*%i;3+6*%i,4+8*%i];
14
15 // double .*. double
16
17 //r .*. r
18 assert_checkequal(r .*. r, 4);
19 //r .*. c
20 assert_checkequal(r .*. c, 2+4*%i);
21 //c .*. r
22 assert_checkequal(c .*. r, 2+4*%i);
23 //c .*. c
24 assert_checkequal(c .*. c, -3+4*%i);
25
26
27 // double .*. DOUBLE
28
29 //r .*. R
30 assert_checkequal(r .*. R, [2,4;6,8]);
31 //r .*. C
32 assert_checkequal(r .*. C, [2+4*%i,4+8*%i;6+12*%i,8+16*%i]);
33 //c .*. R
34 assert_checkequal(c .*. R, [1+2*%i,2+4*%i;3+6*%i,4+8*%i]);
35 //c .*. C
36 assert_checkequal(c .*. C, [-3+4*%i,-6+8*%i;-9+12*%i,-12+16*%i]);
37
38
39 // DOUBLE .*. double
40
41 //R .*. r
42 assert_checkequal(R .*.r, [2,4;6,8]);
43 //R .*. c
44 assert_checkequal(R .*.c, [1+2*%i,2+4*%i;3+6*%i,4+8*%i]);
45 //C .*. r
46 assert_checkequal(C .*.r, [2+4*%i,4+8*%i;6+12*%i,8+16*%i]);
47 //C .*. c
48 assert_checkequal(C .*.c, [-3+4*%i,-6+8*%i;-9+12*%i,-12+16*%i]);
49
50
51 // DOUBLE .*. DOUBLE
52
53 //R .*. R
54 assert_checkequal(R .*. R, [1,2,2,4;3,4,6,8;3,6,4,8;9,12,12,16]);
55 //R .*. C
56 assert_checkequal(R .*. C, [1+2*%i,2+4*%i,2+4*%i,4+8*%i;3+6*%i,4+8*%i,6+12*%i,8+16*%i;3+6*%i,6+12*%i,4+8*%i,8+16*%i;9+18*%i,12+24*%i,12+24*%i,16+32*%i]);
57 //C .*. R
58 assert_checkequal(C .*. R, [1+2*%i,2+4*%i,2+4*%i,4+8*%i;3+6*%i,4+8*%i,6+12*%i,8+16*%i;3+6*%i,6+12*%i,4+8*%i,8+16*%i;9+18*%i,12+24*%i,12+24*%i,16+32*%i]);
59 //C .*. C
60 assert_checkequal(C .*. C, [-3+4*%i,-6+8*%i,-6+8*%i,-12+16*%i;-9+12*%i,-12+16*%i,-18+24*%i,-24+32*%i;-9+12*%i,-18+24*%i,-12+16*%i,-24+32*%i;-27+36*%i,-36+48*%i,-36+48*%i,-48+64*%i]);