Tyler Veness
9234883914
Fix SparseVector::insert(Index) assigning int to Scalar
...
Scalar doesn't necessarily support implicit construction from int or
assignment from int.
Here's the error message I got without this fix:
```
/home/tav/git/Sleipnir/build/_deps/eigen3-src/Eigen/src/SparseCore/SparseVector.h:180:25: error: no match for ‘operator=’ (operand types are ‘Eigen::internal::CompressedStorage<ExplicitDouble, int>::Scalar’ {aka ‘ExplicitDouble’} and ‘int’)
180 | m_data.value(p + 1) = 0;
| ~~~~~~~~~~~~~~~~~~~~^~~
```
See merge request libeigen/eigen!2046
2025-10-27 22:06:59 +00:00
Tyler Veness
ac3ef16f30
Fix SparseVector::insertBack() with custom scalar types
...
It fixes this compiler error:
```
/home/tav/git/Sleipnir/build/_deps/eigen3-src/Eigen/src/SparseCore/SparseVector.h:143:19: error: cannot convert ‘int’ to ‘const Eigen::internal::CompressedStorage<boost::decimal::decimal64_t, int>::Scalar&’ {aka ‘const boost::decimal::decimal64_t&’}
143 | m_data.append(0, i);
| ^
| |
| int
```
This change matches what SparseMatrix does:
https://gitlab.com/libeigen/eigen/-/blob/master/Eigen/src/SparseCore/SparseMatrix.h#L430-L438
See merge request libeigen/eigen!2040
2025-10-23 07:03:37 +00:00
Eugene Zhulenev
5c1029be1a
The 'CompressedStorageIterator<>' needs to satisfy the RandomAccessIterator
2025-09-30 16:28:41 +00:00
Charles Schlosser
bea7f7c582
SparseMatrixBase: delete redundant/shadowed typedef
2025-09-26 09:32:28 +00:00
Sergiu Deitsch
62fbd276e0
Provide hints for deprecated functionality
2025-09-22 16:00:42 +00:00
Evan Porter
6cd6284f7f
Make the sparse matrix printer pretty
2025-09-08 20:05:46 +00:00
Antonio Sánchez
da1a34a6ba
Zero-out matrix for empty set of triplets.
2025-09-02 22:51:17 +00:00
Antonio Sánchez
2e8cc042a1
Replace calls to numext::fma with numext:madd.
2025-08-28 21:40:19 +00:00
Antonio Sánchez
1a45d2168e
Fix use of FMA in triangular solver for boost multiprecision.
2025-08-25 18:05:22 +00:00
Rasmus Munk Larsen
2cf66d4b0d
Use numext::fma in more places in SparseCore.
2025-07-17 21:20:39 +00:00
Rasmus Munk Larsen
8ac2fb077d
Use numext::fma for sparse x dense dot product.
2025-07-02 23:19:26 +00:00
Antonio Sánchez
b1e74b1ccd
Fix all the doxygen warnings.
2025-02-01 00:00:31 +00:00
Antonio Sánchez
ad13df7ea4
Fix std::fill_n reference.
2025-01-14 00:43:00 +00:00
Antonio Sánchez
b396a6fbb2
Add free-function swap.
2024-10-14 15:51:40 +00:00
Frédéric BRIOL
2a3465102a
Refactor code to use constexpr for data() functions.
2024-09-23 16:43:53 +00:00
Frédéric Chapoton
6331da95eb
fixing a lot of typos
2024-07-30 22:15:49 +00:00
Rasmus Munk Larsen
5e4f3475b5
Remove call to deprecated method initParallel() in SparseDenseProduct.h
2024-05-15 23:12:32 +00:00
Charles Schlosser
59cf0df1d6
SparseMatrix::insert add checks for valid indices
2024-05-15 16:14:32 +00:00
Maarten Baert
35bf6c8edc
Add SimplicialNonHermitianLLT and SimplicialNonHermitianLDLT
2024-03-28 00:22:27 +00:00
Charles Schlosser
7b5d32b7c9
Sparse move
2024-03-27 17:44:50 +00:00
Antonio Sánchez
352ede96e4
Fix incomplete cholesky.
2024-03-08 19:18:10 +00:00
Tyler Veness
5ffb307afa
Fix deprecated anonymous enum-enum conversion warnings
2024-03-06 21:22:02 +00:00
Rasmus Munk Larsen
a2f8eba026
Speed up sparse x dense dot product.
2024-02-24 19:13:33 +00:00
Antonio Sánchez
500a3602f0
Use traits<Matrix>::Options instead of Matrix::Options.
2024-02-16 00:11:57 +00:00
Andreas Forster
eede526b7c
[Compressed Storage] Use smaller type of Index & StorageIndex for determining maximum size during resize.
2024-01-22 00:35:31 +00:00
Tobias Wood
f38e16c193
Apply clang-format
2023-11-29 11:12:48 +00:00
Antonio Sánchez
5bdf58b8df
Eliminate use of _res.
2023-10-16 19:56:53 +00:00
Charles Schlosser
e8515f78ac
Fix sparse triangular view iterator
2023-10-05 17:13:37 +00:00
Antonio Sánchez
2873916f1c
Rename plugin headers to .inc.
2023-08-21 16:26:11 +00:00
Antonio Sánchez
6e4d5d4832
Add IWYU private pragmas to internal headers.
2023-08-21 16:25:22 +00:00
Charles Schlosser
67a1e881d9
Sparse matrix column/row removal
2023-05-24 17:04:45 +00:00
Antonio Sánchez
3918768be1
Fix sparse iterator and tests.
2023-04-25 19:05:49 +00:00
Charles Schlosser
0d12fcc34e
Insert from triplets
2023-04-12 20:01:48 +00:00
Charles Schlosser
fd8f410bbe
Fix 2624 2625
2023-03-20 16:30:04 +00:00
Charles Schlosser
049a144798
Add typed logicals
2023-02-18 01:23:47 +00:00
Chip Kerchner
54459214a1
Fix epsilon and dummy_precision values in long double for double doubles. Prevented some algorithms from converging on PPC.
2023-02-16 23:35:42 +00:00
Charles Schlosser
6987a200bb
Fix stupid sparse bugs with outerSize == 0
2023-01-28 02:03:09 +00:00
Charles Schlosser
1aa6dc2007
Fix sparse warnings
2023-01-27 22:47:42 +00:00
Charles Schlosser
7f58bc98b1
Refactor sparse
2023-01-23 17:55:50 +00:00
Charles Schlosser
5a7ca681d5
Fix sparse insert
2023-01-20 21:32:32 +00:00
Charles Schlosser
fa0bd2c34e
improve sparse permutations
2023-01-15 03:21:25 +00:00
Charles Schlosser
9463fc95f4
change insert strategy
2023-01-11 06:24:49 +00:00
Charles Schlosser
81172cbdcb
Overhaul Sparse Core
2023-01-07 22:09:42 +00:00
Rasmus Munk Larsen
dd85d26946
Revert "Avoid mixing types in CompressedStorage.h"
2022-12-19 20:09:37 +00:00
Rasmus Munk Larsen
04e4f0bb24
Add missing colon in SparseMatrix.h.
2022-12-16 21:50:00 +00:00
Rasmus Munk Larsen
3d8a8def8a
Avoid mixing types in CompressedStorage.h
2022-12-16 20:11:02 +00:00
Charles Schlosser
4bb2446796
Add operators to CompressedStorageIterator
2022-12-16 16:48:50 +00:00
Charles Schlosser
44fe539150
add sparse sort inner vectors function
2022-12-01 19:28:56 +00:00
Antonio Sánchez
dcb042a87d
Fix serialization for non-compressed matrices.
2022-11-30 18:16:47 +00:00
Antonio Sánchez
e7b1ad0315
Add serialization for sparse matrix and sparse vector.
2022-11-21 19:43:07 +00:00