|
static void | Set (ScalarType s, VectorType *result) |
| Sets entire element of given vector result with scalar s . More...
|
|
static void | Set (const VectorType &v, VectorType *result) |
| Copies entire element of given vector result with other vector v . More...
|
|
static void | Set (ScalarType s, MatrixType *result) |
| Sets entire element of given matrix result with scalar s . More...
|
|
static void | Set (const MatrixType &m, MatrixType *result) |
| Copies entire element of given matrix result with other matrix v . More...
|
|
static ScalarType | Dot (const VectorType &a, const VectorType &b) |
| Performs dot product with vector a and b . More...
|
|
static void | AXPlusY (ScalarType a, const VectorType &x, const VectorType &y, VectorType *result) |
|
static void | MVM (const MatrixType &m, const VectorType &v, VectorType *result) |
| Performs matrix-vector multiplication. More...
|
|
static void | Residual (const MatrixType &a, const VectorType &x, const VectorType &b, VectorType *result) |
| Computes residual vector (b - ax). More...
|
|
static ScalarType | L2Norm (const VectorType &v) |
| Returns L2-norm of the given vector v . More...
|
|
static ScalarType | LInfNorm (const VectorType &v) |
| Returns L-inf-norm of the given vector v . More...
|
|
template<typename S, typename V, typename M>
struct CubbyFlow::BLAS< S, V, M >
Generic BLAS operator wrapper class.
This class provides BLAS (Basic Linear Algebra Subprograms)-like set of operators for vector and matrix class. By default, it supports Vector<T, 2>, Vector<T, 3>, Vector<T, 4>, Matrix<T, 2, 2>, Matrix<T, 3, 3> and Matrix<T, 4, 4>. For custom vector/matrix classes, create a new BLAS class that conforms the function interfaces defined in this class. It will enable performing linear algebra routines (such as conjugate gradient) for the custom vector/matrix types.