15 #ifndef _DIAGMatrix_H_
16 #define _DIAGMatrix_H_
24 #include "CLHEP/Matrix/defs.h"
25 #include "CLHEP/Matrix/GenMatrix.h"
64 const double &
operator()(
int row,
int col)
const;
68 double &
fast(
int row,
int col);
69 const double &
fast(
int row,
int col)
const;
142 double trace()
const;
190 std::vector<double > m;
192 std::vector<double,Alloc<double,25> > m;
195 #if defined(__sun) || !defined(__GNUG__)
201 static const double zero;
237 #ifdef ENABLE_BACKWARDS_COMPATIBILITY
239 using namespace CLHEP;
242 #ifndef HEP_DEBUG_INLINE
243 #include "CLHEP/Matrix/DiagMatrix.icc"
Hep3Vector operator+(const Hep3Vector &, const Hep3Vector &)
HepDiagMatrix_row operator[](int)
HepDiagMatrix & operator=(const HepDiagMatrix &hm2)
HepLorentzVector operator/(const HepLorentzVector &, double a)
HepDiagMatrix operator-() const
HepDiagMatrix & operator/=(double t)
const double & operator[](int) const
HepDiagMatrix sub(int min_row, int max_row) const
HepLorentzRotation operator*(const HepRotation &r, const HepLorentzRotation <)
friend HepDiagMatrix operator+(const HepDiagMatrix &hm1, const HepDiagMatrix &hm2)
HepSymMatrix similarityT(const HepMatrix &hm1) const
HepDiagMatrix dsum(const HepDiagMatrix &s1, const HepDiagMatrix &s2)
HepDiagMatrix inverse() const
double determinant() const
HepDiagMatrix apply(double(*f)(double, int, int)) const
HepDiagMatrix & operator-=(const HepDiagMatrix &hm2)
void assign(const HepMatrix &hm2)
HepDiagMatrix & operator+=(const HepDiagMatrix &hm2)
HepDiagMatrix_row(HepDiagMatrix &, int)
double & fast(int row, int col)
HepDiagMatrix_row_const(const HepDiagMatrix &, int)
Hep3Vector operator-(const Hep3Vector &, const Hep3Vector &)
double & operator()(int row, int col)
friend HepDiagMatrix operator*(const HepDiagMatrix &hm1, const HepDiagMatrix &hm2)
HepSymMatrix similarity(const HepMatrix &hm1) const
std::ostream & operator<<(std::ostream &os, const HepAxisAngle &aa)
HepDiagMatrix & operator*=(double t)