TDecompLU Class Reference

#include <TDecompLU.h>

Inheritance diagram for TDecompLU:

TDecompBase TDecompBase TObject TObject TObject TObject List of all members.

Public Member Functions

 TDecompLU ()
 TDecompLU (Int_t nrows)
 TDecompLU (Int_t row_lwb, Int_t row_upb)
 TDecompLU (const TMatrixD &m, Double_t tol=0.0, Int_t implicit=1)
 TDecompLU (const TDecompLU &another)
virtual ~TDecompLU ()
const TMatrixD GetMatrix ()
virtual Int_t GetNrows () const
virtual Int_t GetNcols () const
const TMatrixDGetLU ()
virtual void SetMatrix (const TMatrixD &a)
virtual Bool_t Decompose ()
virtual Bool_t Solve (TVectorD &b)
virtual TVectorD Solve (const TVectorD &b, Bool_t &ok)
virtual Bool_t Solve (TMatrixDColumn &b)
virtual Bool_t TransSolve (TVectorD &b)
virtual TVectorD TransSolve (const TVectorD &b, Bool_t &ok)
virtual Bool_t TransSolve (TMatrixDColumn &b)
virtual void Det (Double_t &d1, Double_t &d2)
Bool_t Invert (TMatrixD &inv)
TMatrixD Invert (Bool_t &status)
TMatrixD Invert ()
void Print (Option_t *opt="") const
TDecompLUoperator= (const TDecompLU &source)
 TDecompLU ()
 TDecompLU (Int_t nrows)
 TDecompLU (Int_t row_lwb, Int_t row_upb)
 TDecompLU (const TMatrixD &m, Double_t tol=0.0, Int_t implicit=1)
 TDecompLU (const TDecompLU &another)
virtual ~TDecompLU ()
const TMatrixD GetMatrix ()
virtual Int_t GetNrows () const
virtual Int_t GetNcols () const
const TMatrixDGetLU ()
virtual void SetMatrix (const TMatrixD &a)
virtual Bool_t Decompose ()
virtual Bool_t Solve (TVectorD &b)
virtual TVectorD Solve (const TVectorD &b, Bool_t &ok)
virtual Bool_t Solve (TMatrixDColumn &b)
virtual Bool_t TransSolve (TVectorD &b)
virtual TVectorD TransSolve (const TVectorD &b, Bool_t &ok)
virtual Bool_t TransSolve (TMatrixDColumn &b)
virtual void Det (Double_t &d1, Double_t &d2)
Bool_t Invert (TMatrixD &inv)
TMatrixD Invert (Bool_t &status)
TMatrixD Invert ()
void Print (Option_t *opt="") const
TDecompLUoperator= (const TDecompLU &source)

Static Public Member Functions

static Bool_t InvertLU (TMatrixD &a, Double_t tol, Double_t *det=0)
static Bool_t InvertLU (TMatrixD &a, Double_t tol, Double_t *det=0)

Protected Member Functions

virtual const TMatrixDBaseGetDecompMatrix () const
virtual const TMatrixDBaseGetDecompMatrix () const

Static Protected Member Functions

static Bool_t DecomposeLUCrout (TMatrixD &lu, Int_t *index, Double_t &sign, Double_t tol, Int_t &nrZeros)
static Bool_t DecomposeLUGauss (TMatrixD &lu, Int_t *index, Double_t &sign, Double_t tol, Int_t &nrZeros)
static Bool_t DecomposeLUCrout (TMatrixD &lu, Int_t *index, Double_t &sign, Double_t tol, Int_t &nrZeros)
static Bool_t DecomposeLUGauss (TMatrixD &lu, Int_t *index, Double_t &sign, Double_t tol, Int_t &nrZeros)

Protected Attributes

Int_t fImplicitPivot
Int_t fNIndex
Int_tfIndex
Double_t fSign
TMatrixD fLU
Int_tfIndex

Detailed Description

Definition at line 25 of file TDecompLU.h.


Constructor & Destructor Documentation

TDecompLU::TDecompLU (  ) 

