Commit Graph

  • 13df3441ae Use MaxSizeVector instead of std::vector: xcode sometimes assumes that std::vector allocates aligned memory and therefore issues aligned instruction to initialize it. This can result in random crashes when compiling with AVX instructions enabled. Benoit Steiner 2016-09-02 19:25:47 -07:00
  • 373c340b71 Fixed a typo Benoit Steiner 2016-09-02 15:41:17 -07:00
  • cadd124d73 Pulled latest update from trunk Benoit Steiner 2016-09-02 15:30:02 -07:00
  • 05b0518077 Made the index type an explicit template parameter to help some compilers compile the code. Benoit Steiner 2016-09-02 15:29:34 -07:00
  • adf864fec0 Merged in rmlarsen/eigen (pull request PR-222) Benoit Steiner 2016-09-02 14:11:20 -07:00
  • 5a6be66cef Turned the Index type used by the nullary wrapper into a template parameter. Benoit Steiner 2016-09-02 14:10:29 -07:00
  • 13e93ca8b7 Fix CUDA build broken by changes to min and max reduction. Rasmus Munk Larsen 2016-09-02 13:41:36 -07:00
  • 6c05c3dd49 Fix the cxx11_tensor_cuda.cu test on 32bit platforms. Benoit Steiner 2016-09-02 11:12:16 -07:00
  • 49c0390ce0 merge Gael Guennebaud 2016-09-02 15:24:14 +02:00
  • d6c8366d84 Fix compilation with MSVC 2012 Gael Guennebaud 2016-09-02 15:23:32 +02:00
  • 039e225f7f Added a test for nullary expressions on CUDA Also check that we can mix 64 and 32 bit indices in the same compilation unit Benoit Steiner 2016-09-01 13:28:12 -07:00
  • c53f783705 Updated the contraction code to support constant inputs. Benoit Steiner 2016-09-01 11:41:27 -07:00
  • ef54723dbe One more msvc fix iteration, the previous one was over-simplified for visual Gael Guennebaud 2016-09-01 15:04:53 +02:00
  • 46475eff9a Adjust Tensor module wrt recent change in nullary functor Gael Guennebaud 2016-09-01 13:40:45 +02:00
  • 72a4d49315 Fix compilation with CUDA 8 Gael Guennebaud 2016-09-01 13:39:33 +02:00
  • f9f32e9e2d Fix compilation with nvcc Gael Guennebaud 2016-09-01 13:06:14 +02:00
  • 3d946e42b3 Fix compilation with visual studio Gael Guennebaud 2016-09-01 12:59:32 +02:00
  • 221f619bea Merged in rmlarsen/eigen (pull request PR-221) Benoit Steiner 2016-08-31 15:10:10 -07:00
  • a1e092d1e8 Fix bugs to make min- and max reducers with correctly with IEEE infinities. Rasmus Munk Larsen 2016-08-31 15:04:16 -07:00
  • 836fa25a82 Make sure sizeof is truelly needed, thus improving SFINAE portability. Gael Guennebaud 2016-08-31 23:40:18 +02:00
  • 84cf6e42ca minor tweaks in has_* helpers Gael Guennebaud 2016-08-31 23:04:14 +02:00
  • 7ae819123c Simplify CwiseNullaryOp example. Gael Guennebaud 2016-08-31 15:46:04 +02:00
  • 218c37beb4 bug #1286: automatically detect the available prototypes of functors passed to CwiseNullaryExpr such that functors have only to implement the operators that matters among: operator()() operator()(i) operator()(i,j) Linear access is also automatically detected based on the availability of operator()(i,j). Gael Guennebaud 2016-08-31 15:45:25 +02:00
  • efe2c225c9 bug #1283: add regression unit test Gael Guennebaud 2016-08-31 13:04:29 +02:00
  • 3456247437 bug #1283: quick fix for products involving uncommon general block access to vectors. Gael Guennebaud 2016-08-31 08:17:15 +02:00
  • 0e42db7cab fix previous backport Gael Guennebaud 2016-08-30 23:18:35 +02:00
  • 8c48d42530 Fix 4x4 inverse with non-linear destination Gael Guennebaud 2016-08-30 23:16:38 +02:00
  • 67ce7ee5c4 Fix 4x4 inverse with non-linear destination (grafted from 8c48d42530 ) Gael Guennebaud 2016-08-30 23:16:38 +02:00
  • e7fbbc2748 Doc: add links and discourage user to write their own expression (better use CwiseNullaryOp) Gael Guennebaud 2016-08-30 15:57:46 +02:00
  • 1e2ab8b0b3 Doc: add an exemple showing how custom expression can be advantageously implemented via CwiseNullaryOp. Gael Guennebaud 2016-08-30 15:40:41 +02:00
  • 9c9e23858e Doc: split customizing-eigen page into sub-pages and re-structure a bit the different topics Gael Guennebaud 2016-08-30 11:10:08 +02:00
  • cffe8bbff7 Doc: add link to example Gael Guennebaud 2016-08-30 10:45:27 +02:00
  • c57317035a Fix unit test for 1x1 matrices Gael Guennebaud 2016-08-30 10:20:23 +02:00
  • 1f84f0d33a merge EulerAngles module Gael Guennebaud 2016-08-30 10:01:53 +02:00
  • 68e803a26e Fix warning Gael Guennebaud 2016-08-30 09:21:57 +02:00
  • e074f720c7 Include missing forward declaration of SparseMatrix Gael Guennebaud 2016-08-29 18:56:46 +02:00
  • 2915e1fc5d Revert part of changeset 5b3a6f51d3 to keep accuracy of smallest eigenvalues. Gael Guennebaud 2016-08-29 14:14:18 +02:00
  • 7e029d1d6e bug #1271: add SparseMatrix::coeffs() methods returning a 1D view of the non zero coefficients. Gael Guennebaud 2016-08-29 12:06:37 +02:00
  • a93e354d92 Add some pre-allocation unit tests (not working yet) Gael Guennebaud 2016-08-29 11:08:44 +02:00
  • 6cd7b9ea6b Fix compilation with cuda 8 Gael Guennebaud 2016-08-29 11:06:08 +02:00
  • 8f4b4ad5fb use ::hlog if available. Gael Guennebaud 2016-08-29 11:05:32 +02:00
  • 35a8e94577 bug #1167: simplify installation of header files using cmake's install(DIRECTORY ...) command. Gael Guennebaud 2016-08-29 10:59:37 +02:00
  • 9661180a4d Fix previous backport. Gael Guennebaud 2016-08-29 10:31:10 +02:00
  • 0decc31aa8 Add generic implementation of conj_helper for custom complex types. Gael Guennebaud 2016-08-29 09:42:29 +02:00
  • ef7230c229 Add generic implementation of conj_helper for custom complex types. (grafted from 0decc31aa8 ) Gael Guennebaud 2016-08-29 09:42:29 +02:00
  • fd9caa1bc2 bug #1282: fix implicit double to float conversion warning Gael Guennebaud 2016-08-28 22:45:56 +02:00
  • 68d1897e8a Make sure that our log1p implementation is called as a last resort only. Gael Guennebaud 2016-08-26 15:30:55 +02:00
  • fe60856fed Add overload of numext::log1p for float/double in CUDA Gael Guennebaud 2016-08-26 15:28:59 +02:00
  • 0f56b5a6de enable vectorization path when testing half on cuda, and add test for log1p Gael Guennebaud 2016-08-26 14:55:51 +02:00
  • 965e595f02 Add missing log1p method Gael Guennebaud 2016-08-26 14:55:00 +02:00
  • 1329c55875 Fix compilation with boost::multiprec. Gael Guennebaud 2016-08-25 14:54:39 +02:00
  • 441b7eaab2 Add support for non trivial scalar factor in sparse selfadjoint * dense products, and enable +=/-= assignement for such products. This changeset also improves the performance by working on column of the result at once. Gael Guennebaud 2016-08-24 13:06:34 +02:00
  • 8132a12625 bug #1268: detect faillure in LDLT and report them through info() Gael Guennebaud 2016-08-23 23:15:55 +02:00
  • bde9b456dc Typo Gael Guennebaud 2016-08-23 21:36:36 +02:00
  • 326320ec7b Fix compilation in non C++11 mode. Gael Guennebaud 2016-08-23 19:28:57 +02:00
  • ea2e968257 Address several implicit scalar conversions. Gael Guennebaud 2016-08-23 18:44:33 +02:00
  • 0a6a50d1b0 Cleanup eiegnvector extraction: leverage matrix products and compile-time sizes, remove numerous useless temporaries. Gael Guennebaud 2016-08-23 18:14:37 +02:00
  • 00b2666853 bug #645: patch from Tobias Wood implementing the extraction of eigenvectors in GeneralizedEigenSolver Gael Guennebaud 2016-08-23 17:37:38 +02:00
  • 504a4404f1 Optimize expression matching "d?=a-b*c" as "d?=a; d?=b*c;" Gael Guennebaud 2016-08-23 16:52:22 +02:00
  • e47a8928ec Fix compilation in check_for_aliasing due to ambiguous specializations Gael Guennebaud 2016-08-23 16:19:10 +02:00
  • 6739f6bb1b Merged in traversaro/eigen-1/traversaro/modify-findeigen3cmake-to-find-eigen3con-1469782761059 (pull request PR-213) Gael Guennebaud 2016-08-23 15:53:57 +02:00
  • ef3de20481 Cleanup cost of tanh Gael Guennebaud 2016-08-23 14:39:55 +02:00
  • b3151bca40 Implement pmadd for float and double to make it consistent with the vectorized path when FMA is available. Gael Guennebaud 2016-08-23 14:24:08 +02:00
  • a4c266f827 Factorize the 4 copies of tanh implementations, make numext::tanh consistent with array::tanh, enable fast tanh in fast-math mode only. Gael Guennebaud 2016-08-23 14:23:08 +02:00
  • 1cc2788047 Fix possible overflow and biais in integer random generator (grafted from 82147cefff ) Gael Guennebaud 2016-08-23 13:25:31 +02:00
  • 82147cefff Fix possible overflow and biais in integer random generator Gael Guennebaud 2016-08-23 13:25:31 +02:00
  • 068ccab9fe FindEigen3.cmake : search for package only if EIGEN3_INCLUDE_DIR is not already defined Silvio Traversaro 2016-08-22 22:13:10 +00:00
  • 7cfcaaf328 bug #1265: remove outdated notes (grafted from 581b6472d1 ) Gael Guennebaud 2016-08-22 23:25:39 +02:00
  • 581b6472d1 bug #1265: remove outdated notes Gael Guennebaud 2016-08-22 23:25:39 +02:00
  • 3745f0808c bug #1276: remove std::binder* in C++11 Gael Guennebaud 2016-08-22 14:53:26 +02:00
  • ab2a3e3c1c bug #1275: Copied improved random<> implementation from devel-branch (originally introduced in f329d0908a ) Christoph Hertzberg 2016-08-15 15:04:53 +02:00
  • c40006d0b9 bug #1273: Add parentheses when redefining eigen_assert Christoph Hertzberg 2016-08-12 15:34:48 +02:00
  • c1f217bbef bug #1272: Disable assertion when total number of columns is zero. Also moved assertion to finished() method and adapted unit-test Christoph Hertzberg 2016-08-12 15:15:34 +02:00
  • 3e2684986b bug #1272: Let CommaInitializer work for more border cases (enhances fix of bug #1242). The unit test tests all combinations of 2x2 block-sizes from 0 to 3. Christoph Hertzberg 2016-08-08 17:26:48 +02:00
  • 5ed7b37b8f Fix umfpack ctor for expressions. Gael Guennebaud 2016-08-03 17:49:43 +02:00
  • 009a69fbf4 List PARDISO solver. (grafted from 819d0cea1b ) Gael Guennebaud 2016-08-02 23:32:41 +02:00
  • 5e51a361fe Modify FindEigen3.cmake to find Eigen3Config.cmake Silvio Traversaro 2016-07-29 08:59:38 +00:00
  • ca5effa16c MSVC-2010 is making problems with SFINAE again. But restricting to the variant for very old compilers (enum, template<typename C> for both function definitions) fixes the problem. klimpel 2016-07-28 15:58:17 +01:00
  • 15cebe2ecc Backport some changes from 3.3 required to complete the fix of the previous backport Gael Guennebaud 2016-07-26 00:14:00 +02:00
  • c52c8d76da Disable pkgconfig only for native windows builds xantares 2016-06-27 16:43:08 +00:00
  • d937a420a2 Fix compilation with MSVC by using our portable numext::log1p implementation. Gael Guennebaud 2016-08-22 15:44:21 +02:00
  • 2d5731e40a bug #1270: bypass custom asm for pmadd and recent clang version Gael Guennebaud 2016-08-22 15:38:03 +02:00
  • 49b005181a Define EIGEN_COMP_CLANG to clang version as major*100+minor (e.g., 307 corresponds to clang 3.7) Gael Guennebaud 2016-08-22 15:37:05 +02:00
  • 130f891bb0 bug #1278: ease parsing Gael Guennebaud 2016-08-22 15:00:29 +02:00
  • 7944d4431f Made the cost model cwiseMax and cwiseMin methods consts to help the PowerPC cuda compiler compile this code. Benoit Steiner 2016-08-18 13:46:36 -07:00
  • 647a51b426 Force the inlining of a simple accessor. Benoit Steiner 2016-08-18 12:31:02 -07:00
  • a452dedb4f Merged in ibab/eigen/double-tensor-reduction (pull request PR-216) Benoit Steiner 2016-08-18 12:29:54 -07:00
  • 18c67df31c Fix remaining CUDA >= 300 checks Igor Babuschkin 2016-08-18 17:18:30 +01:00
  • 1569a7d7ab Add the necessary CUDA >= 300 checks back Igor Babuschkin 2016-08-18 17:15:12 +01:00
  • 2b17f34574 Properly detect the type of the result of a contraction. Benoit Steiner 2016-08-16 16:00:30 -07:00
  • 59bacfe520 Fix compilation on CUDA 8 by removing call to h2log1p Igor Babuschkin 2016-08-15 23:38:05 +01:00
  • 34ae80179a Use array_prod instead of calling TotalSize since TotalSize is only available on DSize. Benoit Steiner 2016-08-15 10:29:14 -07:00
  • 2556565b4b Merged in ibab/eigen/extend-log1p (pull request PR-218) Benoit Steiner 2016-08-15 08:31:03 -07:00
  • 30dd6f5e34 Close branch extend-log1p Benoit Steiner 2016-08-15 08:31:03 -07:00
  • fe73648c98 Fixed a bug in the documentation. Benoit Steiner 2016-08-12 10:00:43 -07:00
  • 9636a8ed43 bug #1273: Add parentheses when redefining eigen_assert Christoph Hertzberg 2016-08-12 15:34:21 +02:00
  • c83b754ee0 bug #1272: Disable assertion when total number of columns is zero. Also moved assertion to finished() method and adapted unit-test Christoph Hertzberg 2016-08-12 15:15:34 +02:00
  • e3a8dfb02f std::erfcf doesn't exist: use numext::erfc instead Benoit Steiner 2016-08-11 15:24:06 -07:00
  • 64e68cbe87 Don't attempt to optimize partial reductions when the optimized implementation doesn't buy anything. Benoit Steiner 2016-08-08 19:29:59 -07:00
  • 5157ce8cbf Merged in ibab/eigen/extend-log1p (pull request PR-217) Benoit Steiner 2016-08-08 14:50:00 -07:00