Andreas Longva
59421896ce
Polish docs for save_* matrix market methods
2022-05-09 09:59:09 +02:00
Andreas Longva
9b32195558
Change write -> save in order to be consistent with load terminology
2022-05-09 09:51:55 +02:00
Andreas Longva
ef9a3dd767
Update module-level docs
2022-05-09 09:23:42 +02:00
Hantao Hui
8424232dfb
merge updates from dev branch
2022-05-07 13:46:52 +02:00
Hantao Hui
31fc498182
use tempdir to write matrix when running test
2022-05-07 13:40:25 +02:00
Andreas Borgen Longva
3981857f2b
Merge branch 'dev' into matrixmarket-io
2022-04-22 08:57:06 +02:00
Hantao Hui
8e48d26767
add more tests; use bufwritter; fix typo; use temp_dir to test with files
2022-03-21 12:19:34 +01:00
Anton Arsenij
757b99e843
CSC: Create constructor for unsorted but otherwise valid data ( #1015 )
...
* CSC: Create constructor for unsorted but otherwise valid data
* Test creating csc matrix from unsorted but valid data
* Add function for validation and sorting
* Move validation function to cs.rs
* Restore pattern unit test
* Add unit test for 'major offset out of bounds' case
* Avoid permutation allocations on 'happy path'
* Reuse allocated permutation
* Fix comments for test-data examples
* Remove unnecessary iter variable
* Set up buffers for sorting up front
* Use common apply_permutation function
* Use common compute_sort_permutation function
* Move unsafe down to unchecked call
* Add panic cases to documentation
* Remove unnecessary Zero bound
* Move buffer set up away from loop
* Lift T::Zero from cs.rs
* Improve checking if values are provided
* Simplify copying from slices & add test for wrong values length
* Check duplicates after sorting
* Fix formatting
* Check values length at the beginning
* Check length of values if values != None
2022-03-03 10:14:16 +01:00
Hantao Hui
0cae584262
use writeln! macro; replace unsafe with expect
2022-02-25 18:10:34 +01:00
Hantao Hui
9e0dfd14de
use std::io::Write trait when export to matrix market
2022-02-13 21:16:16 +01:00
Hantao Hui
8904c01c7b
export to file directly; add a new trait for export
2022-02-03 11:49:15 +01:00
Hantao Hui
d511e372de
add support for matrix market export
2022-01-24 23:17:30 +01:00
Fabian Loeschner
99eb8c1589
Revert "Rename nrows/ncols args for try_from_*_data functions for consistency"
...
This reverts commit 2a3e657b56
.
2022-01-13 10:28:00 +01:00
Fabian Loeschner
89f1e855bb
Revert "Fix panic in SparsityPattern::try_from_* if major index is out of bounds"
...
This reverts commit 12afe2917af4c30fc4a17316e453d0830072642c to avoid conflict with #1015 .
2022-01-11 10:35:07 +01:00
Fabian Loeschner
38989ed5f0
Move sparse matrix serialization to separate files
2022-01-11 10:35:07 +01:00
Fabian Löschner
583fde05fe
Add comment explaining intermediate types for serialization
2022-01-11 10:35:07 +01:00
Fabian Löschner
fe70a80e41
Partial revert "Use custom serde errors, make all sparse errs lowercase"
2022-01-11 10:35:07 +01:00
Fabian Loeschner
513178e03e
Revert "Updated more error messages"
...
This reverts commit a42eae45e045c391ede37a7a4328c09cbbb87a0f.
2022-01-11 10:35:07 +01:00
Fabian Löschner
647455dadd
Move serialization code to submodules
2022-01-11 10:35:07 +01:00
Fabian Löschner
837ded932e
Replace usage of Cow with generic type
2022-01-11 10:35:07 +01:00
Fabian Löschner
9b87fa4ffa
Add cfg attribute to Cow imports
2022-01-11 10:35:07 +01:00
Fabian Löschner
a8fa7f71c0
Unify separate (de)serialization helper structs by using Cow<'a, [T]>
2022-01-11 10:35:07 +01:00
Fabian Loeschner
3be81be2e3
Updated more error messages
2022-01-11 10:35:07 +01:00
Fabian Loeschner
7e67d920a7
Use custom serde errors, make all sparse errs lowercase w/o punctuation
2022-01-11 10:35:07 +01:00
Fabian Loeschner
e9b7718292
Fix panic in SparsityPattern::try_from_* if major index is out of bounds
2022-01-11 10:35:07 +01:00
Fabian Loeschner
e2c33b48ac
Simplify Deserialize bound
2022-01-11 10:35:07 +01:00
Fabian Loeschner
bfaf29393c
Implement Serialize, Deserialize for SparsityPattern
2022-01-11 10:35:07 +01:00
Fabian Loeschner
2a3e657b56
Rename nrows/ncols args for try_from_*_data functions for consistency
2022-01-11 10:35:07 +01:00
Fabian Loeschner
40d8a904a3
Implement Serialize, Deserialize for Csc, Coo; move helper out of impls
2022-01-11 10:35:07 +01:00
Fabian Loeschner
18b694dad2
Move serialization helper structs into trait impls
2022-01-11 10:35:07 +01:00
Fabian Löschner
f9aca24b15
Implement Serialize and Deserialize for CsrMatrix
2022-01-11 10:35:07 +01:00
Sébastien Crozet
1576a1517a
Merge pull request #1017 from losanc/matrixmarket-io
...
added reading matrix market data to sparse coomatrix
2021-12-21 01:51:08 -08:00
Hantao Hui
96b65c430f
using no_run in doc code example
2021-12-17 14:48:14 +01:00
Hantao Hui
656180f40e
fix for empty dense matrix
2021-12-13 09:28:28 +01:00
Hantao Hui
92b324c007
code fmt; fix failing unit test and doc test
2021-12-12 12:10:20 +01:00
Andreas Longva
6e10efe862
Remove redundant proptest patch
2021-12-01 12:44:07 +01:00
Andreas Longva
e2820316a8
Fix typos
2021-12-01 12:17:47 +01:00
Andreas Longva
4569484aa0
Line breaks
2021-12-01 12:08:42 +01:00
Andreas Longva
e3d1119bff
Hide MatrixMarketScalar implementation details for now
...
The existing MatrixMarketScalar is relatively closely tied to the way
oru parser is implemented. I've moved these internals into an internal
trait and sealed the public trait.
This makes it less flexible for users for now, but gives us more freedom
to change internals in the future.
2021-12-01 11:45:11 +01:00
Andreas Longva
93f3d60005
Remove From<pest::Error> for MatrixMarketError
...
We want pest to remain an internal implementation detail, so it should
not leak into the public API.
2021-12-01 11:33:08 +01:00
Andreas Longva
1b73b2f991
Link to matrix market IO in lib.rs
2021-12-01 11:07:47 +01:00
Andreas Longva
3b67afcd9b
Matrix market: Extend and reword documentation, rename some types
2021-12-01 11:07:13 +01:00
Hantao Hui
1cc5c7eba6
fix doc typo
2021-11-23 16:17:06 +01:00
Hantao Hui
920bd75b82
fix typo
2021-11-18 11:42:47 +01:00
Hantao Hui
332fe8c0e4
update loading matrix market, including:
...
1. Several renamings
2. removed unnecessary traits
3. added support for dense matrix
4. removed unnecessary comparison when reading data line by line. (e.g.
only read header line once)
2021-11-17 16:41:10 +01:00
Hantao Hui
7f9128c92d
added reading matrix market data to sparse coomatrix
2021-11-02 10:59:59 +01:00
Anton
89416baace
Bring apply permutation function back to serial.rs
2021-10-20 20:28:38 +02:00
Anton
752d1f300d
Permute values without unnecessary allocation
2021-10-20 01:50:42 +02:00
Anton
4b41be75b0
Add tests for some csr matrix related failure cases
2021-10-14 23:18:34 +02:00
Anton
4a97989738
Improve checking requirements for sorting column indices
2021-10-11 23:01:12 +02:00