TDecompLU::TDecompLU ( Int_t  nrows  )  [explicit]

Definition at line 54 of file TDecompLU.cxx.

References fImplicitPivot, fIndex, fLU, fNIndex, fSign, and TMatrixT< Element >::ResizeTo().

TDecompLU::TDecompLU ( Int_t  row_lwb,
Int_t  row_upb 
)

Definition at line 67 of file TDecompLU.cxx.

References TDecompBase::fColLwb, fImplicitPivot, fIndex, fLU, fNIndex, TDecompBase::fRowLwb, fSign, nrows, and TMatrixT< Element >::ResizeTo().

TDecompLU::TDecompLU ( const TMatrixD m,
Double_t  tol = 0.0,
Int_t  implicit = 1 
)

Definition at line 83 of file TDecompLU.cxx.

References a, TObject::Error(), TDecompBase::fColLwb, TDecompBase::fCondition, fImplicitPivot, fIndex, fLU, fNIndex, TDecompBase::fRowLwb, fSign, TDecompBase::fTol, TDecompBase::kMatrixSet, R__ASSERT, TMatrixT< Element >::ResizeTo(), and TObject::SetBit().

TDecompLU::TDecompLU ( const TDecompLU another  ) 

Definition at line 113 of file TDecompLU.cxx.

References fIndex, and fNIndex.

virtual TDecompLU::~TDecompLU (  )  [inline, virtual]

Definition at line 49 of file TDecompLU.h.

References fIndex.

TDecompLU::TDecompLU (  ) 

TDecompLU::TDecompLU ( Int_t  nrows  )  [explicit]

TDecompLU::TDecompLU ( Int_t  row_lwb,
Int_t  row_upb 
)

TDecompLU::TDecompLU ( const TMatrixD m,
Double_t  tol = 0.0,
Int_t  implicit = 1 
)

TDecompLU::TDecompLU ( const TDecompLU another  ) 

virtual TDecompLU::~TDecompLU (  )  [inline, virtual]

Definition at line 49 of file TDecompLU.h.

References fIndex.


Member Function Documentation

Bool_t TDecompLU::DecomposeLUCrout ( TMatrixD lu,
Int_t index,
Double_t sign,
Double_t  tol,
Int_t nrZeros 
) [static, protected]

Definition at line 591 of file TDecompLU.cxx.

References TMath::Abs(), TObject::Error(), TMatrixT< Element >::GetMatrixArray(), TMatrixTBase< Element >::GetNcols(), i, j, k, kFALSE, kTRUE, TDecompBase::kWorkMax, max, and n.

Referenced by Decompose(), and InvertLU().

Bool_t TDecompLU::DecomposeLUGauss ( TMatrixD lu,
Int_t index,
Double_t sign,
Double_t  tol,
Int_t nrZeros 
) [static, protected]

Definition at line 698 of file TDecompLU.cxx.

References TMath::Abs(), TObject::Error(), TMatrixT< Element >::GetMatrixArray(), TMatrixTBase< Element >::GetNcols(), i, j, k, kFALSE, kTRUE, max, and n.

Referenced by Decompose().

virtual const TMatrixDBase& TDecompLU::GetDecompMatrix (  )  const [inline, protected, virtual]

Implements TDecompBase.

Definition at line 40 of file TDecompLU.h.

References fLU.

const TMatrixD TDecompLU::GetMatrix (  ) 

Definition at line 149 of file TDecompLU.cxx.

References a, Decompose(), TObject::Error(), fIndex, fLU, TMatrixT< Element >::GetMatrixArray(), TMatrixTBase< Element >::GetNcols(), i, j, k, TDecompBase::kDecomposed, TDecompBase::kSingular, n, and TObject::TestBit().

Referenced by astress_decomp().

virtual Int_t TDecompLU::GetNrows (  )  const [inline, virtual]

Implements TDecompBase.

Definition at line 52 of file TDecompLU.h.

References fLU, and TMatrixTBase< Element >::GetNrows().

Referenced by Invert().

virtual Int_t TDecompLU::GetNcols (  )  const [inline, virtual]

