| Modifier and Type | Class and Description |
|---|---|
static class |
ArpackGen.Ritz |
| Modifier and Type | Field and Description |
|---|---|
static double |
convergedTolerance |
static int |
maxIterations
The maximum iterations allowed to perform until we decide that convergence is not attained.
|
static double |
tolerance
The tolerance at which the iterations are allowed to stop.
|
| Constructor and Description |
|---|
ArpackGen(Matrix matrix)
If the matrix is symmetric,
ArpackSym is the better choice, as this property
can be exploited in computation. |
| Modifier and Type | Method and Description |
|---|---|
void |
setComputeOnlyEigenvalues(boolean computeOnlyEigenvalues) |
Map<Double,DenseVectorSub> |
solve(int eigenvalues,
ArpackGen.Ritz ritz)
Solve the eigensystem for the number of eigenvalues requested.
|
Map<Double,DenseVectorSub> |
solve(int eigenvalues,
ArpackGen.Ritz ritz,
double tolerance)
Solve the eigensystem for the number of eigenvalues requested.
|
Map<Double,DenseVectorSub> |
solve(int eigenvalues,
ArpackGen.Ritz ritz,
double tolerance,
int ncvModification) |
public static double tolerance
public static double convergedTolerance
public static int maxIterations
public void setComputeOnlyEigenvalues(boolean computeOnlyEigenvalues)
public Map<Double,DenseVectorSub> solve(int eigenvalues, ArpackGen.Ritz ritz)
NOTE: The references to the eigenvectors will keep alive a reference to a
nev * n double array, so use the copy() method to free it
up if only a subset is required.
eigenvalues - ritz - preference for solutionspublic Map<Double,DenseVectorSub> solve(int eigenvalues, ArpackGen.Ritz ritz, double tolerance)
NOTE: The references to the eigenvectors will keep alive a reference to a
nev * n double array, so use the copy() method to free it
up if only a subset is required.
eigenvalues - ritz - preference for solutionspublic Map<Double,DenseVectorSub> solve(int eigenvalues, ArpackGen.Ritz ritz, double tolerance, int ncvModification)
eigenvalues - NEV Integer. (INPUT)
Number of eigenvalues of OP to be computed. 0 < NEV < N-1. (Where N is the matrix dimension)ritz - tolerance - ncvModification - At present there is no a-priori analysis to guide the selection
of NCV relative to NEV. The only formal requirement is that NCV > NEV + 2.
However, it is recommended that NCV .ge. 2*NEV+1. If many problems of
the same type are to be solved, one should experiment with increasing
NCV while keeping NEV fixed for a given test problem. This will
usually decrease the required number of OP*x operations but it
also increases the work and storage required to maintain the orthogonal
basis vectors. The optimal "cross-over" with respect to CPU time
is problem dependent and must be determined empirically.
See Chapter 8 of Reference 2 for further information.