SourcePro® 2023.1 |
SourcePro® API Reference Guide |
The Hermitian eigenvalue server class, allowing the computation of only the eigenvalues in a given range and (optionally) their corresponding eigenvectors. More...
#include <rw/lapack/heigsrv.h>
Public Member Functions | |
RWHermRangeEigServer (bool computeVecs=true) | |
virtual bool | computeEigenVectors () const |
void | computeEigenVectors (bool computeVecs) |
virtual RWSymEigDecomp< double > | decompose (const RWTriDiagDecomp< TypeT > &A) |
double | setLarge (double large) |
void | setRange (double from, double to) |
double | setSmall (double small) |
double | setTolerance (double tolerance) |
Public Member Functions inherited from RWHermEigServer< TypeT > | |
virtual RWHermEigDecomp< TypeT > | operator() (const RWHermMat< TypeT > &A) |
virtual RWHermEigDecomp< TypeT > | operator() (const RWHermBandMat< TypeT > &A) |
The Hermitian eigenvalue server class, RWHermRangeEigServer, allows the computation of only the eigenvalues in a given range and (optionally) their corresponding eigenvectors. The computation uses the bisection method to find the eigenvalues, followed by inverse iteration to find the eigenvectors.
RWHermRangeEigServer< TypeT >::RWHermRangeEigServer | ( | bool | computeVecs = true | ) |
Constructs a server. The parameter indicates whether this server should be configured to compute eigenvectors as well as eigenvalues. The new server is configured to compute all eigenvalues.
|
virtual |
Returns true
if this server is configured to compute eigenvectors as well as eigenvalues.
Implements RWHermEigServer< TypeT >.
void RWHermRangeEigServer< TypeT >::computeEigenVectors | ( | bool | computeVecs | ) |
Sets whether or not the server should compute eigenvectors as well as eigenvalues.
|
virtual |
Computes the eigenvalue decomposition of the tridiagonal matrix inside the tridiagonal decomposition.
Implements RWHermEigServer< TypeT >.
double RWHermRangeEigServer< TypeT >::setLarge | ( | double | large | ) |
Sets the upper boundary on the range of eigenvalues to be computed. Returns the previous upper boundary.
void RWHermRangeEigServer< TypeT >::setRange | ( | double | from, |
double | to | ||
) |
Sets the range of eigenvalues to be computed. To set up a range which is open on one side (extends to infinity), you can use the setSmall() or setLarge() functions.
double RWHermRangeEigServer< TypeT >::setSmall | ( | double | small | ) |
Sets the lower boundary on the range of eigenvalues to be computed. Returns the previous lower boundary.
double RWHermRangeEigServer< TypeT >::setTolerance | ( | double | tolerance | ) |
Sets the tolerance to which you must compute the eigenvalues. Returns the previous tolerance.
Copyright © 2023 Rogue Wave Software, Inc., a Perforce company. All Rights Reserved. |