Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

GaussTransformation Class Template Reference

#include <GaussTransformation.h>

List of all members.

Public Methods

 GaussTransformation (const Matrix< T > &M, bool buildTransMatrix=false, bool buildInvTransMatrix=false)
 GaussTransformation (const GaussTransformation &)
GaussTransformation operator= (const GaussTransformation &)
 ~GaussTransformation ()
void startComputation ()
void run ()
void runRow (int rowNum)
void runUntilDiagHasZero ()
void runWhileDiagHasSingles ()
int getCurrentRow () const
int getCurrentCol () const
bool canChange () const
bool done () const
Trichotomy isSingular () const
Trichotomy isInvertible () const
const Matrix<T>& getMatrix () const
const Matrix<T>& getTrMatrix () const
const Matrix<T>& getInvTrMatrix () const
Matrix<T>& refMatrix ()
bool isTransformed () const

Private Methods

void continueComputation (int whatDeal)
void finishComputation (Trichotomy isSingular, Trichotomy isInvertible)
void addRow (int firstRow, int secondRow, T koef)
void makeZero (int &row1, int &row2)

Private Attributes

bool bDone
bool bStart
bool transformed
Trichotomy isSingularMatrix
Trichotomy isInvertibleMatrix
Matrix<T> matrix
Matrix<T>* transMatrix
Matrix<T>* invTransMatrix
int untilRow
int currentRow
int currentCol
bool buildTransformations
bool buildInverseTransformations

Static Private Attributes

const int UNTILNOT_0 = 0
const int UNTIL_1 = 1
const int RUNROW = 2
const int RUNALL = 3

template<class T> class GaussTransformation


Constructor & Destructor Documentation

template<class T>
GaussTransformation<T>::GaussTransformation<T> ( const Matrix< T > & M,
bool buildTransMatrix = false,
bool buildInvTransMatrix = false ) [inline]
 

Definition at line 43 of file GaussTransformation.h.

template<class T>
GaussTransformation<T>::GaussTransformation<T> ( const GaussTransformation<T> & )
 

template<class T>
GaussTransformation<T>::~GaussTransformation<T> ( ) [inline]
 

Definition at line 55 of file GaussTransformation.h.


Member Function Documentation

template<class T>
GaussTransformation<T> GaussTransformation<T>::operator= ( const GaussTransformation<T> & )
 

template<class T>
void GaussTransformation<T>::startComputation ( )
 

template<class T>
void GaussTransformation<T>::run ( ) [inline]
 

Definition at line 70 of file GaussTransformation.h.

Referenced by AbelianInfinitenessProblem::continueComputation().

template<class T>
void GaussTransformation<T>::runRow ( int rowNum )
 

template<class T>
void GaussTransformation<T>::runUntilDiagHasZero ( )
 

template<class T>
void GaussTransformation<T>::runWhileDiagHasSingles ( )
 

template<class T>
int GaussTransformation<T>::getCurrentRow ( ) const [inline]
 

Definition at line 85 of file GaussTransformation.h.

template<class T>
int GaussTransformation<T>::getCurrentCol ( ) const [inline]
 

Definition at line 86 of file GaussTransformation.h.

template<class T>
bool GaussTransformation<T>::canChange ( ) const [inline]
 

Definition at line 93 of file GaussTransformation.h.

Referenced by refMatrix().

template<class T>
bool GaussTransformation<T>::done ( ) const [inline]
 

Definition at line 97 of file GaussTransformation.h.

Referenced by AbelianInfinitenessProblem::continueComputation().

template<class T>
Trichotomy GaussTransformation<T>::isSingular ( ) const [inline]
 

Definition at line 105 of file GaussTransformation.h.

Referenced by AbelianInfinitenessProblem::continueComputation().

template<class T>
Trichotomy GaussTransformation<T>::isInvertible ( ) const
 

template<class T>
const Matrix< T > & GaussTransformation<T>::getMatrix<T> ( ) const [inline]
 

Definition at line 113 of file GaussTransformation.h.

template<class T>
const Matrix< T > & GaussTransformation<T>::getTrMatrix<T> ( ) const [inline]
 

Definition at line 118 of file GaussTransformation.h.

template<class T>
const Matrix< T > & GaussTransformation<T>::getInvTrMatrix<T> ( ) const [inline]
 

Definition at line 127 of file GaussTransformation.h.

template<class T>
Matrix< T > & GaussTransformation<T>::refMatrix<T> ( ) [inline]
 

Definition at line 137 of file GaussTransformation.h.

template<class T>
bool GaussTransformation<T>::isTransformed ( ) const [inline]
 

Definition at line 145 of file GaussTransformation.h.

template<class T>
void GaussTransformation<T>::continueComputation ( int whatDeal ) [private]
 

Referenced by run().

template<class T>
void GaussTransformation<T>::finishComputation ( Trichotomy isSingular,
Trichotomy isInvertible ) [inline, private]
 

Definition at line 184 of file GaussTransformation.h.

template<class T>
void GaussTransformation<T>::addRow ( int firstRow,
int secondRow,
T koef ) [private]
 

template<class T>
void GaussTransformation<T>::makeZero ( int & row1,
int & row2 ) [private]
 


Member Data Documentation

template<class T>
bool GaussTransformation<T>::bDone [private]
 

Definition at line 157 of file GaussTransformation.h.

template<class T>
bool GaussTransformation<T>::bStart [private]
 

Definition at line 158 of file GaussTransformation.h.

template<class T>
bool GaussTransformation<T>::transformed [private]
 

Definition at line 159 of file GaussTransformation.h.

template<class T>
Trichotomy GaussTransformation<T>::isSingularMatrix [private]
 

Definition at line 160 of file GaussTransformation.h.

template<class T>
Trichotomy GaussTransformation<T>::isInvertibleMatrix [private]
 

Definition at line 161 of file GaussTransformation.h.

template<class T>
Matrix<T> GaussTransformation<T>::matrix [private]
 

Definition at line 163 of file GaussTransformation.h.

template<class T>
Matrix<T>* GaussTransformation<T>::transMatrix [private]
 

Definition at line 164 of file GaussTransformation.h.

template<class T>
Matrix<T>* GaussTransformation<T>::invTransMatrix [private]
 

Definition at line 165 of file GaussTransformation.h.

template<class T>
int GaussTransformation<T>::untilRow [private]
 

Definition at line 166 of file GaussTransformation.h.

template<class T>
int GaussTransformation<T>::currentRow [private]
 

Definition at line 167 of file GaussTransformation.h.

template<class T>
int GaussTransformation<T>::currentCol [private]
 

Definition at line 168 of file GaussTransformation.h.

template<class T>
bool GaussTransformation<T>::buildTransformations [private]
 

Definition at line 169 of file GaussTransformation.h.

template<class T>
bool GaussTransformation<T>::buildInverseTransformations [private]
 

Definition at line 170 of file GaussTransformation.h.

template<class T>
const int GaussTransformation<T>::UNTILNOT_0 = 0 [static, private]
 

Definition at line 173 of file GaussTransformation.h.

template<class T>
const int GaussTransformation<T>::UNTIL_1 = 1 [static, private]
 

Definition at line 174 of file GaussTransformation.h.

template<class T>
const int GaussTransformation<T>::RUNROW = 2 [static, private]
 

Definition at line 175 of file GaussTransformation.h.

template<class T>
const int GaussTransformation<T>::RUNALL = 3 [static, private]
 

Definition at line 176 of file GaussTransformation.h.


The documentation for this class was generated from the following file:
Generated at Tue Jun 19 09:49:54 2001 for Magnus Classes by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001