Rogue Wave banner
Previous fileTop of DocumentContentsIndexNext file

{type}BalanceDecomp



Data Type and Member Function Indexes
(exclusive of constructors and destructors)

Synopsis

#include <rw/dbal.h>               // DoubleBalanceDecomp
#include <rw/cbal.h>               // DComplexBalanceDecomp

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

Description

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 classes {TYPE}BalanceDecomp encapsulate the decomposition:

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.

Public Constructors

DoubleBalanceDecomp();
DComplexBalanceDecomp();
DoubleBalanceDecomp(const RWGenMat<double>& A,
         RWBoolean permute=TRUE, const RWBoolean scale=TRUE);
DComplexBalanceDecomp(const RWGenMat<DComplex>& A,
         RWBoolean permute=TRUE, const RWBoolean scale=TRUE);

Public Member Functions

const DoubleBalanceTransform 
DoubleBalanceDecomp::B() const;
const DComplexBalanceTransform 
DComplexBalanceDecomp::B() const;
const RWGenMat<double> 
DoubleBalanceDecomp::C() const;
const RWGenMat<DComplex>
DComplexBalanceDecomp::C() const;
unsigned
DoubleBalanceDecomp::cols() const;
unsigned
DComplexBalanceDecomp::cols() const;
unsigned
DoubleBalanceDecomp::rows() const;
unsigned
DComplexBalanceDecomp::rows() const;


Previous fileTop of DocumentContentsIndexNext file

©Copyright 1999, Rogue Wave Software, Inc.
Send mail to report errors or comment on the documentation.