Sébastien Crozet
dd6c40016e
Remove the Copy requirement from SimdRealField.
2021-08-04 17:34:25 +02:00
Sébastien Crozet
8c6ebf2757
Implement the single-allocator-trait approach.
2021-08-02 18:41:46 +02:00
Violeta Hernández
c01d591478
We have reached compilation!
2021-07-17 13:01:03 -05:00
Crozet Sébastien
24d546d3b6
Rename generic parameter N -> T
2021-04-11 13:57:54 +02:00
Andreas Longva
7473d54d74
rustfmt
2021-01-26 10:11:24 +01:00
Andreas Longva
0bee9be6c7
Extend CSC/CSR * Dense to work for combinations of ref and owned
2021-01-26 10:11:24 +01:00
Andreas Longva
1fa0de92ae
Preserve column dim type in CSR * Dense
...
This is necessary so that CSR * Vector == Vector (before it would
also yield a DMatrix).
2021-01-26 10:11:24 +01:00
Andreas Longva
3eab45d81b
Replace spmm_pattern with spmm_{csr/csc}_pattern
2021-01-26 10:11:24 +01:00
Andreas Longva
e655fed4fa
Replace Arc<SparsityPattern> with SparsityPattern
...
After much deliberation, I have come to the conclusion that the
benefits do not really outweigh the added complexity. Even though
the added complexity is relatively minor, it makes it somewhat
more complicated to inter-op with other sparse linear algebra
libraries in the future.
2021-01-26 10:11:24 +01:00
Andreas Longva
885480a634
Implement CSR/CSC * Dense std operations
2021-01-26 10:11:24 +01:00
Andreas Longva
b7a7f967b8
Implement Neg, Div, DivAssign for Csr/CscMatrix
2021-01-26 10:11:24 +01:00
Andreas Longva
0b4356eb0e
Implement Sub for Csr/CscMatrix
2021-01-26 10:11:24 +01:00
Andreas Longva
7aeb663165
Implement matrix-scalar multiplication
2021-01-26 10:11:24 +01:00
Andreas Longva
dbdf5567fc
Implement arithmetic operations for CSC matrices
2021-01-26 10:11:24 +01:00
Andreas Longva
66cbd26702
Add prealloc suffix to spmm_csr and spadd_csr
...
The suffix is intended to communicate that these methods
assume `preallocated` storage, i.e. they try to store the
result in a matrix which already has the correct sparsity
pattern for the operation.
2021-01-26 10:11:24 +01:00
Andreas Longva
4af3fcbdd3
Reorder parameters in ops to intuitive order
2021-01-26 10:11:24 +01:00
Andreas Longva
fe8592fde1
Refactor ops to use new Op type instead of separate Transpose flag
2021-01-26 10:11:24 +01:00
Andreas Longva
c6a8fcdee2
Simplify spadd_pattern API and name
2021-01-26 10:11:24 +01:00
Andreas Longva
b25848838b
Implement CSR-CSR matrix multiplication
2021-01-26 10:11:24 +01:00
Andreas Longva
41941e62c8
Implement CSR-CSR addition
2021-01-26 10:11:24 +01:00
Andreas Longva
4420237ede
Implement spadd_build_pattern
2021-01-26 10:11:24 +01:00