Chen-Pang He
04a9ad6e10
Let complex power fall back to "log, scale, exp".
2013-07-05 00:28:28 +08:00
Chen-Pang He
75b3391e3f
Enable singular matrix power using unitary similarities.
2013-07-04 18:37:46 +08:00
Chen-Pang He
3cda1deb52
Simplify class hierarchy.
2013-07-04 05:10:43 +08:00
Chen-Pang He
eaf92ef48c
Remove unreachable MatrixPowerTriangular, paving the way to future cleanups.
2013-07-04 04:42:02 +08:00
Chen-Pang He
7b6e94fb58
Clean namespace pollution.
2013-06-25 02:56:30 +08:00
Chen-Pang He
b9543ce237
Matrix square root can process 0 eigenvalue.
2013-06-24 23:57:57 +08:00
Chen-Pang He
b9fc9d8f32
Remove mat.pow * vec specialization, which causes segfault for mat.pow * mat.pow
2013-06-24 23:56:17 +08:00
Chen-Pang He
ee8a28fb85
Fix segfault and bug with equal eivals in matrix power (bug #614 ).
2013-06-24 13:58:51 +01:00
Gael Guennebaud
cf5c5ed725
Fix warning typedef XXX locally defined but not used
2013-06-21 09:27:38 +02:00
Gauthier Brun
8105b5ed3f
new unsupported and not finished SVD, using a divide and conquert algorithm, with tests and benchmark
2013-06-19 00:03:27 +02:00
Kolja Brix
05da15bf40
bug #230 , fix compilation issues and wrong static assertions
2013-06-18 09:44:40 +02:00
Gael Guennebaud
f6c1841316
compilation fixes in unsupported
2013-06-12 12:52:41 +02:00
Gael Guennebaud
62670c83a0
Fix bug #314 : move remaining math functions from internal to numext namespace
2013-06-10 23:40:56 +02:00
Desire NUENTSA
cf939f154f
Fix bug #596 : Recover plain SparseMatrix from SparseQR matrixQ()
2013-05-21 17:35:10 +02:00
Gael Guennebaud
9816e8532e
Fix bug #482 : pass scalar value by const reference (it remained a few cases)
2013-04-12 15:26:55 +02:00
Gael Guennebaud
899c0c2b6c
Clean source code and unit tests with respect to -Wunused-local-typedefs
2013-04-10 22:27:35 +02:00
Gael Guennebaud
225fd0f579
adapt AutoDiff to scalar_product_traits
2013-03-20 21:20:13 +01:00
Desire NUENTSA
f350f34560
Add complex support to dgmres and the unit test
2013-03-20 18:38:22 +01:00
Desire NUENTSA
da6219b19d
Bug567 : Fix iterative solvers to immediately return when the initial guess is the true solution and for trivial solution
2013-03-20 16:15:18 +01:00
Desire NUENTSA
4107b371e3
Handle zero right hand side in CG and GMRES
2013-03-20 11:22:45 +01:00
Christoph Hertzberg
6357fd68da
Patch by Kolja Brix <brix@igpm.rwth-aachen.de> that fixes bug #565 and adds a testcase to verify that.
2013-03-17 13:55:31 +01:00
Gael Guennebaud
03373f41cb
Fix bug #561 : remove useless sign macro
2013-03-07 23:35:26 +01:00
Gael Guennebaud
b9fe79153b
Fix a couple of remaining warnings (missing newlines, inline-noinline, meaningless type qualifiers)
2013-03-01 14:42:36 +01:00
Gael Guennebaud
87142237b5
Fix "missing return statement at end of non-void function"
2013-03-01 14:33:11 +01:00
Hauke Heibel
83aac6d54c
MSVC fix; the compiler failed to detect the correct overload.
2013-02-28 11:38:34 +01:00
Gael Guennebaud
bd8c9c69e4
Protect min with parenthesis in IncompleteLLT
2013-02-22 14:41:32 +01:00
Desire NUENTSA
febf8e5d7b
Set built-in sparse QR as the default sparse solver and add ComputationInfo for Levenberg Marquardt,
2013-02-20 14:10:14 +01:00
Gael Guennebaud
5154253933
Fix some MPL2/LGPL lisencing confusions
2013-02-06 11:30:33 +01:00
Jitse Niesen
14e2ab02b5
Replace assert() by eigen_assert() (fixes bug #548 ).
2013-02-02 22:04:42 +00:00
Chen-Pang He
23c87fcde6
I think it's OK to let XprHelper.h determine the nested type.
2012-10-15 00:14:32 +08:00
Chen-Pang He
fe0ef8e609
Remove unused typedef (traits<MatrixPowerProduct>::PlainObject) for brevity.
2012-10-14 22:30:52 +08:00
Chen-Pang He
40fce01648
Simplify traits<MatrixPowerProduct>: StorageKind must be Dense because MatrixPowerProduct is derived from MatrixBase.
2012-10-14 18:36:17 +08:00
Chen-Pang He
c890cf5489
Use the nested type instead of const reference
2012-10-14 03:02:16 +08:00
Chen-Pang He
daa65c5bce
Just tidy up: no need to specify template parameters inside class body.
2012-10-14 01:36:54 +08:00
Chen-Pang He
0017d8c58f
Make MatrixPowerTriangularAtomic::computePade static because it should be.
2012-10-07 02:25:00 +08:00
Chen-Pang He
a5d348e30a
Use simplified return type, trying to work around MSVC.
2012-10-03 19:42:02 +08:00
Chen-Pang He
4cfde4590f
Make use of TRMM (speed up), and remove useless condition (the triangular don't need LU)
2012-10-02 23:04:23 +08:00
Chen-Pang He
21c2b4e327
Make better decision on PartialPivLU vs inverse(): We have specialized inverse() only for FIXED matrices.
2012-10-02 19:53:38 +08:00
Chen-Pang He
e92fe88159
Add test for real MatrixPowerTriangular.
2012-09-30 19:21:53 +08:00
Chen-Pang He
eb33d307af
Avoid Schur decomposition on (quasi-)triangular matrices. (Huge speed up!)
2012-09-30 16:30:18 +08:00
Chen-Pang He
332eb36436
Implement complex MatrixPowerTriangular. There are still problems with real one.
2012-09-30 02:14:16 +08:00
Chen-Pang He
8321b7ae74
Make KroneckerProductSparse inherit EigenBase instead of SparseMatrixBase, for it does not provide an InnerIterator.
2012-10-25 02:09:48 +08:00
Chen-Pang He
204a09cb82
Fix compile error caused by incomplete SparseMatrixBase.
2012-10-16 00:06:49 +08:00
Chen-Pang He
0508a0620b
Let KroneckerProduct inherit ReturnByValue to eliminate temporary evaluation. It's uncommon to store the product back to one of the operands.
2012-10-15 19:45:50 +08:00
Chen-Pang He
8284e7134b
Add doc for KroneckerProductSparse.
2012-10-15 00:31:09 +08:00
Chen-Pang He
c4b83461d9
Make kroneckerProduct take two arguments and return an expression, which is more straight-forward.
2012-10-15 00:21:12 +08:00
Chen-Pang He
f34db6578a
KroneckerProduct: we have const_cast_derived so why not use it?
2012-10-14 01:38:38 +08:00
Gael Guennebaud
f41d96deb9
Fix several documentation issues
2012-12-24 13:33:22 +01:00
David Harmon
dbe1ab67ac
Added ARPACK support for standard and generalized eigenvalue problems. Currently self-adjoint only.
2012-10-06 17:18:09 -06:00
Gael Guennebaud
8844f632fa
Move work in progress Levenberg Marquardt module in unsupported
2012-12-08 18:22:23 +01:00
Gael Guennebaud
d85253ccf4
Backed out changeset 363e506776
2012-12-07 20:53:19 +01:00
Desire NUENTSA
363e506776
Rename the old LevenbergMarquardt class to LevenbergMarquardtLegacy
...
Split the levenberg marquardt test and the hybrid nonlinear test
2012-12-07 15:51:25 +01:00
Desire NUENTSA
71cb78e1ba
Fix Incomplete Cholesky factorization. Stable but need iterative robust shift
2012-12-07 15:33:26 +01:00
Gael Guennebaud
6a790058f5
remove deprecated InnerVectorSet for the deprecated DynamicSparseMatrix class
2012-11-16 09:03:42 +01:00
Desire NUENTSA
b40a5b8b48
Improve the IncompleteLLT ... not yet robust
2012-11-13 18:14:34 +01:00
Desire NUENTSA
474716ec5b
Add restarted GMRES with deflation
2012-11-12 10:47:55 +01:00
Gael Guennebaud
a76fbbf397
Fix bug #314 :
...
- remove most of the metaprogramming kung fu in MathFunctions.h (only keep functions that differs from the std)
- remove the overloads for array expression that were in the std namespace
2012-11-06 15:25:50 +01:00
Desire NUENTSA
f7e203fb0c
Fix build error in matrixfunctions on MSVC
2012-10-30 11:30:37 +01:00
dnuentsa
f757034001
MINRES solver
2012-10-09 13:07:09 +02:00
Desire NUENTSA
fe78c86b4a
Discard failing tests in NonlinearOptimization
2012-10-09 12:20:21 +02:00
Jitse Niesen
2008f76120
Merge
2012-09-29 17:35:15 +01:00
Chen-Pang He
50c07e50e8
Avoid memory manipulation for simplicity, efficiency, and safety.
2012-09-29 17:41:51 +08:00
Chen-Pang He
5814a5f1a0
Abort the extension. MatrixSquareRootTriangular only takes upper triangular matrices.
2012-09-29 17:41:06 +08:00
Chen-Pang He
067a5a98c8
Extend MatrixPowerTriangularAtomic for future implementation for triangular matrix power.
2012-09-29 02:02:12 +08:00
Chen-Pang He
ed18d6f2ad
Fix doc and tidy up
2012-09-28 02:08:14 +08:00
Chen-Pang He
3b88216d42
Move unshared items back to MatrixPower
2012-09-27 17:19:32 +08:00
Chen-Pang He
73a0bfe261
Write doc on (matrix power) * (matrix expression)
2012-09-27 02:31:18 +08:00
Chen-Pang He
aa5acdb352
Create class MatrixPowerBase for further extension (like specialization for triangular or self-adjoint matrices)
2012-09-27 02:20:36 +08:00
Desire NUENTSA
a01371548d
Define sparseLU functions as static
2012-09-25 09:53:40 +02:00
giacomo po
fd0441baee
some clean-up and new comments.
2012-09-24 09:20:40 -07:00
Chen-Pang He
d387dfa9dc
Remove unnecessary code. lazyAssign seems to fix all (noalias, initialization, etc.)
2012-09-24 23:36:19 +08:00
giacomo po
18c41aa04f
Some minor optimization.
2012-09-24 08:33:11 -07:00
giacomo po
dd7ff3f493
moved MINRES to unsupported. Made unit test.
2012-09-24 07:47:38 -07:00
Chen-Pang He
334532b7f5
Remove class MatrixPowerEvaluator with enhanced existing MatrixPowerReturnValue to simplicity, but docs are not completed yet.
2012-09-23 23:49:50 +08:00
Chen-Pang He
1d402dac03
Fix bug in MatrixPower(expression) due to destruction of temporary objects. Sorry for ugly pointer manipulation but it prevents copying a PlainObject.
2012-09-23 18:49:44 +08:00
Chen-Pang He
963794b04a
Eliminate unnecessary evaluations
2012-09-23 00:20:19 +08:00
Chen-Pang He
7e64f78f65
Avoid inefficient 2x2 LU
2012-09-22 22:06:22 +08:00
Chen-Pang He
d7b1049cab
Fix my typo in MatrixPowerBase.h, no effect on the flow.
2012-09-22 19:13:02 +08:00
Chen-Pang He
dd8034bd1c
Fix cost evaluation. (chain product for integral power)
2012-09-22 17:37:14 +08:00
Chen-Pang He
446d14f6ad
Implement matrix power-matrix product again
2012-09-22 03:26:00 +08:00
Chen-Pang He
87afd99433
Enable saving intermidiate (Schur decomposition) but disable unstable specialization for matrix power-matrix product.
2012-09-21 23:24:28 +08:00
Chen-Pang He
d5d99dd1f0
Optimize matrix functions: m_fT is triangular and trmm is faster than gemm
2012-09-16 14:42:42 +08:00
Desire NUENTSA
45672e724e
Incomplete Cholesky preconditioner... not yet stable
2012-09-11 12:12:19 +02:00
Chen-Pang He
d23134e4a7
Avoid inefficient 2x2 LU. Move atanh to internal for maintainability.
2012-08-30 23:40:30 +08:00
Chen-Pang He
d0ee31aea6
Fix dox and tabbing
2012-08-29 01:56:23 +08:00
Chen-Pang He
ba4e886376
Tidy up and write dox.
2012-08-28 01:55:13 +08:00
Chen-Pang He
5252d823c9
Optimize matrix power
2012-08-26 02:15:41 +08:00
Chen-Pang He
1cd4279b03
Fix a lot in MatrixPower.h
2012-08-25 01:09:20 +08:00
Jitse Niesen
edc7a09ee7
merge
2012-08-27 22:57:39 +01:00
Desire NUENTSA W.
fe9956defe
Read real and complex bench matrices from a unique folder
...
Output and display bench results using XML and XSLT
2012-08-27 22:52:43 +02:00
Chen-Pang He
b55d260ada
Replace atanh with atanh2
2012-08-27 21:43:41 +01:00
jdh8
573d88f81c
Dox in MatrixFunctions
2012-08-19 18:12:04 +08:00
jdh8
15dabd4db7
Bugfix in MatrixLogarithm.h
2012-08-18 21:28:05 +08:00
Hauke Heibel
42c1b9a8dd
Ensured that all branches of MatrixLogarithmAtomic::getPadeDegree return values.
2012-08-18 10:18:31 +02:00
jdh8
f047030104
Add specialization for float and long double
2012-08-18 02:27:47 +08:00
jdh8
2337ea430b
Remove useless code (abort specialization for complex exponent temporarily)
2012-08-15 20:56:03 +08: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
jdh8
c5800a2452
using std::frexp instead of frexp
2012-08-08 17:50:56 +08:00
jdh8
8cddcaf839
Optimize getting exponent from IEEE floating points.
2012-08-08 01:27:11 +08:00
jdh8
93967b0dd6
Fix some typos in MatrixLogarithm to improve accuracy.
2012-08-03 23:54:42 +08:00
Hauke Heibel
52a0e0d65e
Added a default constructor for Splines which creates zero (constant) splines.
2012-07-28 13:37:29 +02:00
Benoit Jacob
df06e5662d
MINPACK license is OK for MPL2 after all
2012-07-15 10:30:57 -04: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
e46fc8c05c
fix GMRES
2012-06-23 19:29:21 +02:00
Gael Guennebaud
3fd2beebc8
Matrix-Market: fix perf issue and infinite loop
2012-06-15 09:07:13 +02:00
Gael Guennebaud
37d367a231
fix typo in unsupported/NumericalDiff
2012-06-15 07:56:55 +02:00
Gael Guennebaud
cb64e587c5
Fix kdBVH unit test
2012-06-04 22:01:06 +02:00
Desire NUENTSA
5cbe6a5fbf
Read header of Hermitian matrices
2012-05-25 17:53:37 +02:00
Gael Guennebaud
695a7ab9d7
protect min/max with parenthesis
2012-05-15 08:18:39 +02:00
Jitse Niesen
823c44e4e5
merge
2012-05-02 17:21:29 +01:00
Philip Avery
cb3b1bb73e
AutoDiffScalar: fix bug with operator/, add missing functions
2012-05-02 17:17:12 +02:00
clusty
d062a8bd31
Got rid of a warning message by doing an explicit cast
2012-05-02 10:50:44 -04:00
Gael Guennebaud
8f47246475
fix lmdif1 with Scalar!=double
2012-05-01 14:46:02 +02:00
Gael Guennebaud
5cab18976b
cleaning pass: rm unused variables in MKL stuff, fix a few namespace issues, MarketIO needs iostream
2012-04-18 10:09:46 +02:00
Jitse Niesen
3c412183b2
Get rid of include directives inside namespace blocks (bug #339 ).
2012-04-15 11:06:28 +01:00
Hauke Heibel
84c93b048e
Added spline interpolation with pre-defined knot parameters.
2012-04-13 12:50:05 +02:00
Gael Guennebaud
a060e0b486
does not include MatrixMaketIterator on win32,
...
no "using whatever" in global scope in a header file
2012-03-31 18:01:43 +02:00
Desire NUENTSA
22cd65ee33
Adding a householder-GMRES implementation from Kolja Brix
2012-03-29 15:00:55 +02:00
Desire NUENTSA
ada9e79145
add a benchmark routine for all sparse linear solvers in Eigen
2012-03-29 14:29:55 +02:00
Desire NUENTSA
afeddd80ab
Algorithm to equilibrate rows and columns of a square matrix
2012-03-22 16:18:34 +01:00
Desire NUENTSA
f6cd3389a2
compress loaded market matrix
2012-03-22 15:53:25 +01:00
Desire NUENTSA
37d2efd4f6
Adding support to read and write complex matrices in Matrix Market format
2012-03-08 18:45:47 +01:00
Gael Guennebaud
86bb20c431
remove dead code
2011-12-08 23:22:28 +01:00
Gael Guennebaud
06450882ab
add missing CMakeLists.txt in Splines
2011-12-08 23:12:39 +01:00
Hauke Heibel
accae638b2
Fixed a typo.
2011-12-06 15:42:05 +01:00
Gael Guennebaud
dd504d6aae
fix bug #223 : SparseMatrix::Flags no longer encode triangularness information
2011-12-05 10:17:09 +01:00
Hauke Heibel
a8a2bf3b5a
Added docs to the spline module.
2011-12-04 18:44:01 +01:00
Gael Guennebaud
32917515df
make the accessors to internal sparse storage part of the public API and remove their "_" prefix.
2011-12-04 12:19:26 +01:00
Gael Guennebaud
950eeab4d7
RandomSetter: turns the matrix into compressed form before the filling
2011-12-03 17:35:21 +01:00
Gael Guennebaud
f10bae74e8
- move CompressedStorage and AmbiVector into internal namespace
...
- remove innerVectorNonZeros(j) => use innerVector(j).nonZeros()
2011-12-02 10:00:24 +01:00
Hauke Heibel
b00a33bc70
Integrated spline class and simple spline fitting
2011-11-25 14:53:40 +01:00
Gael Guennebaud
be9b87377f
typo
2011-11-23 08:30:10 +01:00
Gael Guennebaud
53fa851724
move sparse solvers from unsupported/ to main Eigen/ and remove the "not stable yet" warning
2011-11-12 14:11:27 +01:00
Gael Guennebaud
a997dacc67
mark deprecated sparse solvers as so.
2011-10-24 09:51:02 +02:00
Gael Guennebaud
5d43b4049d
factorize solving with guess
2011-10-24 09:33:24 +02:00
Gael Guennebaud
70df09b76d
move DynamicSparseMatrix to SparseExtra
2011-10-24 09:31:33 +02:00
Gael Guennebaud
3fce43a704
add a basic ILU preconditioner
2011-10-11 20:41:43 +02:00
Gael Guennebaud
15cb4f5b09
extend BiCGSTAB to arbitrary rhs
2011-10-11 19:53:18 +02:00
Gael Guennebaud
4f237f035c
extend SimplicialCholesky for sparse rhs, and add determinant
2011-10-11 11:31:12 +02:00
Gael Guennebaud
5dc8458293
extend CG for multiple right hand sides
2011-10-11 11:29:50 +02:00
Gael Guennebaud
e97879857b
DiagonalPrecond: fix potential segfault in case the diagonal contains explciit zeros
2011-10-09 22:17:37 +02:00
Gael Guennebaud
2fc1b58cd2
split SimplicialCholesky into SimplicialLLt and SimplicialLDLt classes and add specific factor access functions
2011-10-09 21:45:55 +02:00
Gael Guennebaud
683ea3c93f
fix superLU when the salver is called multiple times
2011-09-27 18:30:53 +02:00
Gael Guennebaud
b2988375e8
fix a couple of issues in SuperLU support (memory and determinant)
2011-09-24 14:20:31 +02:00
Gael Guennebaud
6799fabba9
port umfpack support to new API
2011-09-24 14:19:39 +02:00
Gael Guennebaud
d8ae978b65
fix some compilation issues
2011-09-23 16:28:26 +02:00
Gael Guennebaud
823b2105b6
fix atan2 when tmp4==0
2011-09-22 17:34:25 +02:00
Gael Guennebaud
b0adbfbae7
BiCGSTAB does not like starting from 0...
2011-09-21 18:08:08 +02:00
Gael Guennebaud
1d796acb05
fix status after initialization
2011-09-20 18:45:50 +02:00