TMatrixTSym<double>
class description - header file - source file - inheritance tree (.pdf)
protected:
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 = -1)
void Delete_m(Int_t size, double*&)
Int_t Memcpy_m(double* newp, const double* oldp, Int_t copySize, Int_t newSize, Int_t oldSize)
double* New_m(Int_t size)
public:
TMatrixTSym<double>()
TMatrixTSym<double>(Int_t nrows)
TMatrixTSym<double>(Int_t row_lwb, Int_t row_upb)
TMatrixTSym<double>(Int_t nrows, const double* data, Option_t* option = "")
TMatrixTSym<double>(Int_t row_lwb, Int_t row_upb, const double* data, Option_t* option = "")
TMatrixTSym<double>(const TMatrixTSym<double>& another)
TMatrixTSym<double>(TMatrixTSym<double>::EMatrixCreatorsOp1 op, const TMatrixTSym<double>& prototype)
TMatrixTSym<double>(TMatrixTSym<double>::EMatrixCreatorsOp1 op, const TMatrixT<double>& prototype)
TMatrixTSym<double>(const TMatrixTSym<double>& a, TMatrixTSym<double>::EMatrixCreatorsOp2 op, const TMatrixTSym<double>& b)
TMatrixTSym<double>(const TMatrixTSymLazy<double>& lazy_constructor)
TMatrixTSym<double> GetSub(Int_t row_lwb, Int_t row_upb, Int_t col_lwb, Int_t col_upb, Option_t* option = "S") const
virtual ~TMatrixTSym<double>()
virtual TMatrixTBase<double>& Apply(const TElementActionT<double>& action)
virtual TMatrixTBase<double>& Apply(const TElementPosActionT<double>& action)
static TClass* Class()
virtual void Clear(Option_t* = "")
virtual Double_t Determinant() const
virtual void Determinant(Double_t& d1, Double_t& d2) const
const TMatrixT<double> EigenVectors(TVectorT<double>& eigenValues) const
virtual const Int_t* GetColIndexArray() const
virtual Int_t* GetColIndexArray()
virtual const double* GetMatrixArray() const
virtual double* GetMatrixArray()
virtual const Int_t* GetRowIndexArray() const
virtual Int_t* GetRowIndexArray()
TMatrixTSym<double>& GetSub(Int_t row_lwb, Int_t row_upb, TMatrixTSym<double>& target, 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
TMatrixTSym<double>& Invert(Double_t* det = 0)
TMatrixTSym<double>& InvertFast(Double_t* det = 0)
virtual TClass* IsA() const
virtual Bool_t IsSymmetric() const
void Minus(const TMatrixTSym<double>& a, const TMatrixTSym<double>& b)
void Mult(const TMatrixTSym<double>& a)
virtual double operator()(Int_t rown, Int_t coln) const
virtual double& operator()(Int_t rown, Int_t coln)
TMatrixTSym<double>& operator*=(double val)
TMatrixTSym<double>& operator+=(double val)
TMatrixTSym<double>& operator+=(const TMatrixTSym<double>& source)
TMatrixTSym<double>& operator-=(double val)
TMatrixTSym<double>& operator-=(const TMatrixTSym<double>& source)
TMatrixTSym<double>& operator=(const TMatrixTSym<double>& source)
TMatrixTSym<double>& operator=(const TMatrixTSymLazy<double>& source)
TMatrixTSym<double>& operator=(double val)
const TMatrixTRow_const<double> operator[](Int_t rown) const
TMatrixTRow<double> operator[](Int_t rown)
void Plus(const TMatrixTSym<double>& a, const TMatrixTSym<double>& b)
virtual TMatrixTBase<double>& Randomize(double alpha, double beta, Double_t& seed)
virtual TMatrixTSym<double>& RandomizePD(double alpha, double beta, Double_t& seed)
TMatrixTSym<double>& Rank1Update(const TVectorT<double>& v, double alpha = 1.0)
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)
TMatrixTBase<double>& ResizeTo(const TMatrixTSym<double>& m)
virtual TMatrixTBase<double>& SetColIndexArray(Int_t*)
virtual TMatrixTBase<double>& SetMatrixArray(const double* data, Option_t* option = "")
virtual TMatrixTBase<double>& SetRowIndexArray(Int_t*)
TMatrixTSym<double>& SetSub(Int_t row_lwb, const TMatrixTBase<double>& source)
virtual TMatrixTBase<double>& SetSub(Int_t row_lwb, Int_t col_lwb, const TMatrixTBase<double>& source)
virtual TMatrixTBase<double>& Shift(Int_t row_shift, Int_t col_shift)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
TMatrixTSym<double>& Similarity(const TMatrixT<double>& n)
TMatrixTSym<double>& Similarity(const TMatrixTSym<double>& n)
double Similarity(const TVectorT<double>& v) const
TMatrixTSym<double>& SimilarityT(const TMatrixT<double>& n)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
TMatrixTSym<double>& T()
void TMult(const TMatrixT<double>& a)
void TMult(const TMatrixTSym<double>& a)
TMatrixTSym<double>& Transpose(const TMatrixTSym<double>& source)
TMatrixTSym<double>& Use(Int_t nrows, double* data)
TMatrixTSym<double>& Use(Int_t row_lwb, Int_t row_upb, double* data)
TMatrixTSym<double>& Use(TMatrixTSym<double>& a)
protected:
double fDataStack[25] ! data container
double* fElements [fNelems] elements themselves
public:
static const enum TMatrixTSym<double>:: kWorkMax
static const TMatrixTSym<double>::EMatrixCreatorsOp1 kZero
static const TMatrixTSym<double>::EMatrixCreatorsOp1 kUnit
static const TMatrixTSym<double>::EMatrixCreatorsOp1 kTransposed
static const TMatrixTSym<double>::EMatrixCreatorsOp1 kInverted
static const TMatrixTSym<double>::EMatrixCreatorsOp1 kAtA
static const TMatrixTSym<double>::EMatrixCreatorsOp2 kPlus
static const TMatrixTSym<double>::EMatrixCreatorsOp2 kMinus
TMatrixTSym
Template class of a symmetric matrix in the linear algebra package
Note that in this implementation both matrix element m[i][j] and
m[j][i] are updated and stored in memory . However, when making the
object persistent only the upper right triangle is stored .
void TMult(const TMatrixT <Element> &a)
Elementary constructors
void TMult(const TMatrixTSym<Element> &a)
void Minus(const TMatrixTSym<Element> &a,const TMatrixTSym<Element> &b)
const TMatrixT<Element> EigenVectors(TVectorT<Element> &eigenValues)
Last update: root/matrix:$Name: $:$Id: TMatrixTSym.cxx,v 1.15 2006/05/22 04:53:26 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.