|
TVM
0.9.4
|
#include <tvm/internal/MatrixProperties.h>
Classes | |
| struct | Constness |
| struct | Invertibility |
Public Types | |
| enum | Shape { GENERAL , LOWER_TRIANGULAR , UPPER_TRIANGULAR , DIAGONAL , MULTIPLE_OF_IDENTITY , IDENTITY , MINUS_IDENTITY , ZERO } |
| enum | Positiveness { NA , POSITIVE_SEMIDEFINITE , POSITIVE_DEFINITE , NEGATIVE_SEMIDEFINITE , NEGATIVE_DEFINITE , INDEFINITE , NON_ZERO_INDEFINITE } |
Public Member Functions | |
| MatrixProperties () | |
| template<typename... Args> | |
| MatrixProperties (Args &&... args) | |
| MatrixProperties (const MatrixProperties &) | |
| MatrixProperties (MatrixProperties &) | |
| MatrixProperties (MatrixProperties &&)=default | |
| MatrixProperties & | operator= (const MatrixProperties &)=default |
| MatrixProperties & | operator= (MatrixProperties &&)=default |
| Shape | shape () const |
| Positiveness | positiveness () const |
| Constness | constness () const |
| Invertibility | invertibility () const |
| bool | isConstant () const |
| bool | isInvertible () const |
| bool | isTriangular () const |
| bool | isLowerTriangular () const |
| bool | isUpperTriangular () const |
| bool | isDiagonal () const |
| bool | isMultipleOfIdentity () const |
| bool | isIdentity () const |
| bool | isMinusIdentity () const |
| bool | isZero () const |
| bool | isSymmetric () const |
| bool | isPositiveSemiDefinite () const |
| bool | isPositiveDefinite () const |
| bool | isNegativeSemidefinite () const |
| bool | isNegativeDefinite () const |
| bool | isIndefinite () const |
| bool | isNonZeroIndefinite () const |
This class describes some mathematical properties of a matrix.
Positiveness property of the matrix. Any options other than NA implies that the matrix is symmetric
Shape of a matrix
| tvm::internal::MatrixProperties::MatrixProperties | ( | ) |
The data given to the constructors may be redundant. For example an identity matrix is constant, invertible and positive definite. The constructors are deducing automatically all what they can from the shape and the positiveness. The constructors use user-given data when they add information to what they can deduce. If the user-given data are less precise but compatible with what has been deduced, they are discarded. If they are contradicting the deductions, an assertion is fired.
Here are some examples:
|
inline |
|
inline |
|
inline |
|
default |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
default |
|
default |
|
inline |
|
inline |