Andrea Bocci
f7124b3e46
Extend CUDA support to matrix inversion and selfadjointeigensolver
2018-06-11 18:33:24 +02:00
Benoit Steiner
f3e9c42876
Added missing EIGEN_DEVICE_FUNC qualifiers
2017-02-28 09:46:30 -08:00
Gael Guennebaud
3ecb343dc3
Fix regression in X = (X*X.transpose())/s with X rectangular by deferring resizing of the destination after the creation of the evaluator of the source expression.
2016-10-26 22:50:41 +02:00
Gael Guennebaud
c1d900af61
bug #178 : remove additional const on nested expression, and remove several const_cast.
2016-01-28 21:43:20 +01:00
Gael Guennebaud
8b0d1eb0f7
Fix numerous doxygen shortcomings, and workaround some clang -Wdocumentation warnings
2016-01-01 21:45:06 +01:00
Gael Guennebaud
0bb12fa614
Add LU::transpose().solve() and LU::adjoint().solve() API.
2015-12-01 14:38:47 +01:00
Gael Guennebaud
1f5024332e
First part of a big refactoring of alignment control to enable the handling of arbitrarily aligned buffers. It includes:
...
- AlignedBit flag is deprecated. Alignment is now specified by the evaluator through the 'Alignment' enum, e.g., evaluator<Xpr>::Alignment. Its value is in Bytes.
- Add several enums to specify alignment: Aligned8, Aligned16, Aligned32, Aligned64, Aligned128. AlignedMax corresponds to EIGEN_MAX_ALIGN_BYTES. Such enums are used to define the above Alignment value, and as the 'Options' template parameter of Map<> and Ref<>.
- The Aligned enum is now deprecated. It is now an alias for Aligned16.
- Currently, traits<Matrix<>>, traits<Array<>>, traits<Ref<>>, traits<Map<>>, and traits<Block<>> also expose the Alignment enum.
2015-08-06 15:31:07 +02:00
Gael Guennebaud
846b227bb7
Get rid of class internal::nested<> (still have to updated Tensor module)
2015-06-19 17:56:39 +02:00
Gael Guennebaud
6fc5438205
Remove a few deprecated internal expressions
2015-06-19 17:06:12 +02:00
Gael Guennebaud
4aba24a1b2
Clean argument names of some functions
2015-06-09 13:32:12 +02:00
Gael Guennebaud
cc641aabb7
Remove deprecated usage of expr::Index.
2015-02-16 14:46:51 +01:00
Gael Guennebaud
fc202bab39
Index refactoring: StorageIndex must be used for storage only (and locally when it make sense). In all other cases use the global Index type.
2015-02-13 18:57:41 +01:00
Gael Guennebaud
fe51319980
Merge Index-refactoring branch with default, fix PastixSupport, remove some useless typedefs
2015-02-13 10:03:53 +01:00
Gael Guennebaud
c6eb84aabc
Enable vectorization of transposeInPlace for PacketSize x PacketSize matrices
2015-01-26 17:09:01 +01: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
Christoph Hertzberg
d3f52debc6
Make cuda_basic test compile again by adding lots of EIGEN_DEVICE_FUNC.
...
Although the test passes now, there might still be some missing.
2014-10-13 17:18:26 +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
0ca43f7e9a
Remove deprecated code not used by evaluators
2014-09-18 15:15:27 +02:00
Gael Guennebaud
0bf5894861
workaround one more shadowing issue with MSVC
2014-09-16 18:21:39 -07:00
Gael Guennebaud
26db954776
Re-enable aliasing checks when using evaluators
2014-09-14 19:06:08 +02:00
Gael Guennebaud
3849cc65ee
Implement binaryop and transpose evaluators for sparse matrices
2014-06-23 10:40:03 +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
74b1d79d77
merge default and evaluator branches
2014-03-12 16:24:25 +01:00
Gael Guennebaud
8dd3b716e3
Move evaluation related flags from traits to evaluator and fix evaluators of MapBase and Replicate
2014-03-12 13:34:11 +01:00
Gael Guennebaud
da6ec81282
Move CoeffReadCost mechanism to evaluators
2014-03-10 23:24:40 +01:00
Christoph Hertzberg
3e439889e0
Specify what non-resizeable objects are in transposeInPlace and adjointInPlace (cf bug #749 )
2014-02-24 13:12:10 +01:00
Gael Guennebaud
2f593ee67c
merge with main branch
2013-07-17 13:21:35 +02:00
Gael Guennebaud
84f52ad317
Remove double const qualifier
2013-07-10 23:54:53 +02:00
Jitse Niesen
419b5cff44
doc: Mention vec=vec.head(n) in aliasing page.
2013-07-02 13:35:36 +01:00
Gael Guennebaud
c21a04bcf9
fix compilation of ArrayBase::transposeInPlace
2013-06-24 13:35:13 +02:00
Gael Guennebaud
33788b97dd
Fix compilation issue with some compilers (when doing using Base::foo;, foo must be visible in the direct base class)
2013-06-18 00:48:47 +02:00
Gael Guennebaud
9cd2d14005
merge with default branch
2013-04-19 11:21:39 +02:00
Jitse Niesen
986f60127d
Guard against transposeInPlace on non-square non-resizable matrix.
...
Inspired by question by Martin Drozdik at stackoverflow.com/q/14954983
2013-02-20 14:03:14 +00:00
Gael Guennebaud
5adcc6c7b4
Add support for NVCC5: most of the Core and part of LU are callable from CUDA code.
...
Still a lot to do.
2013-02-07 19:06:14 +01:00
Gael Guennebaud
a1b405c92e
Add missing const in some casts
2012-08-05 10:40:46 +02:00
Benoit Jacob
69124cfca2
Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.
2012-07-13 14:42:47 -04:00
Gael Guennebaud
62c504e7bf
fix most of the shadow warnings in Core/*.h
2012-06-22 16:32:45 +02: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
5bc4abc45e
fix compilation with MinGW
2011-06-01 12:16:21 +02:00
Hauke Heibel
d975b82105
Removed internal::as_argument. This fixes the alignment issues of bug #165 .
2011-02-06 17:33:04 +01:00
Benoit Jacob
98f0274305
third pass of const-correctness fixes (bug #54 ), hopefully the last one...
2011-01-07 05:16:01 -05:00
Benoit Jacob
13867c15cc
fix compilation of code using e.g. Transpose<const Foo>::data() non-const-qualified. Same problem existed for coeffRef() and also in MapBase.h.
2010-12-30 07:47:51 -05:00
Benoit Jacob
75b7d98665
bug #54 - really fix const correctness except in Sparse
2010-12-22 17:45:37 -05:00
Hauke Heibel
c738cd56eb
Renamed cleantype to remove_all since it is close to remove_{const|pointer|reference}.
2010-10-26 16:47:01 +02:00
Hauke Heibel
7bc8e3ac09
Initial fixes for bug #85 .
...
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.
2010-10-25 22:13:49 +02:00
Benoit Jacob
4716040703
bug #86 : use internal:: namespace instead of ei_ prefix
2010-10-25 10:15:22 -04: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
Gael Guennebaud
28e64b0da3
email change
2010-06-24 23:21:58 +02:00