FEM Analysis of Eigenvalue Problems
Table of Contents
The TPZEigenAnalysis class
The TPZEigenAnalysis class should be use for the analysis of (both standard or generalised) eigenvalue problems.
Its usage is fairly simple and the following documentation should suffice.
Users interested in these kind of problems should read the page on available eigensolvers in NeoPZ, specially the sections on TPZKrylovEigenSolver and TPZSpectralTransform.
-
class TPZEigenAnalysis : public TPZAnalysis
Performs the Finite Element Analysis of a (standard or generalised) eigenvalue problem.
Constructors
-
TPZEigenAnalysis()
Create an empty TPZEigenAnalysis object.
-
TPZEigenAnalysis(TPZCompMesh *mesh, bool mustOptimizeBandwidth = true, std::ostream &out = std::cout)
Create an TPZEigenAnalysis object from one mesh pointer.
-
TPZEigenAnalysis(TPZAutoPointer<TPZCompMesh> mesh, bool mustOptimizeBandwidth = true, std::ostream &out = std::cout)
Create an TPZEigenAnalysis object from one mesh auto pointer object.
FEM
-
template<class TVar>
TPZEigenSolver<TVar> &EigenSolver() Gets the eigensolver.
-
virtual void SetSolver(const TPZSolver &solver) override
Set the solver.
Note
In this function it will be checked if the solver is a TPZEigenSolver
-
virtual void Assemble() override
Assemble the matrices associated with the EVP.
-
virtual void Solve() override
Solve the EVP problem.
-
TPZFMatrix<CSTATE> GetEigenvectors() const
Gets the eigenvectors calculated by the Solve method.
-
TPZVec<CSTATE> GetEigenvalues() const
Gets the eigenvalues by the Solve method.
-
inline void SetComputeEigenvectors(const bool opt)
Set to compute eigenvectors or just eigenvalues.
-
inline bool ComputeEigenvectors() const
Whether to compute eigenvectors or just eigenvalues.
-
TPZEigenAnalysis()