sparse comparison
[scilab.git] / scilab / modules / ast / tests / unit_tests / sparse.tst
index 53189af..fe81969 100644 (file)
 
 //from dense form
 s=[ 1,0,0,0,0,0,0;
-    0,1,0,0,0,0,0;
-    0,0,1,0,0,0,0;
-    0,0,1,1,0,0,0;
-    0,0,1,1,1,0,0;
-    0,0,1,1,0,1,0;
-    0,0,1,1,0,1,1];
+0,1,0,0,0,0,0;
+0,0,1,0,0,0,0;
+0,0,1,1,0,0,0;
+0,0,1,1,1,0,0;
+0,0,1,1,0,1,0;
+0,0,1,1,0,1,1];
 sp=sparse(s);
 
 assert_checkequal(size(s), size(sp));
@@ -71,7 +71,7 @@ A = [A 0];
 A = [A 0];
 
 assert_checkequal(full(A), [1 0 0 0]);
-assert_checkequal(size(A, 'c'), 4);
+assert_checkequal(size(A, "c"), 4);
 
 //extraction
 assert_checkequal(full(sp(:)), s(:));
@@ -132,11 +132,11 @@ assert_checkequal(full(v), a);
 //  -- for complex matrix
 sp=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],(1:9)+%i*(21:29),[6 6]);
 a=[0,0,3+%i*23,0,2+%i*22,1+%i*21
-   5+%i*25,0,0,4+%i*24,0,0
-   0,0,0,0,0,0
-   0,0,7+%i*27,6+%i*26,0,0
-   8+%i*28,0,0,0,0,0
-   0,0,0,0,0,9+%i*29];
+5+%i*25,0,0,4+%i*24,0,0
+0,0,0,0,0,0
+0,0,7+%i*27,6+%i*26,0,0
+8+%i*28,0,0,0,0,0
+0,0,0,0,0,9+%i*29];
 assert_checkequal(full(sp), a);
 sp=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],(1:9)+%i*(21:29),[8 6]);
 a(8,6)=0;
@@ -811,41 +811,193 @@ b=sparse([1 6;1 2;6 5],[10;-1;-1],[6 6]);
 assert_checkequal(full(a==a), full(a)==full(a));
 assert_checkequal(full(a<>a), (full(a)<>full(a)));
 assert_checkequal(full(a>sparse(5)), (full(a)>5));
+assert_checkequal(full(a<sparse(5)), (full(a)<5));
+assert_checkequal(full(a>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(a<=sparse(5)), (full(a)<=5));
 assert_checkequal(full(sparse(5)>a), (5>full(a)));
+assert_checkequal(full(sparse(5)<a), (5<full(a)));
+assert_checkequal(full(sparse(5)>=a), (5>=full(a)));
+assert_checkequal(full(sparse(5)<=a), (5<=full(a)));
 assert_checkequal(full(b>a), (full(b)>full(a)));
+assert_checkequal(full(b<a), (full(b)<full(a)));
+assert_checkequal(full(b>=a), (full(b)>=full(a)));
+assert_checkequal(full(b<=a), (full(b)<=full(a)));
 assert_checkequal(full(a==full(a)), full(a)==full(a));
 assert_checkequal(full(a<>full(a)), (full(a)<>full(a)));
 assert_checkequal(full(a>5), (full(a)>5));
+assert_checkequal(full(a<5), (full(a)<5));
+assert_checkequal(full(a>=5), (full(a)>=5));
+assert_checkequal(full(a<=5), (full(a)<=5));
 assert_checkequal(full(5>a), (5>full(a)));
+assert_checkequal(full(5<a), (5<full(a)));
+assert_checkequal(full(5>=a), (5>=full(a)));
+assert_checkequal(full(5<=a), (5<=full(a)));
 assert_checkequal(full(b>full(a)), (full(b)>full(a)));
+assert_checkequal(full(b<full(a)), (full(b)<full(a)));
+assert_checkequal(full(b>=full(a)), (full(b)>=full(a)));
+assert_checkequal(full(b<=full(a)), (full(b)<=full(a)));
 assert_checkequal(full(full(a)==a), full(a)==full(a));
 assert_checkequal(full(full(a)<>a), (full(a)<>full(a)));
 assert_checkequal(full(full(a)>sparse(5)), (full(a)>5));
+assert_checkequal(full(full(a)<sparse(5)), (full(a)<5));
+assert_checkequal(full(full(a)>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(full(a)<=sparse(5)), (full(a)<=5));
 assert_checkequal(full(full(b)>a), (full(b)>full(a)));
+assert_checkequal(full(full(b)<a), (full(b)<full(a)));
+assert_checkequal(full(full(b)>=a), (full(b)>=full(a)));
+assert_checkequal(full(full(b)<=a), (full(b)<=full(a)));
+
+a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],-(1:9),[6 6]);
+b=sparse([1 6;1 2;6 5],[10;-1;-1],[6 6]);
+assert_checkequal(full(a==a), full(a)==full(a));
+assert_checkequal(full(a<>a), (full(a)<>full(a)));
+assert_checkequal(full(a>sparse(5)), (full(a)>5));
+assert_checkequal(full(a<sparse(5)), (full(a)<5));
+assert_checkequal(full(a>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(a<=sparse(5)), (full(a)<=5));
+assert_checkequal(full(sparse(5)>a), (5>full(a)));
+assert_checkequal(full(sparse(5)<a), (5<full(a)));
+assert_checkequal(full(sparse(5)>=a), (5>=full(a)));
+assert_checkequal(full(sparse(5)<=a), (5<=full(a)));
+assert_checkequal(full(b>a), (full(b)>full(a)));
+assert_checkequal(full(b<a), (full(b)<full(a)));
+assert_checkequal(full(b>=a), (full(b)>=full(a)));
+assert_checkequal(full(b<=a), (full(b)<=full(a)));
+assert_checkequal(full(a==full(a)), full(a)==full(a));
+assert_checkequal(full(a<>full(a)), (full(a)<>full(a)));
+assert_checkequal(full(a>5), (full(a)>5));
+assert_checkequal(full(a<5), (full(a)<5));
+assert_checkequal(full(a>=5), (full(a)>=5));
+assert_checkequal(full(a<=5), (full(a)<=5));
+assert_checkequal(full(5>a), (5>full(a)));
+assert_checkequal(full(5<a), (5<full(a)));
+assert_checkequal(full(5>=a), (5>=full(a)));
+assert_checkequal(full(5<=a), (5<=full(a)));
+assert_checkequal(full(b>full(a)), (full(b)>full(a)));
+assert_checkequal(full(b<full(a)), (full(b)<full(a)));
+assert_checkequal(full(b>=full(a)), (full(b)>=full(a)));
+assert_checkequal(full(b<=full(a)), (full(b)<=full(a)));
+assert_checkequal(full(full(a)==a), full(a)==full(a));
+assert_checkequal(full(full(a)<>a), (full(a)<>full(a)));
+assert_checkequal(full(full(a)>sparse(5)), (full(a)>5));
+assert_checkequal(full(full(a)<sparse(5)), (full(a)<5));
+assert_checkequal(full(full(a)>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(full(a)<=sparse(5)), (full(a)<=5));
+assert_checkequal(full(full(b)>a), (full(b)>full(a)));
+assert_checkequal(full(full(b)<a), (full(b)<full(a)));
+assert_checkequal(full(full(b)>=a), (full(b)>=full(a)));
+assert_checkequal(full(full(b)<=a), (full(b)<=full(a)));
+
 a=sparse([1 1;3 1;6 1],[10 11 12],[6 1]);
 assert_checkequal(full(a==a), full(a)==full(a));
 assert_checkequal(full(a<>a), (full(a)<>full(a)));
 assert_checkequal(full(a>sparse(5)), (full(a)>5));
+assert_checkequal(full(a<sparse(5)), (full(a)<5));
+assert_checkequal(full(a>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(a<=sparse(5)), (full(a)<=5));
+assert_checkequal(full(sparse(5)>a), (5>full(a)));
+assert_checkequal(full(sparse(5)<a), (5<full(a)));
+assert_checkequal(full(sparse(5)>=a), (5>=full(a)));
+assert_checkequal(full(sparse(5)<=a), (5<=full(a)));
+assert_checkequal(full(a==full(a)), full(a)==full(a));
+assert_checkequal(full(a<>full(a)), (full(a)<>full(a)));
+assert_checkequal(full(a>5), (full(a)>5));
+assert_checkequal(full(a<5), (full(a)<5));
+assert_checkequal(full(a>=5), (full(a)>=5));
+assert_checkequal(full(a<=5), (full(a)<=5));
+assert_checkequal(full(5>a), (5>full(a)));
+assert_checkequal(full(5<a), (5<full(a)));
+assert_checkequal(full(5>=a), (5>=full(a)));
+assert_checkequal(full(5<=a), (5<=full(a)));
+assert_checkequal(full(full(a)==a), full(a)==full(a));
+assert_checkequal(full(full(a)<>a), (full(a)<>full(a)));
+assert_checkequal(full(full(a)>sparse(5)), (full(a)>5));
+assert_checkequal(full(full(a)<sparse(5)), (full(a)<5));
+assert_checkequal(full(full(a)>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(full(a)<=sparse(5)), (full(a)<=5));
+a=a';
+assert_checkequal(full(a==a), full(a)==full(a));
+assert_checkequal(full(a<>a), (full(a)<>full(a)));
+assert_checkequal(full(a>sparse(5)), (full(a)>5));
+assert_checkequal(full(a<sparse(5)), (full(a)<5));
+assert_checkequal(full(a>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(a<=sparse(5)), (full(a)<=5));
 assert_checkequal(full(sparse(5)>a), (5>full(a)));
+assert_checkequal(full(sparse(5)<a), (5<full(a)));
+assert_checkequal(full(sparse(5)>=a), (5>=full(a)));
+assert_checkequal(full(sparse(5)<=a), (5<=full(a)));
 assert_checkequal(full(a==full(a)), full(a)==full(a));
 assert_checkequal(full(a<>full(a)), (full(a)<>full(a)));
 assert_checkequal(full(a>5), (full(a)>5));
+assert_checkequal(full(a<5), (full(a)<5));
+assert_checkequal(full(a>=5), (full(a)>=5));
+assert_checkequal(full(a<=5), (full(a)<=5));
 assert_checkequal(full(5>a), (5>full(a)));
+assert_checkequal(full(5<a), (5<full(a)));
+assert_checkequal(full(5>=a), (5>=full(a)));
+assert_checkequal(full(5<=a), (5<=full(a)));
 assert_checkequal(full(full(a)==a), full(a)==full(a));
 assert_checkequal(full(full(a)<>a), (full(a)<>full(a)));
 assert_checkequal(full(full(a)>sparse(5)), (full(a)>5));
+assert_checkequal(full(full(a)<sparse(5)), (full(a)<5));
+assert_checkequal(full(full(a)>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(full(a)<=sparse(5)), (full(a)<=5));
+
+a=sparse([1 1;3 1;6 1],[-10 -11 -12],[6 1]);
+assert_checkequal(full(a==a), full(a)==full(a));
+assert_checkequal(full(a<>a), (full(a)<>full(a)));
+assert_checkequal(full(a>sparse(5)), (full(a)>5));
+assert_checkequal(full(a<sparse(5)), (full(a)<5));
+assert_checkequal(full(a>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(a<=sparse(5)), (full(a)<=5));
+assert_checkequal(full(sparse(5)>a), (5>full(a)));
+assert_checkequal(full(sparse(5)<a), (5<full(a)));
+assert_checkequal(full(sparse(5)>=a), (5>=full(a)));
+assert_checkequal(full(sparse(5)<=a), (5<=full(a)));
+assert_checkequal(full(a==full(a)), full(a)==full(a));
+assert_checkequal(full(a<>full(a)), (full(a)<>full(a)));
+assert_checkequal(full(a>5), (full(a)>5));
+assert_checkequal(full(a<5), (full(a)<5));
+assert_checkequal(full(a>=5), (full(a)>=5));
+assert_checkequal(full(a<=5), (full(a)<=5));
+assert_checkequal(full(5>a), (5>full(a)));
+assert_checkequal(full(5<a), (5<full(a)));
+assert_checkequal(full(5>=a), (5>=full(a)));
+assert_checkequal(full(5<=a), (5<=full(a)));
+assert_checkequal(full(full(a)==a), full(a)==full(a));
+assert_checkequal(full(full(a)<>a), (full(a)<>full(a)));
+assert_checkequal(full(full(a)>sparse(5)), (full(a)>5));
+assert_checkequal(full(full(a)<sparse(5)), (full(a)<5));
+assert_checkequal(full(full(a)>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(full(a)<=sparse(5)), (full(a)<=5));
 a=a';
 assert_checkequal(full(a==a), full(a)==full(a));
 assert_checkequal(full(a<>a), (full(a)<>full(a)));
 assert_checkequal(full(a>sparse(5)), (full(a)>5));
+assert_checkequal(full(a<sparse(5)), (full(a)<5));
+assert_checkequal(full(a>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(a<=sparse(5)), (full(a)<=5));
 assert_checkequal(full(sparse(5)>a), (5>full(a)));
+assert_checkequal(full(sparse(5)<a), (5<full(a)));
+assert_checkequal(full(sparse(5)>=a), (5>=full(a)));
+assert_checkequal(full(sparse(5)<=a), (5<=full(a)));
 assert_checkequal(full(a==full(a)), full(a)==full(a));
 assert_checkequal(full(a<>full(a)), (full(a)<>full(a)));
 assert_checkequal(full(a>5), (full(a)>5));
+assert_checkequal(full(a<5), (full(a)<5));
+assert_checkequal(full(a>=5), (full(a)>=5));
+assert_checkequal(full(a<=5), (full(a)<=5));
 assert_checkequal(full(5>a), (5>full(a)));
+assert_checkequal(full(5<a), (5<full(a)));
+assert_checkequal(full(5>=a), (5>=full(a)));
+assert_checkequal(full(5<=a), (5<=full(a)));
 assert_checkequal(full(full(a)==a), full(a)==full(a));
 assert_checkequal(full(full(a)<>a), (full(a)<>full(a)));
 assert_checkequal(full(full(a)>sparse(5)), (full(a)>5));
+assert_checkequal(full(full(a)<sparse(5)), (full(a)<5));
+assert_checkequal(full(full(a)>=sparse(5)), (full(a)>=5));
+assert_checkequal(full(full(a)<=sparse(5)), (full(a)<=5));
+
 a=sparse([1 6;1 5;1 3;2 4;2 1;4 4;4 3;5 1;6 6],1:9,[6 6]);
 b=sparse([1 6;1 2;5 5],[10;-1;-1],[5 6]);
 assert_checkfalse(a==b);