ENH: fused: 'fused' variants of explicit discretisation
Summary
WIP. Explicit 'fv' operations avoiding intermediate surface fields. This helps with
- memory allocations, caching
- rewriting loops to be cell-based
Details of new models (If applicable)
Drop-in replacement for Gauss (fusedGauss
) of fvc::laplacian, fvc::grad, fvc::div, fvc::snGrad. Currently in separate library.
Risks
- slight truncation error difference since order of operations is different. laplacian only with scalar or vector weights supported so no tensor (for e.g. anisotropic heat-transfer)
- disallows potential support for boundary conditions on surface fields