5 #ifndef MECURYDPM_MATRIX_H
6 #define MECURYDPM_MATRIX_H
double Mdouble
Definition: GeneralDefine.h:13
Matrix< float, 2, 1 > xy
Definition: LLT_solve.cpp:6
float * p
Definition: Tutorial_Map_using.cpp:9
Scalar * b
Definition: benchVecAdd.cpp:17
Matrix< SCALARA, Dynamic, Dynamic, opt_A > A
Definition: bench_gemm.cpp:47
Implementation of a 3D matrix.
Definition: Kernel/Math/Matrix.h:17
void setZero()
Sets all elements to zero.
Definition: Matrix.cc:54
Matrix3D & operator+=(const Matrix3D &A)
Matrix addition.
Definition: Matrix.cc:220
Mdouble YX
Definition: Kernel/Math/Matrix.h:22
Matrix3D & operator/=(Mdouble a)
Scalar division.
Definition: Matrix.cc:258
Vec3D diag() const
The diagonal elements.
Definition: Matrix.cc:72
Matrix3D operator*(Mdouble a) const
Scalar multiplication.
Definition: Matrix.cc:143
friend std::istream & operator>>(std::istream &is, Matrix3D &A)
Add elements to istream.
Definition: Matrix.cc:209
Matrix3D operator-(const Matrix3D &A) const
Matrix subtraction.
Definition: Matrix.cc:107
double trace() const
Sum of the diagonal elements.
Definition: Matrix.cc:63
Mdouble ZX
Definition: Kernel/Math/Matrix.h:22
static Matrix3D dyadic(const Vec3D &a, const Vec3D &b)
Calculates the dyadic product of a two Vec3D: .
Definition: Matrix.cc:302
Mdouble XY
Definition: Kernel/Math/Matrix.h:22
Mdouble YY
Definition: Kernel/Math/Matrix.h:22
Matrix3D operator/(Mdouble a) const
Scalar division.
Definition: Matrix.cc:182
Mdouble ZY
Definition: Kernel/Math/Matrix.h:22
Mdouble ZZ
Definition: Kernel/Math/Matrix.h:22
Mdouble YZ
Definition: Kernel/Math/Matrix.h:22
Matrix3D & operator-=(const Matrix3D &A)
Matrix substraction.
Definition: Matrix.cc:239
friend std::ostream & operator<<(std::ostream &os, const Matrix3D &A)
Add elements to ostream.
Definition: Matrix.cc:195
static Matrix3D inverse(const Matrix3D &A)
Computes the inverse of a matrix.
Definition: Matrix.cc:328
Matrix3D getCylindricalTensorField(const Vec3D &p) const
Returns the matrix in cylindrical coordinates.
Definition: Matrix.cc:373
Mdouble XZ
Definition: Kernel/Math/Matrix.h:22
Matrix3D operator+(const Matrix3D &A) const
Matrix addition.
Definition: Matrix.cc:94
Mdouble XX
all nine matrix elements
Definition: Kernel/Math/Matrix.h:22
double determinant() const
Definition: Kernel/Math/Matrix.h:61
Vec3D ldivide(const Vec3D &b)
A.ldivide(b) computes the solution x to A*x=b.
Definition: Matrix.cc:352
static Matrix3D square(const Matrix3D &A)
Calculates the pointwise square.
Definition: Matrix.cc:277
static Matrix3D cross(const Vec3D &a, const Matrix3D &b)
'Special' cross product; CP of vector with each column of a matrix
Definition: Matrix.cc:316
double deviator() const
Deviator.
Definition: Matrix.cc:82
static Matrix3D sqrt(const Matrix3D &A)
Calculates the pointwise square root.
Definition: Matrix.cc:289
Matrix3D()
default constructor
Definition: Matrix.cc:13
Data type for small dense matrix.
Definition: SmallMatrix.h:48
Definition: Kernel/Math/Vector.h:30
Eigen::Map< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor >, 0, Eigen::OuterStride<> > matrix(T *data, int rows, int cols, int stride)
Definition: common.h:85
const Scalar * a
Definition: level2_cplx_impl.h:32