Gael Guennebaud
06d2fe453d
remove stupid assert in blue norm.
2012-09-07 23:19:24 +02:00
Desire NUENTSA
5433986f5a
multiple warnings for unused variable
2012-09-07 14:01:51 +02:00
Chen-Pang He
d23134e4a7
Avoid inefficient 2x2 LU. Move atanh to internal for maintainability.
2012-08-30 23:40:30 +08:00
Gael Guennebaud
9da41cc527
forward resize() function from Array/Matrix-Wrapper to the nested expression such that mat.array().resize(a,b) is now allowed.
2012-08-30 16:28:53 +02:00
Gael Guennebaud
c5031edb92
Fix out-of-range memory access in GEMV (the memory was not used for the computation, only to assemble unaligned packets from aligned packet loads)
...
(transplanted from 221f54698c2f6690da8c0f44c1e31e55118dedab
)
2012-08-30 10:52:15 +02:00
Chen-Pang He
ba4e886376
Tidy up and write dox.
2012-08-28 01:55:13 +08:00
Gael Guennebaud
ebe511334f
workaround clang bug (see http://forum.kde.org/viewtopic.php?f=74&t=102653 )
2012-08-27 14:50:45 +02:00
Gael Guennebaud
576d62db64
fix a typo in commit 324ecf153b9b9ab85297e3087f0376e6c55f78fc
...
(regarding MKL on windows)
2012-08-27 13:17:45 +02:00
jdh8
4be172d84f
matrix power: MatrixBase::pow(RealScalar) and MatrixBase::pow(T) where T is integral type
2012-08-15 00:34:20 +08:00
Gael Guennebaud
a1b405c92e
Add missing const in some casts
2012-08-05 10:40:46 +02:00
Gael Guennebaud
c73c3ec2f8
fix bug #495 : remove too aggressive EIGEN_FLATTEN_ATTRIB attribute
...
(after some benchmarking, it was not useful anymore)
2012-08-02 12:22:22 +02:00
Gael Guennebaud
7d98c864ff
fix warning
2012-08-01 10:44:59 +02:00
Gael Guennebaud
22e0ebbc2c
fix lower acceptable bound of SSE pexp for double
2012-07-31 23:11:04 +02:00
Gael Guennebaud
8ab0e16e27
fix various regressions with MKL support
2012-07-28 16:32:43 +02:00
Gael Guennebaud
e8aa1f00c5
add SSE pexp function for double, make use of _mm_floor_p* for pexp with SSE4.1
2012-07-27 23:40:04 +02:00
Gael Guennebaud
6eee2918d9
extend quotient functor to allow for mixed types (complex-real)
2012-07-27 11:56:20 +02:00
Jitse Niesen
bf7d986af6
Add static assert that objects on stacks are not too big (bug #491 ).
2012-07-17 22:15:42 +01: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
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
69124cfca2
Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.
2012-07-13 14:42:47 -04: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
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
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
cb9f3685d3
Move implementation of coeff() &c to Matrix/Array evaluator.
2012-07-05 11:09:42 +01: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
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
Jitse Niesen
23184527fa
Resize lhs automatically in copy_using_evaluator().
2012-06-28 15:25:25 +01:00
Gael Guennebaud
a2ace4b79a
bug #482 : pass scalar arguments by const references. This changeset only concerns the Core and Geometry modules
2012-06-28 02:08:59 +02:00
Gael Guennebaud
cc964b6caf
fix performance regression due to check_rows_cols_for_overflow and add appropriate assertions in the PlainObjectBase::resize() functions.
...
The fix consists in disabling this useless test for statically allocated objects.
2012-06-26 22:16:07 +02:00
Gael Guennebaud
57b5804974
remove dynamic allocation for fixed size object and triangular matrix-matrix products
2012-06-26 17:45:01 +02:00
Jitse Niesen
8994f9962a
Fix bug in {Matrix,Array}Wrapper evaluator
2012-06-24 17:35:27 +01:00
Jitse Niesen
d0d077b212
Fix bug in evaluators with sliced vectorization.
2012-06-24 17:33:21 +01:00
Gael Guennebaud
7c32904766
typo
2012-06-24 10:13:28 +02:00
Gael Guennebaud
cc6dd55028
put the resurected files into the Eigen namespace
2012-06-22 16:35:20 +02:00
Gael Guennebaud
62c504e7bf
fix most of the shadow warnings in Core/*.h
2012-06-22 16:32:45 +02:00
Gael Guennebaud
5fae6c7848
resurrect expression evaluators
2012-06-22 09:39:35 +02:00
Gael Guennebaud
81e39e1bc6
bump default branch to 3.1.90
2012-06-22 09:27:24 +02:00
Gael Guennebaud
dd86165c13
bump to 3.1.0-rc2
2012-06-21 22:00:13 +02:00
Gael Guennebaud
110cf8bbf5
fix compilation issue with MKL's backend
2012-06-21 17:03:15 +02:00
Gael Guennebaud
4ca5735de4
bump to 3.1.0-rc1
2012-06-14 21:25:50 +02:00
Gael Guennebaud
b9f25ee656
bug #466 : better fix for the race condition: this new patch add an initParallel()
...
function which must be called at the initialization time of any multi-threaded
application calling Eigen from multiple threads.
2012-06-14 14:24:15 +02:00
Gael Guennebaud
a3e700db72
fix bug #475 : .exp() now returns +inf when overflow occurs (SSE)
2012-06-14 10:38:39 +02:00