Changed the matvec interface so that matrix transpose is a separate subroutine
Burn it. Burn it all with cleansing fire and let the smoke fill your nostrils. Yes.
The sparse matrix interface, default implementation and default kernels should be done, just need to write factory methods and rewrite tests
Wrote a matrix wrapper module & factory method, everything builds but will need to rewrite tests
Started rewriting matrix tests
Basic matrix tests now check getting sparse matrix rows/cols, which pass after a bug fix in the default kernels
More thorough basic matrix tests
Check for matrix permutations passes
Added a CSR/CSC matrix format, which passes tests. Added factory methods for matrices
Basic matrix tests now checks matrix value iterators
Added a method to graphs to return whether or not getting neighbors can be done quickly
Included a routine for using compressed permutations in default sparse matrix kernels
Added a test for assembling sparse matrices; compiles but there's a bug for ellpack
Fixed an old bug in ellpack_graphs that went unnoticed for... way too long
Added in functionality for setting matrix entries that have not been preallocated in the graph structure, compiles but awaits testing
Fixed bug in the kernel for setting matrix entry with reallocation, passes test now
Added test for setting matrix entries requiring reallocation
Changed the use statement in sparse_matrix_interface to only pull out what we need
Merge branch 'such_refactor_very_code_wow' of https://github.com/danshapero/sigma into such_refactor_very_code_wow
Rewrote the basic graph tests to use a random graph