Benoit Jacob
763f0a2434
use ei_aligned_malloc and ei_aligned_free also in WithAlignedOperatorNew, so this too should now work with MSVC.
2008-12-15 17:55:11 +00:00
Benoit Jacob
9b1a3d6e19
small optimization (for MSVC) and simplification of ei_alligned_malloc
2008-12-15 17:33:19 +00:00
Benoit Jacob
dd139b92b4
work around the braindead msvc preprocessor
2008-12-15 17:16:22 +00:00
Benoit Jacob
11c8a6bf63
Fix detection of SSE2 with MSVC.
2008-12-15 16:14:54 +00:00
Benoit Jacob
703951d5cd
Fix memory alignment (hence vectorization) on MSVC thanks to help from Armin Berres.
2008-12-15 15:54:33 +00:00
Gael Guennebaud
d11c8704e0
oops, forget to remove a line
2008-12-15 12:35:46 +00:00
Gael Guennebaud
a164646c77
more warning fixes by Armin Berres
2008-12-15 12:30:04 +00:00
Benoit Jacob
936eaf600a
compilation fix thanks to Dennis Schridde
2008-12-13 21:09:19 +00:00
Gael Guennebaud
ef0cd3a289
one more warning fix, thanks to Armin Berres
2008-12-12 13:50:01 +00:00
Gael Guennebaud
1ed17b037d
* fix a couple of warnings (patch from Armin Berres)
...
* allow Map to map null data
2008-12-12 12:54:45 +00:00
Gael Guennebaud
5015e48361
Sparse module: add a more flexible SparseMatrix::fillrand() function
...
which allows to fill a matrix with random inner coordinates (makes sense
only when a very few coeffs are inserted per col/row)
2008-12-11 18:26:24 +00:00
Gael Guennebaud
beabf008b0
bugfix in DiagonalProduct: a "DiagonalProduct<SomeXpr>" expression
...
is now evaluated as a "DiagonalProduct<Matrix<SomeXpr::Eval> >".
Note that currently this only happens in DiagonalProduct.
2008-12-10 19:02:13 +00:00
Gael Guennebaud
ba9a53f9c6
fix compilation issue for 64bit systems (pointer <=> size_t)
2008-12-08 15:07:42 +00:00
Benoit Jacob
cb409914e0
* call it beta2
...
* improvements in Matrix documentation
* document copyCoeff and copyPacket even if it's hidden from doxygen
2008-12-07 23:23:36 +00:00
Benoit Jacob
069ecbb4ab
* complete the change norm2->squaredNorm in PartialRedux
...
* somehow the NICE_RANDOM stuff wasn't being used anymore and
tests were sometimes failing again. Fixed by #including Eigen/Array
instead of cherry-picking just Random.h.
* little fixes in the unaligned assert page
2008-12-07 21:40:53 +00:00
Benoit Jacob
09fd69d734
* add Transform explicit constructors taking translation/scaling/rotation
...
* add Transform::operator= taking rotation.
An old remnant was left commented out. Why was it disabled?
* slight optimization in operator= taking translation
* slight optimization (perhaps) in the new memory assertion
2008-12-07 17:49:56 +00:00
Benoit Jacob
6700f07fb0
actually this message is probably more effective at making people read the web page...
2008-12-07 16:38:45 +00:00
Benoit Jacob
08e6b7ad80
Make deluxe assertion with deluxe error message with link to deluxe web page
...
for this very nasty bug (unaligned member in dynamically allocated struct)
that our friends at Krita just encountered:
http://bugs.kde.org/show_bug.cgi?id=177133
CCBUG:177133
2008-12-07 16:31:32 +00:00
Benoit Jacob
7e8ee5b527
hide internal stuff from doxygen by using #ifndef EIGEN_PARSED_BY_DOXYGEN.
...
Sadly, \internal didn't hide internal stuff, it only hides the documentation!
2008-12-07 15:40:40 +00:00
Benoit Jacob
93c1f62979
Use an aligned IOFormat in the docs
2008-12-06 23:20:30 +00:00
Benoit Jacob
2b20da624a
* improvements in the tutorial: triangular matrices, linear algebra
...
* minor fixes in Part and StaticAssert
* EulerAngles: remove the FIXME as I think the current version is fine
2008-12-06 22:21:29 +00:00
Benoit Jacob
bb33ec4ef3
* fix compile error when C++0x is enabled: static_assert() needs ;
...
thanks to devurandom for reporting
* remove redundant ; in ei_internal_assert
* minor fixes in InsideEigenExample.dox
2008-12-06 16:49:03 +00:00
Gael Guennebaud
9c0deb55ca
bugfix in matrix to Euler-angles function
2008-12-06 11:04:33 +00:00
Gael Guennebaud
faf942a947
Add a generic matrix to Euler-angles function.
...
Perhaps the prototype of this function could be improved,
see comments in the code
2008-12-05 15:56:28 +00:00
Benoit Jacob
6d1439a52f
add big "what happens inside eigen" tutorial for people interested in
...
Eigen internals
2008-12-05 14:45:42 +00:00
Benoit Jacob
c1e2156d8a
* Much better, consistent error msgs when mixing different scalar types:
...
- 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
2008-12-03 21:01:55 +00:00
Gael Guennebaud
20c11bc52c
prefix all Eigen cmake variable with EIGEN_ and switched to lowercase for all cmake files
2008-12-02 12:59:10 +00:00
Benoit Jacob
aba378eb1a
add internal documentation
2008-11-30 21:49:02 +00:00
Benoit Jacob
00f89a8f37
Update e-mail address
2008-11-24 13:40:43 +00:00
Gael Guennebaud
582c1f92c8
doc: add a "non stable" warning for parts which are not part
...
of the stable API yet and a couple of other minor doc updates...
2008-11-22 19:51:05 +00:00
Benoit Jacob
3614321401
* add Gael a (c) line in IO.h
...
* let user change default format by defining EIGEN_DEFAULT_IO_FORMAT
* improve docs a little
2008-11-17 12:45:57 +00:00
Gael Guennebaud
139529e97b
* add .imag() function
...
* fix a very old bug in EigenSolver that I had completely forgotten
(thanks to Timothy to refresh my mind)
* fix doc of Matrix::Map
2008-11-14 09:55:25 +00:00
Gael Guennebaud
86ccd99d8d
Several improvements in sparse module:
...
* 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.
2008-11-05 13:47:55 +00:00
Laurent Montel
9aba671cfc
Remove executable here too
2008-11-04 08:25:19 +00:00
Laurent Montel
2a4fdf31c8
Remove executable attribute
2008-11-04 08:24:27 +00:00
Benoit Jacob
033ac82c9d
refinements in Matrix doc
2008-11-03 23:41:33 +00:00
Benoit Jacob
12f84acda6
Matrix documentation rework
2008-11-03 23:27:29 +00:00
Benoit Jacob
e80099932a
add lpNorm<p>() method to MatrixBase, implemented in Array module, with
...
specializations for cases p=1,2,Eigen::Infinity.
2008-11-03 22:47:00 +00:00
Benoit Jacob
a0ec0fca5a
Add Matrix::Map() and Matrix::AlignedMap() static methods
2008-11-03 21:49:03 +00:00
Benoit Jacob
3d90c13970
norm2() renamed to squaredNorm(), kept as deprecated for now.
2008-11-03 19:14:17 +00:00
Gael Guennebaud
3f580e240e
add Eigen namespace in front of Transpose (I needed that to add a Transpose function, sorry for this little inconvenience)
2008-10-30 00:59:37 +00:00
Gael Guennebaud
ebe14aae7d
add transposeInPlace (not optimized yet for rectangular matrix)
2008-10-29 15:24:08 +00:00
Gael Guennebaud
48137e28d8
add the possibility to extend Matrix outside Eigen, just like MatrixBase
2008-10-28 12:18:00 +00:00
Gael Guennebaud
3e502abfda
add Eigen namespace in EIGEN_STATIC_ASSERT
2008-10-27 18:09:37 +00:00
Gael Guennebaud
b26e04f40b
add Eigen namespace in EIGEN_INHERIT_ASSIGNMENT_OPERATOR
2008-10-27 13:26:18 +00:00
Gael Guennebaud
ca048aaf77
fix compilation with gcc 4.3
2008-10-26 20:43:05 +00:00
Gael Guennebaud
94f6f2a7de
Add an axis aligned box in the geometry module.
...
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 !
2008-10-26 15:04:31 +00:00
Gael Guennebaud
ec0a423862
Add isApprox in Geometry module's classes.
...
Complete unit tests wrt previous commits.
2008-10-25 23:10:21 +00:00
Gael Guennebaud
505ce85814
oops forgot the inline keyword (though for gcc it was implicit)
2008-10-25 22:41:53 +00:00
Gael Guennebaud
e5b8a59cfa
Add smart cast functions and ctor with scalar conversion (explicit)
...
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
2008-10-25 22:38:22 +00:00