76 Commits

Author SHA1 Message Date
Gael Guennebaud
ad3d68400e Add matrix-free solver example 2015-12-07 12:33:38 +01:00
Gael Guennebaud
b37036afce Implement wrapper for matrix-free iterative solvers 2015-12-07 12:23:22 +01:00
Gael Guennebaud
a5324a131f bug #1092: fix iterative solver ctors for expressions as input 2015-10-26 16:16:24 +01:00
Gael Guennebaud
1b148d9e2e Move IncompleteCholesky to official modules 2015-10-08 11:32:46 +02:00
Gael Guennebaud
632e7705b1 Improve doc of IncompleteCholesky 2015-10-08 10:54:36 +02:00
Gael Guennebaud
131db3c552 Fix return by value versus ref typo in IncompleteCholesky 2015-10-07 16:37:46 +02:00
Gael Guennebaud
752a0e5339 bug #1076: fix scaling in IncompleteCholesky, improve doc, add read-only access to the different factors, remove debugging code. 2015-10-06 13:25:45 +02:00
Gael Guennebaud
7e0d7a76b8 Remove dense nested loops in IncompleteCholesky 2015-08-04 18:01:38 +02:00
Gael Guennebaud
e31fc50280 Numerous fixes for IncompleteCholesky. Still have to make it fully exploit the sparse structure of the L factor, and improve robustness to illconditionned problems. 2015-08-04 16:16:02 +02:00
Gael Guennebaud
64753af3b7 code simplification 2015-06-09 15:35:34 +02:00
Gael Guennebaud
cacbc5679d formatting 2015-06-09 15:23:08 +02:00
Gael Guennebaud
04665ef9e1 remove redundant dynamic allocations in GMRES 2015-06-09 15:18:21 +02:00
Gael Guennebaud
aa6c516ec1 Fix many long to int conversion warnings:
- fix usage of Index (API) versus StorageIndex (when multiple indexes are stored)
 - use StorageIndex(val) when the input has already been check
 - use internal::convert_index<StorageIndex>(val) when val is potentially unsafe (directly comes from user input)
2015-02-16 13:19:05 +01:00
Gael Guennebaud
fc202bab39 Index refactoring: StorageIndex must be used for storage only (and locally when it make sense). In all other cases use the global Index type. 2015-02-13 18:57:41 +01:00
Gael Guennebaud
fe51319980 Merge Index-refactoring branch with default, fix PastixSupport, remove some useless typedefs 2015-02-13 10:03:53 +01:00
Jan Blechta
c3f3580b8f Fix bug #733: step by step solving is not a good example for solveWithGuess 2015-02-10 14:24:39 +01:00
Gael Guennebaud
deecff97ed typo 2015-02-10 19:22:05 +01:00
Gael Guennebaud
c6e8caf090 Allows Lower|Upper as a template argument of CG and MINRES: in this case the full matrix will be considered. 2015-02-10 18:57:41 +01:00
Gael Guennebaud
d10d6a40dd bug #897: Update unsupported iterative solvers based on IterativeSolverBased. 2015-02-10 13:02:59 +01:00
Christoph Hertzberg
e8cdbedefb bug #877, bug #572: Introduce a global Index typedef. Rename Sparse*::Index to StorageIndex, make Dense*::StorageIndex an alias to DenseIndex. Overall this commit gets rid of all Index conversion warnings. 2014-12-04 22:48:53 +01:00
Gael Guennebaud
fe57b2f963 bug #701: workaround (min) and (max) blocking ADL by introducing numext::mini and numext::maxi internal functions and a EIGEN_NOT_A_MACRO macro. 2014-10-20 15:55:32 +02:00
Gael Guennebaud
0ca43f7e9a Remove deprecated code not used by evaluators 2014-09-18 15:15:27 +02:00
Gael Guennebaud
b051bbd64f Make unsupport sparse solvers use SparseSolverBase 2014-09-01 17:21:47 +02:00
Kolja Brix
953ec08089 Correct GMRES:
* Fix error in calculation of residual at restart.
* Use relative residual as stopping criterion.
* Improve documentation.
2014-08-02 18:39:15 +02:00
Kolja Brix
e955725ff1 Fix GMRES: Initialize essential Householder vector with correct dimension. Add check if initial guess is already a sufficient approximation. 2014-07-10 08:20:55 +02:00
Gael Guennebaud
904509fbb6 Move using std::abs from Eigen's namespace to function scope. 2014-07-08 10:28:09 +02:00
Chen-Pang He
8ee38d2db6 Fix dox for namespaces 2014-07-05 21:48:48 +08:00
giacomo po
3e42b775ea MINRES, bug #715: add support for zero rhs, and remove square test. 2014-03-17 16:33:52 -07:00
Anton Gladky
4cd4be97a7 Port unsupported constrained CG to Eigen3 2014-01-15 17:49:52 +01:00
Gael Guennebaud
62670c83a0 Fix bug #314: move remaining math functions from internal to numext namespace 2013-06-10 23:40:56 +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
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
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
bd8c9c69e4 Protect min with parenthesis in IncompleteLLT 2013-02-22 14:41:32 +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
Desire NUENTSA
71cb78e1ba Fix Incomplete Cholesky factorization. Stable but need iterative robust shift 2012-12-07 15:33:26 +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
dnuentsa
f757034001 MINRES solver 2012-10-09 13:07:09 +02: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
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
Desire NUENTSA
45672e724e Incomplete Cholesky preconditioner... not yet stable 2012-09-11 12:12:19 +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
69124cfca2 Automatic relicensing to MPL2 using Keirs script. Manual fixup follows. 2012-07-13 14:42:47 -04:00