Benoit Steiner
b1fc7c9a09
Added missing EIGEN_DEVICE_FUNC qualifiers.
2017-02-27 16:48:30 -08:00
Gael Guennebaud
5c27962453
Move common cwise-unary method from MatrixBase/ArrayBase to the common DenseBase class.
2017-01-02 22:27:07 +01:00
Gael Guennebaud
50e203c717
bug #828 : clarify documentation of SparseMatrixBase's unary methods.
2016-09-16 10:40:50 +02:00
Gael Guennebaud
9c9e23858e
Doc: split customizing-eigen page into sub-pages and re-structure a bit the different topics
2016-08-30 11:10:08 +02:00
Gael Guennebaud
66e99ab6a1
Relax mixing-type constraints for binary coefficient-wise operators:
...
- 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
2016-06-06 15:11:41 +02:00
Gael Guennebaud
2c00ac0b53
Implement generic scalar*expr and expr*scalar operator based on scalar_product_traits.
...
This is especially useful for custom scalar types, e.g., to enable float*expr<multi_prec> without conversion.
2016-06-02 22:16:37 +02:00
Gael Guennebaud
84df9142e7
bug #1231 : fix compilation regression regarding complex_array/=real_array and add respective unit tests
2016-05-18 23:00:13 +02:00
Gael Guennebaud
d142165942
bug #667 : declare several critical functions as FORECE_INLINE to make ICC happier.
...
<g.gael@free.fr> HG: branch 'default' HG: changed Eigen/src/Core/ArrayBase.h HG: changed Eigen/src/Core/AssignEvaluator.h HG: changed
Eigen/src/Core/CoreEvaluators.h HG: changed Eigen/src/Core/CwiseUnaryOp.h HG: changed Eigen/src/Core/DenseBase.h HG: changed Eigen/src/Core/MatrixBase.h
2016-01-31 16:34:10 +01:00
Gael Guennebaud
5c9c0dca4d
Add missing using statement to enable fast Array<complex> / real operations. (was ok for Matrix only)
2015-11-20 14:51:36 +01:00
Gael Guennebaud
7a5f83ca60
Add overloads for real times sparse<complex> operations.
...
This avoids real to complex conversions, and also fixes a compilation issue with MSVC.
2015-10-29 03:55:39 -07:00
Gael Guennebaud
0848ba0a6e
Fix return nullary return types: it must be based on the PlainObject type instead of the expression type.
2015-06-22 10:52:08 +02:00
Christoph Hertzberg
e8cdbedefb
bug #877 , bug #572 : Introduce a global Index typedef. Rename Sparse*::Index to StorageIndex, make Dense*::StorageIndex an alias to DenseIndex. Overall this commit gets rid of all Index conversion warnings.
2014-12-04 22:48:53 +01:00
Gael Guennebaud
74cde0c925
Add missing return derived() in ArrayBase::operator=
2014-09-28 09:16:13 +02:00
Christoph Hertzberg
36448c9e28
Make constructors explicit if they could lead to unintended implicit conversion
2014-09-23 14:28:23 +02:00
Gael Guennebaud
0a18eecab3
bug #100 : add support for explicit scalar to Array conversion (as enable implicit conversion is much more tricky)
2014-09-19 13:25:28 +02:00
Gael Guennebaud
0ca43f7e9a
Remove deprecated code not used by evaluators
2014-09-18 15:15:27 +02:00
Gael Guennebaud
78bb808337
1- Introduce sub-evaluator types for unary, binary, product, and map expressions to ease specializing them.
...
2- Remove a lot of code which should not be there with evaluators, in particular coeff/packet methods implemented in the expressions.
2014-06-20 15:39:38 +02:00
Gael Guennebaud
da6ec81282
Move CoeffReadCost mechanism to evaluators
2014-03-10 23:24:40 +01:00
Gael Guennebaud
2eee6eaf3c
Fix mixing scalar types with evaluators
2014-02-19 16:30:17 +01:00
Gael Guennebaud
2d136d3d7f
Get rid of SeflCwiseBinaryOp
2014-02-18 10:52:00 +01:00
Gael Guennebaud
1bb1a57ef7
merge with default branch
2013-11-05 10:31:59 +01:00
Gael Guennebaud
2b15e00106
Make ArrayBase operator+=(scalar) and -=(scalar) use SelfCwiseBinaryOp optimization
2013-08-19 16:40:50 +02:00
Gael Guennebaud
6126ad801f
Extend support for nvcc to Array objects and wrappers
2013-07-31 15:30:50 +02:00
Gael Guennebaud
f41d96deb9
Fix several documentation issues
2012-12-24 13:33:22 +01:00
Benoit Jacob
69124cfca2
Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.
2012-07-13 14:42:47 -04:00
Jitse Niesen
3c412183b2
Get rid of include directives inside namespace blocks (bug #339 ).
2012-04-15 11:06:28 +01:00
Gael Guennebaud
fe85b7ebc6
fix several const qualifier issues: double ones, meaningless ones, some missing ones, etc.
...
(note that const qualifiers are set by internall::nested)
2012-02-03 23:18:26 +01:00
Gael Guennebaud
10cd52350f
fix a few warnings: change of sign and missing return statement
2012-01-31 13:05:44 +01:00
Jitse Niesen
211e1f8044
Improve documentation of plugins.
2011-02-13 22:50:57 +00:00
Thomas Capricelli
0b555a4a3d
fix misc warnings
2011-02-04 13:55:12 +01:00
Benoit Jacob
75b7d98665
bug #54 - really fix const correctness except in Sparse
2010-12-22 17:45:37 -05:00
Hauke Heibel
f578dc7aff
Fixed compound subtraction in ArrayBase where the assignment needs to be carried out on the derived type.
...
Added unit tests for map based component wise arithmetic.
2010-12-16 17:34:13 +01:00
Benoit Jacob
4716040703
bug #86 : use internal:: namespace instead of ei_ prefix
2010-10-25 10:15:22 -04:00
Jitse Niesen
103b9351fd
Docs: Add references to TopicClassHierarchy
2010-08-22 18:28:19 +01:00
Gael Guennebaud
b37551f62a
further improve compilation error message for array+=matrix
2010-08-16 11:13:02 +02:00
Gael Guennebaud
c625a6a85b
improve compilation error message for array+=matrix and the likes
2010-08-16 11:07:17 +02:00
Gael Guennebaud
70b1ce11c6
* fix SelfCwiseBinaryOp traits and handling of mixed types
...
* improve compilation error in case of type mismatch
2010-07-19 23:31:08 +02:00
Jitse Niesen
49747fa4a9
Various documentation improvements.
...
* 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 :)
2010-07-06 13:10:08 +01:00
Carlos Becker
bdef7eb656
Added doxygen info for .matrix() and .array()
2010-06-28 18:38:28 +01:00
Gael Guennebaud
28e64b0da3
email change
2010-06-24 23:21:58 +02:00
Gael Guennebaud
7fd8418b19
finish to merge Array into Core:
...
- mv Array/* into Core/
- merge Functors.h files, and move Norms.h into Dot.h
2010-06-19 23:36:38 +02:00
Gael Guennebaud
310f7aa096
moved purely "array" related stuff to a new module Array.
...
This include:
- cwise Pow,Sin,Cos,Exp...
- cwise Greater and other comparison operators
- .any(), .all() and partial reduction
- random
2008-05-31 18:11:48 +00:00
Gael Guennebaud
f5e599e489
* replace compile-time-if by meta-selector in Assign.h
...
as it speed up compilation.
* fix minor typo introduced in the previous commit
2008-05-31 14:42:07 +00:00
Gael Guennebaud
e2ac5d244e
Added ArrayBit to get the ability to manipulate a Matrix like a simple scalar.
...
In particular this flag changes the behavior of operator* to a coeff wise product.
2008-05-29 22:33:07 +00:00