SourcePro® API Reference Guide

 
List of all members | Public Member Functions
RWHermPDQREigServer< TypeT > Class Template Reference

The server for the positive definite QR method of computing eigenvalues. More...

#include <rw/lapack/heigsrv.h>

Inheritance diagram for RWHermPDQREigServer< TypeT >:
RWHermEigServer< TypeT >

Public Member Functions

 RWHermPDQREigServer (bool computeVecs=true)
 
virtual bool computeEigenVectors () const
 
void computeEigenVectors (bool computeVecs)
 
virtual RWSymEigDecomp< double > decompose (const RWTriDiagDecomp< TypeT > &A)
 
- Public Member Functions inherited from RWHermEigServer< TypeT >
virtual RWHermEigDecomp< TypeT > operator() (const RWHermMat< TypeT > &A)
 
virtual RWHermEigDecomp< TypeT > operator() (const RWHermBandMat< TypeT > &A)
 

Detailed Description

template<class TypeT>
class RWHermPDQREigServer< TypeT >

The class RWHermPDQREigServer is the server for the positive definite QR method of computing eigenvalues. This server applies only to matrices that you know are positive definite. Trying to use it on nonpositive definite matrices results in a decomposition with the incomplete flag set; you can test for this in the class RWHermEigDecomp. Use of this server with positive definite matrices can result in much more accurate eigenvalues and eigenvectors.

Synopsis
#include <rw/lapack/heigsrv.h>
RWHermEigDecomp<DComplex> eig = server(A); // A is a
// RWHermBandMat<DComplex>
Example
#include <iostream>
#include <rw/lapack/heigsrv.h>
int main()
{
RWHermMat<DComplex> A; // input a matrix
std::cin >> A;
RWHermPDQREigServer<DComplex> server; // configure a server
server.computeEigenVectors(false); // turn off eigenvectors
RWHermEigDecomp<DComplex> eig = server(A);
return 0;
}

Constructor & Destructor Documentation

template<class TypeT>
RWHermPDQREigServer< TypeT >::RWHermPDQREigServer ( bool  computeVecs = true)

Constructs a server. The parameter indicates whether this server should be configured to compute eigenvectors as well as eigenvalues.

Member Function Documentation

template<class TypeT>
virtual bool RWHermPDQREigServer< TypeT >::computeEigenVectors ( ) const
virtual

Returns true if this server is configured to compute eigenvectors as well as eigenvalues.

Implements RWHermEigServer< TypeT >.

template<class TypeT>
void RWHermPDQREigServer< TypeT >::computeEigenVectors ( bool  computeVecs)

Sets whether or not the server should compute eigenvectors as well as eigenvalues.

template<class TypeT>
virtual RWSymEigDecomp<double> RWHermPDQREigServer< TypeT >::decompose ( const RWTriDiagDecomp< TypeT > &  A)
virtual

Computes the eigenvalue decomposition of the tridiagonal matrix inside the tridiagonal decomposition.

Implements RWHermEigServer< TypeT >.

Copyright © 2023 Rogue Wave Software, Inc., a Perforce company. All Rights Reserved.