Gael Guennebaud
241e5ee3e7
add the possibility to solve for sparse rhs with Cholmod
2010-10-27 14:31:23 +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
e313826890
add mixed sparse-dense outer product
2010-06-25 11:36:38 +02:00
Gael Guennebaud
1927b4dff5
Fix use of nesting types in SparseTranspose and split the big SparseProduct.h file
2010-06-25 10:26:24 +02:00
Gael Guennebaud
28e64b0da3
email change
2010-06-24 23:21:58 +02:00
Gael Guennebaud
ece48a6450
split the Sparse module into multiple ones, and move non stable parts to unsupported/
...
(see the ML for details)
2010-06-18 11:28:30 +02:00
Benoit Jacob
d72d538747
merge my Dynamic -> -1 change
2010-06-11 08:04:06 -04:00
Benoit Jacob
bdd7c6c88a
change the value of Dynamic to -1, since the index type is now configurable.
...
remove EIGEN_ENUM_MIN/MAX, implement new macros instead
2010-06-11 07:56:50 -04:00
Gael Guennebaud
8350ab9fb8
* remove ei_index, and let ei_traits propagate the index types
...
* add an Index type template parapeter to sparse objects
2010-06-03 08:41:11 +02:00
Gael Guennebaud
8710bd23e7
clean the ambiguity with insertBack and add a insertBackByOuterInner function
2010-06-02 13:32:13 +02:00
Benoit Jacob
aaaade4b3d
the Index types change.
...
As discussed on the list (too long to explain here).
2010-05-30 16:00:58 -04:00
Benoit Jacob
9962c59b56
* implement the corner() API change: new methods topLeftCorner() etc
...
* get rid of BlockReturnType: it was not needed, and code was not always using it consistently anyway
* add topRows(), leftCols(), bottomRows(), rightCols()
* add corners unit-test covering all of that
* adapt docs, expand "porting from eigen 2 to 3"
* adapt Eigen2Support
2010-04-22 14:11:18 -04:00
Hauke Heibel
6d08f71a2d
Removed strong inlines which cannot always be inlined.
2010-03-14 12:09:29 +01:00
Hauke Heibel
abc8c01080
Renamed PlainMatrixType to PlainObject (Array != Matrix).
...
Renamed ReturnByValue::ReturnMatrixType ReturnByValue::ReturnType (again, Array != Matrix).
2010-02-20 15:53:57 +01:00
Hauke Heibel
f0c8dcf1e2
Renamed AnyMatrixBase to EigenBase.
2010-02-20 15:26:02 +01:00
Gael Guennebaud
fe0827495a
* move dummy_precision and epsilon to NumTraits
...
* make NumTraits inherits std::numeric_limits
2010-02-10 10:52:28 +01:00
Gael Guennebaud
c5d7c9f0de
remove the Triangular suffix to Upper, Lower, UnitLower, etc,
...
and remove the respective bit flags
2010-01-07 21:15:32 +01:00
Gael Guennebaud
d8534be728
add a novel, experimental sparse product
2010-01-05 15:57:16 +01:00
Gael Guennebaud
eaaba30cac
merge with default branch
2009-12-22 22:51:08 +01:00
Gael Guennebaud
e182e9c616
extend the DenseStorageMatrix mechanism to all expressions
2009-12-22 17:37:11 +01:00
Gael Guennebaud
9f79558839
a lot of cleaning and fixes
2009-12-16 19:18:40 +01:00
Hauke Heibel
b08d5b2d2c
Even more NestByValue cleanup...
2009-12-01 13:16:51 +01:00
Benoit Jacob
4b1aca2288
precision ---> dummy_precision
2009-11-26 22:05:02 -05:00
Gael Guennebaud
e3d890bc5a
Another big refactoring change:
...
* add a new Eigen2Support module including Cwise, Flagged, and some other deprecated stuff
* add a few cwiseXxx functions
* adapt a few modules to use cwiseXxx instead of the .cwise() prefix
2009-11-18 18:15:19 +01:00
Gael Guennebaud
0529ecfe1b
Big refactoring/cleaning in the spasre module with
...
in particular the addition of a selfadjointView, and the
extension of triangularView. The rest is cleaning and does not
change/extend the API.
2009-11-18 14:52:52 +01:00
Gael Guennebaud
1e62e0b0d8
more ET refactoring:
...
* extend Cwise for multiple storage base class
* a lot of cleaning in the Sparse module
2009-11-17 16:04:19 +01:00
Gael Guennebaud
63bcc1c0fb
adapt CwiseBinaryOp and the Sparse counter part
2009-11-17 10:11:27 +01:00
Gael Guennebaud
1c9a2d246f
adapt CwiseUnaryOp and CwiseUnaryView
2009-11-16 19:39:29 +01:00
Gael Guennebaud
2a3a6fe45e
Experiment the ET refactoring on Transpose for Dense and Sparse storages.
...
All tests work fine.
2009-11-16 18:19:08 +01:00
Hauke Heibel
c6822d6723
Added EIGEN_REF_TO_TEMPORARY define for rvalue support.
...
Allowed VC10 to make use of static_assert.
2009-09-21 19:59:58 +02:00
Gael Guennebaud
add5381be7
finish my evalToDense => evalTo change
2009-09-17 23:51:16 +02:00
Gael Guennebaud
543a785756
Fix compilation in sparse module
2009-08-06 17:28:49 +02:00
Benoit Jacob
0744638b6f
remove remnant of MultiplierBase
2009-08-06 10:35:13 +02:00
Gael Guennebaud
8120a5cecd
synch with main devel branch
2009-07-14 23:06:25 +02:00
Gael Guennebaud
bd506d837c
fix typo in previous commit
2009-07-13 15:21:32 +02:00
Gael Guennebaud
1e7b1a8a85
add a SparseNestByValue expression and fix issue in sparse adjoint evaluation
2009-07-13 14:55:03 +02:00
Gael Guennebaud
92a35c93b2
* extended the cache friendly products to support C = alpha * A * M and C += alpha * A * B
...
* this allows to optimize xpr like C -= lazy_product, still have to catch "scalar_product_of_lazy_product"
* started to support conjugate in cache friendly products (very useful to evaluate A * B.adjoint() without
evaluating B.adjoint() into a temporary
* compilation fix
2009-07-07 11:39:19 +02:00
Gael Guennebaud
544888e342
add a generic mechanism to copy a special matrix to a dense matrix so that
...
we don't need to add other specialization of MatrixBase::operator=, Matrix::=,
and Matrix::Matrix(...)
2009-07-07 09:05:20 +02:00
Gael Guennebaud
08e419dcb1
* update sparse module wrt new diagonal matrix impl
...
* fix a bug is SparseMatrix
2009-07-04 11:16:27 +02:00
Gael Guennebaud
627595ad19
* rename PartialRedux to VectorwiseOp
...
* add VectorwiseOp's +, -, +=, -= operators
2009-06-10 11:20:30 +02:00
Benoit Jacob
6347b1db5b
remove sentence "Eigen itself is part of the KDE project."
...
it never made very precise sense. but now does it still make any?
2009-05-22 20:25:33 +02:00
Gael Guennebaud
510029f2bc
* optimize sum() for sparse matrices and vectors
...
* fix the row()/col() functions of some InnerVector
2009-05-19 09:40:00 +02:00
Benoit Jacob
9afd1324fd
constant Diagonal ---> DiagonalBits
...
introduce ei_is_diagonal to check for it
DiagonalCoeffs ---> Diagonal and allow Index to by Dynamic
-> add MatrixBase::diagonal(int) with unittest and doc
2009-05-10 16:24:39 +00:00
Gael Guennebaud
2829314284
new simplified API to fill sparse matrices (the old functions are
...
deprecated). Basically there are now only 2 functions to set a
coefficient:
1) mat.coeffRef(row,col) = value;
2) mat.insert(row,col) = value;
coeffRef has no limitation, insert assumes the coeff has not already
been set, and raises an assert otherwise.
In addition I added a much lower level, but more efficient filling
mechanism for
internal use only.
2009-05-04 14:25:12 +00:00
Gael Guennebaud
5b1d0cebc5
sparse module: new API proposal for triangular solves and experimental
...
solver support with a sparse matrix as the rhs.
2009-04-05 16:30:10 +00:00
Benoit Jacob
40432c84b9
CwiseUnaryOp -> SparseCwiseUnaryOp
2009-04-01 14:47:56 +00:00
Gael Guennebaud
8ce4503494
add support for read/write sub sets of inner vectors (sparse module)
2009-01-27 22:48:17 +00:00
Gael Guennebaud
52cf07d266
sparse module:
...
* add row(i), col(i) functions
* add prune() function to remove small coefficients
2009-01-21 18:46:04 +00:00
Gael Guennebaud
178858f1bd
add a flexible sparse matrix class designed for fast matrix assembly
2009-01-19 15:20:45 +00:00