#include "TMatrixT.h"

TMatrixT<double>


class description - header file - source file
viewCVS header - viewCVS source

class TMatrixT<double>: public TMatrixTBase<double>

Inheritance Inherited Members Includes Libraries
Class Charts

Function Members (Methods)

Display options:
Show inherited
Show non-public
public:
TMatrixT<double>()
TMatrixT<double>(const TMatrixT<double>& another)
TMatrixT<double>(const TMatrixTSym<double>& another)
TMatrixT<double>(const TMatrixTSparse<double>& another)
TMatrixT<double>(const TMatrixTLazy<double>& lazy_constructor)
TMatrixT<double>(Int_t nrows, Int_t ncols)
TMatrixT<double>(TMatrixT<double>::EMatrixCreatorsOp1 op, const TMatrixT<double>& prototype)
TMatrixT<double>(const TMatrixT<double>& a, TMatrixT<double>::EMatrixCreatorsOp2 op, const TMatrixT<double>& b)
TMatrixT<double>(const TMatrixT<double>& a, TMatrixT<double>::EMatrixCreatorsOp2 op, const TMatrixTSym<double>& b)
TMatrixT<double>(const TMatrixTSym<double>& a, TMatrixT<double>::EMatrixCreatorsOp2 op, const TMatrixT<double>& b)
TMatrixT<double>(const TMatrixTSym<double>& a, TMatrixT<double>::EMatrixCreatorsOp2 op, const TMatrixTSym<double>& b)
TMatrixT<double>(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb)
TMatrixT<double>(Int_t nrows, Int_t ncols, const double* data, Option_t* option = "")
TMatrixT<double>(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, const double* data, Option_t* option = "")
virtual~TMatrixT<double>()
virtual TMatrixTBase<double>&TMatrixTBase<double>::Abs()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual TMatrixTBase<double>&TMatrixTBase<double>::Apply(const TElementActionT<double>& action)
virtual TMatrixTBase<double>&TMatrixTBase<double>::Apply(const TElementPosActionT<double>& action)
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidClear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual doubleTMatrixTBase<double>::ColNorm() const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")
virtual Double_tDeterminant() const
virtual voidDeterminant(Double_t& d1, Double_t& d2) const
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTMatrixTBase<double>::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() const
virtual TObject*TObject::DrawClone(Option_t* option = "") const
virtual voidTObject::Dump() const
virtual doubleTMatrixTBase<double>::E2Norm() const
const TMatrixT<double>EigenVectors(TVectorT<double>& eigenValues) const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTMatrixTBase<double>::ExtractRow(Int_t row, Int_t col, double* v, Int_t n = -1) const
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual const Int_t*GetColIndexArray() const
virtual Int_t*GetColIndexArray()
Int_tTMatrixTBase<double>::GetColLwb() const
Int_tTMatrixTBase<double>::GetColUpb() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual voidTMatrixTBase<double>::GetMatrix2Array(double* data, Option_t* option = "") const
virtual const double*GetMatrixArray() const
virtual double*GetMatrixArray()
virtual const char*TObject::GetName() const
Int_tTMatrixTBase<double>::GetNcols() const
Int_tTMatrixTBase<double>::GetNoElements() const
Int_tTMatrixTBase<double>::GetNrows() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const Int_t*GetRowIndexArray() const
virtual Int_t*GetRowIndexArray()
Int_tTMatrixTBase<double>::GetRowLwb() const
Int_tTMatrixTBase<double>::GetRowUpb() const
TMatrixT<double>GetSub(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Option_t* option = "S") const
virtual TMatrixTBase<double>&GetSub(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, TMatrixTBase<double>& target, Option_t* option = "S") const
virtual const char*TObject::GetTitle() const
doubleTMatrixTBase<double>::GetTol() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual TMatrixTBase<double>&TMatrixTBase<double>::InsertRow(Int_t row, Int_t col, const double* v, Int_t n = -1)
virtual voidTObject::Inspect() const
voidTMatrixTBase<double>::Invalidate()
TMatrixT<double>&Invert(Double_t* det = 0)
voidTObject::InvertBit(UInt_t f)
TMatrixT<double>&InvertFast(Double_t* det = 0)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
Bool_tTMatrixTBase<double>::IsOwner() const
virtual Bool_tTObject::IsSortable() const
virtual Bool_tTMatrixTBase<double>::IsSymmetric() const
Bool_tTMatrixTBase<double>::IsValid() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTMatrixTBase<double>::MakeValid()
virtual doubleTMatrixTBase<double>::Max() const
voidTObject::MayNotUse(const char* method) const
virtual doubleTMatrixTBase<double>::Min() const
voidMinus(const TMatrixT<double>& a, const TMatrixT<double>& b)
voidMinus(const TMatrixT<double>& a, const TMatrixTSym<double>& b)
voidMinus(const TMatrixTSym<double>& a, const TMatrixT<double>& b)
voidMult(const TMatrixT<double>& a, const TMatrixT<double>& b)
voidMult(const TMatrixT<double>& a, const TMatrixTSym<double>& b)
voidMult(const TMatrixTSym<double>& a, const TMatrixT<double>& b)
voidMult(const TMatrixTSym<double>& a, const TMatrixTSym<double>& b)
voidMultT(const TMatrixT<double>& a, const TMatrixT<double>& b)
voidMultT(const TMatrixT<double>& a, const TMatrixTSym<double>& b)
voidMultT(const TMatrixTSym<double>& a, const TMatrixT<double>& b)
voidMultT(const TMatrixTSym<double>& a, const TMatrixTSym<double>& b)
virtual Int_tTMatrixTBase<double>::NonZeros() const
doubleTMatrixTBase<double>::Norm1() const
TMatrixT<double>&NormByColumn(const TVectorT<double>& v, Option_t* option = "D")
virtual TMatrixTBase<double>&TMatrixTBase<double>::NormByDiag(const TVectorT<double>& v, Option_t* option = "D")
TMatrixT<double>&NormByRow(const TVectorT<double>& v, Option_t* option = "D")
doubleTMatrixTBase<double>::NormInf() const
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
Bool_tTMatrixTBase<double>::operator!=(double val) const
virtual doubleoperator()(Int_t rown, Int_t coln) const
virtual double&operator()(Int_t rown, Int_t coln)
TMatrixT<double>&operator*=(double val)
TMatrixT<double>&operator*=(const TMatrixT<double>& source)
TMatrixT<double>&operator*=(const TMatrixTSym<double>& source)
TMatrixT<double>&operator*=(const TMatrixTDiag_const<double>& diag)
TMatrixT<double>&operator*=(const TMatrixTRow_const<double>& row)
TMatrixT<double>&operator*=(const TMatrixTColumn_const<double>& col)
TMatrixT<double>&operator+=(double val)
TMatrixT<double>&operator+=(const TMatrixT<double>& source)
TMatrixT<double>&operator+=(const TMatrixTSym<double>& source)
TMatrixT<double>&operator-=(double val)
TMatrixT<double>&operator-=(const TMatrixT<double>& source)
TMatrixT<double>&operator-=(const TMatrixTSym<double>& source)
TMatrixT<double>&operator/=(const TMatrixTDiag_const<double>& diag)
TMatrixT<double>&operator/=(const TMatrixTRow_const<double>& row)
TMatrixT<double>&operator/=(const TMatrixTColumn_const<double>& col)
Bool_tTMatrixTBase<double>::operator<(double val) const
Bool_tTMatrixTBase<double>::operator<=(double val) const
TMatrixT<double>&operator=(const TMatrixT<double>& source)
TMatrixT<double>&operator=(const TMatrixTSym<double>& source)
TMatrixT<double>&operator=(const TMatrixTSparse<double>& source)
TMatrixT<double>&operator=(const TMatrixTLazy<double>& source)
TMatrixT<double>&operator=(double val)
Bool_tTMatrixTBase<double>::operator==(double val) const
Bool_tTMatrixTBase<double>::operator>(double val) const
Bool_tTMatrixTBase<double>::operator>=(double val) const
const TMatrixTRow_const<double>operator[](Int_t rown) const
TMatrixTRow<double>operator[](Int_t rown)
virtual voidTObject::Paint(Option_t* option = "")
voidPlus(const TMatrixT<double>& a, const TMatrixT<double>& b)
voidPlus(const TMatrixT<double>& a, const TMatrixTSym<double>& b)
voidPlus(const TMatrixTSym<double>& a, const TMatrixT<double>& b)
virtual voidTObject::Pop()
virtual voidTMatrixTBase<double>::Print(Option_t* name = "") const
virtual TMatrixTBase<double>&TMatrixTBase<double>::Randomize(double alpha, double beta, Double_t& seed)
TMatrixT<double>&Rank1Update(const TVectorT<double>& v, double alpha = 1.0)
TMatrixT<double>&Rank1Update(const TVectorT<double>& v1, const TVectorT<double>& v2, double alpha = 1.0)
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
TMatrixTBase<double>&ResizeTo(const TMatrixT<double>& m)
virtual TMatrixTBase<double>&ResizeTo(Int_t nrows, Int_t ncols, Int_t nr_nonzeros = -1)
virtual TMatrixTBase<double>&ResizeTo(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Int_t nr_nonzeros = -1)
virtual doubleTMatrixTBase<double>::RowNorm() const
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") const
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual TMatrixTBase<double>&SetColIndexArray(Int_t*)
virtual voidTObject::SetDrawOption(Option_t* option = "")
static voidTObject::SetDtorOnly(void* obj)
virtual TMatrixTBase<double>&TMatrixTBase<double>::SetMatrixArray(const double* data, Option_t* option = "")
static voidTObject::SetObjectStat(Bool_t stat)
virtual TMatrixTBase<double>&SetRowIndexArray(Int_t*)
virtual TMatrixTBase<double>&SetSub(Int_t row_lwb, Int_t col_lwb, const TMatrixTBase<double>& source)
doubleTMatrixTBase<double>::SetTol(double newTol)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual TMatrixTBase<double>&TMatrixTBase<double>::Shift(Int_t row_shift, Int_t col_shift)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
doubleSimilarity(const TVectorT<double>& v) const
virtual TMatrixTBase<double>&TMatrixTBase<double>::Sqr()
virtual TMatrixTBase<double>&TMatrixTBase<double>::Sqrt()
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual doubleTMatrixTBase<double>::Sum() const
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
TMatrixT<double>&T()
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
voidTMult(const TMatrixT<double>& a, const TMatrixT<double>& b)
voidTMult(const TMatrixT<double>& a, const TMatrixTSym<double>& b)
voidTMult(const TMatrixTSym<double>& a, const TMatrixT<double>& b)
voidTMult(const TMatrixTSym<double>& a, const TMatrixTSym<double>& b)
TMatrixT<double>&Transpose(const TMatrixT<double>& source)
virtual TMatrixTBase<double>&TMatrixTBase<double>::UnitMatrix()
TMatrixT<double>&Use(TMatrixT<double>& a)
TMatrixT<double>&Use(Int_t nrows, Int_t ncols, double* data)
TMatrixT<double>&Use(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, double* data)
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = "0", Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = "0", Int_t option = 0, Int_t bufsize = 0) const
virtual TMatrixTBase<double>&TMatrixTBase<double>::Zero()
protected:
voidAllocate(Int_t nrows, Int_t ncols, Int_t row_lwb = 0, Int_t col_lwb = 0, Int_t init = 0, Int_t nr_nonzeros = -1)
voidDelete_m(Int_t size, double*&)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
static voidTMatrixTBase<double>::DoubleLexSort(Int_t n, Int_t* first, Int_t* second, double* data)
static voidTMatrixTBase<double>::IndexedLexSort(Int_t n, Int_t* first, Int_t swapFirst, Int_t* second, Int_t swapSecond, Int_t* index)
voidTObject::MakeZombie()
Int_tMemcpy_m(double* newp, const double* oldp, Int_t copySize, Int_t newSize, Int_t oldSize)
double*New_m(Int_t size)

