CLHEP 2.4.7.1
C++ Class Library for High Energy Physics
Classes | Public Member Functions | Protected Member Functions | Friends | List of all members
CLHEP::HepMatrix Class Reference

#include <CLHEP/Matrix/Matrix.h>

Inheritance diagram for CLHEP::HepMatrix:
CLHEP::HepGenMatrix

Classes

class  HepMatrix_row
 
class  HepMatrix_row_const
 

Public Member Functions

 HepMatrix ()
 
 HepMatrix (int p, int q)
 
 HepMatrix (int p, int q, int i)
 
 HepMatrix (int p, int q, HepRandom &r)
 
 HepMatrix (const HepMatrix &hm1)
 
 HepMatrix (const HepSymMatrix &)
 
 HepMatrix (const HepDiagMatrix &)
 
 HepMatrix (const HepVector &)
 
virtual ~HepMatrix ()
 
virtual int num_row () const
 
virtual int num_col () const
 
virtual const double & operator() (int row, int col) const
 
virtual double & operator() (int row, int col)
 
HepMatrixoperator*= (double t)
 
HepMatrixoperator/= (double t)
 
HepMatrixoperator+= (const HepMatrix &)
 
HepMatrixoperator+= (const HepSymMatrix &)
 
HepMatrixoperator+= (const HepDiagMatrix &)
 
HepMatrixoperator+= (const HepVector &)
 
HepMatrixoperator-= (const HepMatrix &)
 
HepMatrixoperator-= (const HepSymMatrix &)
 
HepMatrixoperator-= (const HepDiagMatrix &)
 
HepMatrixoperator-= (const HepVector &)
 
HepMatrixoperator= (const HepMatrix &)
 
HepMatrixoperator= (const HepSymMatrix &)
 
HepMatrixoperator= (const HepDiagMatrix &)
 
HepMatrixoperator= (const HepVector &)
 
HepMatrixoperator= (const HepRotation &)
 
HepMatrix operator- () const
 
HepMatrix apply (double(*f)(double, int, int)) const
 
HepMatrix T () const
 
HepMatrix sub (int min_row, int max_row, int min_col, int max_col) const
 
void sub (int row, int col, const HepMatrix &hm1)
 
HepMatrix inverse (int &ierr) const
 
virtual void invert (int &ierr)
 
void invert ()
 
HepMatrix inverse () const
 
double determinant () const
 
double trace () const
 
HepMatrix_row operator[] (int)
 
const HepMatrix_row_const operator[] (int) const
 
- Public Member Functions inherited from CLHEP::HepGenMatrix
virtual ~HepGenMatrix ()
 
HepGenMatrix_row operator[] (int)
 
const HepGenMatrix_row_const operator[] (int) const
 
virtual bool operator== (const HepGenMatrix &) const
 

Protected Member Functions

virtual int num_size () const
 
virtual void invertHaywood4 (int &ierr)
 
virtual void invertHaywood5 (int &ierr)
 
virtual void invertHaywood6 (int &ierr)
 
- Protected Member Functions inherited from CLHEP::HepGenMatrix
void delete_m (int size, double *)
 
double * new_m (int size)
 

Friends

class HepMatrix_row
 
class HepMatrix_row_const
 
class HepVector
 
class HepSymMatrix
 
class HepDiagMatrix
 
void swap (HepMatrix &hm1, HepMatrix &hm2)
 
HepMatrix operator+ (const HepMatrix &hm1, const HepMatrix &hm2)
 
HepMatrix operator- (const HepMatrix &hm1, const HepMatrix &hm2)
 
HepMatrix operator* (const HepMatrix &hm1, const HepMatrix &hm2)
 
HepMatrix operator* (const HepMatrix &hm1, const HepSymMatrix &hm2)
 
HepMatrix operator* (const HepMatrix &hm1, const HepDiagMatrix &hm2)
 
HepMatrix operator* (const HepSymMatrix &hm1, const HepMatrix &hm2)
 
HepMatrix operator* (const HepDiagMatrix &hm1, const HepMatrix &hm2)
 
HepMatrix operator* (const HepVector &hm1, const HepMatrix &hm2)
 
HepVector operator* (const HepMatrix &hm1, const HepVector &hm2)
 
HepMatrix operator* (const HepSymMatrix &hm1, const HepSymMatrix &hm2)
 
HepVector solve (const HepMatrix &, const HepVector &)
 
HepVector qr_solve (HepMatrix *, const HepVector &)
 
HepMatrix qr_solve (HepMatrix *, const HepMatrix &b)
 
void tridiagonal (HepSymMatrix *a, HepMatrix *hsm)
 
void row_house (HepMatrix *, const HepMatrix &, double, int, int, int, int)
 
void row_house (HepMatrix *, const HepVector &, double, int, int)
 
void back_solve (const HepMatrix &R, HepVector *b)
 
void back_solve (const HepMatrix &R, HepMatrix *b)
 
void col_givens (HepMatrix *A, double c, double s, int k1, int k2, int rowmin, int rowmax)
 
void row_givens (HepMatrix *A, double c, double s, int k1, int k2, int colmin, int colmax)
 
void col_house (HepMatrix *, const HepMatrix &, double, int, int, int, int)
 
HepVector house (const HepMatrix &a, int row, int col)
 
void house_with_update (HepMatrix *a, int row, int col)
 
void house_with_update (HepMatrix *a, HepMatrix *v, int row, int col)
 
void house_with_update2 (HepSymMatrix *a, HepMatrix *v, int row, int col)
 

Additional Inherited Members

- Public Types inherited from CLHEP::HepGenMatrix
enum  { size_max = 25 }
 
typedef std::vector< double, Alloc< double, 25 > >::iterator mIter
 
typedef std::vector< double, Alloc< double, 25 > >::const_iterator mcIter
 
- Static Public Member Functions inherited from CLHEP::HepGenMatrix
static void swap (int &, int &)
 
static void swap (std::vector< double, Alloc< double, 25 > > &, std::vector< double, Alloc< double, 25 > > &)
 
static void error (const char *s)
 

Detailed Description

Author

Definition at line 205 of file Matrix.h.

Constructor & Destructor Documentation

◆ HepMatrix() [1/8]

CLHEP::HepMatrix::HepMatrix ( )
inline

Definition at line 14 of file Matrix.icc.

◆ HepMatrix() [2/8]

CLHEP::HepMatrix::HepMatrix ( int  p,
int  q 
)

◆ HepMatrix() [3/8]

CLHEP::HepMatrix::HepMatrix ( int  p,
int  q,
int  i 
)

◆ HepMatrix() [4/8]

CLHEP::HepMatrix::HepMatrix ( int  p,
int  q,
HepRandom r 
)

◆ HepMatrix() [5/8]

CLHEP::HepMatrix::HepMatrix ( const HepMatrix hm1)

◆ HepMatrix() [6/8]

CLHEP::HepMatrix::HepMatrix ( const HepSymMatrix )

◆ HepMatrix() [7/8]

CLHEP::HepMatrix::HepMatrix ( const HepDiagMatrix )

◆ HepMatrix() [8/8]

CLHEP::HepMatrix::HepMatrix ( const HepVector )

◆ ~HepMatrix()

virtual CLHEP::HepMatrix::~HepMatrix ( )
virtual

Member Function Documentation

◆ apply()

HepMatrix CLHEP::HepMatrix::apply ( double(*)(double, int, int)  f) const

◆ determinant()

double CLHEP::HepMatrix::determinant ( ) const

◆ inverse() [1/2]

HepMatrix CLHEP::HepMatrix::inverse ( ) const
inline

Definition at line 90 of file Matrix.icc.

References inverse().

Referenced by inverse().

◆ inverse() [2/2]

HepMatrix CLHEP::HepMatrix::inverse ( int &  ierr) const
inline

Definition at line 78 of file Matrix.icc.

Referenced by Genfun::CubicSplinePolynomial::Clockwork::computeSlopes().

◆ invert() [1/2]

void CLHEP::HepMatrix::invert ( )
inline

