aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen
Commit message (Collapse)AuthorAge
...
* add big "what happens inside eigen" tutorial for people interested inGravatar Benoit Jacob2008-12-05
| | | | Eigen internals
* * Much better, consistent error msgs when mixing different scalar types:Gravatar Benoit Jacob2008-12-03
| | | | | | | | | | | | | - in matrix-matrix product, static assert on the two scalar types to be the same. - Similarly in CwiseBinaryOp. POTENTIALLY CONTROVERSIAL: we don't allow anymore binary ops to take two different scalar types. The functors that we defined take two args of the same type anyway; also we still allow the return type to be different. Again the reason is that different scalar types are incompatible with vectorization. Better have the user realize explicitly what mixing different numeric types costs him in terms of performance. See comment in CwiseBinaryOp constructor. - This allowed to fix a little mistake in test/regression.cpp, mixing float and double - Remove redundant semicolon (;) after static asserts
* prefix all Eigen cmake variable with EIGEN_ and switched to lowercase for ↵Gravatar Gael Guennebaud2008-12-02
| | | | all cmake files
* add internal documentationGravatar Benoit Jacob2008-11-30
|
* Update e-mail addressGravatar Benoit Jacob2008-11-24
|
* doc: add a "non stable" warning for parts which are not partGravatar Gael Guennebaud2008-11-22
| | | | of the stable API yet and a couple of other minor doc updates...
* * add Gael a (c) line in IO.hGravatar Benoit Jacob2008-11-17
| | | | | * let user change default format by defining EIGEN_DEFAULT_IO_FORMAT * improve docs a little
* * add .imag() functionGravatar Gael Guennebaud2008-11-14
| | | | | | * fix a very old bug in EigenSolver that I had completely forgotten (thanks to Timothy to refresh my mind) * fix doc of Matrix::Map
* Several improvements in sparse module:Gravatar Gael Guennebaud2008-11-05
| | | | | | | | | * add a LDL^T factorization with solver using code from T. Davis's LDL library (LPGL2.1+) * various bug fixes in trianfular solver, matrix product, etc. * improve cmake files for the supported libraries * split the sparse unit test * etc.
* Remove executable here tooGravatar Laurent Montel2008-11-04
|
* Remove executable attributeGravatar Laurent Montel2008-11-04
|
* refinements in Matrix docGravatar Benoit Jacob2008-11-03
|
* Matrix documentation reworkGravatar Benoit Jacob2008-11-03
|
* add lpNorm<p>() method to MatrixBase, implemented in Array module, withGravatar Benoit Jacob2008-11-03
| | | | specializations for cases p=1,2,Eigen::Infinity.
* Add Matrix::Map() and Matrix::AlignedMap() static methodsGravatar Benoit Jacob2008-11-03
|
* norm2() renamed to squaredNorm(), kept as deprecated for now.Gravatar Benoit Jacob2008-11-03
|
* add Eigen namespace in front of Transpose (I needed that to add a Transpose ↵Gravatar Gael Guennebaud2008-10-30
| | | | function, sorry for this little inconvenience)
* add transposeInPlace (not optimized yet for rectangular matrix)Gravatar Gael Guennebaud2008-10-29
|
* add the possibility to extend Matrix outside Eigen, just like MatrixBaseGravatar Gael Guennebaud2008-10-28
|
* add Eigen namespace in EIGEN_STATIC_ASSERTGravatar Gael Guennebaud2008-10-27
|
* add Eigen namespace in EIGEN_INHERIT_ASSIGNMENT_OPERATORGravatar Gael Guennebaud2008-10-27
|
* fix compilation with gcc 4.3Gravatar Gael Guennebaud2008-10-26
|
* Add an axis aligned box in the geometry module.Gravatar Gael Guennebaud2008-10-26
| | | | | | | | Some naming questions: - for "extend" we could also think of: "expand", "union", "add" - same for "clamp": "crop", "intersect" - same for "contains": "isInside", "intersect" => ah "intersect" is conflicting, so that eliminates this one !
* Add isApprox in Geometry module's classes.Gravatar Gael Guennebaud2008-10-25
| | | | Complete unit tests wrt previous commits.
* oops forgot the inline keyword (though for gcc it was implicit)Gravatar Gael Guennebaud2008-10-25
|
* Add smart cast functions and ctor with scalar conversion (explicit)Gravatar Gael Guennebaud2008-10-25
| | | | | to all classes of the Geometry module. By smart I mean that if current type == new type, then it returns a const reference to *this => zero overhead
* improve assertion checking in productGravatar Gael Guennebaud2008-10-25
|
* bugfix in Quaternion found by Daniel StonierGravatar Gael Guennebaud2008-10-25
|
* some cleaning and doc in ParametrizedLine and HyperPlaneGravatar Gael Guennebaud2008-10-25
| | | | Just a thought: what about ParamLine instead of the verbose ParametrizedLine ?
* As discussed on ML:Gravatar Gael Guennebaud2008-10-24
| | | | | | | | | | * remove the automatic resizing feature of operator = * add function Matrix::set() to be used when the previous behavior is wanted * the default constructor of dynamic-size matrices now creates a "null" matrix (data=0, rows = cols = 0) instead of a 1x1 matrix * fix UnixX typos ;)
* compilation fix for ICCGravatar Gael Guennebaud2008-10-21
|
* sparse module:Gravatar Gael Guennebaud2008-10-21
| | | | | - remove some useless stuff => let's focus on a single sparse matrix format - finalize the new RandomSetter
* add the bench file for the RandomSetterGravatar Gael Guennebaud2008-10-21
|
* sparse module: add a RandomSetter based on a user defined map implementationGravatar Gael Guennebaud2008-10-20
| | | | | | | | | | | | | | | as described on the wiki (one map per N column) Here's some bench results for the 4 currently supported map impl: std::map => 18.3385 (581 MB) gnu::hash_map => 6.52574 (555 MB) google::dense => 2.87982 (315 MB) google::sparse => 15.7441 (165 MB) This is the time is second (and memory consumption) to insert/lookup 10 million of coeffs with random coords inside a 10000^2 matrix, with one map per packet of 64 columns => google::dense really rocks ! Note I use for the key value the index of the column in the packet (between 0 and 63) times the number of rows and I used the default hash function.... so maybe there is room for improvement here....
* * sparse LU: add extraction of L,U,P, and Q, as well as determinantGravatar Gael Guennebaud2008-10-20
| | | | | for both backends. * extended a bit the sparse unit tests
* add unit tests for sparse LU and fix a couple of warningsGravatar Gael Guennebaud2008-10-20
|
* * add cmake files to find (optional) supported librariesGravatar Gael Guennebaud2008-10-20
| | | | * add unit tests for sparse cholesky
* UmfPack support: add support for complex<double>Gravatar Gael Guennebaud2008-10-20
|
* sparse module: add support for umfpack, the sparse direct LUGravatar Gael Guennebaud2008-10-19
| | | | | | | | | | solver from suitesparse (as cholmod). It seems to be even faster than SuperLU and it was much simpler to interface ! Well, the factorization is faster, but for the solve part, SuperLU is quite faster. On the other hand the solve part represents only a fraction of the whole procedure. Moreover, I bench random matrices that does not represents real cases, and I'm not sure at all I use both libraries with their best settings !
* sparse module: some trivial bugfixesGravatar Gael Guennebaud2008-10-19
|
* sparse module: add preliminary support for direct sparse LU solverGravatar Gael Guennebaud2008-10-19
| | | | | using SuperLU. Calling SuperLU was very painful, but it was worth it, it seems to be damn fast !
* sparse module: added some documentation for the LLT solverGravatar Gael Guennebaud2008-10-18
|
* sparse module: much much faster transposition codeGravatar Gael Guennebaud2008-10-18
|
* fix some documentation issuesGravatar Gael Guennebaud2008-10-17
|
* add my copyright in MatrixBase.hGravatar Gael Guennebaud2008-10-13
|
* Big API change in Cholesky module:Gravatar Gael Guennebaud2008-10-13
| | | | | | | | | | | | | | | | * rename Cholesky to LLT * rename CholeskyWithoutSquareRoot to LDLT * rename MatrixBase::cholesky() to llt() * rename MatrixBase::choleskyNoSqrt() to ldlt() * make {LLT,LDLT}::solve() API consistent with other modules Note that we are going to keep a source compatibility untill the next beta release. E.g., the "old" Cholesky* classes, etc are still available for some time. To be clear, Eigen beta2 should be (hopefully) source compatible with beta1, and so beta2 will contain all the deprecated API of beta1. Those features marked as deprecated will be removed in beta3 (or in the final 2.0 if there is no beta 3 !). Also includes various updated in sparse Cholesky.
* Solve the issue found by Timothy in solveTriangular:Gravatar Gael Guennebaud2008-10-13
| | | | | | => row-major rhs are now evaluated to a column-major temporary before the computations. Add solveInPlace in Cholesky*
* fix typosGravatar Scott Wheeler2008-10-12
|
* note that norm2() is *not* an l2 norm as it is in other APIsGravatar Scott Wheeler2008-10-11
|
* SVN_SILENT pendanticGravatar Urs Wolfer2008-10-11
|