35#ifndef G4ErrorSymMatrix_hh
36#define G4ErrorSymMatrix_hh
219 std::vector<G4double>
m;
void diag_step(G4ErrorSymMatrix *t, G4int begin, G4int end)
void tridiagonal(G4ErrorSymMatrix *a, G4ErrorMatrix *hsm)
G4ErrorMatrix diagonalize(G4ErrorSymMatrix *s)
void house_with_update2(G4ErrorSymMatrix *a, G4ErrorMatrix *v, G4int row=1, G4int col=1)
G4double condition(const G4ErrorSymMatrix &m)
G4ErrorSymMatrix dsum(const G4ErrorSymMatrix &s1, const G4ErrorSymMatrix &s2)
static constexpr double m
static constexpr double s
static constexpr double m2
G4ErrorSymMatrix_row_const(const G4ErrorSymMatrix &, G4int)
const G4ErrorSymMatrix & _a
const G4double & operator[](G4int) const
G4ErrorSymMatrix_row(G4ErrorSymMatrix &, G4int)
G4double & operator[](G4int)
void invert6(G4int &ifail)
G4ErrorSymMatrix similarityT(const G4ErrorMatrix &m1) const
friend void diag_step(G4ErrorSymMatrix *t, G4int begin, G4int end)
G4ErrorSymMatrix(G4ErrorSymMatrix &&)=default
void invertCholesky6(G4int &ifail)
void assign(const G4ErrorSymMatrix &m2)
friend G4ErrorSymMatrix operator+(const G4ErrorSymMatrix &m1, const G4ErrorSymMatrix &m2)
void invert(G4int &ifail)
void assign(const G4ErrorMatrix &m2)
const G4double & fast(G4int row, G4int col) const
void invertHaywood6(G4int &ifail)
friend void tridiagonal(G4ErrorSymMatrix *a, G4ErrorMatrix *hsm)
void invertHaywood5(G4int &ifail)
friend G4ErrorMatrix diagonalize(G4ErrorSymMatrix *s)
static G4ThreadLocal G4double adjustment5x5
static G4ThreadLocal G4double posDefFraction6x6
static const G4double CHOLESKY_CREEP_5x5
G4ErrorSymMatrix sub(G4int min_row, G4int max_row) const
G4ErrorSymMatrix apply(G4double(*f)(G4double, G4int, G4int)) const
G4ErrorSymMatrix operator-() const
const G4double & operator()(G4int row, G4int col) const
G4double & fast(G4int row, G4int col)
G4double determinant() const
G4ErrorSymMatrix & operator/=(G4double t)
G4ErrorSymMatrix inverse(G4int &ifail) const
G4ErrorSymMatrix & operator*=(G4double t)
friend G4double condition(const G4ErrorSymMatrix &m)
G4ErrorSymMatrix_row_const operator[](G4int) const
std::vector< G4double > m
static G4ThreadLocal G4double adjustment6x6
G4ErrorSymMatrix & operator=(G4ErrorSymMatrix &&)=default
void invertHaywood4(G4int &ifail)
G4ErrorSymMatrix & operator+=(const G4ErrorSymMatrix &m2)
virtual ~G4ErrorSymMatrix()
friend void house_with_update2(G4ErrorSymMatrix *a, G4ErrorMatrix *v, G4int row, G4int col)
static const G4double CHOLESKY_CREEP_6x6
G4ErrorSymMatrix_row operator[](G4int)
G4ErrorSymMatrix & operator-=(const G4ErrorSymMatrix &m2)
static const G4double CHOLESKY_THRESHOLD_6x6
G4ErrorSymMatrix similarity(const G4ErrorMatrix &m1) const
void invert4(G4int &ifail)
void invertCholesky5(G4int &ifail)
static G4ThreadLocal G4double posDefFraction5x5
friend void diag_step(G4ErrorSymMatrix *t, G4ErrorMatrix *u, G4int begin, G4int end)
G4ErrorSymMatrix T() const
G4ErrorSymMatrix & operator=(const G4ErrorSymMatrix &m2)
static const G4double CHOLESKY_THRESHOLD_5x5
friend G4ErrorMatrix operator*(const G4ErrorSymMatrix &m1, const G4ErrorSymMatrix &m2)
void invert5(G4int &ifail)
G4double & operator()(G4int row, G4int col)
void invertBunchKaufman(G4int &ifail)
BasicVector3D< float > operator*(const BasicVector3D< float > &v, double a)
BasicVector3D< float > operator/(const BasicVector3D< float > &v, double a)
BasicVector3D< float > operator-(const BasicVector3D< float > &v)
std::ostream & operator<<(std::ostream &, const BasicVector3D< float > &)
BasicVector3D< float > operator+(const BasicVector3D< float > &v)