alugowski / fast_matrix_market

Fast and full-featured Matrix Market I/O library for C++, Python, and R
BSD 2-Clause "Simplified" License
75 stars 7 forks source link

Duplicate-free symmetric diagonals #51

Closed alugowski closed 1 year ago

alugowski commented 1 year ago

Add a read option to request symmetry generalization to be done by the application bindings.

For example, the triplet loader will load a symmetric matrix market file as is, then create the symmetric elements. This allows a scan to identify diagonal elements, and the final output does not have extra zero elements on the diagonals.

See https://github.com/alugowski/fast_matrix_market/issues/49

codecov[bot] commented 1 year ago

Codecov Report

Attention: 4 lines in your changes are missing coverage. Please review.

Comparison is base (8ba790a) 93.68% compared to head (13d0f6d) 93.49%. Report is 1 commits behind head on main.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #51 +/- ## ========================================== - Coverage 93.68% 93.49% -0.19% ========================================== Files 1 23 +22 Lines 269 2229 +1960 Branches 0 285 +285 ========================================== + Hits 252 2084 +1832 - Misses 17 145 +128 ``` | [Files](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski) | Coverage Δ | | |---|---|---| | [include/fast\_matrix\_market/app/Blaze.hpp](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski#diff-aW5jbHVkZS9mYXN0X21hdHJpeF9tYXJrZXQvYXBwL0JsYXplLmhwcA==) | `96.45% <100.00%> (ø)` | | | [include/fast\_matrix\_market/app/CXSparse.hpp](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski#diff-aW5jbHVkZS9mYXN0X21hdHJpeF9tYXJrZXQvYXBwL0NYU3BhcnNlLmhwcA==) | `97.29% <100.00%> (ø)` | | | [include/fast\_matrix\_market/app/Eigen.hpp](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski#diff-aW5jbHVkZS9mYXN0X21hdHJpeF9tYXJrZXQvYXBwL0VpZ2VuLmhwcA==) | `100.00% <100.00%> (ø)` | | | [include/fast\_matrix\_market/app/GraphBLAS.hpp](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski#diff-aW5jbHVkZS9mYXN0X21hdHJpeF9tYXJrZXQvYXBwL0dyYXBoQkxBUy5ocHA=) | `85.45% <100.00%> (ø)` | | | [include/fast\_matrix\_market/app/triplet.hpp](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski#diff-aW5jbHVkZS9mYXN0X21hdHJpeF9tYXJrZXQvYXBwL3RyaXBsZXQuaHBw) | `98.52% <100.00%> (ø)` | | | [include/fast\_matrix\_market/types.hpp](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski#diff-aW5jbHVkZS9mYXN0X21hdHJpeF9tYXJrZXQvdHlwZXMuaHBw) | `100.00% <ø> (ø)` | | | [include/fast\_matrix\_market/fast\_matrix\_market.hpp](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski#diff-aW5jbHVkZS9mYXN0X21hdHJpeF9tYXJrZXQvZmFzdF9tYXRyaXhfbWFya2V0LmhwcA==) | `93.75% <0.00%> (ø)` | | | [include/fast\_matrix\_market/read\_body.hpp](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski#diff-aW5jbHVkZS9mYXN0X21hdHJpeF9tYXJrZXQvcmVhZF9ib2R5LmhwcA==) | `94.71% <78.57%> (ø)` | | ... and [14 files with indirect coverage changes](https://app.codecov.io/gh/alugowski/fast_matrix_market/pull/51/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=Adam+Lugowski)

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.