aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Implement expr+scalar, scalar+expr, expr-scalar, and scalar-expr as binary ↵Gravatar Gael Guennebaud2016-06-14
| | | | | | expressions, and generalize supported scalar types. The following functors are now deprecated: scalar_add_op, scalar_sub_op, and scalar_rsub_op.
* Fix doc.Gravatar Gael Guennebaud2016-06-14
|
* Fix compilation of BVH exampleGravatar Gael Guennebaud2016-06-14
|
* Add unit test for AlignedBox::centerGravatar Gael Guennebaud2016-06-14
|
* Add unittesting plugins to scalar_product_op and scalar_quotient_op to help ↵Gravatar Gael Guennebaud2016-06-14
| | | | chaking that types are properly propagated.
* Generalize coeff-wise sparse products to support different scalar typesGravatar Gael Guennebaud2016-06-14
|
* Set cost of constant expression to 0 (the cost should be amortized through ↵Gravatar Gael Guennebaud2016-06-14
| | | | the expression)
* Move MatrixBase::operaotr*(UniformScaling) as a free function in Scaling.h, ↵Gravatar Gael Guennebaud2016-06-14
| | | | and fix return type.
* Implement scalar multiples and division by a scalar as a binary-expression ↵Gravatar Gael Guennebaud2016-06-14
| | | | | | | | | | | | with a constant expression. This slightly complexifies the type of the expressions and implies that we now have to distinguish between scalar*expr and expr*scalar to catch scalar-multiple expression (e.g., see BlasUtil.h), but this brings several advantages: - it makes it clear on each side the scalar is applied, - it clearly reflects that we are dealing with a binary-expression, - the complexity of the type is hidden through macros defined at the end of Macros.h, - distinguishing between "scalar op expr" and "expr op scalar" is important to support non commutative fields (like quaternions) - "scalar op expr" is now fully equivalent to "ConstantExpr(scalar) op expr" - scalar_multiple_op, scalar_quotient1_op and scalar_quotient2_op are not used anymore in officially supported modules (still used in Tensor)
* Fix compilation of evaluator unit testGravatar Gael Guennebaud2016-06-14
|
* Add bind1st_op and bind2nd_op helpers to turn binary functors into unary ↵Gravatar Gael Guennebaud2016-06-13
| | | | ones, and implement scalar_multiple2 and scalar_quotient2 on top of them.
* Add default template parameters for the second scalar type of binary functors.Gravatar Gael Guennebaud2016-06-13
| | | | This enhences backward compatibility.
* check for mixing types in "array / scalar" expressionsGravatar Gael Guennebaud2016-06-13
|
* CleanupGravatar Gael Guennebaud2016-06-10
|
* Add real.pow(complex), complex.pow(real) unit tests.Gravatar Gael Guennebaud2016-06-10
|
* Enable mixing types in numext::powGravatar Gael Guennebaud2016-06-10
|
* Big 279: enable mixing types for comparisons, min, and max.Gravatar Gael Guennebaud2016-06-10
|
* Clean handling for void type in EIGEN_CHECK_BINARY_COMPATIBILIYGravatar Gael Guennebaud2016-06-06
|
* Disable shortcuts for res ?= prod when the scalar types do not match exactly.Gravatar Gael Guennebaud2016-06-06
|
* Relax mixing-type constraints for binary coefficient-wise operators:Gravatar Gael Guennebaud2016-06-06
| | | | | | | | | | - Replace internal::scalar_product_traits<A,B> by Eigen::ScalarBinaryOpTraits<A,B,OP> - Remove the "functor_is_product_like" helper (was pretty ugly) - Currently, OP is not used, but it is available to the user for fine grained tuning - Currently, only the following operators have been generalized: *,/,+,-,=,*=,/=,+=,-= - TODO: generalize all other binray operators (comparisons,pow,etc.) - TODO: handle "scalar op array" operators (currently only * is handled) - TODO: move the handling of the "void" scalar type to ScalarBinaryOpTraits
* Silenced compilation warningGravatar Benoit Steiner2016-06-05
|
* Moved static assertions into the class constructor to make the code more ↵Gravatar Benoit Steiner2016-06-05
| | | | portable
* Removed executable bits from header files.Gravatar Christoph Hertzberg2016-06-05
|
* Add randomized properties tests for betainc special function.Gravatar Eugene Brevdo2016-06-05
|
* Add TernaryFunctors and the betainc SpecialFunction.Gravatar Eugene Brevdo2016-06-02
| | | | | | | | | | | | | | | | | | | TernaryFunctors and their executors allow operations on 3-tuples of inputs. API fully implemented for Arrays and Tensors based on binary functors. Ported the cephes betainc function (regularized incomplete beta integral) to Eigen, with support for CPU and GPU, floats, doubles, and half types. Added unit tests in array.cpp and cxx11_tensor_cuda.cu Collapsed revision * Merged helper methods for betainc across floats and doubles. * Added TensorGlobalFunctions with betainc(). Removed betainc() from TensorBase. * Clean up CwiseTernaryOp checks, change igamma_helper to cephes_helper. * betainc: merge incbcf and incbd into incbeta_cfe. and more cleanup. * Update TernaryOp and SpecialFunctions (betainc) based on review comments.
* Disable the tensor tests when using msvc since older versions of the ↵Gravatar Benoit Steiner2016-06-04
| | | | compiler fail to handle this code
* Use array_prod to compute the number of elements contained in the input ↵Gravatar Benoit Steiner2016-06-04
| | | | tensor expression
* Merged in ibab/eigen (pull request PR-192)Gravatar Benoit Steiner2016-06-03
|\ | | | | | | Add generic scan method
* | Improved the performance of full reductions.Gravatar Benoit Steiner2016-06-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AFTER: BM_fullReduction/10 4541 4543 154017 21.0M items/s BM_fullReduction/64 5191 5193 100000 752.5M items/s BM_fullReduction/512 9588 9588 71361 25.5G items/s BM_fullReduction/4k 244314 244281 2863 64.0G items/s BM_fullReduction/5k 359382 359363 1946 64.8G items/s BEFORE: BM_fullReduction/10 9085 9087 74395 10.5M items/s BM_fullReduction/64 9478 9478 72014 412.1M items/s BM_fullReduction/512 14643 14646 46902 16.7G items/s BM_fullReduction/4k 260338 260384 2678 60.0G items/s BM_fullReduction/5k 385076 385178 1818 60.5G items/s
| * Add generic scan methodGravatar Igor Babuschkin2016-06-03
|/
* bug #725: make move ctor/assignment noexcept.Gravatar Gael Guennebaud2016-06-03
|
* Fix MatrixFunctions module.Gravatar Gael Guennebaud2016-06-03
|
* Fix unit test.Gravatar Gael Guennebaud2016-06-03
|
* Fix compilation.Gravatar Gael Guennebaud2016-06-03
|
* Fix compilation: Matrix does not indirectly live in the internal namespace ↵Gravatar Gael Guennebaud2016-06-03
| | | | anymore!
* Fix function dependenciesGravatar Gael Guennebaud2016-06-03
|
* Align the first element of the Waiter struct instead of padding it. This ↵Gravatar Benoit Steiner2016-06-02
| | | | reduces its memory footprint a bit while achieving the goal of preventing false sharing
* mergeGravatar Gael Guennebaud2016-06-02
|\
* | Remove dead code.Gravatar Gael Guennebaud2016-06-02
| |
* | Implement generic scalar*expr and expr*scalar operator based on ↵Gravatar Gael Guennebaud2016-06-02
| | | | | | | | | | | | scalar_product_traits. This is especially useful for custom scalar types, e.g., to enable float*expr<multi_prec> without conversion.
| * Add syntactic sugar to Eigen tensors to allow more natural syntax.Gravatar Rasmus Munk Larsen2016-06-02
| | | | | | | | | | | | | | | | | | Specifically, this enables expressions involving: scalar + tensor scalar * tensor scalar / tensor scalar - tensor
| * Merged in ibab/eigen (pull request PR-189)Gravatar Benoit Steiner2016-06-02
|/| | | | | | | Add scan op to Tensor module
* | bug #1193: fix lpNorm<Infinity> for empty input.Gravatar Gael Guennebaud2016-06-02
| |
* | Disable MSVC's "decorated name length exceeded, name was truncated" warning ↵Gravatar Gael Guennebaud2016-06-02
| | | | | | | | in unit tests.
* | Fix pointer to long conversion warning.Gravatar Gael Guennebaud2016-06-02
| |
| * Add tensor scan opGravatar Igor Babuschkin2016-06-02
|/ | | | | This is the initial implementation a generic scan operation. Based on this, cumsum and cumprod method have been added to TensorBase.
* Use a single PacketSize variableGravatar Benoit Steiner2016-06-01
|
* Fixed compilation warningGravatar Benoit Steiner2016-06-01
|
* Speedup a testGravatar Benoit Steiner2016-06-01
|
* Doc: add some cross references (also fix empty macro argument warning)Gravatar Gael Guennebaud2016-06-01
|