| Commit message (Collapse) | Author | Age |
... | |
| |
|
| |
|
|
|
|
| |
accessors
|
|
|
|
|
|
|
| |
* Add short documentation for Array class
* Put all classes explicitly in Core module (where applicable)
* Section on Modules in Quick Reference Guide
* Put Page 7 after Page 6 in Contents :)
|
| |
|
| |
|
|
|
|
| |
As discussed on the list (too long to explain here).
|
|
|
|
| |
was wrong
|
| |
|
|
|
|
| |
(yes, it was only used in dense xprs anyway)
|
|
|
|
| |
* remove HasDirectAccess / NoDirectAccess constants
|
|
|
|
|
| |
* move the corners support stuff to a new Block.h there
* expand the unit test
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
| |
and documentation improvements
|
|
|
|
|
|
|
|
|
| |
removal of extra _Base/_Options template parameters.
* Introduction of strides-at-compile-time so for example the optimized code really knows when it needs to evaluate to a temporary
* StorageKind / XprKind
* Quaternion::setFromTwoVectors: use JacobiSVD instead of SVD
* ComplexSchur: support the 1x1 case
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
| |
arithmetic is involved.
* rename 'submatrices' test to 'block'
* add block-inside-of-block tests
* remove old cruft
* split diagonal() tests into separate file
|
|
|
|
|
|
|
|
| |
* use them (big simplification in Assign.h)
* axe (Inner|Outer)StrideAtCompileTime that were just introduced
* ei_int_if_dynamic now asserts that the size is the expected one: adapt to that in Block.h
* add rowStride() / colStride() in DenseBase
* implement innerStride() / outerStride() everywhere needed
|
|
|
|
|
| |
my day, my hard disk would die.
Will write a more detailed commit message once it's working.
|
| |
|
|
|
|
|
|
| |
related to nested products.
Fixed a few typos and a few warnings.
|
|
|
|
|
|
| |
- clean the *_PUBLIC_INTERFACE_*
- update Diagonal, ReturnByValue, ForceAlignedAccess, UnaryView, etc. to support array
- many other small stuff
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
because thanks to the previous commit this is not needed anymore
* add a more general ForceAlignedAccess expression which can be used for any expression.
It is already used by StableNorm.h.
|
|
|
|
| |
All tests work fine.
|
|
|
|
|
|
|
| |
is aligned or not. This is done using the Aligned constant:
Map<MatrixType,Aligned>::Map(data);
* rename ForceAligned to EnforceAlignedAccess, and update its doc,
and emphasize this is mainly an internal stuff.
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| | |
* allows 0 sized objects in Block/Map
|
|/
|
|
| |
vectorization friendly algorithm (slow if no vectorization)
|
|
|
|
| |
Still remains the problem of alignment and vectorization.
|
| |
|
|
|
|
| |
it never made very precise sense. but now does it still make any?
|
|
|
|
| |
* test Part::swap
|
| |
|
| |
|
| |
|
|
|
|
| |
* Some more CoeffReturnType changes
|
| |
|
|
|
|
|
|
| |
MatrixStorage returning a null pointer). For instance this is very
useful to make Tridiagonalization compile for 1x1 matrices
* fix LLT and eigensolver for 1x1 matrix
|
| |
|
| |
|
|
|
|
| |
* idea of Keir Mierle: make the static assert error msgs UPPERCASE
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
| |
|
|
|
|
| |
* documentation improvements, especially in quickstart guide
|