aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/NumTraits.h
Commit message (Collapse)AuthorAge
* Fix c++20 warnings about using enums in arithmetic expressions.Gravatar Rasmus Munk Larsen2021-06-10
|
* Augment NumTraits with min/max_exponent() again.Gravatar Antonio Sanchez2021-03-16
| | | | | | | | | | | | Replace usage of `std::numeric_limits<...>::min/max_exponent` in codebase where possible. Also replaced some other `numeric_limits` usages in affected tests with the `NumTraits` equivalent. The previous MR !443 failed for c++03 due to lack of `constexpr`. Because of this, we need to keep around the `std::numeric_limits` version in enum expressions until the switch to c++11. Fixes #2148
* Revert "Augment NumTraits with min/max_exponent()."Gravatar David Tellenbach2021-03-17
| | | | This reverts commit 75ce9cd2a7aefaaea8543e2db14ce4dc149eeb03.
* Augment NumTraits with min/max_exponent().Gravatar Antonio Sanchez2021-03-17
| | | | | | | | Replace usage of `std::numeric_limits<...>::min/max_exponent` in codebase. Also replaced some other `numeric_limits` usages in affected tests with the `NumTraits` equivalent. Fixes #2148
* Replace numext::as_uint with numext::bit_cast<numext::uint32_t>Gravatar David Tellenbach2020-10-29
|
* Add support for Armv8.2-a __fp16Gravatar David Tellenbach2020-10-28
| | | | | | | | | | | | | | | Armv8.2-a provides a native half-precision floating point (__fp16 aka. float16_t). This patch introduces * __fp16 as underlying type of Eigen::half if this type is available * the packet types Packet4hf and Packet8hf representing float16x4_t and float16x8_t respectively * packet-math for the above packets with corresponding scalar type Eigen::half The packet-math functionality has been implemented by Ashutosh Sharma <ashutosh.sharma@amperecomputing.com>. This closes #1940.
* Get rid of initialization logic for blueNorm by making the computed ↵Gravatar Rasmus Munk Larsen2020-09-18
| | | | | | constants static const or constexpr. Move macro definition EIGEN_CONSTEXPR to Core and make all methods in NumTraits constexpr when EIGEN_HASH_CONSTEXPR is 1.
* Missing struct definition in NumTraitsGravatar Antonio Sanchez2020-04-07
|
* Add numeric_limits min and max for boolGravatar Akshay Naresh Modi2020-04-06
| | | | This will allow (among other things) computation of argmax and argmin of bool tensors
* Fix compiler for unsigned integers.Gravatar Rasmus Munk Larsen2019-07-09
|
* Extend CUDA support to matrix inversion and selfadjointeigensolverGravatar Andrea Bocci2018-06-11
|
* Merged in spraetor/eigen (pull request PR-305)Gravatar Gael Guennebaud2017-11-10
|\ | | | | | | Issue with mpreal and std::numeric_limits::digits
| * Issue with mpreal and std::numeric_limits, i.e. digits is not a constant. ↵Gravatar Simon Praetorius2017-03-24
| | | | | | | | Added a digits() traits in NumTraits with fallback to static constant. Specialization for mpreal added in MPRealSupport.
* | Fix compilation of streaming nested Array, i.e., cout << Array<Array<>>Gravatar Gael Guennebaud2017-06-12
|/
* NumTraits.h:Gravatar Rafael Guglielmetti2016-12-16
| | | | For the values 'ReadCost, AddCost and MulCost', information about value Eigen::HugeCost
* bug #1195: move NumTraits::Div<>::Cost to internal::scalar_div_cost (with ↵Gravatar Gael Guennebaud2016-09-08
| | | | some specializations in arch/SSE and arch/AVX)
* Generalize ScalarBinaryOpTraits to any complex-real combination as defined ↵Gravatar Gael Guennebaud2016-09-06
| | | | by NumTraits (instead of supporting std::complex only).
* Add minimal support for Array<string>, and fix Tensor<string>Gravatar Gael Guennebaud2016-07-25
|
* Add digits10 overload for complex.Gravatar Gael Guennebaud2016-07-25
|
* Update doc.Gravatar Gael Guennebaud2016-07-25
|
* Add NumTraits::digits10() function based on numeric_limits::digits10 and ↵Gravatar Gael Guennebaud2016-07-25
| | | | make use of it for printing matrices.
* Introduce a NumTraits<T>::Literal type to be used for literals, andGravatar Gael Guennebaud2016-06-23
| | | | | | | improve mixing type support in operations between arrays and scalars: - 2 * ArrayXcf is now optimized in the sense that the integer 2 is properly promoted to a float instead of a complex<float> (fix a regression) - 2.1 * ArrayXi is now forbiden (previously, 2.1 was converted to 2) - This mechanism should be applicable to any custom scalar type, assuming NumTraits<T>::Literal is properly defined (it defaults to T)
* Made it possible to use the NumTraits for complex and Array in a cuda kernel.Gravatar Benoit Steiner2016-03-31
|
* Started to model the cost of divisions more accurately.Gravatar Benoit Steiner2016-03-25
|
* Resolve bad merge.Gravatar Eugene Brevdo2016-03-08
|
* Add infinity() support to numext::numeric_limits, use it in lgamma.Gravatar Eugene Brevdo2016-03-02
| | | | | This makes the infinity access a __device__ function, removing nvcc warnings.
* Unify std::numeric_limits and device::numeric_limits within numext namespaceGravatar Gael Guennebaud2016-01-22
|
* Fix numerous doxygen shortcomings, and workaround some clang -Wdocumentation ↵Gravatar Gael Guennebaud2016-01-01
| | | | warnings
* Refactoring of the cost model:Gravatar Gael Guennebaud2015-10-28
| | | | | | | | | | | - Dynamic is now an invalid value - introduce a HugeCost constant to be used for runtime-cost values or arbitrarily huge cost - add sanity checks for cost values: must be >=0 and not too large This change provides several benefits: - it fixes shortcoming is some cost computation where the Dynamic case was not properly handled. - it simplifies cost computation logic, and should avoid future similar shortcomings. - it allows to distinguish between different level of dynamic/huge/infinite cost - it should enable further simplifications in the computation of costs (save compilation time)
* Fixed broken commit a09cfe650fe56b181747af04d61548800da1f72bGravatar Christoph Hertzberg2015-08-22
| | | | . Missing } and unprotected min/max calls and definitions.
* std::numeric_limits doesn't work reliably on CUDA devices. Use our own ↵Gravatar Benoit Steiner2015-08-21
| | | | definition of numeric_limit<T>::max() and numeric_limit<T>::min() instead of the stl ones.
* Removed the deprecated EIGEN2_SUPPORT, as previously announced. A ↵Gravatar Christoph Hertzberg2014-07-01
| | | | compilation error is raised, if this compile-switch is defined. The documentation references to the corresponding pages from Eigen3.2 now. Also, the Eigen2 testsuite has been removed.
* Add nvcc support for small eigenvalues decompositions and workaround lack of ↵Gravatar Gael Guennebaud2013-08-01
| | | | support for std::swap and std::numeric_limits
* Add nvcc support for normalize, initializers, and fuzzy comparisonsGravatar Gael Guennebaud2013-06-05
|
* Add missing epsilon/dummy_precision function in NumTraits<Array>Gravatar Gael Guennebaud2013-04-09
|
* Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.Gravatar Benoit Jacob2012-07-13
|
* Get rid of include directives inside namespace blocks (bug #339).Gravatar Jitse Niesen2012-04-15
|
* fix static inline versus inline static issues (the former is the correct order)Gravatar Gael Guennebaud2012-01-31
|
* protect calls to min and max with parentheses to make Eigen compatible with ↵Gravatar Gael Guennebaud2011-07-21
| | | | | | | default windows.h (transplanted from 49b6e9143e1d74441924c0c313536e263e12a55c )
* allow the possibility to automatically call or not the ctors on a per scalar ↵Gravatar Gael Guennebaud2011-01-26
| | | | type basis, and disable automatic initialization of std::complex<>
* lots more EIGEN2_SUPPORT fixes. Now several of the most important core tests ↵Gravatar Benoit Jacob2011-01-20
| | | | build and succeed.
* big eigen2support fix, aimed at users who relied on internal eigen2 stuff: ↵Gravatar Benoit Jacob2011-01-19
| | | | | | | | | | now we dont need customizations in test/eigen2/main.h anymore. These tests already build: eigen2_basicstuff eigen2_adjoint eigen2_linearstructure eigen2_prec_inverse_4x4
* Initial fixes for bug #85.Gravatar Hauke Heibel2010-10-25
| | | | | | | Renamed meta_{true|false} to {true|false}_type, meta_if to conditional, is_same_type to is_same, un{ref|pointer|const} to remove_{reference|pointer|const} and makeconst to add_const. Changed boolean type 'ret' member to 'value'. Changed 'ret' members refering to types to 'type'. Adapted all code occurences.
* bug #86 : use internal:: namespace instead of ei_ prefixGravatar Benoit Jacob2010-10-25
|
* Various documentation improvements.Gravatar Jitse Niesen2010-07-06
| | | | | | | * Add short documentation for Array class * Put all classes explicitly in Core module (where applicable) * Section on Modules in Quick Reference Guide * Put Page 7 after Page 6 in Contents :)
* Bug fix for NumTraits<T>::lowest() .Gravatar Jitse Niesen2010-07-01
| | | | | | std::numeric_limits<T>::min() is the lowest *positive* normalized number for floating point types. This fixes the test failure for geo_alignedbox8 for me.
* fix readcost for complex typesGravatar Thomas Capricelli2010-05-26
|
* Complete rework of global math functions and NumTraits.Gravatar Benoit Jacob2010-04-28
| | | | | | | | * Now completely generic so all standard integer types (like char...) are supported. ** add unit test for that (integer_types). * NumTraits does no longer inherit numeric_limits * All math functions are now templated * Better guard (static asserts) against using certain math functions on integer types.
* Here is the proper fix.Gravatar Hauke Heibel2010-02-11
|
* Fixed typos.Gravatar Hauke Heibel2010-02-11
| | | | Replace NumTraits<bool>::dummy_precision() (three locations) by false in order to suppress warnings.