File: gbtest27.m

package info (click to toggle)
suitesparse-graphblas 7.4.0%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 67,112 kB
  • sloc: ansic: 1,072,243; cpp: 8,081; sh: 512; makefile: 506; asm: 369; python: 125; awk: 10
file content (44 lines) | stat: -rw-r--r-- 1,032 bytes parent folder | download | duplicates (2)
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
function gbtest27
%GBTEST27 test conversion to full

% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2022, All Rights Reserved.
% SPDX-License-Identifier: Apache-2.0

types = gbtest_types ;

rng ('default') ;
for k1 = 1:length (types)

    atype = types {k1} ;
    A = 100 * sprand (3, 3, 0.5) ;
    H = full (A, 'double', GrB (0)) ;
    assert (norm (H-A,1) == 0)
    B = A ;
    B (A == 0) = 1 ; %#ok<*SPRIX>
    H = full (A, 'double', GrB (1)) ;
    assert (norm (H-B,1) == 0)

    F = rand (3) ;
    H = full (F, 'double', GrB (0)) ;
    assert (norm (H-F,1) == 0)
    assert (isa (H, 'GrB'))

    H = GrB (A, atype) ;
    G = full (H) ;
    assert (GrB.entries (G) == prod (size (G))) ;

    for k2 = 1:length (types)

        gtype = types {k2} ;
        G = full (H, gtype) ;
        K = full (G, atype) ;
        for id = [0 1 inf]
            C = full (H, gtype, id) ; %#ok<*NASGU>
        end

        assert (GrB.entries (G) == prod (size (G))) ; %#ok<*PSIZE>
    end
end

fprintf ('gbtest27: all tests passed\n') ;