File: test28.m

package info (click to toggle)
suitesparse 1%3A5.8.1%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 152,716 kB
  • sloc: ansic: 774,385; cpp: 24,213; makefile: 6,310; fortran: 1,927; java: 1,826; csh: 1,686; ruby: 725; sh: 535; perl: 225; python: 209; sed: 164; awk: 60
file content (27 lines) | stat: -rw-r--r-- 692 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
function test28
%TEST28 test mxm with aliased inputs, C<C> = accum(C,C*C)

% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2020, All Rights Reserved.
% http://suitesparse.com   See GraphBLAS/Doc/License.txt for license.

rng ('default') ;

semiring.multiply = 'times' ;
semiring.add = 'plus' ;
semiring.class = 'double' ;

seed = 1 ;
for n = [1 5 10 100]

    for trial = 1:30

        C = GB_mex_random (n, n, 10*n, 0, seed) ; seed = seed + 1 ;

        C1 = GB_mex_mxm_alias (C, 'plus', semiring, [ ]) ;
        C2 = GB_mex_mxm (C, C, 'plus', semiring, C, C, [ ]) ;
        assert (norm (C1.matrix - C2.matrix, 1) < 1e-12) ;
    end
end

fprintf ('test28: mxm alias tests passed\n') ;