| 
    Spectral Integral Suite in C++
    
   | 
 
This class computes the eigenvalues and eigenvectors (functions) of a Linear operator Linop, overloaded to a complex Linop. More...
#include <sis.hpp>


Additional Inherited Members | |
  Public Member Functions inherited from sis::GeneralizedEigenSolver< std::complex< T > > | |
| GeneralizedEigenSolver () | |
| Null constructor.  More... | |
| void | compute (const LinopMat< std::complex< T > > &Lmat_, int num_vals, const BcMat< std::complex< T > > &bc_) | 
| Call this with an input Linear operator to solve for eigenvalues and vectors. The number of Eigen values/vectors is num_vals, num_vals has to be less than N*r.  More... | |
| void | compute (const LinopMat< std::complex< T > > &Lmat_, const BcMat< std::complex< T > > &bc_) | 
| Call this with an input Linear operator to solve for eigenvalues and vectors.  More... | |
| void | compute (const LinopMat< std::complex< T > > &Lmat_, const LinopMat< std::complex< T > > &Mmat_, int num_vals, const BcMat< std::complex< T > > &Lbc_) | 
| The main solver for LinopMat. Read about class BcMat to see how this works, also see examples example/Ex_16.cpp and test/Visco_3D_pipe.cpp of how this is applied. This function is useful when boundary conditions are mixed between variables. Also, if you have boundary conditions that have an associated eigenvalue, see compute_with_constraints.  More... | |
| void | computeAppend (const LinopMat< std::complex< T > > &Lmat_, const LinopMat< std::complex< T > > &Mmat_, int num_vals, const BcMat< std::complex< T > > &Lbc_) | 
| Another main solver for LinopMat, a minimal solver for eigenvalues only. LAPACK needs to be linked to use this, and SIS_USE_LAPACK has to be defined.  More... | |
| void | compute_with_constraints (const LinopMat< std::complex< T > > &Lmat_, const LinopMat< std::complex< T > > &Mmat_, int num_vals, const BcMat< std::complex< T > > &Lbc_, const BcMat< std::complex< T > > &Mbc_) | 
| void | sortByLargestReal () | 
| This function will sort the eigenvalues and vectors by the largest real part.  More... | |
| void | keepConverged () | 
| This will remove all unconverged and infinite eigenvalues from the list.  More... | |
| void | keep (int n) | 
| This will keep only n and remove the rest. Use this carefully. Only first n will be kept, irrespective of convergence.  More... | |
| void | removeInf () | 
| This will remove all infinite eigenvalues. Useful when solving generalized eigenvalue problems.  More... | |
| void | compute (const Eigen::Matrix< std::complex< T >, Eigen::Dynamic, Eigen::Dynamic > &L_, const Eigen::Matrix< std::complex< T >, Eigen::Dynamic, Eigen::Dynamic > &M_, Discretize< std::complex< T > > Dis) | 
| This is used to use a discretization to compute eigenvalues.  More... | |
  Public Attributes inherited from sis::GeneralizedEigenSolver< std::complex< T > > | |
| ChebfunMat< std::complex< T > > | eigenvectors | 
| Eigen::Matrix< std::complex< T >, Eigen::Dynamic, 1 > | eigenvalues | 
| Eigen::Matrix< int, Eigen::Dynamic, 1 > | MPorNot | 
| int | converged | 
| Number of eigenvalues that have converged to machine precision.  More... | |
This class computes the eigenvalues and eigenvectors (functions) of a Linear operator Linop, overloaded to a complex Linop.