6 #ifndef MYRAMATH_SPARSE_LAPLACIAN3_H     7 #define MYRAMATH_SPARSE_LAPLACIAN3_H    14 #include <myramath/MYRAMATH_EXPORT.h>    25 template<
class Number> 
class SparseMatrix;
    37     std::vector<int> size() 
const;
    40     int operator () (
int i, 
int j, 
int k) 
const;
    43     std::pair<Natural3D, Natural3D> i_split() 
const;
    46     std::pair<Natural3D, Natural3D> j_split() 
const;
    49     std::pair<Natural3D, Natural3D> k_split() 
const;
    54     Natural3D(
int in_I, 
int in_i_begin, 
int in_i_end, 
int in_J, 
int in_j_begin, 
int in_j_end, 
int in_K, 
int in_k_begin, 
int in_k_end);
    57     int I, i_begin, i_end;
    58     int J, j_begin, j_end;
    59     int K, k_begin, k_end;
    63 MYRAMATH_EXPORT 
Pattern stencil3(
int I, 
int J, 
int K);
    73 MYRAMATH_EXPORT 
Permutation bisect3(
int I, 
int J, 
int K);
    76 MYRAMATH_EXPORT 
Pattern stencil3_unsymmetric(
int I, 
int J, 
int K, 
double density = 0.5);
 Represents a Permutation matrix, used to reorder rows/columns/etc of various numeric containers...
Definition: Permutation.h:34
A helper class that generates a natural ordering on a 3D structured grid of size IxJxK. 
Definition: laplacian3.h:28
Various utility functions/classes related to scalar Number types. 
Holds the nonzero pattern of a sparse matrix. 
Definition: Pattern.h:55
Stores an IxJ matrix A in compressed sparse column format. 
Definition: bothcat.h:23