Implements TDecompBase.

Definition at line 53 of file TDecompLU.h.

References fLU, and TMatrixTBase< Element >::GetNcols().

Referenced by Invert().

const TMatrixD& TDecompLU::GetLU (  )  [inline]

Definition at line 54 of file TDecompLU.h.

References Decompose(), fLU, TDecompBase::kDecomposed, and TObject::TestBit().

void TDecompLU::SetMatrix ( const TMatrixD a  )  [virtual]

Definition at line 200 of file TDecompLU.cxx.

References a, TObject::Error(), TDecompBase::fColLwb, TDecompBase::fCondition, fIndex, fLU, fNIndex, TDecompBase::fRowLwb, fSign, TDecompBase::kMatrixSet, R__ASSERT, TDecompBase::ResetStatus(), TMatrixT< Element >::ResizeTo(), and TObject::SetBit().

Referenced by TQpLinSolverDens::Factor().

Bool_t TDecompLU::Decompose (  )  [virtual]

Implements TDecompBase.

Definition at line 123 of file TDecompLU.cxx.

References DecomposeLUCrout(), DecomposeLUGauss(), TObject::Error(), fImplicitPivot, fIndex, fLU, fSign, TDecompBase::fTol, TDecompBase::kDecomposed, kFALSE, TDecompBase::kMatrixSet, TDecompBase::kSingular, kTRUE, ok, TObject::SetBit(), and TObject::TestBit().

Referenced by Det(), GetLU(), GetMatrix(), Solve(), and TransSolve().

Bool_t TDecompLU::Solve ( TVectorD b  )  [virtual]

Implements TDecompBase.

Definition at line 230 of file TDecompLU.cxx.

References TMath::Abs(), b, Decompose(), TObject::Error(), fIndex, fLU, TDecompBase::fTol, TMatrixT< Element >::GetMatrixArray(), TMatrixTBase< Element >::GetNrows(), TMatrixTBase< Element >::GetRowLwb(), i, j, TDecompBase::kDecomposed, kFALSE, TDecompBase::kSingular, kTRUE, n, R__ASSERT, and TObject::TestBit().

Referenced by astress_decomp_io(), astress_lineqn(), Solve(), and TQpLinSolverDens::SolveCompressed().

virtual TVectorD TDecompLU::Solve ( const TVectorD b,
Bool_t ok 
) [inline, virtual]

Implements TDecompBase.

Definition at line 61 of file TDecompLU.h.

References b, Solve(), and x.

Bool_t TDecompLU::Solve ( TMatrixDColumn b  )  [virtual]

Implements TDecompBase.

Definition at line 296 of file TDecompLU.cxx.

References TMath::Abs(), b, Decompose(), TObject::Error(), fIndex, fLU, TDecompBase::fTol, TMatrixT< Element >::GetMatrixArray(), TMatrixTBase< Element >::GetNrows(), TMatrixTColumn< Element >::GetPtr(), TMatrixTBase< Element >::GetRowLwb(), i, j, TDecompBase::kDecomposed, kFALSE, TDecompBase::kSingular, kTRUE, n, R__ASSERT, and TObject::TestBit().

Bool_t TDecompLU::TransSolve ( TVectorD b  )  [virtual]

Implements TDecompBase.

Definition at line 368 of file TDecompLU.cxx.

References TMath::Abs(), b, Decompose(), TObject::Error(), fIndex, fLU, TDecompBase::fTol, TMatrixT< Element >::GetMatrixArray(), TMatrixTBase< Element >::GetNrows(), TMatrixTBase< Element >::GetRowLwb(), i, j, TDecompBase::kDecomposed, kFALSE, TDecompBase::kSingular, kTRUE, n, R__ASSERT, and TObject::TestBit().

Referenced by astress_decomp_io(), astress_lineqn(), and TransSolve().

virtual TVectorD TDecompLU::TransSolve ( const TVectorD b,
Bool_t ok 
) [inline, virtual]

Implements TDecompBase.

Definition at line 64 of file TDecompLU.h.

References b, TransSolve(), and x.

