rwlogo
SourcePro C++ 12.0

SourcePro® C++ API Reference Guide



   SourcePro C++
Documentation Home

RWBalanceDecomp< TypeT > Class Template Reference
[Decomposition]

Encapsulates the decomposition implicit in the permutation and balance transformations on a nonsymmetric matrix before computing its eigenvalues. More...

#include <rw/lapack/bal.h>

List of all members.

Public Member Functions

 RWBalanceDecomp ()
 RWBalanceDecomp (const RWGenMat< TypeT > &A, bool permute=true, bool scale=true)
unsigned cols () const
unsigned rows () const
const RWGenMat< TypeT > C () const
const RWBalanceTransform< TypeT > & B () const

Detailed Description

template<class TypeT>
class RWBalanceDecomp< TypeT >

A permutation and balance transformation is often performed on a nonsymmetric matrix before computing its eigenvalues. The permutation attempts to break the matrix into three independent blocks such that the first and last block are triangular, and the balance transformation is a diagonal scaling transformation that attempts to make the row and column norms close to each other. The class RWBalanceDecomp<T> encapsulates the decomposition:

\[ A = BCB^{-1} \]

where B=PD, an amalgamation of the permutation and balance transformations. This decomposition is used internally by the nonsymmetric eigenvalue decomposition classes, including the Schur and Hessenberg decomposition classes.

Synopsis

 #include <rw/lapack/bal.h>

 RWBalanceDecomp<double> bal(A);     // A is a RWGenMat<double>

Constructor & Destructor Documentation

template<class TypeT>
RWBalanceDecomp< TypeT >::RWBalanceDecomp (  ) 

Constructs an empty decomposition.

template<class TypeT>
RWBalanceDecomp< TypeT >::RWBalanceDecomp ( const RWGenMat< TypeT > &  A,
bool  permute = true,
bool  scale = true 
)

Constructs a decomposition of the matrix A. The boolean parameters control whether permutation, scaling (balancing), both, or neither are done. The matrix must be square.


Member Function Documentation

template<class TypeT>
const RWBalanceTransform<TypeT>& RWBalanceDecomp< TypeT >::B (  )  const [inline]

Returns a representation of the balance transformation computed.

template<class TypeT>
const RWGenMat<TypeT> RWBalanceDecomp< TypeT >::C (  )  const [inline]

Returns the balanced matrix.

template<class TypeT>
unsigned RWBalanceDecomp< TypeT >::cols (  )  const [inline]

Returns the number of columns in the decomposition.

template<class TypeT>
unsigned RWBalanceDecomp< TypeT >::rows (  )  const [inline]

Returns the number of rows in the decomposition.

 All Classes Functions Variables Typedefs Enumerations Enumerator Friends

© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.