Add the <-- JVM NOT MANDATORY --> TAG
[scilab.git] / scilab / modules / umfpack / tests / unit_tests / condestsp.tst
1 // ============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2007-2008 - Bruno PINCON
4 // Copyright (C) 2008 - Sylvestre LEDRU
5 //
6 //  This file is distributed under the same license as the Scilab package.
7 // ============================================================================
8
9 // <-- JVM NOT MANDATORY -->
10
11 warning("off");
12
13 A = sparse( [ 2  3  0  0  0;
14               3  0  4  0  6; 
15               0 -1 -3  2  0; 
16               0  0  1  0  0; 
17               0  4  2  0  1] );
18 K1 = condestsp(A);
19 if norm(K1,39.385965) < 1E-6 then pause, end
20
21 // verif by direct computation
22 K1e = norm(A,1)*norm(inv(full(A)),1);
23 if norm(K1e,39.385965) < 1E-6 then pause, end
24 if K1e <> K1 then pause, end
25
26 // another example
27 [A] = ReadHBSparse(SCI+"/modules/umfpack/examples/arc130.rua");
28 K1 = condestsp(A);
29 if round(K1) <> 10798708075 then pause, end
30
31 // this example is not so big so that we can do the verif
32 K1e = norm(A,1)*norm(inv(full(A)),1);
33 if round(K1e) <> 10798708075 then pause, end
34 if round(K1) <> round(K1e) then pause, end
35
36 // if you have already the lu factors condestsp(A,Lup) is faster
37 // because lu factors are then not computed inside condestsp
38 Lup = umf_lufact(A);
39 K1 = condestsp(A,Lup);
40 if round(K1) <> 10798708075 then pause, end
41
42 umf_ludel(Lup)         // clear memory