| Commit message (Collapse) | Author | Age |
|
|
|
| |
remove_{const|pointer|reference}.
|
| |
|
|
|
|
| |
sized object, extend related unit tests including partial reduction
|
| |
|
|\ |
|
| |
| |
| |
| | |
remove EIGEN_ENUM_MIN/MAX, implement new macros instead
|
|/ |
|
|
|
|
| |
As discussed on the list (too long to explain here).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
specialization
of ei_matrix_array for size 0
* adapt many xprs to have the right storage order, now that it matters
* add static assert on expressions to check that vector xprs
have the righ storage order
* adapt ei_plain_matrix_type_(column|row)_major
* implement assignment of selfadjointview to matrix
(was before failing to compile) and add nestedExpression() methods
* expand product_symm test
* in ei_gemv_selector, use the PlainObject type instead of a custom Matrix<...> type
* fix VectorBlock and Block mistakes
|
| |
|
|
|
|
|
|
| |
related to nested products.
Fixed a few typos and a few warnings.
|
| |
|
| |
|
|
|
|
| |
Added regression test.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
sizeof(Scalar), and that assumption breaks with double on linux x86-32.
* Rename ei_alignmentOffset to ei_first_aligned
* Rewrite its documentation and part of its body
* The variant taking a MatrixBase doesn't need a separate size argument.
|
|\| |
|
| |
| |
| |
| |
| | |
couldnt put it in Memory.h as it needs the definition of MatrixBase
* make Redux use it
|
| | |
|
|/
|
|
| |
Rename some constants to make names match more closely what they mean.
|
| |
|
|
|
|
| |
Removed ei_assert in presence of static assert.
|
|
|
|
| |
it never made very precise sense. but now does it still make any?
|
|
|
|
| |
vectorized)
|
|
|
|
| |
* add vectorization for minCoeff and maxCoeff
|
|
|
|
| |
* fix MSVC issues (hopefully)
|
|
|
|
|
| |
* fix some "unused variable" warnings in the tests; there remains a libstdc++ "deprecated"
warning which I haven't looked much into
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* 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 ;)
|
|
|
|
| |
.finished())
|
| |
|
|
|
|
|
|
| |
(could come back to redux after it has been vectorized,
and could serve as a starting point for that)
also make the abs2 functor vectorizable (for real types).
|
|
|
|
|
|
| |
* make Matrix2f (and similar) vectorized using linear path
* fix a couple of warnings and compilation issues with ICC and gcc 3.3/3.4
(cannot get Transform compiles with gcc 3.3/3.4, see the FIXME)
|
|
|
|
|
|
| |
which is even better optimized by the compiler.
* Quaternion no longer inherits MatrixBase. Instead it stores the coefficients
using a Matrix<> and provides only relevant methods.
|
|
|
|
|
| |
* fix a couple of compilation issues when unrolling is disabled
* reduce default unrolling limit to a more reasonable value
|
|
|
|
|
|
|
|
| |
This include:
- cwise Pow,Sin,Cos,Exp...
- cwise Greater and other comparison operators
- .any(), .all() and partial reduction
- random
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
- vector to vector assign
- PartialRedux
- Vectorization criteria of Product
- returned type of normalized
- SSE integer mul
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
seems appropriate to me.
|
| |
|
|
|
|
|
|
|
| |
* added "all" and "any" special redux operators
* added support bool matrices
* added support for cost model of STL functors via ei_functor_traits
(By default ei_functor_traits query the functor member Cost)
|
|
|
|
|
|
|
|
| |
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
|