File: test22.m

package info (click to toggle)
suitesparse 1%3A7.10.1%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 254,920 kB
  • sloc: ansic: 1,134,743; cpp: 46,133; makefile: 4,875; fortran: 2,087; java: 1,826; sh: 996; ruby: 725; python: 495; asm: 371; sed: 166; awk: 44
file content (70 lines) | stat: -rw-r--r-- 1,214 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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
function test22
%TEST22 test cond1est
%
% Example:
%   test22
% See also: testall

% CSparse, Copyright (c) 2006-2022, Timothy A. Davis. All Rights Reserved.
% SPDX-License-Identifier: LGPL-2.1+

index = ssget ;
[ignore f] = sort (max (index.nrows, index.ncols)) ;
f = f (1:200) ;

clf
% f = f(1)

nprob = length (f) ;
C1 = zeros (nprob,1) ;
C2 = zeros (nprob,1) ;
C3 = zeros (nprob,1) ;


for k = 1:length (f)
    
    i = f (k) ;
    Prob = ssget (i) ;
    disp (Prob) ;
    A = Prob.A ;
    [m n] = size (A) ;
    if (~isreal (A) | m ~= n)                                               %#ok
        continue
    end

    c1 = condest (A) ;
    c2 = cond1est (A) ;
    if (c1 == c2)
        err = 0 ;
    else
        err = (c1-c2)/max(1,c1) ;
    end

    c3 = cond (full (A), 1) ;

    fprintf ('%10.4e %10.4e (%10.4e)  :    %10.4e\n', c1, c2, c3, err) ;

    if (err ~= 0)
        % pause
    end

    C1 (k) = c1 ;
    C2 (k) = c2 ;
    C3 (k) = c3 ;

    subplot (1,2,1) ;
    loglog (C1, C2, 'x', [1 1e20], [1 1e20], 'r') ;
    subplot (1,2,2) ;
    loglog (C3, C2, 'x', [1 1e20], [1 1e20], 'r') ;
    drawnow

    % pause

%    if (c3 < c2)
%       c3
%       c2
%       c2-c3
%       pause
%    end

end