Mass++ Common Libraries v2.7.5
 All Classes Namespaces Files Functions Variables Enumerations Macros
Matrix.h
Go to the documentation of this file.
1 
11 #ifndef __KOME_CORE_MATRIX_H__
12 #define __KOME_CORE_MATRIX_H__
13 
14 
15 #include "Vector.h"
16 
17 
18 namespace kome {
19  namespace core {
20 
25  class CORE_TOOLKITS_CLASS Matrix {
26  public:
33  Matrix( const unsigned int row, const unsigned int col );
34 
40  Matrix( const Matrix& mat );
41 
46  virtual ~Matrix();
47 
48  public:
50  const unsigned int m_row;
52  const unsigned int m_col;
54  double* const m_array;
55 
56  public:
62  unsigned int getRowSize();
63 
69  unsigned int getColSize();
70 
71  public:
77  double det();
78 
86  double cofactor( const unsigned int row, const unsigned int col );
87 
93  Matrix invert();
94 
100  Vector multiply( Vector& v );
101 
102  public:
109  Matrix operator=( const Matrix& m );
110 
118  double& operator()( const unsigned int row, const unsigned int col );
119 
126  Matrix& operator+=( const Matrix& m );
127 
134  Matrix& operator-=( const Matrix& m );
135 
142  Matrix& operator*=( const double k );
143 
150  Matrix& operator/=( const double k );
151 
158  Matrix operator+( const Matrix& m );
159 
166  Matrix operator-( const Matrix& m );
167 
174  Matrix operator*( const Matrix& m );
175 
182  Matrix operator*( const double k );
183 
190  Matrix operator/( const double k );
191 
192 
193  };
194  }
195 }
196 
197 #endif // __KOME_CORE_MATRIX_H__
vector class
Definition: Vector.h:22
double *const m_array
Definition: Matrix.h:54
const unsigned int m_col
Definition: Matrix.h:52
const unsigned int m_row
Definition: Matrix.h:50
interfaces of Vector class
matrix class
Definition: Matrix.h:25