Commit Graph

5385 Commits

Author SHA1 Message Date
Rasmus Munk Larsen
77dc6dbb44 Fix bugs in log1p and expm1 where repeated using statements would clobber each other.
Add specializations for complex types since std::log1p and std::exp1m do not support complex.

(cherry picked from commit d55d392e7b)
2021-01-21 11:22:36 +01:00
David Tellenbach
a36d19c4fc Fix a typo in SparseMatrix documentation.
This fixes issue #2091.

(cherry picked from commit 2e8f850c78)
2020-12-09 14:53:09 +01:00
David Tellenbach
0fd6b4f71d Bump to 3.3.9 2020-12-04 22:53:41 +01:00
Christoph Hertzberg
2a4fcb2c31 Fix doxygen class block that was wrongly named.
Manually cherry-picked from a7170f2aca
2020-11-27 19:41:19 +01:00
Christoph Hertzberg
ac632f663e bug #1746: Removed implementation of standard copy-constructor and standard copy-assign-operator from PermutationMatrix and Transpositions to allow malloc-less std::move. Added unit-test to rvalue_types
(cherry picked from commit efd9867ff0)
2020-11-12 11:54:51 +01:00
Luke Peterson
ef3cc72cb6 Remove error counting in OpenMP parallelize_gemm
This resolves a compilation error associated with
Eigen::eigen_assert_exception. It also eliminates the counting of
exceptions that may occur in the OpenMP parallel section. If an
unhandled exception occurs in this section, the behavior is non-conforming
according to the OpenMP specification.
2020-10-08 18:50:33 -07:00
David Tellenbach
7a0a2a5001 Define coeff-wise binary array operators for base class
This fixes #2012.
2020-10-09 00:53:34 +02:00
szczepaniak bartek
bfdd4a9903 Fix Paradiso.
EIGEN_USING_STD -> EIGEN_USING_STD_MATH
2020-10-08 19:38:35 +00:00
David Tellenbach
dc252fbf00 Bump to 3.3.8 2020-10-05 13:24:15 +02:00
David Tellenbach
9f202c6f1e Fix undefined behaviour caused by uncaught exceptions in OMP section
An OpenMP parallel section must have a single entry and a single point
of exit. Leaving such a section by throwing an exception is undefined.
This patch fixes this by catching possible exceptions on the parallel
section and throwing right we left it.
2020-10-02 00:41:01 +02:00
David Tellenbach
b933946d63 Fix failure in GEBP kernel when compiling with OpenMP and FMA
Fixes #1995

(cherry picked from commit 30960d485e)
2020-09-30 16:17:33 +02:00
David Tellenbach
76f0650563 Bump to 3.3.8-rc1 2020-09-14 13:43:55 +02:00
nluehr
4707c3aa86 Fix incorrect integer cast in predux<half2>().
Bug corrupts results on Maxwell and earlier GPU architectures.

(cherry picked from commit dd6de618c3)
2020-09-04 19:12:05 +02:00
Gael Guennebaud
89a86ed422 fix #1901: warning in Mode==(Upper|Lower) 2020-09-02 15:44:51 +02:00
Tobias Bosch
f55a6d051b Include <sstream> explicitly, and don't rely on the implicit include via <complex>.
This implicit dependency does no longer exist in a recent llbm release (sha 78be61871704).
2020-09-02 11:02:18 +02:00
David Tellenbach
abb5d04c3a Fix StlDeque for GCC 10
StlDeque extends std::deque by accessing some of its internal members.
Since GCC 10 these are not accessible anymore.

(cherry picked from commit 5e484fa11d)
2020-08-31 00:20:10 +02:00
Gael Guennebaud
94f66fc32e Fix #1974: assertion when reserving an empty sparse matrix 2020-08-26 12:35:42 +02:00
Gael Guennebaud
efd72cddcd Backport AVX512 implementation from devel branch to 3.3 (the 3.3 version had many issues) 2020-08-26 12:34:20 +02:00
Gael Guennebaud
def70b2e37 Fix compilation with AVX512 and AVX/SSE packet-math functions 2020-08-25 17:05:17 +02:00
Gael Guennebaud
e5b35d64f7 Fix compilation with AVX512 2020-08-25 12:25:58 +02:00
Rasmus Munk Larsen
02ef38020b Fix incorrect use of std::abs reported in #1823. 2020-08-11 17:54:22 -07:00
Janek Kozicki
0dd9643ad5 Fix Yade high precision Real compilation 2020-03-23 18:24:49 +00:00
Christoph Hertzberg
14db78c53b Fix some maybe-uninitialized warnings
Cherry-picked from 72166d0e6e and 6965f6de7f
2020-02-28 19:32:10 +01:00
Christoph Hertzberg
84364ad11d Bug #1788: Fix rule-of-three violations inside the stable modules.
This fixes deprecated-copy warnings when compiling with GCC>=9
Also protect some additional Base-constructors from getting called by user code code (#1587)

Cherry-picked from 870e53c0
2020-02-28 19:04:33 +01:00
Eugene Zhulenev
160c0a3404 Change typedefs from private to protected to fix MSVC compilation 2020-02-18 10:55:02 +01:00
Gael Guennebaud
5f1082d0b1 Fix QuaternionBase::cast for quaternion map and wrapper.
(grafted from 6358599ecb
)
2019-12-03 14:51:14 +01:00
Gael Guennebaud
1039348f12 backport is_valid_index_type fix from default branch and c++03 2019-11-22 13:49:17 +01:00
Gael Guennebaud
3d7e2a1f3d Fix possible conflict with an externally defined "real" type.
This issue was detected by gcc5 only.
2019-11-14 13:31:26 +01:00
Greg Coombe
3d18879fc4 Initialize isometric transforms like affine transforms.
The isometric transform, like the affine transform, has an implicit last
row of [0, 0, 0, 1]. This was not being properly initialized, as verified
by a new test function.
(grafted from 9d988a1e1a
)
2019-01-11 23:14:35 -08:00
Christoph Hertzberg
cd12bf6317 bug #1761: Manually grafted changes in Meta.h
5937c4ae32
  Fall back is_integral to std::is_integral in c++11
f0862b062f
  Fix internal::is_integral<size_t/ptrdiff_t> with MSVC 2013 and older.
2019-10-24 13:29:35 +02:00
Christoph Hertzberg
1760432f6e Provide numext::[u]int{32,64}_t. Manually grafted from 4356a55a61 2019-10-11 16:51:08 +02:00
Gael Guennebaud
47e2f8a42c PR 719: fix real/imag namespace conflict
(grafted from 87427d2eaa
)
2019-10-08 09:15:17 +02:00
Gael Guennebaud
8ee2e10af4 Fix perf issue in SimplicialLDLT::solve for complexes (again, m_diag is real)
(grafted from 9549ba8313
)
2019-10-01 12:54:25 +02:00
Gael Guennebaud
165db26dc0 Fix speed issue with SimplicialLDLT for complexes: the diagonal is real!
(grafted from c8b2c603b0
)
2019-09-30 16:14:34 +02:00
Gael Guennebaud
52d159c19f bug #1741: fix self-adjoint*matrix, triangular*matrix, and triangular^1*matrix with a destination having a non-trivial inner-stride 2019-09-11 15:04:25 +02:00
Gael Guennebaud
6abc9e5379 Fix compilation of BLAS backend and frontend 2019-09-11 10:02:37 +02:00
Gael Guennebaud
f722e43770 bug #1741: fix SelfAdjointView::rankUpdate and product to triangular part for destination with non-trivial inner stride
(grafted from c06e6fd115
)
2019-09-10 23:29:52 +02:00
Gael Guennebaud
f483c7ea8a bug #1741: fix C.noalias() = A*C; with C.innerStride()!=1
(grafted from ea0d5dc956
)
2019-09-10 16:25:24 +02:00
Gael Guennebaud
32cb4853c6 bug #1562: optimize evaluation of small products of the form s*A*B by rewriting them as: s*(A.lazyProduct(B)) to save a costly temporary. Measured speedup from 2x to 5x...
(grafted from d428a199ab
)
2018-07-02 11:41:09 +02:00
Michael Grupp
3a79cc3f5b Fix typo in Umeyama method documentation 2019-07-17 11:20:41 +00:00
Christoph Hertzberg
427f2f66d6 bug #1724: Mask buggy warnings with g++-7 2019-06-14 14:57:46 +02:00
Christoph Hertzberg
4387298e80 Cast Index to RealScalar
This fixes compilation issues with RealScalar types that are not implicitly castable from Index (e.g. ceres Jet types).
Reported by Peter Anderson-Sprecher via eMail
(grafted from ac21a08c13
)
2019-05-23 15:31:12 +02:00
Christoph Hertzberg
4f77286c3d Collapsed revision from PR-641
* SparseLU.h - corrected example, it didn't compile
* Changed encoding back to UTF8
2019-05-13 19:02:30 +02:00
Gael Guennebaud
4a242ac43d bug #1695: fix a numerical robustness issue. Computing the secular equation at the middle range without a shift might give a wrong sign.
(grafted from 45e65fbb77
)
2019-03-27 20:16:58 +01:00
Gael Guennebaud
fe8cd812b0 backport EIGEN_HAS_C99_MATH for MSVC 2019-03-22 10:16:08 +01:00
Gael Guennebaud
dd93c41618 Complete previous backport with is_valid_index_type 2019-03-17 22:02:18 +01:00
Gael Guennebaud
441b3511de bug #1692: enable enum as sizes of Matrix and Array
(grafted from cf7e2e277f
)
2019-03-17 21:59:30 +01:00
Gael Guennebaud
6b59aa705a bug #1689 fix used-but-marked-unused warning
(grafted from bfbf7da047
)
2019-03-05 23:46:24 +01:00
Gael Guennebaud
7b93328baf Enable construction of Ref<VectorType> from a runtime vector.
(grafted from b0d406d91c
)
2019-03-03 15:25:25 +01:00
Gael Guennebaud
c354f59fb6 bug #1679: avoid possible division by 0 in complex-schur
(grafted from f2970819a2
)
2019-02-15 09:39:25 +01:00