Definition at line 97 of file Matrix.icc.

References invert().

Referenced by invert().

◆ invert() [2/2]

virtual void CLHEP::HepMatrix::invert ( int &  ierr)
virtual

Implements CLHEP::HepGenMatrix.

◆ invertHaywood4()

virtual void CLHEP::HepMatrix::invertHaywood4 ( int &  ierr)
protectedvirtual

◆ invertHaywood5()

virtual void CLHEP::HepMatrix::invertHaywood5 ( int &  ierr)
protectedvirtual

◆ invertHaywood6()

virtual void CLHEP::HepMatrix::invertHaywood6 ( int &  ierr)
protectedvirtual

◆ num_col()

virtual int CLHEP::HepMatrix::num_col ( ) const
virtual

◆ num_row()

virtual int CLHEP::HepMatrix::num_row ( ) const
virtual

◆ num_size()

virtual int CLHEP::HepMatrix::num_size ( ) const
protectedvirtual

Implements CLHEP::HepGenMatrix.

◆ operator()() [1/2]

virtual double & CLHEP::HepMatrix::operator() ( int  row,
int  col 
)
virtual

Implements CLHEP::HepGenMatrix.

◆ operator()() [2/2]

virtual const double & CLHEP::HepMatrix::operator() ( int  row,
int  col 
) const
virtual

Implements CLHEP::HepGenMatrix.

◆ operator*=()

HepMatrix & CLHEP::HepMatrix::operator*= ( double  t)

◆ operator+=() [1/4]

HepMatrix & CLHEP::HepMatrix::operator+= ( const HepDiagMatrix )

◆ operator+=() [2/4]

HepMatrix & CLHEP::HepMatrix::operator+= ( const HepMatrix )

◆ operator+=() [3/4]

HepMatrix & CLHEP::HepMatrix::operator+= ( const HepSymMatrix )

◆ operator+=() [4/4]

HepMatrix & CLHEP::HepMatrix::operator+= ( const HepVector )

◆ operator-()

HepMatrix CLHEP::HepMatrix::operator- ( ) const

◆ operator-=() [1/4]

HepMatrix & CLHEP::HepMatrix::operator-= ( const HepDiagMatrix )

◆ operator-=() [2/4]

HepMatrix & CLHEP::HepMatrix::operator-= ( const HepMatrix )

◆ operator-=() [3/4]

HepMatrix & CLHEP::HepMatrix::operator-= ( const HepSymMatrix )

◆ operator-=() [4/4]

HepMatrix & CLHEP::HepMatrix::operator-= ( const HepVector )

◆ operator/=()

HepMatrix & CLHEP::HepMatrix::operator/= ( double  t)

◆ operator=() [1/5]

HepMatrix & CLHEP::HepMatrix::operator= ( const HepDiagMatrix )

◆ operator=() [2/5]

HepMatrix & CLHEP::HepMatrix::operator= ( const HepMatrix )

◆ operator=() [3/5]

HepMatrix & CLHEP::HepMatrix::operator= ( const HepRotation )

◆ operator=() [4/5]

HepMatrix & CLHEP::HepMatrix::operator= ( const HepSymMatrix )

◆ operator=() [5/5]

HepMatrix & CLHEP::HepMatrix::operator= ( const HepVector )

◆ operator[]() [1/2]

HepMatrix::HepMatrix_row CLHEP::HepMatrix::operator[] ( int  r)
inline

Definition at line 17 of file Matrix.icc.

◆ operator[]() [2/2]

const HepMatrix::HepMatrix_row_const CLHEP::HepMatrix::operator[] ( int  r) const
inline

Definition at line 28 of file Matrix.icc.

◆ sub() [1/2]

HepMatrix CLHEP::HepMatrix::sub ( int  min_row,
int  max_row,
int  min_col,
int  max_col 
) const

◆ sub() [2/2]

void CLHEP::HepMatrix::sub ( int  row,
int  col,
const HepMatrix hm1 
)

◆ T()

HepMatrix CLHEP::HepMatrix::T ( ) const

◆ trace()

