|
#include "standard.h"
#include <numeric>
#include <xutility>
#include <malloc.h>
#include <assert.h>
Include dependency graph for Matrix.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Compounds | |
class | ColVector |
class | DataBlock |
Superclass for our matrix classes. More... | |
class | Matrix |
class | Position |
class | SymmetricMatrix |
This class holds a symmetric matrix. More... | |
Defines | |
#define | COMPILETIME_ASSERT(assertion) do { if (0) { char ch[(assertion)] = { 'a' }; ch;} } while (false) |
this is like the standard ASSERT() macro, but it allows compiletime assertions. | |
#define | TRIANGULAR(i) ( ((i + 1)*i) / 2) |
the triangular of a matrix is the number of items that require storage if the matrix is symmetrical. | |
Functions | |
template<typename A, typename B, typename T, int rows1, int cols2> Matrix< cols2, rows1, T > | multMatrix (A m1, B m2) |
template<typename T> void | printMatrix (const T &mtx, const char *str) |
They include a template for symmetrical matrices, and one for asymmetrical matrices; note that operations between like matrices (symmetrical or not) are handled properly.
Operations are checked at compile-time for type-safety; this includes not only per-element operations (like addition), but also matrix-matrix multiplication.
Author: Matt Loper
Definition in file Matrix.h.