| e2f04181 | 31-Mar-2021 |
Andrew T. Barker <barker29@llnl.gov> |
Full assembly of CeedOperator (#712)
* Add CeedOperatorLinearFullAssemble() to explicitly assemble a CeedOperator
The output format is a stream of (row, column, value) triples, which client
code
Full assembly of CeedOperator (#712)
* Add CeedOperatorLinearFullAssemble() to explicitly assemble a CeedOperator
The output format is a stream of (row, column, value) triples, which client
code can use to assemble a sparse matrix by adding the values in the
appropriate places.
* Add full assembly test for triangular mesh, t563-operator.c, which is analogous to t536-operator.c
* assembly: change interface to separate nonzero structure from values
* assembly: add potential backends for CeedOperatorLinearAssemble, CeedOperatorLinearAssemblySymbolic
* assembly: use CeedMatrixMultiply() instead of hand-rolled duplicated code
This also involves switching some arrays from column-major ordering to
row-major ordering.
* Remove CeedMatrixMultiply from ceed-impl.h because it is already in ceed-backend.h
* assembly: modify use of fallback resource
* operator - use new error codes in full assembly
* style - minor
* operator - switch default fallback to none
* operator - fix fallback for full assembly
* operator - fix fallback usage
* operator - fix fallback for digonal assembly
* avx - revert bug
* avx - revert bug
Co-authored-by: jeremylt <thompson.jeremy.luke@gmail.com>
show more ...
|