Jitse Niesen
86df74c765
RealSchur: reduce scope of temporary variables in hqr2().
2010-04-06 15:26:09 +01:00
Jitse Niesen
dad50338b8
RealSchur: Use PlanarRotation in "found two real eigenvalues" branch.
2010-04-06 15:12:21 +01:00
Jitse Niesen
d88d1cfa62
Merge.
2010-04-02 21:33:34 +01:00
Jitse Niesen
79e1ce6093
RealSchur and EigenSolver: some straightforward renames.
2010-04-02 21:05:32 +01:00
Jitse Niesen
a16a36ecf2
Add tests for real and complex Schur; extend test for Hessenberg.
...
Make a minor correction to the ComplexSchur class.
2010-04-02 14:32:20 +01:00
Hauke Heibel
9d6afdeb22
ei_psqrt fix for zero input
2010-04-01 15:10:52 +02:00
Jitse Niesen
3a14a13533
Split computation of real Schur form in EigenSolver to its own class.
...
This is done with the minimal amount of work, so the result is very rough.
2010-04-01 12:32:56 +01:00
Jitse Niesen
8cfa672fe0
Use HessenbergDecomposition in EigenSolver.
2010-03-31 21:50:18 +01:00
Jitse Niesen
1b3f7f2fee
Extend documentation and add examples for EigenSolver class.
2010-03-31 11:59:11 +01:00
Benoit Jacob
338ec0390f
let the cast functor use the new ei_cast()
2010-03-30 14:51:47 -04:00
Benoit Jacob
16e416b8d7
generalize the idea of the previous commit to all kinds of casts, see this forum thread:
...
http://forum.kde.org/viewtopic.php?f=74&t=86914
this is important to allow users to support custom types that don't have the needed conversion operators.
2010-03-30 14:47:45 -04:00
Benoit Jacob
9e0d8697c7
add ei_cast_to_int, we are indeed somethings (e.g. in IO.h) casting scalars to int and the only way to allow users to extend that to their own scalar types that don't have int cast operators, was to allow them specialize ei_cast_to_int_impl.
2010-03-30 14:16:54 -04:00
Benoit Jacob
8f99ae5ea4
move the computation of the number of significant digits to a templated helper struct, that can be specialized to custom types if needed. Should address this request:
...
http://forum.kde.org/viewtopic.php?f=74&t=86914
2010-03-30 11:38:09 -04:00
Jitse Niesen
e6300efb5c
Extend documentation for HessenbergDecomposition.
2010-03-28 17:33:56 +01:00
Thomas Capricelli
0a5c2d8a54
fix misc warnings, more importantly when NDEBUG is defined, assert() is a
...
nop.
2010-03-27 18:58:29 +01:00
Jitse Niesen
af08770890
Center version number on main page of API documentation.
2010-03-26 12:36:42 +00:00
Manuel Yguel
eb0c921a58
Fix some doc typos.
2010-03-25 16:54:00 +01:00
Thomas Capricelli
df1cbe8c3d
fix display of modules list in documentation
2010-03-25 08:50:23 +01:00
Manuel Yguel
671cfb7ad0
Fix wrong header and warnings in polynomialutils.cpp
2010-03-25 03:31:33 +01:00
Manuel Yguel
89f2d5667f
Add the possibility to use the polynomial solver of the gsl.
2010-03-25 03:25:47 +01:00
Manuel Yguel
5ef83d6a6c
Add missing test files for Polynomials module.
2010-03-25 03:21:52 +01:00
Manuel Yguel
9a4a08da46
Creation of the Polynomials module with the following features:
...
* convenient functions:
- Horner and stabilized Horner evaluation
- polynomial coefficients from a set of given roots
- Cauchy bounds
* a QR based polynomial solver
2010-03-25 03:15:05 +01:00
Jitse Niesen
c68098b9be
Clean up ComplexSchur::compute() .
2010-03-24 14:10:33 +00:00
Jitse Niesen
13a1b0ba27
Add snippets file which should have been added in the previous commit.
2010-03-24 13:04:03 +00:00
Jitse Niesen
37e17938e9
Extend documentation of ComplexSchur and add examples.
2010-03-23 12:49:09 +00:00
Jitse Niesen
307c428253
Move documentation of MatrixBase methods in MatrixFunctions to module page.
...
I think that because MatrixFunctions is in unsupported/ and MatrixBase is
not, doxygen does not include the MatrixBase methods defined and documented
in the MatrixFunctions module with the other MatrixBase methods. This is a
kludge, but at least the documentation is not lost.
2010-03-22 13:58:19 +00:00
Jitse Niesen
525d6b655f
Merge.
2010-03-21 21:59:00 +00:00
Jitse Niesen
8e5d2b6fc4
Rename Complex in ComplexSchur and ComplexEigenSolver to ComplexScalar
...
for consistency with the RealScalar type; correct ComplexEigenSolver
docs to take non-diagonalizable matrices into account; refactor
ComplexEigenSolver::compute().
2010-03-21 21:57:34 +00:00
Gael Guennebaud
8b093dd2df
oops, fix symv (innerStride instead of outerStride)
2010-03-20 20:51:44 +01:00
Jitse Niesen
d91ffffc37
Allow ComplexEigenSolver and ComplexSchur to work with real matrices.
...
Add a test which covers this case.
2010-03-20 17:04:40 +00:00
Hauke Heibel
fbdf16d425
Added x()/y() and z() access functions to translations.
2010-03-19 20:11:40 +01:00
Jitse Niesen
d3e271c47e
Extend documentation and add examples for ComplexEigenSolver.
2010-03-19 18:23:36 +00:00
Benoit Jacob
089bd89512
compile with gcc 4.5
2010-03-18 20:10:24 -04:00
Jitse Niesen
0ee10f7da4
Document member functions and types of ComplexEigenSolver.
2010-03-18 13:42:17 +00:00
Jitse Niesen
04a4e22c58
API change: ei_matrix_exponential(A) --> A.exp(), etc
...
As discussed on mailing list; see
http://listengine.tuxfamily.org/lists.tuxfamily.org/eigen/2010/02/msg00190.html
2010-03-16 17:26:55 +00:00
Gael Guennebaud
d536fef1bb
fix and extend replicate optimization, and add the packet method though it is currently disabled
2010-03-15 10:39:00 +01:00
Hauke Heibel
d68b85744f
Replaced strong with weak inlines in CwiseUnaryOp.
2010-03-14 13:01:10 +01:00
Hauke Heibel
6d08f71a2d
Removed strong inlines which cannot always be inlined.
2010-03-14 12:09:29 +01:00
Hauke Heibel
0e5a232dae
Ups - again a missing typename.
2010-03-14 11:58:44 +01:00
Hauke Heibel
fc20e6fd55
Try to avoid modulo operations in Replicate if possible.
2010-03-13 14:33:39 +01:00
Hauke Heibel
b9644f3323
Propagate fixed size dimensions if available (on MSVC it leads >2.5x speedup for some reductions).
2010-03-13 13:15:27 +01:00
Benoit Jacob
3e08c22028
attempt to fix #101
2010-03-11 12:41:46 -05:00
Hauke Heibel
2a82b162d7
Nest expression within MatrixWrapper by value.
2010-03-10 17:13:07 +01:00
Hauke Heibel
b20b393a4e
Enable resizing of Arrays.
2010-03-10 17:12:45 +01:00
Hauke Heibel
dd9ff1b9a6
Fix MSVC warnings.
2010-03-09 09:04:21 +01:00
Benoit Jacob
b81351cb07
nomalloc: minor cleanup
2010-03-08 21:30:06 -05:00
Adolfo Rodriguez Tsouroukdissian
5a36f4a8d1
Propagate all five matrix template parameters to members and temporaries of decomposition classes. One particular advantage of this is that decomposing matrices with max sizes known at compile time will not allocate.
...
NOTE: The ComplexEigenSolver class currently _does_ allocate (line 135 of Eigenvalues/ComplexEigenSolver.h), but the reason appears to be in the implementation of matrix-matrix products, and not in the decomposition itself.
The nomalloc unit test has been extended to verify that decompositions do not allocate when max sizes are specified. There are currently two workarounds to prevent the test from failing (see comments in test/nomalloc.cpp), both of which are related to matrix products that allocate on the stack.
2010-03-08 19:31:27 +01:00
Gael Guennebaud
898762529e
update the product selection logic to use the Max* sizes
2010-03-08 22:55:58 +01:00
Gael Guennebaud
2af9468dd1
update the product selection logic to use the Max* sizes
2010-03-08 22:54:31 +01:00
Gael Guennebaud
9a3b00c040
add missing cmake directives for arch/Default
2010-03-08 22:15:35 +01:00