| Commit message (Collapse) | Author | Age |
|
|
|
| |
* remove all what was marked deprecated
|
| |
|
|
|
|
| |
preprocessor directives.
|
|
|
|
|
| |
* clean ugly doxygen inheritence of expressions
* keep improving the documentation... slowly !
|
|
|
|
|
|
|
|
| |
to "public:method()" i.e. reimplementing the generic method()
from MatrixBase.
improves compilation speed by 7%, reduces almost by half the call depth
of trivial functions, making gcc errors and application backtraces
nicer...
|
|
|
|
| |
Rename DefaultLostFlagMask --> HerediraryBits
|
|
|
|
|
|
| |
* Fix a mistake in CwiseNullary.
* Added a CoreDeclarions header that declares only the forward declarations
and related basic stuffs.
|
|
|
|
| |
-finline-limit=1000 to gcc to get good performance. By the way some cleanup.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
part of a matrix. Triangular also provide an optimised method for forward
and backward substitution. Further optimizations regarding assignments and
products might come later.
Updated determinant() to take into account triangular matrices.
Started the QR module with a QR decompostion algorithm.
Help needed to build a QR algorithm (eigen solver) based on it.
|
|
|
|
|
| |
* rename OperatorEquals -> Assign
* move Util.h and FwDecl.h to a util/ subdir
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently only the following platform/operations are supported:
- SSE2 compatible architecture
- compiler compatible with intel's SSE2 intrinsics
- float, double and int data types
- fixed size matrices with a storage major dimension multiple of 4 (or 2 for double)
- scalar-matrix product, component wise: +,-,*,min,max
- matrix-matrix product only if the left matrix is vectorizable and column major
or the right matrix is vectorizable and row major, e.g.:
a.transpose() * b is not vectorized with the default column major storage.
To use it you must define EIGEN_VECTORIZE and EIGEN_INTEL_PLATFORM.
|
|
|
|
|
|
|
|
| |
when to evaluate arguments and when to meta-unroll.
-use it in Product to determine when to eval args. not yet used
to determine when to unroll. for now, not used anywhere else but
that'll follow.
-fix badness of my last commit
|
|
|
|
|
|
| |
-- currently 3 flags: RowMajor, Lazy and Large
-- only RowMajor actually used for now
* many minor improvements
|
|
|
|
|
|
|
|
|
|
|
|
| |
to disable eigen's asserts without disabling one's own program's
asserts. Notice that Eigen code should now use ei_assert()
instead of assert().
* Remove findBiggestCoeff() as it's now almost redundant.
* Improve echelon.cpp: inner for loop replaced by xprs.
* remove useless "(*this)." here and there. I think they were
first introduced by automatic search&replace.
* fix compilation in Visitor.h (issue triggered by echelon.cpp)
* improve comment on swap().
|
| |
|
|
|
|
|
|
|
|
| |
internal classes: AaBb -> ei_aa_bb
IntAtRunTimeIfDynamic -> ei_int_if_dynamic
unify UNROLLING_LIMIT (there was no reason to have operator= use
a higher limit)
etc...
|
|
|
|
|
|
| |
Finally the importing macro is named EIGEN_BASIC_PUBLIC_INTERFACE
because it does not only import the ei_traits, it also makes the base class
a friend, etc.
|
|
|
|
|
|
| |
template parameter "Scalar" is removed. This is achieved by introducting a
template <typename Derived> struct Scalar to achieve a forward-declaration of
the Scalar typedefs.
|
| |
|
|
|
|
|
|
| |
previous ugly hack :)
* Renamed the scalar functors with the "Scalar" prefix (instead of "Cwise")
|
| |
|
|
|
|
|
|
|
|
|
| |
- finally get the Eval stuff right. get back to having Eval as
a subclass of Matrix with limited functionality, and then,
add a typedef MatrixType to get the actual matrix type.
- add swap(), findBiggestCoeff()
- bugfix by Ramon in Transpose
- new demo: doc/echelon.cpp
|
|
|
|
|
|
|
| |
dimension. The advantage is that evaluating a dynamic-sized block in a fixed-size
matrix no longer causes a dynamic memory allocation. Other new thing:
IntAtRunTimeIfDynamic allows storing an integer at zero cost if it is known at
compile time.
|
| |
|
|
|
|
|
|
| |
- complete documentation
- add TODO
- update copyright years
|
|
|
|
|
|
| |
- the static constants are private again in the Derived classes
- more documentation and code snippets
- new isDiagonal() method
|
|
|
|
|
|
|
| |
column-major order, even if storage is row-major. Benchmark showed that adapting
the traversal order to the storage order brought no benefit.
Also do some cleanup after Gael's big patch.
|
|
|
|
| |
CCMAIL:eigen@lists.tuxfamily.org
|
|
|
|
|
|
|
| |
Honor this preference in operator=.
- add several methods to the API
- rework API for diagonal matrices
- add benchmarking code
|
|
|
|
|
|
| |
satisfactory
default copy constructor; remove useless static_cast's; some misc cleanup.
|
|
|