1function test103 2%TEST103 test aliases in GrB_transpose 3 4% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved. 5% SPDX-License-Identifier: Apache-2.0 6 7rng 'default' 8fprintf ('\ntest103: test aliases in GrB_transpose\n') ; 9 10for m = [1 5 10] 11 for n = [1 5 10] 12 for d = [0 0.1 .5 1] 13 for is_csc = 0:1 14 for is_hyper = 0:1 15 16 if (is_hyper) 17 hyper_switch = 1 ; 18 else 19 hyper_switch = 0 ; 20 end 21 22 % A = GB_spec_random (m, n, d, scale, class, 23 % is_csc,is_hyper,hyper_switch) 24 25 C = GB_spec_random (m, n, d, 100, 'double', ... 26 is_csc, is_hyper, hyper_switch) ; 27 28 M = sparse (ones (m, n)) ; 29 30 A = GB_spec_random (m, n, d, 100, 'double', ... 31 is_csc, is_hyper, hyper_switch) ; 32 33 % C<M>=A, to test shallow cast 34 desc.inp0 = 'tran' ; 35 C2a = GB_spec_transpose (C, M, 'plus', A, desc) ; 36 C2b = GB_mex_transpose (C, M, 'plus', A, desc, 'test') ; 37 GB_spec_compare (C2a, C2b) ; 38 39 C2a = GB_spec_transpose (C, M, [ ], A, desc) ; 40 C2b = GB_mex_transpose (C, M, [ ], A, desc, 'test') ; 41 GB_spec_compare (C2a, C2b) ; 42 43 C2a = GB_spec_transpose (C, [ ], [ ], A, desc) ; 44 C2b = GB_mex_transpose (C, [ ], [ ], A, desc, 'test') ; 45 GB_spec_compare (C2a, C2b) ; 46 47 C3a = GB_spec_transpose (C, C, 'plus', A, desc) ; 48 C3b = GB_mex_transpose (C, C, 'plus', A, desc, 'test') ; 49 C3c = GB_mex_transpose (C, 'C', 'plus', A, desc, 'test') ; 50 GB_spec_compare (C3a, C3b) ; 51 GB_spec_compare (C3a, C3c) ; 52 53 C3a = GB_spec_transpose (C, C, [ ], A, desc) ; 54 C3b = GB_mex_transpose (C, C, [ ], A, desc, 'test') ; 55 C3c = GB_mex_transpose (C, 'C', [ ], A, desc, 'test') ; 56 GB_spec_compare (C3a, C3b) ; 57 GB_spec_compare (C3a, C3c) ; 58 59 C4a = GB_spec_transpose (C, C, 'plus', C, desc) ; 60 C4b = GB_mex_transpose (C, C, 'plus', C, desc, 'test'); 61 GB_spec_compare (C4a, C4b) ; 62 C4c = GB_mex_transpose (C, 'C', 'plus', 'C', desc, 'test'); 63 GB_spec_compare (C4a, C4c) ; 64 65 C4a = GB_spec_transpose (C, C, [ ], C, desc) ; 66 C4b = GB_mex_transpose (C, C, [ ], C, desc, 'test'); 67 GB_spec_compare (C4a, C4b) ; 68 C4c = GB_mex_transpose (C, 'C', [ ], 'C', desc, 'test'); 69 GB_spec_compare (C4a, C4c) ; 70 71 end 72 end 73 end 74 end 75end 76 77fprintf ('\ntest103: all tests passed\n') ; 78 79