Go to the documentation of this file.
193 #include "CLHEP/Matrix/defs.h"
194 #include "CLHEP/Matrix/GenMatrix.h"
242 virtual const double &
operator()(
int row,
int col)
const;
243 virtual double &
operator()(
int row,
int col);
280 HepMatrix sub(
int min_row,
int max_row,
int min_col,
int max_col)
const;
294 virtual void invert(
int& ierr);
310 double trace()
const;
376 double s,
int k1,
int k2,
377 int rowmin,
int rowmax);
380 double s,
int k1,
int k2,
381 int colmin,
int colmax);
390 int dfact_matrix(
double &det,
int *ir);
395 int dfinv_matrix(
int *ir);
399 std::vector<double > m;
401 std::vector<double,Alloc<double,25> > m;
467 int row,
int col,
int row_start,
int col_start);
469 int row_start,
int col_start);
473 int k1,
int k2,
int row_min=1,
int row_max=0);
477 int k1,
int k2,
int col_min=1,
int col_max=0);
480 void givens(
double a,
double b,
double *c,
double *s);
491 int row=1,
int col=1);
493 int row,
int col,
int row_start,
int col_start);
495 int row_start,
int col_start);
500 #ifdef ENABLE_BACKWARDS_COMPATIBILITY
502 using namespace CLHEP;
505 #ifndef HEP_DEBUG_INLINE
506 #include "CLHEP/Matrix/Matrix.icc"
void row_givens(HepMatrix *A, double c, double s, int k1, int k2, int col_min=1, int col_max=0)
HepVector house(const HepMatrix &a, int row=1, int col=1)
HepMatrix inverse() const
void house_with_update(HepMatrix *a, int row=1, int col=1)
HepVector solve(const HepMatrix &, const HepVector &)
friend void col_house(HepMatrix *, const HepMatrix &, double, int, int, int, int)
friend HepMatrix operator*(const HepMatrix &hm1, const HepMatrix &hm2)
friend void row_givens(HepMatrix *A, double c, double s, int k1, int k2, int colmin, int colmax)
friend void house_with_update2(HepSymMatrix *a, HepMatrix *v, int row, int col)
HepMatrix qr_inverse(const HepMatrix &A)
void back_solve(const HepMatrix &R, HepVector *b)
virtual int num_row() const
friend void row_house(HepMatrix *, const HepMatrix &, double, int, int, int, int)
friend HepMatrix operator+(const HepMatrix &hm1, const HepMatrix &hm2)
friend HepVector house(const HepMatrix &a, int row, int col)
friend void col_givens(HepMatrix *A, double c, double s, int k1, int k2, int rowmin, int rowmax)
HepMatrix operator-() const
HepMatrix_row operator[](int)
HepMatrix_row_const(const HepMatrix &, int)
friend void house_with_update(HepMatrix *a, int row, int col)
HepVector qr_solve(const HepMatrix &A, const HepVector &b)
HepMatrix & operator=(const HepMatrix &)
double determinant() const
friend void back_solve(const HepMatrix &R, HepVector *b)
friend void tridiagonal(HepSymMatrix *a, HepMatrix *hsm)
HepMatrix & operator+=(const HepMatrix &)
void qr_decomp(HepMatrix *A, HepMatrix *hsm)
HepLorentzVector operator/(const HepLorentzVector &, double a)
HepMatrix apply(double(*f)(double, int, int)) const
Hep3Vector operator-(const Hep3Vector &, const Hep3Vector &)
they are gone ZOOM Features Discontinued The following features of the ZOOM package were felt to be extreme overkill These have been after checking that no existing user code was utilizing as in SpaceVector v
HepMatrix sub(int min_row, int max_row, int min_col, int max_col) const
virtual void invertHaywood6(int &ierr)
HepMatrix_row(HepMatrix &, int)
void row_house(HepMatrix *a, const HepVector &v, double vnormsq, int row=1, int col=1)
const double & operator[](int) const
friend HepVector solve(const HepMatrix &, const HepVector &)
virtual void invertHaywood4(int &ierr)
HepMatrix & operator-=(const HepMatrix &)
virtual void invertHaywood5(int &ierr)
friend HepVector qr_solve(HepMatrix *, const HepVector &)
virtual const double & operator()(int row, int col) const
void col_house(HepMatrix *a, const HepMatrix &v, double vnormsq, int row, int col, int row_start, int col_start)
Hep3Vector operator+(const Hep3Vector &, const Hep3Vector &)
HepMatrix & operator*=(double t)
friend void swap(HepMatrix &hm1, HepMatrix &hm2)
Application of Rotations and LorentzTransformations to containers of and as in Rotation R
std::ostream & operator<<(std::ostream &os, const HepAxisAngle &aa)
void givens(double a, double b, double *c, double *s)
void col_givens(HepMatrix *A, double c, double s, int k1, int k2, int row_min=1, int row_max=0)
HepLorentzRotation operator*(const HepRotation &r, const HepLorentzRotation <)
HepDiagMatrix dsum(const HepDiagMatrix &s1, const HepDiagMatrix &s2)
virtual int num_col() const
HepMatrix & operator/=(double t)
virtual int num_size() const