SheafSystem
0.0.0.0
|
General matrix with 2 rows and 2 columns. More...
#include <general_matrix_2x2.h>
Public Member Functions | |
operator gl2_row_dofs_type< T > & () const | |
Operator to convert current to gl2_row_dofs_type. More... | |
operator t02_e2_row_dofs_type< T > & () const | |
Operator to convert current to t02_e2_row_dofs_type. More... | |
operator t11_e2_row_dofs_type< T > & () const | |
Operator to convert current to t11_e2_row_dofs_type. More... | |
T * | operator[] (int xrow) |
Pointer to the first element in row xrow of this matrix. Facilitates accessing elements via matrix[i][j]. More... | |
const T * | operator[] (int xrow) const |
Pointer to the first element in row xrow of this matrix. Facilitates accessing elements via matrix[i][j]. More... | |
operator T* () | |
Conversion (cast) operator to convert to the associated matrix type (non const version). More... | |
operator const T * () const | |
Conversion (cast) operator to convert to the associated matrix type (const version). More... | |
int | row_index (int xrow) const |
Index for row xrow in the linear storage array. More... | |
general_matrix_1x2< T > | row (int xrow) const |
A 1x2 matrix containing the elements or row xrow. More... | |
general_matrix_2x1< T > | column (int xcolumn) const |
A 2x1 matrix containing the elements or column xcolumn. More... | |
void | adjoint (general_matrix_2x2< T > &xresult) const |
The adjoint of the matrix (pre-allocated). More... | |
general_matrix_2x2< T > | adjoint () const |
The adjoint of the matrix (auto-allocated). More... | |
void | assign (const T &xvalue) |
Assign all elements of this matrix to the value xvalue. More... | |
void | determinant (T &xresult) const |
The determinant of the matrix (pre-allocated). More... | |
T | determinant () const |
The determinant of the matrix (auto-allocated). More... | |
void | diagonalization (general_matrix_2x2< T > &xresult) const |
The diagonalization of the matrix (pre-allocated). More... | |
general_matrix_2x2< T > | diagonalization () const |
The diagonalization of the matrix (auto-allocated). More... | |
void | identity (general_matrix_2x2< T > &xresult) const |
The identity matrix (pre-allocated). More... | |
general_matrix_2x2< T > | identity () const |
The identity matrix (auto-allocated). More... | |
void | inverse (general_matrix_2x2< T > &xresult) const |
The inverse of the matrix (pre-allocated). More... | |
bool | is_antisymmetric () const |
True if this matrix is antisymmetric. More... | |
bool | is_diagonal () const |
True if this matrix is diagonal. More... | |
bool | is_identity () const |
True if this is an identity matrix. More... | |
bool | is_positive_definite () const |
True if this matrix is positive definite. More... | |
bool | is_symmetric () const |
True if this matrix is symmetric. More... | |
general_matrix_2x2< T > | inverse () const |
The inverse of the matrix (auto-allocated). More... | |
void | multiply (const T &xscalar, general_matrix_2x2< T > &xresult) const |
This matrix multiplied by a scalar (pre-allocated). More... | |
general_matrix_2x2< T > | multiply (const T &xscalar) const |
This matrix multiplied by a scalar (auto-allocated). More... | |
void | multiply (const general_matrix_2x1< T > &xother, general_matrix_2x1< T > &xresult) const |
Premultiply matrix xother by this matrix (pre-allocated). More... | |
general_matrix_2x1< T > | multiply (const general_matrix_2x1< T > &xother) const |
Premultiply matrix xother by this matrix (auto-allocated). More... | |
void | multiply (const general_matrix_2x2< T > &xother, general_matrix_2x2< T > &xresult) const |
Premultiply matrix xother by this matrix (pre-allocated). More... | |
general_matrix_2x2< T > | multiply (const general_matrix_2x2< T > &xother) const |
Premultiply matrix xother by this matrix (auto-allocated). More... | |
void | multiply (const general_matrix_2x3< T > &xother, general_matrix_2x3< T > &xresult) const |
Premultiply matrix xother by this matrix (pre-allocated). More... | |
general_matrix_2x3< T > | multiply (const general_matrix_2x3< T > &xother) const |
Premultiply matrix xother by this matrix (auto-allocated). More... | |
void | trace (T &xresult) const |
The trace of the matrix (pre-allocated). More... | |
T | trace () const |
The trace of the matrix (auto-allocated). More... | |
void | transpose (general_matrix_2x2< T > &xresult) const |
The transpose of the matrix (pre-allocated). More... | |
general_matrix_2x2< T > | transpose () const |
The transpose of the matrix (auto-allocated). More... | |
void | antisymmetric_part (antisymmetric_matrix_2x2< T > &xresult) const |
The antisymmetric part of a this matrix (pre-allocated). More... | |
antisymmetric_matrix_2x2< T > | antisymmetric_part () const |
The antisymmetric part of a this matrix (auto-allocated). More... | |
void | symmetric_part (symmetric_matrix_2x2< T > &xresult) const |
The symmetric part of a this matrix (pre-allocated). More... | |
symmetric_matrix_2x2< T > | symmetric_part () const |
The symmetric part of a this matrix (auto-allocated). More... | |
Static Public Member Functions | |
static int | number_of_rows () |
The number of rows. More... | |
static int | number_of_columns () |
The number of columns. More... | |
static int | d () |
Dimension of the underlying elements. More... | |
Public Attributes | |
T | components [4] |
Linear storage array. More... | |
General matrix with 2 rows and 2 columns.
Class general_matrix_2x2 is a special kind of matrix class intended to be used in conjunction with various row_dofs_type classes (pod types). The pod types will be converted (cast) to appropriate matrix types. So, this class is also required to be a pod type also (ie: really just a struct with no inheritance, no constructors, no virtual functions, etc.).
Definition at line 36 of file antisymmetric_matrix_2x2.h.
void fiber_bundle::general_matrix_2x2< T >::adjoint | ( | general_matrix_2x2< T > & | xresult | ) | const |
The adjoint of the matrix (pre-allocated).
Definition at line 362 of file antisymmetric_matrix_2x2.impl.h.
References fiber_bundle::antisymmetric_matrix_2x2< T >::adjoint().
general_matrix_2x2< T > fiber_bundle::general_matrix_2x2< T >::adjoint | ( | ) | const |
The adjoint of the matrix (auto-allocated).
Definition at line 391 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::assign().
Referenced by fiber_bundle::antisymmetric_matrix_2x2< T >::column(), and fiber_bundle::general_matrix_2x2< T >::column().
void fiber_bundle::general_matrix_2x2< T >::antisymmetric_part | ( | antisymmetric_matrix_2x2< T > & | xresult | ) | const |
The antisymmetric part of a this matrix (pre-allocated).
Definition at line 1092 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::antisymmetric_part().
antisymmetric_matrix_2x2< T > fiber_bundle::general_matrix_2x2< T >::antisymmetric_part | ( | ) | const |
The antisymmetric part of a this matrix (auto-allocated).
Definition at line 1113 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::symmetric_part().
Referenced by fiber_bundle::general_matrix_2x2< T >::antisymmetric_part(), and fiber_bundle::general_matrix_2x2< T >::transpose().
void fiber_bundle::general_matrix_2x2< T >::assign | ( | const T & | xvalue | ) |
Assign all elements of this matrix to the value xvalue.
Definition at line 411 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::determinant().
Referenced by fiber_bundle::general_matrix_2x2< T >::adjoint().
general_matrix_2x1< T > fiber_bundle::general_matrix_2x2< T >::column | ( | int | xcolumn | ) | const |
A 2x1 matrix containing the elements or column xcolumn.
Definition at line 335 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::adjoint(), and fiber_bundle::general_matrix_2x1< T >::components.
Referenced by fiber_bundle::general_matrix_2x2< T >::row().
|
static |
Dimension of the underlying elements.
Definition at line 179 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::operator[]().
Referenced by fiber_bundle::general_matrix_2x2< T >::number_of_columns().
void fiber_bundle::general_matrix_2x2< T >::determinant | ( | T & | xresult | ) | const |
The determinant of the matrix (pre-allocated).
Definition at line 434 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::determinant().
Referenced by fiber_bundle::gl2_lite::put_matrix(), and fiber_bundle::gl2::put_matrix().
T fiber_bundle::general_matrix_2x2< T >::determinant | ( | ) | const |
The determinant of the matrix (auto-allocated).
Definition at line 459 of file general_matrix_2x2.impl.h.
References fiber_bundle::determinant(), and fiber_bundle::general_matrix_2x2< T >::diagonalization().
Referenced by fiber_bundle::general_matrix_2x2< T >::assign(), and fiber_bundle::general_matrix_2x2< T >::determinant().
void fiber_bundle::general_matrix_2x2< T >::diagonalization | ( | general_matrix_2x2< T > & | xresult | ) | const |
The diagonalization of the matrix (pre-allocated).
Definition at line 480 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::diagonalization(), fiber_bundle::general_matrix_2x2< T >::is_diagonal(), and fiber_bundle::sec_at0_algebra::sqrt().
general_matrix_2x2< T > fiber_bundle::general_matrix_2x2< T >::diagonalization | ( | ) | const |
The diagonalization of the matrix (auto-allocated).
Definition at line 542 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::identity(), and fiber_bundle::general_matrix_2x2< T >::is_diagonal().
Referenced by fiber_bundle::general_matrix_2x2< T >::determinant(), and fiber_bundle::general_matrix_2x2< T >::diagonalization().
void fiber_bundle::general_matrix_2x2< T >::identity | ( | general_matrix_2x2< T > & | xresult | ) | const |
The identity matrix (pre-allocated).
Definition at line 565 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::identity(), and fiber_bundle::general_matrix_2x2< T >::is_identity().
general_matrix_2x2< T > fiber_bundle::general_matrix_2x2< T >::identity | ( | ) | const |
The identity matrix (auto-allocated).
Definition at line 590 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::inverse(), and fiber_bundle::general_matrix_2x2< T >::is_identity().
Referenced by fiber_bundle::general_matrix_2x2< T >::diagonalization(), and fiber_bundle::general_matrix_2x2< T >::identity().
void fiber_bundle::general_matrix_2x2< T >::inverse | ( | general_matrix_2x2< T > & | xresult | ) | const |
The inverse of the matrix (pre-allocated).
Definition at line 613 of file general_matrix_2x2.impl.h.
References fiber_bundle::determinant(), and fiber_bundle::general_matrix_2x2< T >::inverse().
Referenced by fiber_bundle::gl2_lite::put_matrix(), and fiber_bundle::gl2::put_matrix().
general_matrix_2x2< T > fiber_bundle::general_matrix_2x2< T >::inverse | ( | ) | const |
The inverse of the matrix (auto-allocated).
Definition at line 649 of file general_matrix_2x2.impl.h.
References fiber_bundle::inverse(), and fiber_bundle::general_matrix_2x2< T >::is_antisymmetric().
Referenced by fiber_bundle::general_matrix_2x2< T >::identity(), and fiber_bundle::general_matrix_2x2< T >::inverse().
bool fiber_bundle::general_matrix_2x2< T >::is_antisymmetric | ( | ) | const |
True if this matrix is antisymmetric.
Definition at line 669 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::is_diagonal().
Referenced by fiber_bundle::general_matrix_2x2< T >::inverse().
bool fiber_bundle::general_matrix_2x2< T >::is_diagonal | ( | ) | const |
True if this matrix is diagonal.
Definition at line 691 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::is_identity().
Referenced by fiber_bundle::general_matrix_2x2< T >::diagonalization(), and fiber_bundle::general_matrix_2x2< T >::is_antisymmetric().
bool fiber_bundle::general_matrix_2x2< T >::is_identity | ( | ) | const |
True if this is an identity matrix.
Definition at line 713 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::is_positive_definite().
Referenced by fiber_bundle::general_matrix_2x2< T >::identity(), and fiber_bundle::general_matrix_2x2< T >::is_diagonal().
bool fiber_bundle::general_matrix_2x2< T >::is_positive_definite | ( | ) | const |
True if this matrix is positive definite.
Definition at line 735 of file general_matrix_2x2.impl.h.
References fiber_bundle::symmetric_matrix_2x2< T >::is_positive_definite(), and fiber_bundle::general_matrix_2x2< T >::is_symmetric().
Referenced by fiber_bundle::general_matrix_2x2< T >::is_identity().
bool fiber_bundle::general_matrix_2x2< T >::is_symmetric | ( | ) | const |
True if this matrix is symmetric.
Definition at line 760 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::multiply().
Referenced by fiber_bundle::general_matrix_2x2< T >::is_positive_definite().
void fiber_bundle::general_matrix_2x2< T >::multiply | ( | const T & | xscalar, |
general_matrix_2x2< T > & | xresult | ||
) | const |
This matrix multiplied by a scalar (pre-allocated).
Definition at line 782 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::components.
Referenced by fiber_bundle::general_matrix_2x2< T >::is_symmetric(), and fiber_bundle::general_matrix_2x2< T >::multiply().
general_matrix_2x2< T > fiber_bundle::general_matrix_2x2< T >::multiply | ( | const T & | xscalar | ) | const |
This matrix multiplied by a scalar (auto-allocated).
Definition at line 807 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::multiply(), and fiber_bundle::vd_algebra::multiply().
void fiber_bundle::general_matrix_2x2< T >::multiply | ( | const general_matrix_2x1< T > & | xother, |
general_matrix_2x1< T > & | xresult | ||
) | const |
Premultiply matrix xother by this matrix (pre-allocated).
Definition at line 827 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::multiply(), and fiber_bundle::general_matrix_2x1< T >::number_of_columns().
general_matrix_2x1< T > fiber_bundle::general_matrix_2x2< T >::multiply | ( | const general_matrix_2x1< T > & | xother | ) | const |
Premultiply matrix xother by this matrix (auto-allocated).
Definition at line 867 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::multiply(), and fiber_bundle::vd_algebra::multiply().
void fiber_bundle::general_matrix_2x2< T >::multiply | ( | const general_matrix_2x2< T > & | xother, |
general_matrix_2x2< T > & | xresult | ||
) | const |
Premultiply matrix xother by this matrix (pre-allocated).
Definition at line 887 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::multiply(), and fiber_bundle::general_matrix_2x2< T >::number_of_columns().
general_matrix_2x2< T > fiber_bundle::general_matrix_2x2< T >::multiply | ( | const general_matrix_2x2< T > & | xother | ) | const |
Premultiply matrix xother by this matrix (auto-allocated).
Definition at line 927 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::multiply(), and fiber_bundle::vd_algebra::multiply().
void fiber_bundle::general_matrix_2x2< T >::multiply | ( | const general_matrix_2x3< T > & | xother, |
general_matrix_2x3< T > & | xresult | ||
) | const |
Premultiply matrix xother by this matrix (pre-allocated).
Definition at line 947 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::multiply(), and fiber_bundle::general_matrix_2x3< T >::number_of_columns().
general_matrix_2x3< T > fiber_bundle::general_matrix_2x2< T >::multiply | ( | const general_matrix_2x3< T > & | xother | ) | const |
Premultiply matrix xother by this matrix (auto-allocated).
Definition at line 987 of file general_matrix_2x2.impl.h.
References fiber_bundle::vd_algebra::multiply(), and fiber_bundle::general_matrix_2x2< T >::trace().
|
static |
The number of columns.
Definition at line 162 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::d().
Referenced by fiber_bundle::general_matrix_1x2< T >::multiply(), fiber_bundle::general_matrix_3x2< T >::multiply(), fiber_bundle::general_matrix_2x2< T >::multiply(), and fiber_bundle::general_matrix_2x2< T >::number_of_rows().
|
static |
The number of rows.
Definition at line 145 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::number_of_columns().
Referenced by fiber_bundle::general_matrix_2x2< T >::operator t11_e2_row_dofs_type< T > &().
fiber_bundle::general_matrix_2x2< T >::operator const T * | ( | ) | const |
Conversion (cast) operator to convert to the associated matrix type (const version).
Definition at line 262 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::row_index().
fiber_bundle::general_matrix_2x2< T >::operator gl2_row_dofs_type< T > & | ( | ) | const |
Operator to convert current to gl2_row_dofs_type.
Definition at line 80 of file general_matrix_2x2.impl.h.
fiber_bundle::general_matrix_2x2< T >::operator T* | ( | ) |
Conversion (cast) operator to convert to the associated matrix type (non const version).
Definition at line 240 of file general_matrix_2x2.impl.h.
fiber_bundle::general_matrix_2x2< T >::operator t02_e2_row_dofs_type< T > & | ( | ) | const |
Operator to convert current to t02_e2_row_dofs_type.
Definition at line 101 of file general_matrix_2x2.impl.h.
fiber_bundle::general_matrix_2x2< T >::operator t11_e2_row_dofs_type< T > & | ( | ) | const |
Operator to convert current to t11_e2_row_dofs_type.
Definition at line 122 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::number_of_rows().
T * fiber_bundle::general_matrix_2x2< T >::operator[] | ( | int | xrow | ) |
Pointer to the first element in row xrow of this matrix. Facilitates accessing elements via matrix[i][j].
Definition at line 196 of file general_matrix_2x2.impl.h.
Referenced by fiber_bundle::general_matrix_2x2< T >::d().
const T * fiber_bundle::general_matrix_2x2< T >::operator[] | ( | int | xrow | ) | const |
Pointer to the first element in row xrow of this matrix. Facilitates accessing elements via matrix[i][j].
Definition at line 218 of file general_matrix_2x2.impl.h.
general_matrix_1x2< T > fiber_bundle::general_matrix_2x2< T >::row | ( | int | xrow | ) | const |
A 1x2 matrix containing the elements or row xrow.
Definition at line 309 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::column(), and fiber_bundle::general_matrix_1x2< T >::components.
Referenced by fiber_bundle::general_matrix_2x2< T >::row_index().
int fiber_bundle::general_matrix_2x2< T >::row_index | ( | int | xrow | ) | const |
Index for row xrow in the linear storage array.
Definition at line 285 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::row().
Referenced by fiber_bundle::general_matrix_2x2< T >::operator const T *().
void fiber_bundle::general_matrix_2x2< T >::symmetric_part | ( | symmetric_matrix_2x2< T > & | xresult | ) | const |
The symmetric part of a this matrix (pre-allocated).
Definition at line 1134 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::symmetric_part().
symmetric_matrix_2x2< T > fiber_bundle::general_matrix_2x2< T >::symmetric_part | ( | ) | const |
The symmetric part of a this matrix (auto-allocated).
Definition at line 1157 of file general_matrix_2x2.impl.h.
Referenced by fiber_bundle::general_matrix_2x2< T >::antisymmetric_part(), and fiber_bundle::general_matrix_2x2< T >::symmetric_part().
void fiber_bundle::general_matrix_2x2< T >::trace | ( | T & | xresult | ) | const |
The trace of the matrix (pre-allocated).
Definition at line 1007 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::trace().
T fiber_bundle::general_matrix_2x2< T >::trace | ( | ) | const |
The trace of the matrix (auto-allocated).
Definition at line 1028 of file general_matrix_2x2.impl.h.
References fiber_bundle::trace(), and fiber_bundle::general_matrix_2x2< T >::transpose().
Referenced by fiber_bundle::general_matrix_2x2< T >::multiply(), and fiber_bundle::general_matrix_2x2< T >::trace().
void fiber_bundle::general_matrix_2x2< T >::transpose | ( | general_matrix_2x2< T > & | xresult | ) | const |
The transpose of the matrix (pre-allocated).
Definition at line 1049 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::transpose().
general_matrix_2x2< T > fiber_bundle::general_matrix_2x2< T >::transpose | ( | ) | const |
The transpose of the matrix (auto-allocated).
Definition at line 1072 of file general_matrix_2x2.impl.h.
References fiber_bundle::general_matrix_2x2< T >::antisymmetric_part().
Referenced by fiber_bundle::general_matrix_2x2< T >::trace(), and fiber_bundle::general_matrix_2x2< T >::transpose().
T fiber_bundle::general_matrix_2x2< T >::components[4] |
Linear storage array.
Definition at line 134 of file general_matrix_2x2.h.
Referenced by fiber_bundle::general_matrix_2x2< T >::multiply().