3x3 matrix and related mathamatical operations
More...
#include <matrix3.h>
|
| | Matrix3 () |
| | Construct a new Matrix 3 object to Identity matrix.
|
| |
| | Matrix3 (const double &r11, const double &r12, const double &r13, const double &r21, const double &r22, const double &r23, const double &r31, const double &r32, const double &r33) |
| | Construct a new Matrix 3 object.
|
| |
| void | Identity (void) |
| | Set a 3x3 matrix to identity matrix.
|
| |
| void | Zero (void) |
| | Set all elements of a 3x3 matrix to zero.
|
| |
| double | Det (void) const |
| | Calculate the determinant of a 3x3 matrix.
|
| |
| Matrix3 | Transpose (void) const |
| | Transpose a 3x3 matrix.
|
| |
| Matrix3 | Inverse (void) const |
| | Inverse a 3x3 matrix.
|
| |
| Matrix3 & | operator= (const Matrix3 &m) |
| | Overload operator "=" for 3x3 matrices For example, assign mb = ma.
|
| |
| Matrix3 & | operator+= (const Matrix3 &m) |
| | Overload operator "+=" for 3x3 matrices For example, mb += ma.
|
| |
| Matrix3 & | operator-= (const Matrix3 &m) |
| | Overload operator "-=" for 3x3 matrices For example, mb -= ma.
|
| |
| Matrix3 & | operator*= (const double &s) |
| | Overload operator "*=" for 3x3 matrix and a scalar For example, mb *= 3.0.
|
| |
| Matrix3 & | operator/= (const double &s) |
| | Overload operator "/=" for 3x3 matrix and a scalar For example, mb /= 3.0.
|
| |
| void | print (void) const |
| | Print a 3x3 matrix on screening.
|
| |
| ModuleBase::matrix | to_matrix (void) const |
| | Change the form of a 3x3 matrix from that of class Matrix3 to that of class matrix.
|
| |
3x3 matrix and related mathamatical operations
◆ Matrix3() [1/2]
| ModuleBase::Matrix3::Matrix3 |
( |
| ) |
|
|
inline |
Construct a new Matrix 3 object to Identity matrix.
◆ Matrix3() [2/2]
| ModuleBase::Matrix3::Matrix3 |
( |
const double & |
r11, |
|
|
const double & |
r12, |
|
|
const double & |
r13, |
|
|
const double & |
r21, |
|
|
const double & |
r22, |
|
|
const double & |
r23, |
|
|
const double & |
r31, |
|
|
const double & |
r32, |
|
|
const double & |
r33 |
|
) |
| |
Construct a new Matrix 3 object.
- Parameters
-
| r11 | element r_ij: i_row, j_column |
| r12 | |
| r13 | |
| r21 | |
| r22 | |
| r23 | |
| r31 | |
| r32 | |
| r33 | |
◆ Det()
| double ModuleBase::Matrix3::Det |
( |
void |
| ) |
const |
Calculate the determinant of a 3x3 matrix.
- Returns
- double
◆ Identity()
| void ModuleBase::Matrix3::Identity |
( |
void |
| ) |
|
Set a 3x3 matrix to identity matrix.
◆ Inverse()
| Matrix3 ModuleBase::Matrix3::Inverse |
( |
void |
| ) |
const |
Inverse a 3x3 matrix.
- Returns
- Matrix3
◆ operator*=()
| Matrix3 & ModuleBase::Matrix3::operator*= |
( |
const double & |
s | ) |
|
Overload operator "*=" for 3x3 matrix and a scalar For example, mb *= 3.0.
- Parameters
-
- Returns
- Matrix3&
◆ operator+=()
Overload operator "+=" for 3x3 matrices For example, mb += ma.
- Parameters
-
- Returns
- Matrix3&
◆ operator-=()
Overload operator "-=" for 3x3 matrices For example, mb -= ma.
- Parameters
-
- Returns
- Matrix3&
◆ operator/=()
| Matrix3 & ModuleBase::Matrix3::operator/= |
( |
const double & |
s | ) |
|
Overload operator "/=" for 3x3 matrix and a scalar For example, mb /= 3.0.
- Parameters
-
- Returns
- Matrix3&
◆ operator=()
Overload operator "=" for 3x3 matrices For example, assign mb = ma.
- Parameters
-
- Returns
- Matrix3&
◆ print()
| void ModuleBase::Matrix3::print |
( |
void |
| ) |
const |
Print a 3x3 matrix on screening.
◆ to_matrix()
◆ Transpose()
| Matrix3 ModuleBase::Matrix3::Transpose |
( |
void |
| ) |
const |
Transpose a 3x3 matrix.
- Returns
- Matrix3
◆ Zero()
| void ModuleBase::Matrix3::Zero |
( |
void |
| ) |
|
Set all elements of a 3x3 matrix to zero.
◆ e11
| double ModuleBase::Matrix3::e11 |
element e_ij: i_row, j_column
◆ e12
| double ModuleBase::Matrix3::e12 |
◆ e13
| double ModuleBase::Matrix3::e13 |
◆ e21
| double ModuleBase::Matrix3::e21 |
◆ e22
| double ModuleBase::Matrix3::e22 |
◆ e23
| double ModuleBase::Matrix3::e23 |
◆ e31
| double ModuleBase::Matrix3::e31 |
◆ e32
| double ModuleBase::Matrix3::e32 |
◆ e33
| double ModuleBase::Matrix3::e33 |
The documentation for this class was generated from the following files:
- /home/runner/work/abacus-develop/abacus-develop/source/source_base/matrix3.h
- /home/runner/work/abacus-develop/abacus-develop/source/source_base/matrix3.cpp
- /home/runner/work/abacus-develop/abacus-develop/source/source_hamilt/module_xc/test/xc3_mock.h