All types of cellular sheaves should implement the same interface.
I'm envisioning three main types of cellular sheaves:
- Single threaded
- Multi-threaded
- Distributed (MPI)
Each of these types also probably need variants with edge potential functions.
The core functions that each of these types need to implement include
- Project a point to the nearest global section of the sheaf
- Apply the sheaf laplacian
- Apply the coboundary map
We should also implement conversions between the different types and adapt the cellular sheaf macro to be able to emit the different types.
All types of cellular sheaves should implement the same interface.
I'm envisioning three main types of cellular sheaves:
Each of these types also probably need variants with edge potential functions.
The core functions that each of these types need to implement include
We should also implement conversions between the different types and adapt the cellular sheaf macro to be able to emit the different types.