org.netlib.arpack
Class Sgetv0
java.lang.Object
org.netlib.arpack.Sgetv0
public class Sgetv0
- extends java.lang.Object
Following is the description from the original
Fortran source. For each array argument, the Java
version will include an integer offset parameter, so
the arguments may not match the description exactly.
Contact seymour@cs.utk.edu with any questions.
*-----------------------------------------------------------------------
\BeginDoc
\Name: sgetv0
\Description:
Generate a random initial residual vector for the Arnoldi process.
Force the residual vector to be in the range of the operator OP.
\Usage:
call sgetv0
( IDO, BMAT, ITRY, INITV, N, J, V, LDV, RESID, RNORM,
IPNTR, WORKD, IERR )
\Arguments
IDO Integer. (INPUT/OUTPUT)
Reverse communication flag. IDO must be zero on the first
call to sgetv0.
-------------------------------------------------------------
IDO = 0: first call to the reverse communication interface
IDO = -1: compute Y = OP * X where
IPNTR(1) is the pointer into WORKD for X,
IPNTR(2) is the pointer into WORKD for Y.
This is for the initialization phase to force the
starting vector into the range of OP.
IDO = 2: compute Y = B * X where
IPNTR(1) is the pointer into WORKD for X,
IPNTR(2) is the pointer into WORKD for Y.
IDO = 99: done
-------------------------------------------------------------
BMAT Character*1. (INPUT)
BMAT specifies the type of the matrix B in the (generalized)
eigenvalue problem A*x = lambda*B*x.
B = 'I' -> standard eigenvalue problem A*x = lambda*x
B = 'G' -> generalized eigenvalue problem A*x = lambda*B*x
ITRY Integer. (INPUT)
ITRY counts the number of times that sgetv0 is called.
It should be set to 1 on the initial call to sgetv0.
INITV Logical variable. (INPUT)
.TRUE. => the initial residual vector is given in RESID.
.FALSE. => generate a random initial residual vector.
N Integer. (INPUT)
Dimension of the problem.
J Integer. (INPUT)
Index of the residual vector to be generated, with respect to
the Arnoldi process. J > 1 in case of a "restart".
V Real N by J array. (INPUT)
The first J-1 columns of V contain the current Arnoldi basis
if this is a "restart".
LDV Integer. (INPUT)
Leading dimension of V exactly as declared in the calling
program.
RESID Real array of length N. (INPUT/OUTPUT)
Initial residual vector to be generated. If RESID is
provided, force RESID into the range of the operator OP.
RNORM Real scalar. (OUTPUT)
B-norm of the generated residual.
IPNTR Integer array of length 3. (OUTPUT)
WORKD Real work array of length 2*N. (REVERSE COMMUNICATION).
On exit, WORK(1:N) = B*RESID to be used in SSAITR.
IERR Integer. (OUTPUT)
= 0: Normal exit.
= -1: Cannot generate a nontrivial restarted residual vector
in the range of the operator OP.
\EndDoc
-----------------------------------------------------------------------
\BeginLib
\Local variables:
xxxxxx real
\References:
1. D.C. Sorensen, "Implicit Application of Polynomial Filters in
a k-Step Arnoldi Method", SIAM J. Matr. Anal. Apps., 13 (1992),
pp 357-385.
2. R.B. Lehoucq, "Analysis and Implementation of an Implicitly
Restarted Arnoldi Iteration", Rice University Technical Report
TR95-13, Department of Computational and Applied Mathematics.
\Routines called:
second ARPACK utility routine for timing.
svout ARPACK utility routine for vector output.
slarnv LAPACK routine for generating a random vector.
sgemv Level 2 BLAS routine for matrix vector multiplication.
scopy Level 1 BLAS that copies one vector to another.
sdot Level 1 BLAS that computes the scalar product of two vectors.
snrm2 Level 1 BLAS that computes the norm of a vector.
\Author
Danny Sorensen Phuong Vu
Richard Lehoucq CRPC / Rice University
Dept. of Computational & Houston, Texas
Applied Mathematics
Rice University
Houston, Texas
\SCCS Information: @(#)
FILE: getv0.F SID: 2.7 DATE OF SID: 04/07/99 RELEASE: 2
\EndLib
-----------------------------------------------------------------------
Field Summary |
static boolean |
first
|
static boolean |
inits
|
static int[] |
iseed
|
static int |
iter
|
static int |
msglvl
|
static boolean |
orth
|
static org.netlib.util.floatW |
rnorm0
|
static org.netlib.util.floatW |
t0
|
static org.netlib.util.floatW |
t1
|
static org.netlib.util.floatW |
t2
|
static org.netlib.util.floatW |
t3
|
static float |
t4
|
static float |
t5
|
Method Summary |
static void |
sgetv0(org.netlib.util.intW ido,
java.lang.String bmat,
int itry,
boolean initv,
int n,
int j,
float[] v,
int _v_offset,
int ldv,
float[] resid,
int _resid_offset,
org.netlib.util.floatW rnorm,
int[] ipntr,
int _ipntr_offset,
float[] workd,
int _workd_offset,
org.netlib.util.intW ierr)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
t0
public static org.netlib.util.floatW t0
t1
public static org.netlib.util.floatW t1
t2
public static org.netlib.util.floatW t2
t3
public static org.netlib.util.floatW t3
t4
public static float t4
t5
public static float t5
first
public static boolean first
orth
public static boolean orth
iseed
public static int[] iseed
iter
public static int iter
msglvl
public static int msglvl
rnorm0
public static org.netlib.util.floatW rnorm0
inits
public static boolean inits
Sgetv0
public Sgetv0()
sgetv0
public static void sgetv0(org.netlib.util.intW ido,
java.lang.String bmat,
int itry,
boolean initv,
int n,
int j,
float[] v,
int _v_offset,
int ldv,
float[] resid,
int _resid_offset,
org.netlib.util.floatW rnorm,
int[] ipntr,
int _ipntr_offset,
float[] workd,
int _workd_offset,
org.netlib.util.intW ierr)