1function test4
2%TEST4 test cs_multiply
3%
4% Example:
5%   test4
6% See also: testall
7
8% Copyright 2006-2012, Timothy A. Davis, http://www.suitesparse.com
9
10rand ('state', 0) ;
11
12for trial = 1:100
13    m = fix (100 * rand (1)) ;
14    n = fix (100 * rand (1)) ;
15    k = fix (100 * rand (1)) ;
16    d = rand (1) ;
17    A = sprandn (m,n,d) ;
18    B = sprandn (n,k,d) ;
19    C = A*B ;
20    D = cs_multiply (A,B) ;
21    err = nnz (spones (C) - spones (D)) ;
22    if (err > 0)
23        error ('nz!') ;
24    end
25    err = norm (C-D,1) ;
26    fprintf ('m %3d n %3d k %3d nnz(A) %6d nnz(B) %6d nnz(C) %6d err %g\n', ...
27        m, n, k, nnz(A), nnz(B), nnz(C), err) ;
28    if (err > 1e-12)
29        error ('!') ;
30    end
31end
32