HyPar
1.0
Finite-Difference Hyperbolic-Parabolic PDE Solver on Cartesian Grids
|
Contains macros and function definitions for common matrix multiplication. More...
Go to the source code of this file.
Macros | |
#define | MatMult(N, A, X, Y) |
#define | MatMult2(N, A, X, Y) |
#define | MatMult3(N, A, X, Y) |
#define | MatMult4(N, A, X, Y) |
#define | MatMult5(N, A, X, Y) |
#define | MatVecMult(N, y, A, x) |
#define | MatVecMult2(N, y, A, x) |
#define | MatVecMult3(N, y, A, x) |
#define | MatVecMult4(N, y, A, x) |
#define | MatVecMult5(N, y, A, x) |
Contains macros and function definitions for common matrix multiplication.
The macro names in this header file conflict with PETSc, so include it with care.
Definition in file matmult_native.h.
#define MatMult | ( | N, | |
A, | |||
X, | |||
Y | |||
) |
Matrix-Matrix multiplication: A = X Y, where A, X, Y are square matrices of size N, saved as 1D arrays in row-major format.
Definition at line 18 of file matmult_native.h.
#define MatMult2 | ( | N, | |
A, | |||
X, | |||
Y | |||
) |
MatMult, loop unrolled for N = 2.
Definition at line 32 of file matmult_native.h.
#define MatMult3 | ( | N, | |
A, | |||
X, | |||
Y | |||
) |
MatMult, loop unrolled for N = 3.
Definition at line 43 of file matmult_native.h.
#define MatMult4 | ( | N, | |
A, | |||
X, | |||
Y | |||
) |
MatMult, loop unrolled for N = 4.
Definition at line 59 of file matmult_native.h.
#define MatMult5 | ( | N, | |
A, | |||
X, | |||
Y | |||
) |
MatMult, loop unrolled for N = 5.
Definition at line 82 of file matmult_native.h.
#define MatVecMult | ( | N, | |
y, | |||
A, | |||
x | |||
) |
Matrix-Vector multiplication: y = A x, where x, y are vectors of size N, and A is a square matrix of size N saved as a 1D array in row-major format.
Definition at line 116 of file matmult_native.h.
#define MatVecMult2 | ( | N, | |
y, | |||
A, | |||
x | |||
) |
MatVecMult, loop unrolled for N = 2.
Definition at line 128 of file matmult_native.h.
#define MatVecMult3 | ( | N, | |
y, | |||
A, | |||
x | |||
) |
MatVecMult, loop unrolled for N = 3.
Definition at line 137 of file matmult_native.h.
#define MatVecMult4 | ( | N, | |
y, | |||
A, | |||
x | |||
) |
MatVecMult, loop unrolled for N = 4.
Definition at line 147 of file matmult_native.h.
#define MatVecMult5 | ( | N, | |
y, | |||
A, | |||
x | |||
) |
MatVecMult, loop unrolled for N = 5.
Definition at line 158 of file matmult_native.h.