#include <math.h>
#include "slu_Cnames.h"
Defines | |
#define | d_sign(a, b) (b >= 0 ? fabs(a) : -fabs(a)) |
#define | i_dnnt(a) ( a>=0 ? floor(a+.5) : -floor(.5-a) ) |
Functions | |
int | dlacon_ (int *n, double *v, double *x, int *isgn, double *est, int *kase) |
-- SuperLU routine (version 2.0) -- Univ. of California Berkeley, Xerox Palo Alto Research Center, and Lawrence Berkeley National Lab. November 15, 1997
#define d_sign | ( | a, | |||
b | ) | (b >= 0 ? fabs(a) : -fabs(a)) |
#define i_dnnt | ( | a | ) | ( a>=0 ? floor(a+.5) : -floor(.5-a) ) |
int dlacon_ | ( | int * | n, | |
double * | v, | |||
double * | x, | |||
int * | isgn, | |||
double * | est, | |||
int * | kase | |||
) |
Purpose =======
DLACON estimates the 1-norm of a square matrix A. Reverse communication is used for evaluating matrix-vector products.
Arguments =========
N (input) INT The order of the matrix. N >= 1.
V (workspace) DOUBLE PRECISION array, dimension (N) On the final return, V = A*W, where EST = norm(V)/norm(W) (W is not returned).
X (input/output) DOUBLE PRECISION array, dimension (N) On an intermediate return, X should be overwritten by A * X, if KASE=1, A' * X, if KASE=2, and DLACON must be re-called with all the other parameters unchanged.
ISGN (workspace) INT array, dimension (N)
EST (output) DOUBLE PRECISION An estimate (a lower bound) for norm(A).
KASE (input/output) INT On the initial call to DLACON, KASE should be 0. On an intermediate return, KASE will be 1 or 2, indicating whether X should be overwritten by A * X or A' * X. On the final return from DLACON, KASE will again be 0.
Further Details ======= =======
Contributed by Nick Higham, University of Manchester. Originally named CONEST, dated March 16, 1988.
Reference: N.J. Higham, "FORTRAN codes for estimating the one-norm of a real or complex matrix, with applications to condition estimation", ACM Trans. Math. Soft., vol. 14, no. 4, pp. 381-396, December 1988. =====================================================================