File: GB_complex_compare.m

package info (click to toggle)
suitesparse 1%3A5.12.0%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 176,720 kB
  • sloc: ansic: 1,193,914; cpp: 31,704; makefile: 6,638; fortran: 1,927; java: 1,826; csh: 765; ruby: 725; sh: 529; python: 333; perl: 225; sed: 164; awk: 35
file content (25 lines) | stat: -rw-r--r-- 703 bytes parent folder | download | duplicates (3)
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
function GB_complex_compare (C1, C2, tol)
%GB_COMPLEX_COMPARE compare GraphBLAS results for complex types
%
% compare two complex results, from GB_mex_op and GB_user_op

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

if (tol ~= 0)
    if (any (any (isinf (C1))))
        assert (isequal (isinf (C1), isinf (C2)))
        C1 (isinf (C1)) = 1i ;
        C2 (isinf (C2)) = 1i ;
    end
    if (any (any (isnan (C1))))
        assert (isequal (isnan (C1), isnan (C2)))
        C1 (isnan (C1)) = 1i ;
        C2 (isnan (C2)) = 1i ;
    end
    assert (norm (C1 - C2,1) < 16 * eps (norm (C2,1)))
else
    assert (isequal (C1, C2)) 
end