1function C = trans (arg1, arg2, arg3, arg4, arg5) 2%GRB.TRANS transpose a sparse matrix. 3% 4% C = GrB.trans (A) 5% C = GrB.trans (A, desc) 6% C = GrB.trans (Cin, accum, A, desc) 7% C = GrB.trans (Cin, M, A, desc) 8% C = GrB.trans (Cin, M, accum, A, desc) 9% 10% The descriptor is optional. If desc.in0 is 'transpose', then C<M>=A or 11% C<M>=accum(C,A) is computed, since the default behavior is to transpose 12% the input matrix. 13% 14% For complex matrices, GrB.trans computes the array transpose, not the 15% matrix (complex conjugate) transpose. 16% 17% See also GrB/transpose, GrB/ctranspose, GrB/conj. 18 19% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved. 20% SPDX-License-Identifier: GPL-3.0-or-later 21 22if (isobject (arg1)) 23 arg1 = arg1.opaque ; 24end 25 26if (nargin > 1 && isobject (arg2)) 27 arg2 = arg2.opaque ; 28end 29 30if (nargin > 2 && isobject (arg3)) 31 arg3 = arg3.opaque ; 32end 33 34if (nargin > 3 && isobject (arg4)) 35 arg4 = arg4.opaque ; 36end 37 38switch (nargin) 39 case 1 40 [C, k] = gbtrans (arg1) ; 41 case 2 42 [C, k] = gbtrans (arg1, arg2) ; 43 case 3 44 [C, k] = gbtrans (arg1, arg2, arg3) ; 45 case 4 46 [C, k] = gbtrans (arg1, arg2, arg3, arg4) ; 47 case 5 48 [C, k] = gbtrans (arg1, arg2, arg3, arg4, arg5) ; 49end 50 51if (k == 0) 52 C = GrB (C) ; 53end 54 55