Calixte Denizet
b9d81c9150
Add a functor to setFromTriplets to handle duplicated entries
2015-10-06 13:29:41 +02:00
Gael Guennebaud
9acfc7c4f3
remove reference to internal method
2015-10-13 10:55:58 +02:00
Gael Guennebaud
a44d91a0b2
extend unit test for SparseMatrix::prune
2015-10-13 10:53:38 +02:00
Gael Guennebaud
186ec1437c
Cleanup EIGEN_SPARSE_PUBLIC_INTERFACE, it is now a simple alias to EIGEN_GENERIC_PUBLIC_INTERFACE
2015-10-08 22:06:49 +02:00
Gael Guennebaud
6100d1ae64
Improve counting of sparse temporaries
2015-10-06 11:32:02 +02:00
Gael Guennebaud
4c8cd13b35
Add explicit ctor for diagonal to sparse conversion
2015-06-24 18:11:06 +02:00
Gael Guennebaud
02db7c9bc6
Inherit operator+= and -= with 'using' kkeyword
2015-06-24 17:49:20 +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
feaf76c001
bug #910 : add a StandardCompressedFormat option to Ref<SparseMatrix> to enforce standard compressed storage format.
...
If the input is not compressed, then this trigger a copy for a const Ref, and a runtime assert for non-const Ref.
2015-06-09 23:11:24 +02:00
Gael Guennebaud
9a2447b0c9
Fix shadow warnings triggered by clang
2015-06-09 09:11:12 +02:00
Christoph Hertzberg
28a4c92cbf
bug #998 : Started fixing doxygen warnings
2015-05-01 22:10:41 +02:00
Gael Guennebaud
40258078c6
bug #360 : add value_type typedef to DenseBase/SparseMatrixBase
2015-04-24 09:44:24 +02:00
Gael Guennebaud
3105986e71
bug #875 : remove broken SparseMatrixBase::nonZeros and introduce a nonZerosEstimate() method to sparse evaluators for internal uses.
...
Factorize some code in SparseCompressedBase.
2015-04-01 22:27:34 +02:00
Gael Guennebaud
a9df28c95b
SparseMatrix::insert: switch to a fully uncompressed mode if sequential insertion is not possible (otherwise an arbitrary large amount of memory was preallocated in some cases)
2015-03-13 21:00:21 +01:00
Gael Guennebaud
1ce0178363
Improve efficiency of SparseMatrix::insert/coeffRef for sequential outer-index insertion strategies (bug #974 )
2015-03-04 09:39:26 +01:00
Gael Guennebaud
63464754ef
Add an internal assertion in makeCompressed to catch a possible risk of null-pointer access.
2015-02-18 11:29:54 +01:00
Gael Guennebaud
953d5ccfd5
Doc: explain how to free allocated memory in SparseMAtrix
2015-02-16 15:56:11 +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
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
7838fda82c
Add a SparseCompressedBase class providing (un)compressed accessors (like data()/*Stride() for dense matrices),
...
and a CompressedAccessBit flag (similar to DirectAccessBit for dense matrices).
2015-02-07 22:00:46 +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
e2f3e4e4aa
Document non-const SparseMatrix::diagonal() method.
2014-12-01 14:45:15 +01:00
Gael Guennebaud
b26e697182
Make SparseMatrix::coeff() returns a const reference and add a non const version of SparseMatrix::diagonal()
2014-12-01 14:41:39 +01:00
Gael Guennebaud
80ed5bd90c
Workaround various "returning reference to temporary" warnings.
2014-12-05 12:49:30 +01:00
Gael Guennebaud
ee06f78679
Introduce unified macros to identify compiler, OS, and architecture. They are all defined in util/Macros.h and prefixed with EIGEN_COMP_, EIGEN_OS_, and EIGEN_ARCH_ respectively.
2014-11-04 21:58:52 +01: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
07c5500d70
Introduce a compilation error when using the wrong InnerIterator type.
2014-09-19 09:58:20 +02:00
Gael Guennebaud
0ca43f7e9a
Remove deprecated code not used by evaluators
2014-09-18 15:15:27 +02:00
Gael Guennebaud
cd0ff253ec
Make permutation compatible with sparse matrices
2014-07-30 15:22:50 +02:00
Gael Guennebaud
4aac87251f
Re-enable a couple of unit tests with evaluators.
2014-07-22 12:54:03 +02:00
Gael Guennebaud
2a251ffab0
Implement evaluator for sparse-selfadjoint products
2014-07-22 09:32:40 +02:00
Gael Guennebaud
3eba5e1101
Implement evaluator for sparse outer products
2014-07-19 14:55:56 +02:00
Gael Guennebaud
a325d1cb1e
merge with default branch
2014-07-18 11:02:22 +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
296cb40161
merge with default branch
2014-07-10 22:04:45 +02:00
Gael Guennebaud
e3557e8dd2
bug #808 : use double instead of float for the increasing size ratio in CompressedStorage::resize
...
(grafted from 0e0ae400843cd9a459e5306d4d6560dbea759a42
)
2014-07-08 18:58:41 +02:00
Gael Guennebaud
7ffd55c980
Do not bypass aliasing in sparse e assignments
2014-07-01 11:48:49 +02:00
Gael Guennebaud
ae039dde13
Add a NoPreferredStorageOrderBit flag for expression having no preferred storage order.
...
It is currently only used in Product.
2014-06-27 15:53:51 +02:00
Gael Guennebaud
3849cc65ee
Implement binaryop and transpose evaluators for sparse matrices
2014-06-23 10:40:03 +02:00
Gael Guennebaud
b29b81a1f4
merge with default branch
2014-06-20 15:55:44 +02:00
Gael Guennebaud
c415b627a7
Started to move the SparseCore module to evaluators: implemented assignment and cwise-unary evaluator
2014-06-20 15:42:13 +02:00
Benjamin Chretien
0b7f95a03f
Fix typo in SparseMatrix assert.
2014-05-03 12:41:37 +02:00
Gael Guennebaud
5960befc20
More int versus Index fixes
2014-02-19 21:42:29 +01:00
Gael Guennebaud
4b6b3f310f
Fix a few Index to int buggy conversions
2014-02-15 09:35:23 +01:00
Christoph Hertzberg
b61facb08b
Use != instead of < to check for emptiness of iterator range (fixes bug #664 )
2013-10-16 13:10:15 +02:00
Pavel Holoborodko
e6462c2ce3
Switched to smart_copy to support non-trivial scalar types
2013-08-25 18:03:49 +09:00
Pavel Holoborodko
acb82c7f16
Quick fix in order to be custom-scalar friendly.
2013-07-29 20:13:52 +09:00
Gael Guennebaud
5431473d67
Fix SparseMatrix::conservativeResize() when one dimension is null
2013-07-12 14:10:02 +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