Jitse Niesen
bf7d986af6
Add static assert that objects on stacks are not too big (bug #491 ).
2012-07-17 22:15:42 +01:00
Gael Guennebaud
e75b1eb883
Fix aliasing issue in sparse matrix assignment.
...
(m=-m; or m=m.transpose(); with m sparse work again)
2012-07-25 09:33:50 +02:00
Gael Guennebaud
7b34b5f6f9
do not apply plane rotation when it is exactly the identity
2012-07-24 18:19:56 +02:00
Gael Guennebaud
e7c07de549
RealQZ: optimize general hessenberg to not apply rotations to zero entries.
2012-07-24 18:16:22 +02:00
Gael Guennebaud
c1cab7b8ed
real QZ: update license
2012-07-24 18:11:41 +02:00
Alexey Korepanov
65db91ac2b
Add a RealQZ class: a generalized Schur decomposition for real matrices
2012-07-11 16:38:03 -05:00
Jitse Niesen
ba5eecae53
Allow user to specify max number of iterations (bug #479 ).
2012-07-24 15:17:59 +01:00
Jitse Niesen
b7ac053b9c
Use EISPACK's strategy re max number of iters in Schur decomposition (bug #479 ).
2012-07-22 22:02:50 +01:00
Jitse Niesen
fd5749f51c
LDLT: Report sign consistent with D for indefinite matrices.
...
See http://forum.kde.org/viewtopic.php?f=74&t=106942
2012-07-22 21:39:38 +01:00
Jitse Niesen
907f4562ac
Fix some illegal memory access in sparse conservativeResize()
2012-07-20 22:51:51 +01:00
Benjamin Piwowarski
6bf49ceac2
bug #449 : add SparseMatrix::conservativeResize feature
2012-07-19 00:07:06 +02:00
Benoit Jacob
3f08a6a126
add COPYING.MINPACK
2012-07-15 11:46:22 -04:00
Benoit Jacob
df06e5662d
MINPACK license is OK for MPL2 after all
2012-07-15 10:30:57 -04:00
Benoit Jacob
f28e95500b
add COPYING.README
2012-07-15 10:29:09 -04:00
Benoit Jacob
9bf3ec134e
add COPYING.MPL2
2012-07-15 10:20:59 -04:00
Benoit Jacob
b596f6c10c
remove outdated "Eigen itself is part of the KDE project" outside of eigen2 files
2012-07-15 10:33:40 -04:00
Jitse Niesen
d3998de472
Silence clang warning about && inside ||
2012-07-14 15:50:56 +01:00
Jitse Niesen
4ae3e0a9b8
Evaluators: Fixed bug caused by Diagonal dynamic index change.
...
This caused the evaluators unit test to fail.
2012-07-14 14:55:04 +01:00
Gael Guennebaud
79214745c7
clean Eigen2Support wrt KDE mentions
2012-07-14 10:15:45 +02:00
Gael Guennebaud
e59f95a9a0
clean old KDE mention and related
2012-07-14 10:04:26 +02:00
Gael Guennebaud
54559094ec
document EIGEN_MPL2_ONLY
2012-07-14 09:56:03 +02:00
Gael Guennebaud
46b1c7a0ce
fix bug #485 : conflict between a typedef and template type parameter
2012-07-13 20:54:38 +02:00
Benoit Jacob
269be00925
Add a EIGEN_MPL2_ONLY build option to generate compiler errors when including non-MPL2 modules
2012-07-13 14:42:47 -04:00
Benoit Jacob
0733e622a3
Manual MPL2 relicensing fixes
2012-07-13 14:42:47 -04:00
Benoit Jacob
69124cfca2
Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.
2012-07-13 14:42:47 -04:00
Keir Mierle
d4ca0963bc
Add preliminary script to relicense Eigen to MPL2.
2012-07-11 11:29:52 -07:00
Gael Guennebaud
904ecdf9d8
Add a DynamicIndex constant for signed quantities and use it to fix the conflict
...
between Diagonal<S,-1> (the first sub diagonal) and a runtime super/sub diagonal which is now:
Diagonal<S,DynamicIndex>
2012-07-10 23:04:17 +02:00
Gael Guennebaud
3e6329a0d9
fix computation of fixed size sub/super diagonal size
2012-07-10 22:39:05 +02:00
Gael Guennebaud
a2c3003be2
Fix possible underflow issues in SelfAdjointEigenSolver
2012-07-10 09:51:26 +02:00
Gael Guennebaud
ff12a6cd43
fix include path
2012-07-08 16:18:51 +02:00
Jitse Niesen
b1b6864c88
Evaluators: Remove member variables if known at compile-time.
...
Also, use composition instead of inheritance in EvalToTemp evaluator.
2012-07-06 14:50:03 +01:00
Gael Guennebaud
7bfd8eabff
fix compilation with MSVC
2012-07-05 21:58:01 +02:00
Gael Guennebaud
5dbdde0420
Fix bug #480 : workaround the Android NDK defining isfinite as a macro
2012-07-05 17:22:25 +02:00
Gael Guennebaud
23df2eed46
bug #481 step 1: add a new Ref<> class for non templated function arguments
2012-07-05 17:00:28 +02:00
Jitse Niesen
60edf02f6f
doc: Typo in CustomizingEigen, introduced in previous commit.
...
Thanks to Christoph Hertzberg for noting this.
2012-07-05 13:56:28 +01:00
Jitse Niesen
37d5825c5a
merge
2012-07-05 13:39:06 +01:00
Jitse Niesen
b582b2ebdc
doc: Add constructor to example for inheritance.
...
See "Error in Inheriting Eigen::Vector3d" on forum.
2012-07-05 13:36:02 +01:00
Gael Guennebaud
0a7ce6ad69
fix bug #486 : template speacialization of member functions must be declared inline to avoid duplicate references
2012-07-05 13:32:23 +02:00
Jitse Niesen
cb9f3685d3
Move implementation of coeff() &c to Matrix/Array evaluator.
2012-07-05 11:09:42 +01:00
Christoph Hertzberg
03fe095622
bug #488 : Add setShift method (and functionality) to Cholmod classes
...
Also check for Success of numerical factorization
2012-07-04 18:46:14 +02:00
Gael Guennebaud
54d55aeaf6
fix bug #487 : isometry * scaling was not compiling
2012-07-04 18:25:07 +02:00
Konstantinos Margaritis
d878cf2227
fix typo
2012-07-04 11:28:59 +03:00
Konstantinos Margaritis
f737536744
fix NEON port, use vget_lane_*() instead of temporary variables (saves extra
...
load/store), following advice by Josh Bleecher Snyder <josharian@gmail.com>.
Also implement pmadd() using vmla instead of nested padd/pmul.
2012-07-04 11:12:02 +03:00
Gael Guennebaud
9a97dac4d9
Doc: add an example for HouseholderQR::householderQ()
2012-07-02 16:33:32 +02:00
Gael Guennebaud
eee34f2da4
workaround compilation issue with MSVC 2005
2012-07-02 10:20:44 +02:00
Jitse Niesen
746378868a
Implement A.noalias() = B * C without temporaries
...
* Wrap expression inside EvalToTemp in copy_using_evaluators() if we
assume aliasing for that expression (that is, for products)
* Remove temporary kludge of evaluating expression to temporary in
AllAtOnce traversal
* Implement EvalToTemp expression object
2012-06-29 13:54:09 +01:00
Jitse Niesen
d0b873822f
Make product eval-at-once.
...
* Make product EvalAtOnce in cases OuterProduct, GemmProduct and
GemvProduct
* Ensure that product evaluators are nested inside EvalToTemp
evaluator
* As temporary kludge, evaluate expression to temporary in AllAtOnce
traversal and pass expression operator to evalTo()
2012-06-29 13:49:25 +01:00
Jitse Niesen
2393ceb380
Implement eval-at-once in evaluator.
...
- Add evaluator_traits with HasEvalTo flag, which is true if evaluator
has evalTo() function.
- Add AllAtOnce traversal, which calls evalTo() in evaluator.
- If source evaluator in copy_using_evaluator has HasEvalTo set, then
use AllAtOnce traversal.
2012-06-29 13:32:12 +01:00
Jitse Niesen
c1eb820e50
Implement interface for NoAlias assignments.
...
* Rename the old copy_using_evaluators to noalias_copy_using_evaluators.
* Write a new copy_using_evaluators which strips NoAlias expression, if present,
and calls noalias_copy_using_evaluators; in future, it will also take care of
aliasing in products.
* Add expression() getter to NoAlias.
2012-06-29 13:24:04 +01:00
Jitse Niesen
069fd0e4be
Move (part of) evaluation of products to evaluator objects.
...
* Copy implementation from CoeffBasedProduct.
* Copy implementation from GeneralProduct in InnerProduct case.
* For GeneralProduct in other cases, call the evalTo() member function with
expression objects in constructor of evaluator.
2012-06-29 13:07:21 +01:00