1function gbtest25 2%GBTEST25 test diag, tril, triu 3 4% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved. 5% SPDX-License-Identifier: GPL-3.0-or-later 6 7rng ('default') ; 8for trials = 1:10 9 fprintf ('.') ; 10 11 for m = 2:6 12 for n = 2:6 13 A = sprand (m, n, 0.5) ; 14 G = GrB (A) ; 15 for k = -m:n 16 B = diag (A, k) ; 17 C = diag (G, k) ; 18 assert (gbtest_eq (B, C)) ; 19 B = tril (A, k) ; 20 C = tril (A, k) ; 21 assert (gbtest_eq (B, C)) ; 22 B = triu (A, k) ; 23 C = triu (A, k) ; 24 assert (gbtest_eq (B, C)) ; 25 end 26 B = diag (A) ; 27 C = diag (G) ; 28 assert (gbtest_eq (B, C)) ; 29 end 30 end 31 32 for m = 1:6 33 A = sprandn (m, 1, 0.5) ; 34 G = GrB (A) ; 35 for k = -6:6 36 B = diag (A, k) ; 37 C = diag (G, k) ; 38 assert (gbtest_eq (B, C)) ; 39 B = tril (A, k) ; 40 C = tril (G, k) ; 41 assert (gbtest_eq (B, C)) ; 42 B = triu (A, k) ; 43 C = triu (G, k) ; 44 assert (gbtest_eq (B, C)) ; 45 end 46 47 B = diag (A) ; 48 C = diag (G) ; 49 assert (gbtest_eq (B, C)) ; 50 B = tril (A) ; 51 C = tril (G) ; 52 assert (gbtest_eq (B, C)) ; 53 B = triu (A) ; 54 C = triu (G) ; 55 assert (gbtest_eq (B, C)) ; 56 end 57end 58 59fprintf ('\ngbtest25: all tests passed\n') ; 60 61