Rasmus Munk Larsen and Rasmus Munk Larsen
af2fd98144
SparseCore: honor Eigen::NoChange in SparseMatrix/SparseVector resize ( #656 )
...
libeigen/eigen!2569
Closes #656
Co-authored-by: Rasmus Munk Larsen <rlarsen@nvidia.com >
2026-05-18 21:36:29 -07:00
Rasmus Munk Larsen and Rasmus Munk Larsen
edc053f1b7
SparseCore: add operator==/!= to SparseCompressedBase InnerIterator ( #1192 )
...
libeigen/eigen!2571
Closes #1192
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-05-18 22:16:43 +00:00
Florian Maurin
83184e67da
Cleanup: Modernize internal utilities for C++14
...
libeigen/eigen!2518
2026-05-07 16:43:22 -07:00
Rasmus Munk Larsen and Rasmus Munk Larsen
8a3d61c790
Licensing: SPDX identifiers, REUSE.toml, and checkformat:reuse CI job
...
libeigen/eigen!2509
Closes #2868
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-05-04 00:36:12 +00:00
Rasmus Munk Larsen and Rasmus Munk Larsen
a624cf1a08
AMDOrdering: pattern-only A+A^T merge
...
libeigen/eigen!2496
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-05-02 11:03:40 +00:00
Rasmus Munk Larsen and Rasmus Munk Larsen
a25aa6467b
SparseCore: SparsityPatternRef view; pattern-only AMD ordering & ILUT prep
...
libeigen/eigen!2489
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-05-01 17:34:57 -07:00
Florian Maurin
2aaea06c33
Fix left scalar multiplication for TriangularView and SparseSelfAdjointView
...
libeigen/eigen!2400
Closes #1398 and #1536
2026-04-16 13:36:51 -07:00
Rasmus Munk Larsen and Rasmus Munk Larsen
cc8c7cf0e6
Fix bugs and clean up SparseCore module
...
libeigen/eigen!2250
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-03-21 13:31:12 +00:00
Tyler Veness
d8c8ee6fb2
Fix crash on construction of SparseMatrix with zero-length diagonal
...
libeigen/eigen!2249
2026-03-06 01:43:21 +00:00
Rasmus Munk Larsen and Rasmus Munk Larsen
eddb470a09
Fix flaky array_cwise and sparse_basic tests
...
libeigen/eigen!2227
Co-authored-by: Rasmus Munk Larsen <rmlarsen@gmail.com >
2026-02-27 21:52:46 -08:00
Charles Schlosser
7b5d32b7c9
Sparse move
2024-03-27 17:44:50 +00:00
Antonio Sánchez
46e9cdb7fe
Clang-format tests, examples, libraries, benchmarks, etc.
2023-12-05 21:22:55 +00:00
Charles Schlosser
e8515f78ac
Fix sparse triangular view iterator
2023-10-05 17:13:37 +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
Rasmus Munk Larsen
07aaa62e6f
Fix compiler warnings in tests.
2023-02-14 02:29:03 +00:00
Charles Schlosser
5a7ca681d5
Fix sparse insert
2023-01-20 21:32:32 +00:00
Charles Schlosser
81172cbdcb
Overhaul Sparse Core
2023-01-07 22:09:42 +00:00
Charles Schlosser
44fe539150
add sparse sort inner vectors function
2022-12-01 19:28:56 +00:00
Erik Schultheis
d271a7d545
reduce float warnings (comparisons and implicit conversions)
2022-01-26 18:16:19 +00:00
Erik Schultheis
f33a31b823
removed EIGEN_HAS_CXX11_* and redundant EIGEN_COMP_CXXVER checks
2021-11-29 19:18:57 +00:00
Erik Schultheis
7e586635ba
don't use deprecated MappedSparseMatrix
2021-11-19 15:58:04 +00:00
Antonio Sanchez
543e34ab9d
Re-implement move assignments.
...
The original swap approach leads to potential undefined behavior (reading
uninitialized memory) and results in unnecessary copying of data for static
storage.
Here we pass down the move assignment to the underlying storage. Static
storage does a one-way copy, dynamic storage does a swap.
Modified the tests to no longer read from the moved-from matrix/tensor,
since that can lead to UB. Added a test to ensure we do not access
uninitialized memory in a move.
Fixes : #2119
2021-03-10 16:55:20 +00:00
Antonio Sanchez
2468253c9a
Define EIGEN_CPLUSPLUS and replace most __cplusplus checks.
...
The macro `__cplusplus` is not defined correctly in MSVC unless building
with the the `/Zc:__cplusplus` flag. Instead, it defines `_MSVC_LANG` to the
specified c++ standard version number.
Here we introduce `EIGEN_CPLUSPLUS` which will contain the c++ version
number both for MSVC and otherwise. This simplifies checks for supported
features.
Also replaced most instances of standard version checking via `__cplusplus`
with the existing `EIGEN_COMP_CXXVER` macro for better clarity.
Fixes : #2170
2021-03-05 18:33:18 +00:00
Adam Shapiro
2ac0b78739
Fixed sparse conservativeResize() when both num cols and rows decreased.
...
The previous implementation caused a buffer overflow trying to calculate non-
zero counts for columns that no longer exist.
2021-02-23 21:32:39 +00:00
Gael Guennebaud
25424d91f6
Fix #1974 : assertion when reserving an empty sparse matrix
2020-08-26 12:32:20 +02:00
Gael Guennebaud
f489f44519
bug #1574 : implement "sparse_matrix =,+=,-= diagonal_matrix" with smart insertion strategies of missing diagonal coeffs.
2019-01-28 17:29:50 +01:00
Gael Guennebaud
cd25b538ab
Fix noise in sparse_basic_3 (numerical cancellation)
2018-12-08 00:13:37 +01:00
Rasmus Munk Larsen
954b4ca9d0
Suppress compiler warning about unused global variable.
2018-10-22 13:48:56 -07:00
Gael Guennebaud
3a33db4de5
merge
2018-10-15 09:22:27 +02:00
Rasmus Munk Larsen
0ed811a9c1
Suppress unused variable compiler warning in sparse subtest 3.
2018-10-12 13:41:57 -07:00
Gael Guennebaud
8214cf1896
Make sparse_basic includable from sparse_extra, but disable it since sparse_basic(DynamicSparseMatrix) does not compile at all anyways
2018-10-11 10:27:23 +02:00
Gael Guennebaud
eec0dfd688
bug #632 : add specializations for res ?= dense +/- sparse and res ?= sparse +/- dense.
...
They are rewritten as two compound assignment to by-pass hybrid dense-sparse iterator.
2018-10-10 22:50:15 +02:00
Gael Guennebaud
dff3a92d52
Remove usage of #if EIGEN_TEST_PART_XX in unit tests that does not require them (splitting can thus be avoided for them)
2018-07-17 15:52:58 +02:00
Gael Guennebaud
82f0ce2726
Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with EIGEN_DECLARE_TEST(mytest) { /* code */ }.
...
This provide several advantages:
- more flexibility in designing unit tests
- unit tests can be glued to speed up compilation
- unit tests are compiled with same predefined macros, which is a requirement for zapcc
2018-07-17 14:46:15 +02:00
Gael Guennebaud
26a2c6fc16
fix unit test
2017-12-14 15:11:04 +01:00
Gael Guennebaud
c86911ac73
bug #1384 : fix evaluation of "sparse/scalar" that used the wrong evaluation path.
2017-01-30 13:38:24 +01:00
Gael Guennebaud
296d24be4d
bug #1381 : fix sparse.diagonal() used as a rvalue.
...
The problem was that is "sparse" is not const, then sparse.diagonal() must have the
LValueBit flag meaning that sparse.diagonal().coeff(i) must returns a const reference,
const Scalar&. However, sparse::coeff() cannot returns a reference for a non-existing
zero coefficient. The trick is to return a reference to a local member of
evaluator<SparseMatrix>.
2017-01-25 17:39:01 +01:00
Gael Guennebaud
ba3f977946
bug #1376 : add missing assertion on size mismatch with compound assignment operators (e.g., mat += mat.col(j))
2017-01-23 22:06:08 +01:00
Gael Guennebaud
7136267461
Add missing .outer() member to iterators of evaluators of cwise sparse binary expression
2016-12-27 16:34:30 +01:00
Gael Guennebaud
11b492e993
bug #1358 : fix compilation for sparse += sparse.selfadjointView();
2016-12-14 17:53:47 +01:00
Gael Guennebaud
2e334f5da0
bug #426 : move operator && and || to MatrixBase and SparseMatrixBase.
2016-11-14 18:47:02 +01:00
Gael Guennebaud
eedb87f4ba
Fix regression in SparseMatrix::ReverseInnerIterator
2016-11-14 14:05:53 +01:00
Gael Guennebaud
7e029d1d6e
bug #1271 : add SparseMatrix::coeffs() methods returning a 1D view of the non zero coefficients.
2016-08-29 12:06:37 +02:00
Gael Guennebaud
757971e7ea
bug #1258 : fix compilation of Map<SparseMatrix>::coeffRef
2016-07-26 09:40:19 +02:00
Gael Guennebaud
2c1b56f4c1
bug #1238 : fix SparseMatrix::sum() overload for un-compressed mode.
2016-05-31 10:56:53 +02:00
Gael Guennebaud
8456bbbadb
bug #1224 : fix regression in (dense*dense).sparseView() by specializing evaluator<SparseView<Product>> for sparse products only.
2016-05-18 16:53:28 +02:00
Christoph Hertzberg
7268b10203
Split unit test
2016-05-11 19:41:53 +02:00
Christoph Hertzberg
dacb469bc9
Enable and fix -Wdouble-conversion warnings
2016-05-05 13:35:45 +02:00