double CLHEP::HepMatrix::trace ( ) const

Friends And Related Symbol Documentation

◆ back_solve [1/2]

void back_solve ( const HepMatrix R,
HepMatrix b 
)
friend

◆ back_solve [2/2]

void back_solve ( const HepMatrix R,
HepVector b 
)
friend

◆ col_givens

void col_givens ( HepMatrix A,
double  c,
double  s,
int  k1,
int  k2,
int  rowmin,
int  rowmax 
)
friend

◆ col_house

void col_house ( HepMatrix ,
const HepMatrix ,
double  ,
int  ,
int  ,
int  ,
int   
)
friend

◆ HepDiagMatrix

friend class HepDiagMatrix
friend

Definition at line 345 of file Matrix.h.

◆ HepMatrix_row

friend class HepMatrix_row
friend

Definition at line 341 of file Matrix.h.

◆ HepMatrix_row_const

friend class HepMatrix_row_const
friend

Definition at line 342 of file Matrix.h.

◆ HepSymMatrix

friend class HepSymMatrix
friend

Definition at line 344 of file Matrix.h.

◆ HepVector

friend class HepVector
friend

Definition at line 343 of file Matrix.h.

◆ house

HepVector house ( const HepMatrix a,
int  row,
int  col 
)
friend

◆ house_with_update [1/2]

void house_with_update ( HepMatrix a,
HepMatrix v,
int  row,
int  col 
)
friend

◆ house_with_update [2/2]

void house_with_update ( HepMatrix a,
int  row,
int  col 
)
friend

◆ house_with_update2

void house_with_update2 ( HepSymMatrix a,
HepMatrix v,
int  row,
int  col 
)
friend

◆ operator* [1/8]

HepMatrix operator* ( const HepDiagMatrix hm1,
const HepMatrix hm2 
)
friend

◆ operator* [2/8]

HepMatrix operator* ( const HepMatrix hm1,
const HepDiagMatrix hm2 
)
friend

◆ operator* [3/8]

HepMatrix operator* ( const HepMatrix hm1,
const HepMatrix hm2 
)
friend

◆ operator* [4/8]

HepMatrix operator* ( const HepMatrix hm1,
const HepSymMatrix hm2 
)
friend

◆ operator* [5/8]

HepVector operator* ( const HepMatrix hm1,
const HepVector hm2 
)
friend

◆ operator* [6/8]

HepMatrix operator* ( const HepSymMatrix hm1,
const HepMatrix hm2 
)
friend

◆ operator* [7/8]

HepMatrix operator* ( const HepSymMatrix hm1,
const HepSymMatrix hm2 
)
friend

◆ operator* [8/8]

HepMatrix operator* ( const HepVector hm1,
const HepMatrix hm2 
)
friend

◆ operator+

HepMatrix operator+ ( const HepMatrix hm1,
const HepMatrix hm2 
)
friend

◆ operator-

HepMatrix operator- ( const HepMatrix hm1,
const HepMatrix hm2 
)
friend

◆ qr_solve [1/2]

HepMatrix qr_solve ( HepMatrix ,
const HepMatrix b 
)
friend

◆ qr_solve [2/2]

HepVector qr_solve ( HepMatrix ,
const HepVector  
)
friend

◆ row_givens

void row_givens ( HepMatrix A,
double  c,
double  s,
int  k1,
int  k2,
int  colmin,
int  colmax 
)
friend

◆ row_house [1/2]

void row_house ( HepMatrix ,
const HepMatrix ,
double  ,
int  ,
int  ,
int  ,
int   
)
friend

◆ row_house [2/2]

void row_house ( HepMatrix ,
const HepVector ,
double  ,
int  ,
int   
)
friend

◆ solve

HepVector solve ( const HepMatrix ,
const HepVector  
)
friend

◆ swap

void swap ( HepMatrix hm1,
HepMatrix hm2 
)
friend

Definition at line 69 of file Matrix.icc.

◆ tridiagonal

void tridiagonal ( HepSymMatrix a,
HepMatrix hsm 
)
friend

The documentation for this class was generated from the following files: