aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported/Eigen/src
Commit message (Collapse)AuthorAge
...
* Spline.h: fix spelling "spang" -> "span"Gravatar Steven Peters2019-02-08
|
* Avoid `I` as an identifier, since it may clash with the C-header complex.hGravatar Christoph Hertzberg2019-01-25
|
* Remove debug code.Gravatar Gael Guennebaud2018-12-09
|
* Various fixes in polynomial solver and its unit tests:Gravatar Gael Guennebaud2018-12-09
| | | | | | - cleanup noise in imaginary part of real roots - take into account the magnitude of the derivative to check roots. - use <= instead of < at appropriate places
* Fixed most conversion warnings in MatrixFunctions moduleGravatar Christoph Hertzberg2018-11-20
|
* A few small fixes to a) prevent throwing in ctors and dtors of the threading ↵Gravatar Rasmus Munk Larsen2018-11-09
| | | | code, and b) supporting matrix exponential on platforms with 113 bits of mantissa for long doubles.
* Fix most Doxygen warnings. Also add links to stable documentation from ↵Gravatar Christoph Hertzberg2018-10-19
| | | | | | | unsupported modules (by using the corresponding Doxytags file). Manually grafted from d107a371c61b764c73fd1570b1f3ed1c6400dd7e
* Iterative solvers: unify and fix handling of multiple rhs.Gravatar Gael Guennebaud2018-10-15
| | | | m_info was not properly computed and the logic was repeated in several places.
* DGMRES: fix null rhs, fix restart, fix m_isDeflInitialized for multiple solveGravatar Gael Guennebaud2018-10-15
|
* Add missing plugins to DynamicSparseMatrix -- fix sparse_extra_3Gravatar Gael Guennebaud2018-09-21
|
* bug #1596: fix inclusion of Eigen's header within unsupported modules.Gravatar Gael Guennebaud2018-09-17
|
* EIGEN_UNUSED is not supported by g++4.7 (and not portable)Gravatar Christoph Hertzberg2018-09-12
|
* Use `static const int` instead of `enum` to avoid numerous ↵Gravatar Christoph Hertzberg2018-09-07
| | | | `local-type-template-args` warnings in C++03 mode
* Fix build failures in matrix_power and matrix_exponential tests.Gravatar Alexey Frunze2018-08-31
| | | | | | | | This fixes the static assertion complaining about double being used in place of long double. This happened on MIPS32, where double and long double have the same type representation. This can be simulated on x86 as well if we pass -mlong-double-64 to g++.
* Fix some shadow warningsGravatar Christoph Hertzberg2018-08-25
|
* Silence unused parameter warningGravatar Christoph Hertzberg2018-08-17
|
* bug #1451: fix numeric_limits<AutoDiffScalar<Der>> with a reference as ↵Gravatar Gael Guennebaud2018-08-04
| | | | derivative type
* Creating separate SYCL required PR for uncontroversial files.Gravatar Mehdi Goli2018-08-03
|
* Converting ad-hoc inline keyword to EIGEN_STRONG_INLINE MACRO.Gravatar Mehdi Goli2018-08-01
|
* Removed several shadowing types and use global Index typedef everywhereGravatar Christoph Hertzberg2018-07-25
|
* Rename variable which shadows class nameGravatar Christoph Hertzberg2018-07-25
|
* bug #1558: fix a corner case in MINRES when both v_new and w_new vanish.Gravatar David Hyde2018-07-08
|
* Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with ↵Gravatar Gael Guennebaud2018-07-17
| | | | | | | | | 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
* Some warning fixesGravatar Gael Guennebaud2018-07-17
|
* Remove clang warningGravatar Gael Guennebaud2018-07-13
|
* Updates corresponding to the latest round of PR feedbackGravatar Deven Desai2018-07-11
| | | | | | | | | | | | | | The major changes are 1. Moving CUDA/PacketMath.h to GPU/PacketMath.h 2. Moving CUDA/MathFunctions.h to GPU/MathFunction.h 3. Moving CUDA/CudaSpecialFunctions.h to GPU/GpuSpecialFunctions.h The above three changes effectively enable the Eigen "Packet" layer for the HIP platform 4. Merging the "hip_basic" and "cuda_basic" unit tests into one ("gpu_basic") 5. Updating the "EIGEN_DEVICE_FUNC" marking in some places The change has been tested on the HIP and CUDA platforms.
* renaming CUDA* to GPU* for some header filesGravatar Deven Desai2018-07-11
|
* merging updates from upstreamGravatar Deven Desai2018-07-11
|\
* | updates based on PR feedbackGravatar Deven Desai2018-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two major changes (and a few minor ones which are not listed here...see PR discussion for details) 1. Eigen::half implementations for HIP and CUDA have been merged. This means that - `CUDA/Half.h` and `HIP/hcc/Half.h` got merged to a new file `GPU/Half.h` - `CUDA/PacketMathHalf.h` and `HIP/hcc/PacketMathHalf.h` got merged to a new file `GPU/PacketMathHalf.h` - `CUDA/TypeCasting.h` and `HIP/hcc/TypeCasting.h` got merged to a new file `GPU/TypeCasting.h` After this change the `HIP/hcc` directory only contains one file `math_constants.h`. That will go away too once that file becomes a part of the HIP install. 2. new macros EIGEN_GPUCC, EIGEN_GPU_COMPILE_PHASE and EIGEN_HAS_GPU_FP16 have been added and the code has been updated to use them where appropriate. - `EIGEN_GPUCC` is the same as `(EIGEN_CUDACC || EIGEN_HIPCC)` - `EIGEN_GPU_DEVICE_COMPILE` is the same as `(EIGEN_CUDA_ARCH || EIGEN_HIP_DEVICE_COMPILE)` - `EIGEN_HAS_GPU_FP16` is the same as `(EIGEN_HAS_CUDA_FP16 or EIGEN_HAS_HIP_FP16)`
* | syncing this fork with upstreamGravatar Deven Desai2018-06-13
|\ \
| | * Use std::complex constructor instead of assignment from scalarGravatar Jonathan Liu2018-06-28
| |/ | | | | | | | | Fixes GCC conversion to non-scalar type requested compile error when using boost::multiprecision::cpp_dec_float_50 as scalar type.
| * Merged in mfigurnov/eigen/gamma-der-a (pull request PR-403)Gravatar Benoit Steiner2018-06-11
| |\ | | | | | | | | | | | | | | | Derivative of the incomplete Gamma function and the sample of a Gamma random variable Approved-by: Benoit Steiner <benoit.steiner.goog@gmail.com>
| * | fix prototypeGravatar Gael Guennebaud2018-06-08
| | |
| | * Merge from eigen/eigenGravatar Michael Figurnov2018-06-07
| | |\ | | |/ | |/|
| | * Updated the stopping criteria in igammac_cf_impl.Gravatar Michael Figurnov2018-06-07
| | | | | | | | | | | | Previously, when computing the derivative, it used a relative error threshold. Now it uses an absolute error threshold. The behavior for computing the value is unchanged. This makes more sense since we do not expect the derivative to often be close to zero. This change makes the derivatives about 30% faster across the board. The error for the igamma_der_a is almost unchanged, while for gamma_sample_der_alpha it is a bit worse for float32 and unchanged for float64.
| | * Derivative of the incomplete Gamma function and the sample of a Gamma random ↵Gravatar Michael Figurnov2018-06-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | variable. In addition to igamma(a, x), this code implements: * igamma_der_a(a, x) = d igamma(a, x) / da -- derivative of igamma with respect to the parameter * gamma_sample_der_alpha(alpha, sample) -- reparameterization derivative of a Gamma(alpha, 1) random variable sample with respect to the alpha parameter The derivatives are computed by forward mode differentiation of the igamma(a, x) code. Although gamma_sample_der_alpha can be implemented via igamma_der_a, a separate function is more accurate and efficient due to analytical cancellation of some terms. All three functions are implemented by a method parameterized with "mode" that always computes the derivatives, but does not return them unless required by the mode. The compiler is expected to (and, based on benchmarks, does) skip the unnecessary computations depending on the mode.
* | | Adding support for using Eigen in HIP kernels.Gravatar Deven Desai2018-06-06
| |/ |/| | | | | | | | | | | | | | | This commit enables the use of Eigen on HIP kernels / AMD GPUs. Support has been added along the same lines as what already exists for using Eigen in CUDA kernels / NVidia GPUs. Application code needs to explicitly define EIGEN_USE_HIP when using Eigen in HIP kernels. This is because some of the CUDA headers get picked up by default during Eigen compile (irrespective of whether or not the underlying compiler is CUDACC/NVCC, for e.g. Eigen/src/Core/arch/CUDA/Half.h). In order to maintain this behavior, the EIGEN_USE_HIP macro is used to switch to using the HIP version of those header files (see Eigen/Core and unsupported/Eigen/CXX11/Tensor) Use the "-DEIGEN_TEST_HIP" cmake option to enable the HIP specific unit tests.
| * Merge from eigen/eigen.Gravatar Michael Figurnov2018-06-07
| |\
| | * Fix int versus IndexGravatar Gael Guennebaud2018-06-07
| | |
| * | Fix compilation of special functions without C99 math.Gravatar Michael Figurnov2018-06-07
|/ / | | | | | | | | | | The commit with Bessel functions i0e and i1e placed the ifdef/endif incorrectly, causing i0e/i1e to be undefined when EIGEN_HAS_C99_MATH=0. These functions do not actually require C99 math, so now they are always available.
| * Fix typos found using codespellGravatar Gael Guennebaud2018-06-07
|/
* Exponentially scaled modified Bessel functions of order zero and one.Gravatar Michael Figurnov2018-05-31
| | | | | | The functions are conventionally called i0e and i1e. The exponentially scaled version is more numerically stable. The standard Bessel functions can be obtained as i0(x) = exp(|x|) i0e(x) The code is ported from Cephes and tested against SciPy.
* Hyperlink DOIs against preferred resolverGravatar Katrin Leinweber2018-05-24
|
* protect calls to isnanGravatar Gael Guennebaud2018-04-03
|
* Fix uninitialized output argument.Gravatar Gael Guennebaud2018-04-03
|
* Improve robustness of igamma and igammac to bad inputs.Gravatar Rasmus Munk Larsen2018-03-19
| | | | | | Check for nan inputs and propagate them immediately. Limit the number of internal iterations to 2000 (same number as used by scipy.special.gammainc). This prevents an infinite loop when the function is called with nan or very large arguments. Original change by mfirgunov@google.com
* Move KLU support to officialGravatar Gael Guennebaud2017-11-10
|
* KLU: truely disable unimplemented code, add proper static assertions in solveGravatar Gael Guennebaud2017-11-10
|
* Merged in kylemacfarlan/eigen (pull request PR-337)Gravatar Gael Guennebaud2017-11-10
|\ | | | | | | Add support for SuiteSparse's KLU routines
* \ Merged in jkflying/eigen-fix-scaling (pull request PR-302)Gravatar Gael Guennebaud2017-11-10
|\ \ | | | | | | | | | Make scaling work with non-square matrices