Data Members

public:
enum { kWorkMax
};
enum EMatrixCreatorsOp1 { kZero
kUnit
kTransposed
kInverted
kAtA
};
enum EMatrixCreatorsOp2 { kMult
kTransposeMult
kInvMult
kMultTranspose
kPlus
kMinus
};
enum TMatrixTBase::[unnamed] { kSizeMax
kWorkMax
};
enum TMatrixTBase::EMatrixStatusBits { kStatus
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
doublefDataStack[25]! data container
double*fElements[fNelems] elements themselves
Int_tTMatrixTBase<double>::fNrowsnumber of rows
Int_tTMatrixTBase<double>::fNcolsnumber of columns
Int_tTMatrixTBase<double>::fRowLwblower bound of the row index
Int_tTMatrixTBase<double>::fColLwblower bound of the col index
Int_tTMatrixTBase<double>::fNelemsnumber of elements in matrix
Int_tTMatrixTBase<double>::fNrowIndexlength of row index array (= fNrows+1) wich is only used for sparse matrices
doubleTMatrixTBase<double>::fTolsqrt(epsilon); epsilon is smallest number number so that 1+epsilon > 1
Bool_tTMatrixTBase<double>::fIsOwner!default kTRUE, when Use array kFALSE

Class Description

                                                                      
 TMatrixT                                                             
                                                                      
