A++ » INCLUDE » TMatrixTSparse<float>

class TMatrixTSparse<float>: public TMatrixTBase<float>


TMatrixTSparse

Template class of a general sparse matrix in the Harwell-Boeing
format


Function Members (Methods)

public:
virtual~TMatrixTSparse<float>()
virtual TMatrixTBase<float>&TMatrixTBase<float>::Abs()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual TMatrixTBase<float>&TMatrixTBase<float>::Apply(const TElementActionT<float>& action)
virtual TMatrixTBase<float>&TMatrixTBase<float>::Apply(const TElementPosActionT<float>& 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 floatColNorm() const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Double_tTMatrixTBase<float>::Determinant() const
virtual voidTMatrixTBase<float>::Determinant(Double_t& d1, Double_t& d2) const
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTMatrixTBase<float>::Draw(Option_t* option = "")MENU
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual floatTMatrixTBase<float>::E2Norm() 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 voidExtractRow(Int_t row, Int_t col, float* 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<float>::GetColLwb() const
Int_tTMatrixTBase<float>::GetColUpb() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual voidGetMatrix2Array(float* data, Option_t* = "") const
virtual const float*GetMatrixArray() const
virtual float*GetMatrixArray()
virtual const char*TObject::GetName() const
Int_tTMatrixTBase<float>::GetNcols() const
Int_tTMatrixTBase<float>::GetNoElements() const
Int_tTMatrixTBase<float>::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<float>::GetRowLwb() const
Int_tTMatrixTBase<float>::GetRowUpb() const
TMatrixTSparse<float>GetSub(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Option_t* option = "S") const
virtual TMatrixTBase<float>&GetSub(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, TMatrixTBase<float>& target, Option_t* option = "S") const
virtual const char*TObject::GetTitle() const
floatTMatrixTBase<float>::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<float>&InsertRow(Int_t row, Int_t col, const float* v, Int_t n = -1)
virtual voidTObject::Inspect() constMENU
voidTMatrixTBase<float>::Invalidate()
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
Bool_tTMatrixTBase<float>::IsOwner() const
virtual Bool_tTObject::IsSortable() const
virtual Bool_tIsSymmetric() const
Bool_tTMatrixTBase<float>::IsValid() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTMatrixTBase<float>::MakeValid()
virtual floatTMatrixTBase<float>::Max() const
voidTObject::MayNotUse(const char* method) const
virtual floatTMatrixTBase<float>::Min() const
voidMult(const TMatrixTSparse<float>& a, const TMatrixTSparse<float>& b)
static float&TMatrixTBase<float>::NaNValue()
virtual Int_tNonZeros() const
floatTMatrixTBase<float>::Norm1() const
virtual TMatrixTBase<float>&NormByDiag(const TVectorT<float>&, Option_t*)
floatTMatrixTBase<float>::NormInf() const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
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<float>::operator!=(float val) const
virtual floatoperator()(Int_t rown, Int_t coln) const
virtual float&operator()(Int_t rown, Int_t coln)
TMatrixTSparse<float>&operator*=(float val)
TMatrixTSparse<float>&operator*=(const TMatrixTSparse<float>& source)
TMatrixTSparse<float>&operator*=(const TMatrixT<float>& source)
TMatrixTSparse<float>&operator+=(float val)
TMatrixTSparse<float>&operator+=(const TMatrixTSparse<float>& source)
TMatrixTSparse<float>&operator+=(const TMatrixT<float>& source)
TMatrixTSparse<float>&operator-=(float val)
TMatrixTSparse<float>&operator-=(const TMatrixTSparse<float>& source)
TMatrixTSparse<float>&operator-=(const TMatrixT<float>& source)
Bool_tTMatrixTBase<float>::operator<(float val) const
Bool_tTMatrixTBase<float>::operator<=(float val) const
TMatrixTSparse<float>&operator=(const TMatrixT<float>& source)
TMatrixTSparse<float>&operator=(const TMatrixTSparse<float>& source)
TMatrixTSparse<float>&operator=(float val)
Bool_tTMatrixTBase<float>::operator==(float val) const
Bool_tTMatrixTBase<float>::operator>(float val) const
Bool_tTMatrixTBase<float>::operator>=(float val) const
const TMatrixTSparseRow_const<float>operator[](Int_t rown) const
TMatrixTSparseRow<float>operator[](Int_t rown)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTMatrixTBase<float>::Print(Option_t* name = "") constMENU
virtual TMatrixTBase<float>&Randomize(float alpha, float beta, Double_t& seed)
virtual TMatrixTSparse<float>&RandomizePD(float alpha, float beta, Double_t& seed)
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
TMatrixTBase<float>&ResizeTo(const TMatrixTSparse<float>& m)
virtual TMatrixTBase<float>&ResizeTo(Int_t nrows, Int_t ncols, Int_t nr_nonzeros = -1)
virtual TMatrixTBase<float>&ResizeTo(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Int_t nr_nonzeros = -1)
virtual floatRowNorm() const
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual TMatrixTBase<float>&SetColIndexArray(Int_t* data)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual TMatrixTBase<float>&SetMatrixArray(const float* data, Option_t* = "")
virtual TMatrixTBase<float>&SetMatrixArray(Int_t nr_nonzeros, Int_t* irow, Int_t* icol, float* data)
static voidTObject::SetObjectStat(Bool_t stat)
virtual TMatrixTBase<float>&SetRowIndexArray(Int_t* data)
TMatrixTSparse<float>&SetSparseIndex(Int_t nelem_new)
TMatrixTSparse<float>&SetSparseIndex(const TMatrixTBase<float>& another)
TMatrixTSparse<float>&SetSparseIndexAB(const TMatrixTSparse<float>& a, const TMatrixTSparse<float>& b)
TMatrixTSparse<float>&SetSparseIndexAB(const TMatrixT<float>& a, const TMatrixTSparse<float>& b)
TMatrixTSparse<float>&SetSparseIndexAB(const TMatrixTSparse<float>& a, const TMatrixT<float>& b)
virtual TMatrixTBase<float>&SetSub(Int_t row_lwb, Int_t col_lwb, const TMatrixTBase<float>& source)
floatTMatrixTBase<float>::SetTol(float tol)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual TMatrixTBase<float>&TMatrixTBase<float>::Shift(Int_t row_shift, Int_t col_shift)
virtual voidShowMembers(TMemberInspector& insp) const
virtual TMatrixTBase<float>&TMatrixTBase<float>::Sqr()
virtual TMatrixTBase<float>&TMatrixTBase<float>::Sqrt()
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual floatTMatrixTBase<float>::Sum() const
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
TMatrixTSparse<float>&T()
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
TMatrixTSparse<float>()
TMatrixTSparse<float>(const TMatrixTSparse<float>& another)
TMatrixTSparse<float>(const TMatrixT<float>& another)
TMatrixTSparse<float>(Int_t nrows, Int_t ncols)
TMatrixTSparse<float>(TMatrixTSparse<float>::EMatrixCreatorsOp1 op, const TMatrixTSparse<float>& prototype)
TMatrixTSparse<float>(const TMatrixTSparse<float>& a, TMatrixTSparse<float>::EMatrixCreatorsOp2 op, const TMatrixTSparse<float>& b)
TMatrixTSparse<float>(const TMatrixTSparse<float>& a, TMatrixTSparse<float>::EMatrixCreatorsOp2 op, const TMatrixT<float>& b)
TMatrixTSparse<float>(const TMatrixT<float>& a, TMatrixTSparse<float>::EMatrixCreatorsOp2 op, const TMatrixTSparse<float>& b)
TMatrixTSparse<float>(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb)
TMatrixTSparse<float>(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Int_t nr_nonzeros, Int_t* row, Int_t* col, float* data)
TMatrixTSparse<float>&Transpose(const TMatrixTSparse<float>& source)
virtual TMatrixTBase<float>&UnitMatrix()
TMatrixTSparse<float>&Use(TMatrixTSparse<float>& a)
const TMatrixTSparse<float>&Use(const TMatrixTSparse<float>& a) const
TMatrixTSparse<float>&Use(Int_t nrows, Int_t ncols, Int_t nr_nonzeros, Int_t* pRowIndex, Int_t* pColIndex, float* pData)
const TMatrixTSparse<float>&Use(Int_t nrows, Int_t ncols, Int_t nr_nonzeros, const Int_t* pRowIndex, const Int_t* pColIndex, const float* pData) const
TMatrixTSparse<float>&Use(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Int_t nr_nonzeros, Int_t* pRowIndex, Int_t* pColIndex, float* pData)
const TMatrixTSparse<float>&Use(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Int_t nr_nonzeros, const Int_t* pRowIndex, const Int_t* pColIndex, const float* pData) const
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<float>&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 = 0)
voidAMinusB(const TMatrixTSparse<float>& a, const TMatrixTSparse<float>& b, Int_t constr = 0)
voidAMinusB(const TMatrixTSparse<float>& a, const TMatrixT<float>& b, Int_t constr = 0)
voidAMinusB(const TMatrixT<float>& a, const TMatrixTSparse<float>& b, Int_t constr = 0)
voidAMultB(const TMatrixTSparse<float>& a, const TMatrixTSparse<float>& b, Int_t constr = 0)
voidAMultB(const TMatrixTSparse<float>& a, const TMatrixT<float>& b, Int_t constr = 0)
voidAMultB(const TMatrixT<float>& a, const TMatrixTSparse<float>& b, Int_t constr = 0)
voidAMultBt(const TMatrixTSparse<float>& a, const TMatrixTSparse<float>& b, Int_t constr = 0)
voidAMultBt(const TMatrixTSparse<float>& a, const TMatrixT<float>& b, Int_t constr = 0)
voidAMultBt(const TMatrixT<float>& a, const TMatrixTSparse<float>& b, Int_t constr = 0)
voidAPlusB(const TMatrixTSparse<float>& a, const TMatrixTSparse<float>& b, Int_t constr = 0)
voidAPlusB(const TMatrixTSparse<float>& a, const TMatrixT<float>& b, Int_t constr = 0)
voidAPlusB(const TMatrixT<float>& a, const TMatrixTSparse<float>& b, Int_t constr = 0)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
static voidTMatrixTBase<float>::DoubleLexSort(Int_t n, Int_t* first, Int_t* second, float* data)
static voidTMatrixTBase<float>::IndexedLexSort(Int_t n, Int_t* first, Int_t swapFirst, Int_t* second, Int_t swapSecond, Int_t* index)
voidTObject::MakeZombie()

Data Members

public:
static TMatrixTSparse<float>::EMatrixCreatorsOp1kAtA
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TMatrixTSparse<float>::EMatrixCreatorsOp2kMinus
static TMatrixTSparse<float>::EMatrixCreatorsOp2kMult
static TMatrixTSparse<float>::EMatrixCreatorsOp2kMultTranspose
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TMatrixTSparse<float>::EMatrixCreatorsOp2kPlus
static TObject::(anonymous)TObject::kSingleKey
static TMatrixTSparse<float>::EMatrixCreatorsOp1kTransposed
static TMatrixTSparse<float>::EMatrixCreatorsOp1kUnit
static TObject::(anonymous)TObject::kWriteDelete
static TMatrixTSparse<float>::EMatrixCreatorsOp1kZero
static TObject::(anonymous)TObject::kZombie
protected:
Int_t*fColIndex[fNelems] column index
Int_tTMatrixTBase<float>::fColLwblower bound of the col index
float*fElements[fNelems]
Bool_tTMatrixTBase<float>::fIsOwner!default kTRUE, when Use array kFALSE
Int_tTMatrixTBase<float>::fNcolsnumber of columns
Int_tTMatrixTBase<float>::fNelemsnumber of elements in matrix
Int_tTMatrixTBase<float>::fNrowIndexlength of row index array (= fNrows+1) wich is only used for sparse matrices
Int_tTMatrixTBase<float>::fNrowsnumber of rows
Int_t*fRowIndex[fNrowIndex] row index
Int_tTMatrixTBase<float>::fRowLwblower bound of the row index
floatTMatrixTBase<float>::fTolsqrt(epsilon); epsilon is smallest number number so that 1+epsilon > 1
static TMatrixTBase<float>::(anonymous)TMatrixTBase<float>::kSizeMax
static TMatrixTBase<float>::EMatrixStatusBitsTMatrixTBase<float>::kStatus
static TMatrixTBase<float>::(anonymous)TMatrixTBase<float>::kWorkMax

Class Charts

Inheritance Chart:
TObject
TMatrixTBase<float>
TMatrixTSparse<float>

Function documentation

template <class Element> inline const Element *TMatrixTSparse<Element> GetMatrixArray() const
{ return fElements; }
template <class Element> inline Element *TMatrixTSparse<Element> GetMatrixArray()
{ return fElements; }
template <class Element> inline const Int_t *TMatrixTSparse<Element> GetRowIndexArray() const
{ return fRowIndex; }
template <class Element> inline Int_t *TMatrixTSparse<Element> GetRowIndexArray()
{ return fRowIndex; }
template <class Element> inline const Int_t *TMatrixTSparse<Element> GetColIndexArray() const
{ return fColIndex; }
template <class Element> inline Int_t *TMatrixTSparse<Element> GetColIndexArray()
{ return fColIndex; }
TMatrixTSparse<Element> &TMatrixTSparse<Element> Use(Int_t nrows, Int_t ncols, Int_t nr_nonzeros, Int_t* pRowIndex, Int_t* pColIndex, float* pData)
{ return Use(0,nrows-1,0,ncols-1,nr_nonzeros,pRowIndex,pColIndex,pData); }
const TMatrixTSparse<Element> &TMatrixTSparse<Element> Use(Int_t nrows, Int_t ncols, Int_t nr_nonzeros, const Int_t* pRowIndex, const Int_t* pColIndex, const float* pData) const
{ return Use(0,nrows-1,0,ncols-1,nr_nonzeros,pRowIndex,pColIndex,pData); }
TMatrixTSparse<Element> &TMatrixTSparse<Element> Use(TMatrixTSparse<float>& a)
const TMatrixTSparse<Element> &TMatrixTSparse<Element> Use(const TMatrixTSparse<float>& a) const
TMatrixTSparse<Element> TMatrixTSparse<Element> GetSub(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Option_t* option = "S") const
void Allocate(Int_t nrows, Int_t ncols, Int_t row_lwb = 0, Int_t col_lwb = 0, Int_t init = 0, Int_t nr_nonzeros = 0)
 Elementary constructors
void AMultB(const TMatrixTSparse<Element> &a,const TMatrixT<Element> &b,Int_t constr=0)
void AMultB(const TMatrixT<Element> &a,const TMatrixTSparse<Element> &b,Int_t constr=0)
void AMultBt(const TMatrixTSparse<Element> &a,const TMatrixTSparse<Element> &b,Int_t constr=0)
void AMultBt(const TMatrixTSparse<Element> &a,const TMatrixT<Element> &b,Int_t constr=0)
void AMultBt(const TMatrixT<Element> &a,const TMatrixTSparse<Element> &b,Int_t constr=0)
void APlusB(const TMatrixTSparse<Element> &a,const TMatrixTSparse<Element> &b,Int_t constr=0)
void APlusB(const TMatrixTSparse<Element> &a,const TMatrixT<Element> &b,Int_t constr=0)
void APlusB(const TMatrixT<Element> &a,const TMatrixTSparse<Element> &b,Int_t constr=0)
{ APlusB(b,a,constr); }
void AMinusB(const TMatrixTSparse<Element> &a,const TMatrixTSparse<Element> &b,Int_t constr=0)
void AMinusB(const TMatrixTSparse<Element> &a,const TMatrixT<Element> &b,Int_t constr=0)
void AMinusB(const TMatrixT<Element> &a,const TMatrixTSparse<Element> &b,Int_t constr=0)
TMatrixTBase<Element> & SetRowIndexArray(Int_t* data)
{ memmove(fRowIndex,data,(this->fNrows+1)*sizeof(Int_t)); return *this; }
TMatrixTBase<Element> & SetColIndexArray(Int_t* data)
{ memmove(fColIndex,data,this->fNelems*sizeof(Int_t)); return *this; }
TMatrixTSparse<Element> & SetSparseIndex(Int_t nelem_new)
TMatrixTSparse<Element> & SetSparseIndex(const TMatrixTBase<float>& another)
TMatrixTSparse<Element> & SetSparseIndexAB(const TMatrixTSparse<Element> &a,const TMatrixTSparse<Element> &b)
TMatrixTSparse<Element> & SetSparseIndexAB(const TMatrixT <Element> &a,const TMatrixTSparse<Element> &b)
TMatrixTSparse<Element> & SetSparseIndexAB(const TMatrixTSparse<Element> &a,const TMatrixT <Element> &b)
{ return SetSparseIndexAB(b,a); }
void GetMatrix2Array(float* data, Option_t* = "") const
TMatrixTBase<Element> & SetMatrixArray(const float* data, Option_t* = "")
{ memcpy(fElements,data,this->fNelems*sizeof(Element)); return *this; }
TMatrixTBase<Element> & SetMatrixArray(Int_t nr_nonzeros, Int_t* irow, Int_t* icol, float* data)
TMatrixTBase<Element> & InsertRow(Int_t row, Int_t col, const float* v, Int_t n = -1)
void ExtractRow(Int_t row, Int_t col, float* v, Int_t n = -1) const
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 TMatrixTSparse<float>& m)
void Clear(Option_t* = "")
TMatrixTSparse<Element> & Use(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Int_t nr_nonzeros, Int_t* pRowIndex, Int_t* pColIndex, float* pData)
TMatrixTSparse<Element> & Use(Int_t nrows, Int_t ncols, Int_t nr_nonzeros, Int_t* pRowIndex, Int_t* pColIndex, float* pData)
TMatrixTBase<Element> & GetSub(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, TMatrixTBase<float>& target, Option_t* option = "S") const
TMatrixTBase<Element> & SetSub(Int_t row_lwb, Int_t col_lwb, const TMatrixTBase<float>& source)
Bool_t IsSymmetric() const
{ return (*this == TMatrixTSparse<Element>(kTransposed,*this)); }
TMatrixTSparse<Element> & Transpose(const TMatrixTSparse<float>& source)
void Mult(const TMatrixTSparse<float>& a, const TMatrixTSparse<float>& b)
{ AMultB(a,b,0); }
TMatrixTBase<Element> & Zero()
TMatrixTBase<Element> & UnitMatrix()
Element RowNorm() const
Element ColNorm() const
Int_t NonZeros() const
{ return this->fNelems; }
TMatrixTBase<Element> & NormByDiag(const TVectorT<float>& , Option_t* )
{ MayNotUse("NormByDiag"); return *this; }
Element operator()(Int_t rown, Int_t coln) const
 Either access a_ij as a(i,j)
