92 virtual const double&
operator()(
const int& row,
const int& column)
const;
113 virtual void clear(
void);
115 virtual std::string
classname(
void)
const;
116 virtual double&
at(
const int& row,
const int& column);
117 virtual const double&
at(
const int& row,
const int& column)
const;
119 virtual void row(
const int& row,
const GVector& vector);
121 virtual void column(
const int& column,
const GVector& vector);
124 virtual double fill(
void)
const;
125 virtual double min(
void)
const;
126 virtual double max(
void)
const;
127 virtual double sum(
void)
const;
138 void eulery(
const double& angle);
139 void eulerz(
const double& angle);
double get_min_element(void) const
Return minimum matrix element.
GArf operator/(const GArf &arf, const double &scale)
Auxiliary Response File vision operator friend.
void scale_elements(const double &scalar)
Scale all matrix elements with a scalar.
Abstract matrix base class interface definition.
virtual std::string print(const GChatter &chatter=NORMAL) const
Print matrix.
virtual GMatrix & operator/=(const double &scalar)
Divide matrix elements.
Sparse matrix class interface definition.
GMatrix invert(void) const
Return inverted matrix.
virtual double & at(const int &row, const int &column)
Return reference to matrix element.
double get_element_sum(void) const
Returns sum over all matrix elements.
virtual void add_to_row(const int &row, const GVector &vector)
Add row to matrix elements.
virtual GMatrix operator-(void) const
Negate matrix elements.
virtual std::string classname(void) const
Return class name.
virtual GVector column(const int &column) const
Extract column as vector from matrix.
Symmetric matrix class interface definition.
void copy_members(const GMatrix &matrix)
Copy class members.
virtual void add_to_column(const int &column, const GVector &vector)
Add vector column into matrix.
virtual GVector row(const int &row) const
Extract row as vector from matrix.
void eulery(const double &angle)
Set Euler rotation matrix around y axis.
virtual void clear(void)
Clear matrix.
virtual double max(void) const
Return maximum matrix element.
void init_members(void)
Initialise class members.
virtual GMatrix & operator=(const GMatrix &matrix)
Matrix assignment operator.
virtual double & operator()(const int &row, const int &column)
Return reference to matrix element.
void eulerx(const double &angle)
Set Euler rotation matrix around x axis.
double * m_data
Matrix data.
Abstract matrix base class definition.
const int & rows(void) const
Return number of matrix rows.
GMatrix transpose(void) const
Return transposed matrix.
GVector solve(const GVector &vector) const
Solves linear matrix equation.
void eulerz(const double &angle)
Set Euler rotation matrix around z axis.
virtual GMatrix operator+(const GMatrix &matrix) const
Binary matrix addition.
virtual GVector operator*(const GVector &vector) const
Vector multiplication.
double get_max_element(void) const
Returns maximum matrix element.
virtual GMatrix & operator-=(const GMatrix &matrix)
Unary matrix subtraction operator.
double angle(const GVector &a, const GVector &b)
Computes angle between vectors.
GArf operator*(const GArf &arf, const double &scale)
Auxiliary Response File scaling operator friend.
virtual double fill(void) const
Return fill of matrix.
virtual GMatrix & operator*=(const GMatrix &matrix)
Unary matrix multiplication operator.
virtual GMatrix * clone(void) const
Clone matrix.
virtual double min(void) const
Return minimum matrix element.
void free_members(void)
Delete class members.
GMatrix(void)
Void matrix constructor.
virtual ~GMatrix(void)
Destructor.
virtual double sum(void) const
Return matrix element sum.
GMatrix extract_lower_triangle(void) const
Extract lower triangle of matrix.
GMatrix abs(void) const
Return absolute of matrix.
Generic matrix class definition.
int * m_colstart
Column start indices (m_cols+1)
const int & columns(void) const
Return number of matrix columns.
virtual GMatrix & operator+=(const GMatrix &matrix)
Unary matrix addition operator.
GMatrix extract_upper_triangle(void) const
Extract upper triangle of matrix.
void alloc_members(const int &rows, const int &columns)
Allocate matrix memory.