Bool_t TDecompLU::TransSolve ( TMatrixDColumn b  )  [virtual]

Implements TDecompBase.

Definition at line 437 of file TDecompLU.cxx.

References TMath::Abs(), b, Decompose(), TObject::Error(), fIndex, fLU, TDecompBase::fTol, TMatrixT< Element >::GetMatrixArray(), TMatrixTBase< Element >::GetNrows(), TMatrixTBase< Element >::GetRowLwb(), i, j, TDecompBase::kDecomposed, kFALSE, TDecompBase::kSingular, kTRUE, n, R__ASSERT, and TObject::TestBit().

void TDecompLU::Det ( Double_t d1,
Double_t d2 
) [virtual]

Reimplemented from TDecompBase.

Definition at line 507 of file TDecompLU.cxx.

References Decompose(), TDecompBase::Det(), TDecompBase::fDet1, TDecompBase::fDet2, fSign, TDecompBase::kDecomposed, TDecompBase::kDetermined, TObject::SetBit(), and TObject::TestBit().

Referenced by TMatrixTSym< Element >::Determinant(), TMatrixT< Element >::Determinant(), and invertMatrix().

Bool_t TDecompLU::InvertLU ( TMatrixD a,
Double_t  tol,
Double_t det = 0 
) [static]

Definition at line 771 of file TDecompLU.cxx.

References DecomposeLUCrout(), TDecompBase::DiagProd(), TObject::Error(), TMatrixTBase< Element >::GetColLwb(), TMatrixT< Element >::GetMatrixArray(), TMatrixTBase< Element >::GetNcols(), TMatrixTBase< Element >::GetNrows(), TMatrixTBase< Element >::GetRowLwb(), i, j, k, kFALSE, kTRUE, TDecompBase::kWorkMax, n, TMath::Power(), and RootCsg::sign().

Referenced by G__G__Matrix_179_0_22(), G__setup_memfuncTDecompLU(), TMatrixT< Element >::Invert(), TMatrixTSym< Element >::Invert(), TMatrixTSym< Element >::InvertFast(), and TMatrixT< Element >::InvertFast().

Bool_t TDecompLU::Invert ( TMatrixD inv  ) 

Definition at line 523 of file TDecompLU.cxx.

References TObject::Error(), TDecompBase::GetColLwb(), GetNcols(), GetNrows(), TDecompBase::GetRowLwb(), inv(), kFALSE, and TDecompBase::MultiSolve().

Referenced by invertMatrix(), and mstress_inversion().

TMatrixD TDecompLU::Invert ( Bool_t status  ) 

Definition at line 541 of file TDecompLU.cxx.

References GetNrows(), TDecompBase::GetRowLwb(), inv(), and TDecompBase::MultiSolve().

TMatrixD TDecompLU::Invert (  )  [inline]

Definition at line 71 of file TDecompLU.h.

Referenced by Invert().

void TDecompLU::Print ( Option_t opt = ""  )  const [virtual]

Reimplemented from TDecompBase.

Definition at line 557 of file TDecompLU.cxx.

References fImplicitPivot, fIndex, fLU, fNIndex, fSign, i, TMatrixTBase< Element >::Print(), and TDecompBase::Print().

TDecompLU & TDecompLU::operator= ( const TDecompLU source  ) 

Definition at line 570 of file TDecompLU.cxx.

References fImplicitPivot, fIndex, fLU, fNIndex, fSign, TDecompBase::operator=(), and TMatrixT< Element >::ResizeTo().

static Bool_t TDecompLU::DecomposeLUCrout ( TMatrixD lu,
Int_t index,
Double_t sign,
Double_t  tol,
Int_t nrZeros 
) [static, protected]

static Bool_t TDecompLU::DecomposeLUGauss ( TMatrixD lu,
Int_t index,
Double_t sign,
Double_t  tol,
Int_t nrZeros 
) [static, protected]

virtual const TMatrixDBase& TDecompLU::GetDecompMatrix (  )  const [inline, protected, virtual]

Implements TDecompBase.

