Open Qmin
0.8.0
GPU-accelerated Q-tensor-based liquid crystal simulations
|
contains a {{x11,x12},{x21,x22}} set, a (3x3) structure, and a (d x d) structure (and matrix manipulations) More...
#include <matrix.h>
Public Member Functions | |
HOSTDEVICE | Matrix2x2 () |
Default constructor is the identity matrix. More... | |
HOSTDEVICE | Matrix2x2 (scalar y11, scalar y12, scalar y21, scalar y22) |
Generic constructor is whatever you wnat it to be. More... | |
HOSTDEVICE void | set (scalar y11, scalar y12, scalar y21, scalar y22) |
Set the values to some desired set. More... | |
HOSTDEVICE void | transpose () |
Transpose. More... | |
HOSTDEVICE void | operator= (const Matrix2x2 &m2) |
assignment operator More... | |
HOSTDEVICE void | operator *= (const Matrix2x2 &m2) |
matrix multiplication operator More... | |
HOSTDEVICE void | operator *= (scalar a) |
scalar multiplication operator More... | |
HOSTDEVICE void | operator+= (const Matrix2x2 &m2) |
Matrix addition operator. More... | |
HOSTDEVICE void | operator-= (const Matrix2x2 &m2) |
Matrix subtraction operator. More... | |
Public Attributes | |
scalar | x11 |
The entries of the matrix. More... | |
scalar | x12 |
scalar | x21 |
scalar | x22 |
Friends | |
HOSTDEVICE friend Matrix2x2 | operator * (const Matrix2x2 &m1, const Matrix2x2 &m2) |
matrix multiplication operator More... | |
HOSTDEVICE friend Matrix2x2 | operator * (const Matrix2x2 &m, const scalar a) |
scalar right multiplication operator More... | |
HOSTDEVICE friend Matrix2x2 | operator * (const scalar a, const Matrix2x2 &m) |
scalar left multiplication operator More... | |
HOSTDEVICE friend Matrix2x2 | operator+ (const Matrix2x2 &m1, const Matrix2x2 &m2) |
Matrix addition operator. More... | |
HOSTDEVICE friend Matrix2x2 | operator- (const Matrix2x2 &m1, const Matrix2x2 &m2) |
matrix subtraction operator More... | |
HOSTDEVICE friend scalar2 | operator * (const scalar2 &v, const Matrix2x2 &m) |
matrix-vector multiplication operator More... | |
HOSTDEVICE friend scalar2 | operator * (const Matrix2x2 &m, const scalar2 &v) |
matrix-vector multiplication operator More... | |
contains a {{x11,x12},{x21,x22}} set, a (3x3) structure, and a (d x d) structure (and matrix manipulations)
Matrix2x2 provides a simple interface for operations using 2x2 matrices. In particular, it implement matrix-maxtrix multiplication, and has specialized matrix-vector and vector-matrix multiplication in which scalar2 variables take the place of vectors. A dyadic product is implemented which takes two scalar2s and returns a Matrix2x2
|
inline |
Default constructor is the identity matrix.
|
inline |
Generic constructor is whatever you wnat it to be.
|
inline |
Set the values to some desired set.
References x11, x12, x21, and x22.
Referenced by operator *=(), operator+=(), operator-=(), and operator=().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
friend |
matrix multiplication operator
|
friend |
scalar right multiplication operator
|
friend |
scalar left multiplication operator
|
friend |
Matrix addition operator.
|
friend |
matrix subtraction operator
|
friend |
matrix-vector multiplication operator
|
friend |
matrix-vector multiplication operator
scalar Matrix2x2::x11 |
The entries of the matrix.
Referenced by operator *=(), operator+=(), operator-=(), operator=(), printMatrix(), and set().
scalar Matrix2x2::x12 |
Referenced by operator *=(), operator+=(), operator-=(), operator=(), printMatrix(), set(), and transpose().
scalar Matrix2x2::x21 |
Referenced by operator *=(), operator+=(), operator-=(), operator=(), printMatrix(), set(), and transpose().
scalar Matrix2x2::x22 |
Referenced by operator *=(), operator+=(), operator-=(), operator=(), printMatrix(), and set().