This repository contains auxiliary functions useful for all Optimal Design Lab Projects.
In particular, it contains the abstract type definitions for the PDESolver
project, as well as auxiliary types and functions, such as Boundary
Interface
, calcNorm
, and calcDiffElementArea
.
In addition, it contains matrix-vector and matrix-matrix multiplication routines optimized for small matrices and bench-marked against the built-in Julia equivalents (which call the BLAS implementation used by Julia)
Several functions for creating and using sparse matrices exist.
Note that these functions override the existing definitions of
setindex!
and getindex
, to versions optimized for variable
bandwidth dense-with-the-band SparseMatrixCSC
s.