 Template class of a general matrix in the linear algebra package     
                                                                      

void Delete_m(Int_t size,Element*&)
Int_t Memcpy_m(Element *newp,const Element *oldp,Int_t copySize, Int_t newSize,Int_t oldSize)
Allocate(another.GetNrows(),another.GetNcols(),another.GetRowLwb(),another.GetColLwb())
void Minus(const TMatrixT <Element> &a,const TMatrixT <Element> &b)
void Minus(const TMatrixT <Element> &a,const TMatrixTSym<Element> &b)
void Minus(const TMatrixTSym<Element> &a,const TMatrixT <Element> &b)
{ Minus(b,a); }
void TMult(const TMatrixT <Element> &a,const TMatrixT <Element> &b)
void TMult(const TMatrixT <Element> &a,const TMatrixTSym<Element> &b)
void TMult(const TMatrixTSym<Element> &a,const TMatrixT <Element> &b)
{ Mult(a,b); }
void TMult(const TMatrixTSym<Element> &a,const TMatrixTSym<Element> &b)
{ Mult(a,b); }
void MultT(const TMatrixT <Element> &a,const TMatrixT <Element> &b)
void MultT(const TMatrixT <Element> &a,const TMatrixTSym<Element> &b)
{ Mult(a,b); }
void MultT(const TMatrixTSym<Element> &a,const TMatrixT <Element> &b)
void MultT(const TMatrixTSym<Element> &a,const TMatrixTSym<Element> &b)
{ Mult(a,b); }
const Int_t * GetRowIndexArray()
{ return 0; }
Int_t * GetRowIndexArray()
{ return 0; }
const Int_t * GetColIndexArray()
{ return 0; }
Int_t * GetColIndexArray()
{ return 0; }
TMatrixTBase<Element> & SetRowIndexArray(Int_t * /*data*/)
{ MayNotUse("SetRowIndexArray(Int_t *)"); return *this; }
TMatrixTBase<Element> & SetColIndexArray(Int_t * /*data*/)
{ MayNotUse("SetColIndexArray(Int_t *)"); return *this; }
void Clear(Option_t * /*option*/ ="")
TMatrixTBase<Element> & ResizeTo(Int_t nrows,Int_t ncols,Int_t nr_nonzeros=-1)
TMatrixTBase<Element> & ResizeTo(Int_t row_lwb,Int_t row_upb,Int_t col_lwb,Int_t col_upb,Int_t nr_nonzeros=-1)
TMatrixTBase<Element> & ResizeTo(const TMatrixT<Element> &m)
TMatrixT<Element> & NormByColumn(const TVectorT<Element> &v,Option_t *option="D")
Element operator()(Int_t rown,Int_t coln)
 Either access a_ij as a(i,j)
Element & operator()(Int_t rown,Int_t coln)
const TMatrixTRow_const<Element> operator[](Int_t rown)
 or as a[i][j]
{ return TMatrixTRow_const<Element>(*this,rown); }
TMatrixTRow <Element> operator[](Int_t rown)
{ return TMatrixTRow <Element>(*this,rown); }
operator=(source)
const Element2 * const ps = source. GetMatrixArray()
Element * const pt = this-> GetMatrixArray()
TMatrixT<Element> & operator-=(Element val)
TMatrixT<Element> & operator+=(Element val)
TMatrixT<Element> & operator*=(Element val)
TMatrixT<Element> & operator+=(const TMatrixT <Element> &source)
TMatrixT<Element> & operator+=(const TMatrixTSym<Element> &source)
TMatrixT<Element> & operator-=(const TMatrixT <Element> &source)
TMatrixT<Element> & operator-=(const TMatrixTSym<Element> &source)
TMatrixT<Element> & operator*=(const TMatrixT <Element> &source)
TMatrixT<Element> & operator*=(const TMatrixTSym <Element> &source)
TMatrixT<Element> & operator*=(const TMatrixTDiag_const <Element> &diag)
TMatrixT<Element> & operator/=(const TMatrixTDiag_const <Element> &diag)
TMatrixT<Element> & operator*=(const TMatrixTRow_const <Element> &row)
TMatrixT<Element> & operator/=(const TMatrixTRow_const <Element> &row)
TMatrixT<Element> & operator*=(const TMatrixTColumn_const<Element> &col)
TMatrixT<Element> & operator/=(const TMatrixTColumn_const<Element> &col)
const TMatrixT<Element> EigenVectors(TVectorT<Element> &eigenValues)
return Use(a.GetRowLwb(),a.GetRowUpb(), a.GetColLwb(),a.GetColUpb(),a.GetMatrixArray())
this-> GetSub(row_lwb,row_upb,col_lwb,col_upb,tmp,option)

Last update: root/matrix:$Name: $:$Id: TMatrixT.cxx,v 1.22 2006/10/06 06:52:34 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.