5164
|
1 /* ========================================================================== */ |
|
2 /* === umfpack_get_lunz ===================================================== */ |
|
3 /* ========================================================================== */ |
|
4 |
|
5 /* -------------------------------------------------------------------------- */ |
|
6 /* UMFPACK Version 4.4, Copyright (c) 2005 by Timothy A. Davis. CISE Dept, */ |
|
7 /* Univ. of Florida. All Rights Reserved. See ../Doc/License for License. */ |
|
8 /* web: http://www.cise.ufl.edu/research/sparse/umfpack */ |
|
9 /* -------------------------------------------------------------------------- */ |
|
10 |
|
11 int umfpack_di_get_lunz |
|
12 ( |
|
13 int *lnz, |
|
14 int *unz, |
|
15 int *n_row, |
|
16 int *n_col, |
|
17 int *nz_udiag, |
|
18 void *Numeric |
|
19 ) ; |
|
20 |
|
21 long umfpack_dl_get_lunz |
|
22 ( |
|
23 long *lnz, |
|
24 long *unz, |
|
25 long *n_row, |
|
26 long *n_col, |
|
27 long *nz_udiag, |
|
28 void *Numeric |
|
29 ) ; |
|
30 |
|
31 int umfpack_zi_get_lunz |
|
32 ( |
|
33 int *lnz, |
|
34 int *unz, |
|
35 int *n_row, |
|
36 int *n_col, |
|
37 int *nz_udiag, |
|
38 void *Numeric |
|
39 ) ; |
|
40 |
|
41 long umfpack_zl_get_lunz |
|
42 ( |
|
43 long *lnz, |
|
44 long *unz, |
|
45 long *n_row, |
|
46 long *n_col, |
|
47 long *nz_udiag, |
|
48 void *Numeric |
|
49 ) ; |
|
50 |
|
51 /* |
|
52 double int Syntax: |
|
53 |
|
54 #include "umfpack.h" |
|
55 void *Numeric ; |
|
56 int status, lnz, unz, n_row, n_col ; |
|
57 status = umfpack_di_get_lunz (&lnz, &unz, &n_row, &n_col, Numeric) ; |
|
58 |
|
59 double long Syntax: |
|
60 |
|
61 #include "umfpack.h" |
|
62 void *Numeric ; |
|
63 long status, lnz, unz, n_row, n_col ; |
|
64 status = umfpack_dl_get_lunz (&lnz, &unz, &n_row, &n_col, Numeric) ; |
|
65 |
|
66 complex int Syntax: |
|
67 |
|
68 #include "umfpack.h" |
|
69 void *Numeric ; |
|
70 int status, lnz, unz, n_row, n_col ; |
|
71 status = umfpack_zi_get_lunz (&lnz, &unz, &n_row, &n_col, Numeric) ; |
|
72 |
|
73 complex long Syntax: |
|
74 |
|
75 #include "umfpack.h" |
|
76 void *Numeric ; |
|
77 long status, lnz, unz, n_row, n_col ; |
|
78 status = umfpack_zl_get_lunz (&lnz, &unz, &n_row, &n_col, Numeric) ; |
|
79 |
|
80 Purpose: |
|
81 |
|
82 Determines the size and number of nonzeros in the LU factors held by the |
|
83 Numeric object. These are also the sizes of the output arrays required |
|
84 by umfpack_*_get_numeric. |
|
85 |
|
86 The matrix L is n_row -by- min(n_row,n_col), with lnz nonzeros, including |
|
87 the entries on the unit diagonal of L. |
|
88 |
|
89 The matrix U is min(n_row,n_col) -by- n_col, with unz nonzeros, including |
|
90 nonzeros on the diagonal of U. |
|
91 |
|
92 Returns: |
|
93 |
|
94 UMFPACK_OK if successful. |
|
95 UMFPACK_ERROR_invalid_Numeric_object if Numeric is not a valid object. |
|
96 UMFPACK_ERROR_argument_missing if any other argument is (Int *) NULL. |
|
97 |
|
98 Arguments: |
|
99 |
|
100 Int *lnz ; Output argument. |
|
101 |
|
102 The number of nonzeros in L, including the diagonal (which is all |
|
103 one's). This value is the required size of the Lj and Lx arrays as |
|
104 computed by umfpack_*_get_numeric. The value of lnz is identical to |
|
105 Info [UMFPACK_LNZ], if that value was returned by umfpack_*_numeric. |
|
106 |
|
107 Int *unz ; Output argument. |
|
108 |
|
109 The number of nonzeros in U, including the diagonal. This value is the |
|
110 required size of the Ui and Ux arrays as computed by |
|
111 umfpack_*_get_numeric. The value of unz is identical to |
|
112 Info [UMFPACK_UNZ], if that value was returned by umfpack_*_numeric. |
|
113 |
|
114 Int *n_row ; Output argument. |
|
115 Int *n_col ; Output argument. |
|
116 |
|
117 The order of the L and U matrices. L is n_row -by- min(n_row,n_col) |
|
118 and U is min(n_row,n_col) -by- n_col. |
|
119 |
|
120 Int *nz_udiag ; Output argument. |
|
121 |
|
122 The number of numerically nonzero values on the diagonal of U. The |
|
123 matrix is singular if nz_diag < min(n_row,n_col). A divide-by-zero |
|
124 will occur if nz_diag < n_row == n_col when solving a sparse system |
|
125 involving the matrix U in umfpack_*_*solve. The value of nz_udiag is |
|
126 identical to Info [UMFPACK_UDIAG_NZ] if that value was returned by |
|
127 umfpack_*_numeric. |
|
128 |
|
129 void *Numeric ; Input argument, not modified. |
|
130 |
|
131 Numeric must point to a valid Numeric object, computed by |
|
132 umfpack_*_numeric. |
|
133 */ |