5#ifndef TRKALGS_ALSPAMAT_H
6#define TRKALGS_ALSPAMAT_H
58 virtual void reSize(
long int)
override final;
59 virtual void SetPathBin(
const std::string&)
override final;
60 virtual void SetPathTxt(
const std::string&)
override final;
61 virtual StatusCode
Write(
const std::string&,
bool,
bool,
double,
float)
override final;
62 virtual StatusCode
CheckMatVersion(
const std::string&,
bool&)
override final;
63 virtual StatusCode
Read(
const std::string&,
int&,
bool&,
float&)
override final;
64 virtual StatusCode
ReadProjected(
const std::string&,
int&,
bool&,
float&)
override final;
65 virtual int invert()
override final;
67 virtual double&
elemr(
long int,
long int)
override final;
68 virtual double elemc(
long int,
long int)
const override final;
69 inline long int nele();
72 inline void elem(
const indices&,
long int&,
long int&)
const;
73 inline const std::string&
pathBin()
const;
74 inline const std::string&
pathTxt()
const;
97 if(j>i)
throw std::out_of_range(
"AlSpaMat::elem: i<j ! " );
103 if(
int(
m_ptr_map.size()) !=
m_nele )
throw std::range_error(
"AlSpaMat::m_nele has been corrupted!" );
class TMatrixTSparse< double > TMatrixDSparse
contains the implementation of the methods of class AlMat, for handling general NxM matrices
AlMat operator*(const AlSymMatBase &) const
virtual StatusCode Read(const std::string &, int &, bool &, float &) override final
virtual int RemoveCollsRows(std::vector< int >) override final
AlSpaMat & operator*=(const double &)
virtual StatusCode ReadProjected(const std::string &, int &, bool &, float &) override final
AlSpaMat operator+(const AlSpaMat &) const
virtual double determinant() override final
AlSpaMat & operator-=(const AlSpaMat &)
virtual double elemc(long int, long int) const override final
const std::string & pathTxt() const
virtual void RemoveAlignPar(int, int) override final
virtual int diagonalize(char jobz, AlVec &w, AlMat &z) override final
virtual TMatrixDSparse * makeTMatrix() override final
virtual double & elemr(long int, long int) override final
void RemoveDoF(int, int nelem=1)
AlSpaMat & operator+=(const AlSpaMat &)
virtual void SetPathTxt(const std::string &) override final
AlSpaMat & operator=(const double &)
void elem(const indices &, long int &, long int &) const
const std::string & pathBin() const
int SolveWithEigen(AlVec &RHS)
AlSpaMat operator-(const AlSpaMat &) const
virtual StatusCode CheckMatVersion(const std::string &, bool &) override final
virtual int invert() override final
virtual void reSize(long int) override final
void copy(const AlSpaMat &m)
virtual void RemoveModule(int) override final
virtual void SetPathBin(const std::string &) override final
virtual StatusCode Write(const std::string &, bool, bool, double, float) override final
contains the implementation for handling symmetric matrices in triangular representation
Ensure that the ATLAS eigen extensions are properly loaded.
@ z
global position (cartesian)
std::pair< long int, long int > indices