ModalTools Class Reference

#include <ModalTools.h>

Collaboration diagram for ModalTools:

Collaboration graph
List of all members.

Public Member Functions

 ModalTools (const Epetra_Comm &_Comm)
int makeSimpleLumpedMass (const Epetra_Operator *M, double *weight) const
int massOrthonormalize (Epetra_MultiVector &X, Epetra_MultiVector &MX, const Epetra_Operator *M, const Epetra_MultiVector &Q, int howMany, int type=0, double *WS=0, double kappa=1.5625)
void localProjection (int numRow, int numCol, int length, double *U, int ldU, double *MatV, int ldV, double *UtMatV, int ldUtMatV, double *work) const
int directSolver (int, double *, int, double *, int, int &, double *, int, double *, int, int=0) const
double getTimeProj () const
double getTimeProj_QtMult () const
double getTimeProj_QMult () const
double getTimeProj_MassMult () const
int getNumProj_MassMult () const
double getTimeNorm () const
double getTimeNorm_MassMult () const
int getNumNorm_MassMult () const

Private Attributes

const FortranRoutines callFortran
const Epetra_BLAS callBLAS
const Epetra_LAPACK callLAPACK
const Epetra_Comm & MyComm
const Epetra_Time MyWatch
double eps
double timeQtMult
double timeQMult
double timeProj_MassMult
double timeNorm_MassMult
double timeProj
double timeNorm
int numProj_MassMult
int numNorm_MassMult

Detailed Description

Definition at line 46 of file ModalTools.h.

Constructor & Destructor Documentation

ModalTools::ModalTools ( const Epetra_Comm &  _Comm  ) 

Definition at line 32 of file ModalTools.cpp.

References callLAPACK, and eps.

Member Function Documentation

int ModalTools::directSolver ( int  ,
double *  ,
int  ,
double *  ,
int  ,
int &  ,
double *  ,
int  ,
double *  ,
int  ,
int  = 0 
) const

Definition at line 487 of file ModalTools.cpp.

References callBLAS, callFortran, eps, FortranRoutines::LAENV(), FortranRoutines::SYEV(), FortranRoutines::SYGV(), and tol.

Referenced by JDBSYM::jdbsym(), LOBPCG::solve(), and KnyazevLOBPCG::solve().

Here is the call graph for this function:

int ModalTools::getNumNorm_MassMult (  )  const [inline]

Definition at line 94 of file ModalTools.h.

References numNorm_MassMult.

Referenced by LOBPCG::operationInfo().

int ModalTools::getNumProj_MassMult (  )  const [inline]

Definition at line 90 of file ModalTools.h.

References numProj_MassMult.

Referenced by LOBPCG::operationInfo().

double ModalTools::getTimeNorm (  )  const [inline]

Definition at line 92 of file ModalTools.h.

References timeNorm.

Referenced by LOBPCG::timeInfo().

double ModalTools::getTimeNorm_MassMult (  )  const [inline]

Definition at line 93 of file ModalTools.h.

References timeNorm_MassMult.

Referenced by LOBPCG::timeInfo().

double ModalTools::getTimeProj (  )  const [inline]

Definition at line 86 of file ModalTools.h.

References timeProj.

Referenced by LOBPCG::timeInfo().

double ModalTools::getTimeProj_MassMult (  )  const [inline]

Definition at line 89 of file ModalTools.h.

References timeProj_MassMult.

Referenced by LOBPCG::timeInfo().

double ModalTools::getTimeProj_QMult (  )  const [inline]

Definition at line 88 of file ModalTools.h.

References timeQMult.

Referenced by LOBPCG::timeInfo().

double ModalTools::getTimeProj_QtMult (  )  const [inline]

Definition at line 87 of file ModalTools.h.

References timeQtMult.

Referenced by LOBPCG::timeInfo().

void ModalTools::localProjection ( int  numRow,
int  numCol,
int  length,
double *  U,
int  ldU,
double *  MatV,
int  ldV,
double *  UtMatV,
int  ldUtMatV,
double *  work 
) const

Definition at line 439 of file ModalTools.cpp.

References callBLAS, and MyComm.

Referenced by LOBPCG::solve(), and KnyazevLOBPCG::solve().

int ModalTools::makeSimpleLumpedMass ( const Epetra_Operator *  M,
double *  weight 
) const

Definition at line 53 of file ModalTools.cpp.

References MyComm.

int ModalTools::massOrthonormalize ( Epetra_MultiVector &  X,
Epetra_MultiVector &  MX,
const Epetra_Operator *  M,
const Epetra_MultiVector &  Q,
int  howMany,
int  type = 0,
double *  WS = 0,
double  kappa = 1.5625 

Definition at line 114 of file ModalTools.cpp.

References callBLAS, blas::dot(), eps, MyComm, MyWatch, numNorm_MassMult, numProj_MassMult, timeNorm, timeNorm_MassMult, timeProj, timeProj_MassMult, timeQMult, and timeQtMult.

Referenced by LOBPCG::solve().

Here is the call graph for this function:

Member Data Documentation

const Epetra_BLAS ModalTools::callBLAS [private]

Definition at line 51 of file ModalTools.h.

Referenced by directSolver(), localProjection(), and massOrthonormalize().

const FortranRoutines ModalTools::callFortran [private]

Definition at line 50 of file ModalTools.h.

Referenced by directSolver().

const Epetra_LAPACK ModalTools::callLAPACK [private]

Definition at line 52 of file ModalTools.h.

Referenced by ModalTools().

double ModalTools::eps [private]

Definition at line 57 of file ModalTools.h.

Referenced by directSolver(), massOrthonormalize(), and ModalTools().

const Epetra_Comm& ModalTools::MyComm [private]

Definition at line 54 of file ModalTools.h.

Referenced by localProjection(), makeSimpleLumpedMass(), and massOrthonormalize().

const Epetra_Time ModalTools::MyWatch [private]

Definition at line 55 of file ModalTools.h.

Referenced by massOrthonormalize().

int ModalTools::numNorm_MassMult [private]

Definition at line 67 of file ModalTools.h.

Referenced by getNumNorm_MassMult(), and massOrthonormalize().

int ModalTools::numProj_MassMult [private]

Definition at line 66 of file ModalTools.h.

Referenced by getNumProj_MassMult(), and massOrthonormalize().

double ModalTools::timeNorm [private]

Definition at line 64 of file ModalTools.h.

Referenced by getTimeNorm(), and massOrthonormalize().

double ModalTools::timeNorm_MassMult [private]

Definition at line 62 of file ModalTools.h.

Referenced by getTimeNorm_MassMult(), and massOrthonormalize().

double ModalTools::timeProj [private]

Definition at line 63 of file ModalTools.h.

Referenced by getTimeProj(), and massOrthonormalize().

double ModalTools::timeProj_MassMult [private]

Definition at line 61 of file ModalTools.h.

Referenced by getTimeProj_MassMult(), and massOrthonormalize().

double ModalTools::timeQMult [private]

Definition at line 60 of file ModalTools.h.

Referenced by getTimeProj_QMult(), and massOrthonormalize().

double ModalTools::timeQtMult [private]

Definition at line 59 of file ModalTools.h.

Referenced by getTimeProj_QtMult(), and massOrthonormalize().

The documentation for this class was generated from the following files:
Generated on Fri Oct 26 13:35:16 2007 for FEMAXX (Finite Element Maxwell Eigensolver) by  doxygen 1.4.7