EVSL
1.1.0
EigenValues Slicing Library
|
Rational Filtered no-restart Lanczos. More...
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include <string.h>
#include <float.h>
#include <complex.h>
#include "def.h"
#include "blaslapack.h"
#include "struct.h"
#include "internal_proto.h"
Go to the source code of this file.
Macros | |
#define | FILTER_VINIT 1 |
Functions | |
int | RatLanNr (double *intv, int maxit, double tol, double *vinit, ratparams *rat, int *nevOut, double **lamo, double **Wo, double **reso, FILE *fstats) |
Rational filtering Lanczos process [NON-restarted version]. More... | |
Rational Filtered no-restart Lanczos.
Definition in file ratlanNr.c.
#define FILTER_VINIT 1 |
if filter the initial vector
Definition at line 18 of file ratlanNr.c.
int RatLanNr | ( | double * | intv, |
int | maxit, | ||
double | tol, | ||
double * | vinit, | ||
ratparams * | rat, | ||
int * | nevOut, | ||
double ** | lamo, | ||
double ** | Wo, | ||
double ** | reso, | ||
FILE * | fstats | ||
) |
Rational filtering Lanczos process [NON-restarted version].
intv | an array of length 4 [intv[0], intv[1]] is the interval of desired eigenvalues [intv[2], intv[3]] is the global interval of all eigenvalues it must contain all eigenvalues of A |
maxit | max Num of outer Lanczos steps allowed –[max dim of Krylov subspace] |
tol | tolerance for convergence. The code uses a stopping criterion based on the convergence of the restricted trace. i.e., the sum of the eigenvalues of T_k that are in the desired interval. This test is rather simple since these eigenvalues are above `bar'. We want the relative error on this restricted trace to be less than tol. Note that the test performed on filtered matrix only - but the actual residual norm associated with the original matrix A is returned |
vinit | initial vector for Lanczos – [optional] |
[out] | rat | A struct containing the rational filter |
[out] | nevOut | Number of eigenvalues/vectors computed |
[out] | Wo | A set of eigenvectors [n x nevOut matrix] |
[out] | lamo | Associated eigenvalues [nevOut x 1 vector] |
[out] | reso | Associated residual norms [nev x 1 vector] |
[out] | fstats | File stream which stats are printed to |
Definition at line 54 of file ratlanNr.c.
References CGS_DGKS(), CGS_DGKS2(), DAXPY(), DCOPY(), DDOT(), DGEMV(), DNRM2(), _evsldata::ds, DSCAL(), evsl_timer(), evsldata, evslstat, _evsldata::ifGenEv, Malloc, min, _evsldata::n, NGS_MAX, orthTol, rand_double(), RatFiltApply(), Realloc, SymmTridEig(), SymmTridEigS(), _evslstat::t_iter, and _evslstat::t_ritz.
Referenced by evsl_ratlannr(), and main().