File: single.m

package info (click to toggle)
suitesparse-graphblas 7.4.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 67,112 kB
  • sloc: ansic: 1,072,243; cpp: 8,081; sh: 512; makefile: 503; asm: 369; python: 125; awk: 10
file content (28 lines) | stat: -rw-r--r-- 1,016 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
function C = single (G)
%SINGLE cast a GraphBLAS matrix to built-in full single matrix.
% C = single (G) typecasts the GrB matrix G to a built-in full single
% matrix.  The result C is full since sparse single matrices are not
% built-in.  C is real if G is real, and complex if G is complex.
%
% To typecast the matrix G to a GraphBLAS sparse single matrix instead,
% use C = GrB (G, 'single').  To typecast to a sparse single complex
% matrix, use G = GrB (G, 'single complex').
%
% See also GrB, GrB/double, GrB/complex, GrB/logical, GrB/int8, GrB/int16,
% GrB/int32, GrB/int64, GrB/uint8, GrB/uint16, GrB/uint32, GrB/uint64.

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

G = G.opaque ;
desc.kind = 'full' ;
if (gb_contains (gbtype (G), 'complex'))
    z = complex (single (0)) ;
    ctype = 'single complex' ;
else
    z = single (0) ;
    ctype = 'single' ;
end

C = gbfull (G, ctype, z, desc) ;                % export as a full matrix