Element & operator()(Int_t rown, Int_t coln)
const TMatrixTSparseRow_const<Element> operator[](Int_t rown) const
 or as a[i][j]
{ return TMatrixTSparseRow_const<Element>(*this,rown); }
TMatrixTSparseRow <Element> operator[](Int_t rown)
{ return TMatrixTSparseRow <Element>(*this,rown); }
TMatrixTSparse<Element> & operator=(const TMatrixT<Element> &source)
TMatrixTSparse<Element> & operator=(const TMatrixTSparse<Element> &source)
TMatrixTSparse<Element> & operator=(Element val)
TMatrixTSparse<Element> & operator-=(Element val)
TMatrixTSparse<Element> & operator+=(Element val)
TMatrixTSparse<Element> & operator*=(Element val)
TMatrixTSparse<Element> & operator+=(const TMatrixTSparse<Element> &source)
TMatrixTSparse<Element> & operator+=(const TMatrixT<Element> &source)
TMatrixTSparse<Element> & operator-=(const TMatrixTSparse<Element> &source)
TMatrixTSparse<Element> & operator-=(const TMatrixT<Element> &source)
TMatrixTSparse<Element> & operator*=(const TMatrixTSparse<Element> &source)
else AMultB(tmp,source,1)
TMatrixTSparse<Element> & operator*=(const TMatrixT<Element> &source)
TMatrixTBase <Element> & Randomize(float alpha, float beta, Double_t& seed)
TMatrixTSparse<Element> & RandomizePD(float alpha, float beta, Double_t& seed)