Definition at line 40 of file TDecompLU.h.

References fLU.

const TMatrixD TDecompLU::GetMatrix (  ) 

virtual Int_t TDecompLU::GetNrows (  )  const [inline, virtual]

Implements TDecompBase.

Definition at line 52 of file TDecompLU.h.

References fLU, and TMatrixTBase< Element >::GetNrows().

virtual Int_t TDecompLU::GetNcols (  )  const [inline, virtual]

Implements TDecompBase.

Definition at line 53 of file TDecompLU.h.

References fLU, and TMatrixTBase< Element >::GetNcols().

const TMatrixD& TDecompLU::GetLU (  )  [inline]

Definition at line 54 of file TDecompLU.h.

References Decompose(), fLU, TDecompBase::kDecomposed, and TObject::TestBit().

virtual void TDecompLU::SetMatrix ( const TMatrixD a  )  [virtual]

virtual Bool_t TDecompLU::Decompose (  )  [virtual]

Implements TDecompBase.

virtual Bool_t TDecompLU::Solve ( TVectorD b  )  [virtual]

Implements TDecompBase.

virtual TVectorD TDecompLU::Solve ( const TVectorD b,
Bool_t ok 
) [inline, virtual]

Implements TDecompBase.

Definition at line 61 of file TDecompLU.h.

References b, Solve(), and x.

virtual Bool_t TDecompLU::Solve ( TMatrixDColumn b  )  [virtual]

Implements TDecompBase.

virtual Bool_t TDecompLU::TransSolve ( TVectorD b  )  [virtual]

Implements TDecompBase.

virtual TVectorD TDecompLU::TransSolve ( const TVectorD b,
Bool_t ok 
) [inline, virtual]

Implements TDecompBase.

Definition at line 64 of file TDecompLU.h.

References b, TransSolve(), and x.

virtual Bool_t TDecompLU::TransSolve ( TMatrixDColumn b  )  [virtual]

Implements TDecompBase.

virtual void TDecompLU::Det ( Double_t d1,
Double_t d2 
) [virtual]

Reimplemented from TDecompBase.

static Bool_t TDecompLU::InvertLU ( TMatrixD a,
Double_t  tol,
Double_t det = 0 
) [static]

Bool_t TDecompLU::Invert ( TMatrixD inv  ) 

TMatrixD TDecompLU::Invert ( Bool_t status  ) 

TMatrixD TDecompLU::Invert (  )  [inline]

Definition at line 71 of file TDecompLU.h.

References Invert().

void TDecompLU::Print ( Option_t opt = ""  )  const [virtual]

Reimplemented from TDecompBase.

TDecompLU& TDecompLU::operator= ( const TDecompLU source  ) 


Member Data Documentation

Int_t TDecompLU::fImplicitPivot [protected]

Definition at line 29 of file TDecompLU.h.

Referenced by Decompose(), operator=(), Print(), and TDecompLU().

Int_t TDecompLU::fNIndex [protected]

Definition at line 31 of file TDecompLU.h.

Referenced by operator=(), Print(), SetMatrix(), and TDecompLU().

Int_t* TDecompLU::fIndex [protected]

Definition at line 32 of file TDecompLU.h.

Referenced by Decompose(), GetMatrix(), operator=(), Print(), SetMatrix(), Solve(), TDecompLU(), TransSolve(), and ~TDecompLU().

Double_t TDecompLU::fSign [protected]

Definition at line 33 of file TDecompLU.h.

Referenced by Decompose(), Det(), operator=(), Print(), SetMatrix(), and TDecompLU().

TMatrixD TDecompLU::fLU [protected]

Definition at line 34 of file TDecompLU.h.

Referenced by Decompose(), GetDecompMatrix(), GetLU(), GetMatrix(), GetNcols(), GetNrows(), operator=(), Print(), SetMatrix(), Solve(), TDecompLU(), and TransSolve().

Int_t* TDecompLU::fIndex [protected]

Definition at line 32 of file TDecompLU.h.


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:36:02 2011 for ROOT_528-00b_version by  doxygen 1.5.1