SuperLU 6.0.1
Macros | Functions
slacon2.c File Reference

Estimates the 1-norm. More...

#include <math.h>
#include "slu_Cnames.h"
Include dependency graph for slacon2.c:

Macros

#define d_sign(a, b)   (b >= 0 ? fabs(a) : -fabs(a)) /* Copy sign */
 
#define i_dnnt(a)    ( a>=0 ? floor(a+.5) : -floor(.5-a) ) /* Round to nearest integer */
 

Functions

int slacon2_ (int *n, float *v, float *x, int *isgn, float *est, int *kase, int isave[3])
 

Detailed Description

Copyright (c) 2003, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from U.S. Dept. of Energy)

All rights reserved.

The source code is distributed under BSD license, see the file License.txt at the top-level directory.

-- SuperLU routine (version 5.0) --
Univ. of California Berkeley, Xerox Palo Alto Research Center,
and Lawrence Berkeley National Lab.
July 24, 2022

Macro Definition Documentation

◆ d_sign

#define d_sign (   a,
 
)    (b >= 0 ? fabs(a) : -fabs(a)) /* Copy sign */

◆ i_dnnt

#define i_dnnt (   a)     ( a>=0 ? floor(a+.5) : -floor(.5-a) ) /* Round to nearest integer */

Function Documentation

◆ slacon2_()

int slacon2_ ( int *  n,
float *  v,
float *  x,
int *  isgn,
float *  est,
int *  kase,
int  isave[3] 
)
  Purpose   
  =======   

  SLACON2 estimates the 1-norm of a square matrix A.   
  Reverse communication is used for evaluating matrix-vector products. 

  This is a thread safe version of CLACON, which uses the array ISAVE
  in place of a STATIC variables, as follows:

    SLACON     SLACON2
     jump     isave[0]
     j        isave[1]
     iter     isave[2]


  Arguments   
  =========   

  N      (input) INT
         The order of the matrix.  N >= 1.   

  V      (workspace) FLOAT PRECISION array, dimension (N)   
         On the final return, V = A*W,  where  EST = norm(V)/norm(W)   
         (W is not returned).   

  X      (input/output) FLOAT PRECISION array, dimension (N)   
         On an intermediate return, X should be overwritten by   
               A * X,   if KASE=1,   
               A' * X,  if KASE=2,
        and SLACON must be re-called with all the other parameters   
         unchanged.   

  ISGN   (workspace) INT array, dimension (N)

  EST    (output) FLOAT PRECISION   
         An estimate (a lower bound) for norm(A).   

  KASE   (input/output) INT
         On the initial call to SLACON, 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 SLACON, KASE will again be 0.   

  isave  (input/output) int [3]
         ISAVE is INTEGER array, dimension (3)
         ISAVE is used to save variables between calls to SLACON2

  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.   
  ===================================================================== 
Here is the call graph for this function: