License Header change: Removed the LICENSE_END before beta
[scilab.git] / scilab / modules / ast / tests / unit_tests / sparseBool.tst
1 //
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2012 - DIGITEO - Antoine ELIAS
4 // Copyright (C) 2012 - Scilab Enterprises - Cedric Delamarre
5 //
6 // Copyright (C) 2012 - 2016 - Scilab Enterprises
7 //
8 // This file is hereby licensed under the terms of the GNU GPL v2.0,
9 // pursuant to article 5.3.4 of the CeCILL v.2.1.
10 // This file was originally licensed under the terms of the CeCILL v2.1,
11 // and continues to be available under such terms.
12 // For more information, see the COPYING file which you should have received
13 // along with this program.
14 //
15 //
16
17 // <-- CLI SHELL MODE -->
18
19 // boolean sparse function
20
21
22 //from dense form
23 s=[ %t,%f,%f,%f,%f,%f,%f;
24 %f,%t,%f,%f,%f,%f,%f;
25 %f,%f,%t,%f,%f,%f,%f;
26 %f,%f,%t,%t,%f,%f,%f;
27 %f,%f,%t,%t,%t,%f,%f;
28 %f,%f,%t,%t,%f,%t,%f;
29 %f,%f,%t,%t,%f,%t,%t];
30
31
32 sp=sparse(s);
33
34 assert_checkequal(size(s), size(sp));
35 assert_checkequal(full(sp), s);
36
37 //from coord
38 sp = sparse([1 1;2 2;3 3;4 3;4 4;5 3;5 4;5 5;6 3;6 4;6 6;7 3;7 4;7 6;7 7], [%t %t %t %t %t %t %t %t %t %t %t %t %t %t %t]);
39 assert_checkequal(size(s), size(sp));
40 assert_checkequal(full(sp), s);
41
42 //with size
43 newsp = sparse([], [], [10,20]);
44 assert_checkequal(size(newsp), [10,20]);
45
46 //concatenation
47 spc = [sp [%t; %f; %t; %f; %t; %f; %t]];
48 sc = [s [%t; %f; %t; %f; %t; %f; %t]];
49 assert_checkequal(full(spc), sc);
50
51 spc = [sp ;[%t %f %t %f %t %f %t]];
52 sc = [s ;[%t %f %t %f %t %f %t]];
53 assert_checkequal(full(spc), sc);
54
55 spc = [[%t; %f; %t; %f; %t; %f; %t] sp];
56 sc = [[%t; %f; %t; %f; %t; %f; %t] s];
57 assert_checkequal(full(spc), sc);
58
59 spc = [[%t %f %t %f %t %f %t]; sp];
60 sc = [[%t %f %t %f %t %f %t]; s];
61 assert_checkequal(full(spc), sc);
62
63 sc = [s s];
64 spc = [sp sp];
65 assert_checkequal(full(spc), sc);
66
67 sc = [s; s];
68 spc = [sp; sp];
69 assert_checkequal(full(spc), sc);
70
71 sc = [s s];
72 spc = [sp sp];
73 assert_checkequal(full(spc), sc);
74
75 A = sparse(%t);
76 A = [A %f];
77 A = [A %f];
78 A = [A %f];
79
80 assert_checkequal(full(A), [%t %f %f %f]);
81 assert_checkequal(size(A, "c"), 4);
82
83 //extraction
84 assert_checkequal(full(sp(:)), s(:));
85 assert_checkequal(size(sp(:)), size(s(:)));
86 assert_checkequal(full(sp(1:7, 1:7)), s(1:7, 1:7));
87 assert_checkequal(size(sp(1:7, 1:7)), size(s(1:7, 1:7)));
88 assert_checkequal(full(sp(1:4, :)), s(1:4, :));
89 assert_checkequal(size(sp(1:4, :)), size(s(1:4, :)));
90 assert_checkequal(full(sp(:, 2:6)), s(:, 2:6));
91 assert_checkequal(size(sp(:, 2:6)), size(s(:, 2:6)));
92 assert_checkequal(full(sp(:, $)), s(:, $));
93 assert_checkequal(size(sp(:, $)), size(s(:, $)));
94
95
96
97