GQCP
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar > Class Template Reference

#include <Eigenpair.hpp>

Collaboration diagram for GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar >:
Collaboration graph

Public Types

using EigenvalueScalar = _EigenvalueScalar
 
using EigenvectorScalar = _EigenvectorScalar
 

Public Member Functions

 Eigenpair (const EigenvalueScalar eigenvalue, const VectorX< EigenvectorScalar > &eigenvector)
 
 Eigenpair (const size_t dimension=1)
 
EigenvalueScalar eigenvalue () const
 
const VectorX< EigenvectorScalar > & eigenvector () const
 
bool isEqualTo (const Eigenpair &other, const double tolerance=1.0e-08) const
 

Detailed Description

template<typename _EigenvalueScalar, typename _EigenvectorScalar>
class GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar >

A container class to store an eigenpair, i.e. an eigenvector with a corresponding eigenvalue.

Template Parameters
_EigenvalueScalarThe scalar type for the representation of an eigenvalue: real or complex.
_EigenvectorScalarThe scalar type for the representation of one of the coefficients of an eigenvector: real or complex;

Member Typedef Documentation

◆ EigenvalueScalar

template<typename _EigenvalueScalar , typename _EigenvectorScalar >
using GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar >::EigenvalueScalar = _EigenvalueScalar

◆ EigenvectorScalar

template<typename _EigenvalueScalar , typename _EigenvectorScalar >
using GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar >::EigenvectorScalar = _EigenvectorScalar

Constructor & Destructor Documentation

◆ Eigenpair() [1/2]

template<typename _EigenvalueScalar , typename _EigenvectorScalar >
GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar >::Eigenpair ( const EigenvalueScalar  eigenvalue,
const VectorX< EigenvectorScalar > &  eigenvector 
)
inline
Parameters
eigenvalueThe eigenvalue.
eigenvectorThe eigenvector.

◆ Eigenpair() [2/2]

template<typename _EigenvalueScalar , typename _EigenvectorScalar >
GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar >::Eigenpair ( const size_t  dimension = 1)
inlineexplicit

A constructor that sets the eigenvalue to zero and the corresponding eigenvector to zeros

Parameters
dimensionThe dimension of the eigenvector.

Member Function Documentation

◆ eigenvalue()

template<typename _EigenvalueScalar , typename _EigenvectorScalar >
EigenvalueScalar GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar >::eigenvalue ( ) const
inline
Returns
The eigenvalue associated to this eigenpair.

◆ eigenvector()

template<typename _EigenvalueScalar , typename _EigenvectorScalar >
const VectorX< EigenvectorScalar > & GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar >::eigenvector ( ) const
inline

A function that returns the eigenvector associated to this eigenpair.

Returns
the eigenvector associated to this eigenpair

◆ isEqualTo()

template<typename _EigenvalueScalar , typename _EigenvectorScalar >
bool GQCP::Eigenpair< _EigenvalueScalar, _EigenvectorScalar >::isEqualTo ( const Eigenpair< _EigenvalueScalar, _EigenvectorScalar > &  other,
const double  tolerance = 1.0e-08 
) const
inline

Check if this Eigenpair is equal to the other Eigenpair.

Parameters
otherThe other Eigenpair.
toleranceA tolerance for comparison.
Returns
if this Eigenpair is equal to the other: if the eigenvalues and eigenvectors are equal given the tolerance

The documentation for this class was generated from the following file: