ML Version of the Day
ML_Anasazi Namespace Reference

ML_Anasazi: default namespace for all Anasazi interfaces. More...


int Interface (const Epetra_RowMatrix *RowMatrix, Epetra_MultiVector &EigenVectors, double RealEigenvalues[], double ImagEigenvalues[], Teuchos::ParameterList &List, double RealEigenvectors[]=0, double ImagEigenvectors[]=0, int *NumRealEigenvectors=0, int *NumImagEigenvectors=0, ML *ml=0)
 Interface to Anasazi to eigen-computations.
int GetFieldOfValuesBox (const Epetra_RowMatrix *RowMatrix, double &MaxReal, double &MaxImag, Teuchos::ParameterList &AnasaziList)
 Computes the size of a box containing the field of values.

Detailed Description

ML_Anasazi: default namespace for all Anasazi interfaces.

Function Documentation

int ML_Anasazi::Interface ( const Epetra_RowMatrix RowMatrix,
Epetra_MultiVector EigenVectors,
double  RealEigenvalues[],
double  ImagEigenvalues[],
Teuchos::ParameterList List,
double  RealEigenvectors[] = 0,
double  ImagEigenvectors[] = 0,
int *  NumRealEigenvectors = 0,
int *  NumImagEigenvectors = 0,
ML ml = 0 

Interface to Anasazi to eigen-computations.

This function creates an interface from an Epetra_RowMatrix and Anasazi. Parameters are specified using a Teuchos parameters list.

RowMatrix(In) : Epetra_RowMatrix;
EigenVectors(Out) : Epetra_MultiVectors, that will contain the requested eigenvectors;
RealEigenvalues(Out) : double array that will contain the real part of the computed eigenvalues;
ImagEigenvalues(Out) : double array that will contain the imaginary part of the computed eigenvalues;
RealEigenvectors(Out) : pointer to allocated space to store the real eigenvectors
ImagEigenvectors(Out) : pointer to allocated space to store the imaginary eigenvectors
NumRealEigenvectors(Out) : number of computed real eigenvectors
NumImagEigenvectors(Out) : number of computed imaginary eigenvectors
List(InOut) : Teuchos parameters' list containing the required options.
ml(In) : already filled ML hierarchy (only for the eigen-analysis of "I-ML^{-1}A").

The following parameters parsed from List:

  • "eigen-analysis: use diagonal scaling". Enables scaling by the diagonal. Default: true.
  • "eigen-analysis: symmetric problem" . Instructs Anasazi to use an algorithm for symmetric problems. Default: false.
  • "eigen-analysis: matrix operation". Defined the matrix-vector product. Possible values are:
    • "A"
    • "I-A"
    • "A+A^T"
    • "A-A^T"
    • "I-ML^{-1}A" (this defines no scaling, and "eigen-analysis: symmetric problem" = false. Default: "A"
  • "eigen-analysis: length", 20)
  • "eigen-analysis: block-size", 1)
  • "eigen-analysis: tolerance", 1.0e-5)
  • "eigen-analysis: action", "LM"
  • "eigen-analysis: restart", 100)
  • "eigen-analysis: output". Defined the output level, from 0 to 10 (1- being verbose).
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends