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
2f5f56a820
Fix usage of evaluator in sparse * permutation products.
2016-02-12 16:13:16 +01:00
Gael Guennebaud
b908e071a8
bug #178 : get rid of some const_cast in SparseCore
2016-01-28 22:11:18 +01:00
Gael Guennebaud
8b9dc9f0df
bug #1144 : fix regression in x=y+A*x (aliasing), and move evaluator_traits::AssumeAliasing to evaluator_assume_aliasing.
2016-01-09 08:30:38 +01:00
Gael Guennebaud
527fc4bc86
Fix ambiguous instantiation issues of product_evaluator.
2015-10-14 10:14:47 +02:00
Gael Guennebaud
69a7897e72
Fix storage index type in empty permutations
2015-10-06 17:21:24 +02:00
Gael Guennebaud
92b9f0e102
Cleaning pass on evaluators: remove the useless and error prone evaluator<>::type indirection.
2015-09-02 21:38:40 +02:00
Gael Guennebaud
763c833637
Make SparseSelfAdjointView, twists, and SparseQR more evaluator friendly
2015-06-24 17:54:09 +02:00
Gael Guennebaud
d4317a85e8
Add typedefs for return types of SparseMatrixBase::selfadjointView
2015-03-09 21:29:46 +01:00
Gael Guennebaud
aa6c516ec1
Fix many long to int conversion warnings:
...
- fix usage of Index (API) versus StorageIndex (when multiple indexes are stored)
- use StorageIndex(val) when the input has already been check
- use internal::convert_index<StorageIndex>(val) when val is potentially unsafe (directly comes from user input)
2015-02-16 13:19:05 +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
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
5741349294
bug #882 : fix various const-correctness issues with *View classes.
2014-10-07 18:29:28 +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
bae2e3327b
Call product_generic_impl by default, and remove lot of boilerplate code
2014-07-31 13:35:49 +02:00
Gael Guennebaud
cd0ff253ec
Make permutation compatible with sparse matrices
2014-07-30 15:22:50 +02:00
Gael Guennebaud
929e77192c
Various minor fixes
2014-07-30 11:39:52 +02:00
Gael Guennebaud
6daa6a0d16
Refactor TriangularView to handle both dense and sparse objects. Introduce a glu_shape<S1,S2> helper to assemble sparse/dense shapes with triagular/seladjoint views.
2014-07-22 11:35:56 +02:00
Gael Guennebaud
2a251ffab0
Implement evaluator for sparse-selfadjoint products
2014-07-22 09:32:40 +02:00
Gael Guennebaud
77af4cc3c9
bug #397 : add a warning for 64 to 32 bit integer conversion and fix many of these warning by splitting the index type used for storage and as size/coefficient indexes in PermutationMatrix and Transpositions.
2014-07-17 13:34:26 +02:00
Gael Guennebaud
660b905e12
Fix ICE with ICC 11
2013-07-19 11:46:54 +02:00
Gael Guennebaud
7d8823c8b7
Use true compile-time branching in SparseVector::assign to handle automatic transposition.
2013-07-05 09:14:32 +02:00
Desire NUENTSA
edba612f68
Fix unresolved typename bug for MSVC
2013-07-04 16:56:01 +02:00
Gael Guennebaud
99bef0957b
Add missing sparse matrix constructor from sparse self-adjoint views, and add documentation for sparse time selfadjoint matrix
2013-06-28 22:56:26 +02:00
Desire NUENTSA
9f035c876a
Fiw bug #553 : add support for sparse matrix time sparse self-adjoint view products
2013-06-28 22:27:45 +02:00
Gael Guennebaud
62670c83a0
Fix bug #314 : move remaining math functions from internal to numext namespace
2013-06-10 23:40:56 +02:00
Gael Guennebaud
899c0c2b6c
Clean source code and unit tests with respect to -Wunused-local-typedefs
2013-04-10 22:27:35 +02:00
Gael Guennebaud
925a5b7d07
Fix bug #535 : unused variable warnings
2012-12-16 20:21:28 +01:00
Benoit Jacob
69124cfca2
Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.
2012-07-13 14:42:47 -04:00
Gael Guennebaud
9629ba361a
bug #482 : pass scalar by const ref - pass on the sparse module
...
(also fix a compilation issue due to previous pass)
2012-06-28 21:01:02 +02:00
Gael Guennebaud
63c6ab3e42
fix documentaion of twistedBy
2012-06-07 16:18:00 +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
8ff882aa4c
add sparse-selfadjoint to sparse-selfadjoint assignment operators
...
(no need to use .twistedBy(I) anymore)
2012-03-29 11:28:43 +02:00
Gael Guennebaud
ece30e9e6f
fix a couple of warnings
2012-02-27 14:27:12 +01:00
Gael Guennebaud
bc8188f6a1
fix symmetric permuatation for mixed storage orders
2012-02-27 13:21:41 +01:00
Desire NUENTSA
2ea98594c4
Modify the symmetric permutation to deal with nonsymmetric matrices
2012-02-10 10:18:38 +01:00
Desire NUENTSA
a1c7b5aa48
Adding support for twistedby on SparseMatrixBase
2012-02-08 18:22:48 +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
9353bbac4a
fix bug #356 : fix TriangularView::InnerIterator for unit diagonals
2011-12-04 14:39:24 +01:00
Gael Guennebaud
32917515df
make the accessors to internal sparse storage part of the public API and remove their "_" prefix.
2011-12-04 12:19:26 +01:00
Gael Guennebaud
6b8d6887ac
bug fix in SparseSelfAdjointTimeDenseProduct for empty rows or columns
2011-11-30 19:39:20 +01:00
Gael Guennebaud
cda397b117
cleanning pass on the sparse modules:
...
- remove outdated/deprecated code
- improve a bit the documentation
2011-11-28 16:36:37 +01:00
Gael Guennebaud
53fa851724
move sparse solvers from unsupported/ to main Eigen/ and remove the "not stable yet" warning
2011-11-12 14:11:27 +01:00