Commit Graph

1921 Commits

Author SHA1 Message Date
Markus Blatt
3c1498ce92 Only construct SeqILU0 in try block.
The rest is not needed and this simplyfies code.
2015-09-08 12:06:03 +02:00
Markus Blatt
2d50408b5f Catch and process exception during ILU0 in parallel for CPR, too. 2015-09-08 12:05:27 +02:00
Markus Blatt
c97f125b56 Include rank into error message. 2015-09-08 11:48:06 +02:00
Markus Blatt
315251da2c Fix typo wether->whether. 2015-09-08 11:44:46 +02:00
Markus Blatt
de8c638308 Put space around braces where it seems approppriate. 2015-09-08 11:15:46 +02:00
Markus Blatt
ccac548420 Introduces parallel exception handling for ILU0 preconditioner.
When running Norne with the interleaved solver sometimes exceptions
(diagonal matrix block is not invertible) occur for some rows in the
ILU decomposition. In a parallel run this means that some, but not all
processes will see the exceptions. This leads to a classic deadlock.

With this commit we catch the exception during the setup of the preconditioner,
determine with the other processes whether there were any exceptions, and
in this case all the processes will throw an exception.

Currently this limited to Dune::MatrixBlockError, but we could extend this.
2015-09-08 09:46:35 +02:00
Atgeirr Flø Rasmussen
89ae28d3c5 Merge pull request #456 from babrodtk/autodiff-matrix-types
Autodiff matrix types
2015-09-08 08:34:43 +02:00
babrodtk
83c3d51ae0 Removed need for delegating constructors 2015-09-07 15:33:46 +02:00
babrodtk
38865cac31 Cleaned up comments 2015-09-07 13:01:31 +02:00
babrodtk
39154f04fe Added tests for autodiffmatrix 2015-09-07 13:01:31 +02:00
babrodtk
4c82e9abc7 Fixed bug in diagonal*vector product 2015-09-07 13:01:31 +02:00
babrodtk
9855d7340f Minor performance updates 2015-09-07 13:01:31 +02:00
babrodtk
466f1947a3 Fixed Eigen 3.3 compatibility 2015-09-07 13:01:31 +02:00
babrodtk
395c12a2d5 Refactoring to more readable names 2015-09-07 13:00:41 +02:00
babrodtk
0a2b898b33 Minor reformulations 2015-09-07 13:00:41 +02:00
babrodtk
2f83f9268e Found the culprit 2015-09-07 13:00:41 +02:00
babrodtk
3a3e9d9e4a Reverted more changes 2015-09-07 13:00:41 +02:00
babrodtk
8d82d9f89e Reverted some changes 2015-09-07 13:00:41 +02:00
babrodtk
d57adc6ed4 Removed use of static memory 2015-09-07 13:00:41 +02:00
babrodtk
36f0e7531f Minor changes 2015-09-07 13:00:41 +02:00
babrodtk
a30d6586a3 Made fastSparseProduct std::move-friendly 2015-09-07 13:00:41 +02:00
babrodtk
0b1f993588 Implemented statically allocated memory for SparseMatrix 2015-09-07 13:00:41 +02:00
babrodtk
df1d0f795d Added the use of boost::any 2015-09-07 13:00:41 +02:00
babrodtk
624790e7e3 Added comment 2015-09-07 13:00:41 +02:00
babrodtk
c713a8bebc Renamed functions 2015-09-07 13:00:41 +02:00
babrodtk
cbdb95d61b Removed opm statements which did not belong there 2015-09-07 13:00:41 +02:00
babrodtk
acd58f5272 Fixed commented out functions and some warnings 2015-09-07 13:00:41 +02:00
babrodtk
6a6a1d5280 Fixed warnings 2015-09-07 13:00:41 +02:00
babrodtk
54137c742b Added remaining files to CMakeLists_files.cmake 2015-09-07 13:00:41 +02:00
babrodtk
171cbbe3bb Fixed sim_simple.cpp 2015-09-07 13:00:41 +02:00
babrodtk
95e9ca6d2a Fixed SolventPropsAdFromDeck.cpp 2015-09-07 13:00:41 +02:00
Atgeirr Flø Rasmussen
73170c4281 Add forgotten constructor delegation. 2015-09-07 13:00:41 +02:00
babrodtk
51b85276ec Fixed TransportSolverThophaseAd.cpp 2015-09-07 13:00:41 +02:00
babrodtk
6deb3e2c4a Fixed IpmesTPFAAD.cpp 2015-09-07 13:00:41 +02:00
babrodtk
945593295d Fixed test_autodiffhelpers 2015-09-07 13:00:41 +02:00
babrodtk
3a9a153c22 Fixed test_block 2015-09-07 13:00:41 +02:00
Atgeirr Flø Rasmussen
61c352ca3b Add move constructor and assignment to AutoDiffMatrix.
This is necessary, and done using swap(), since (current version)
Eigen::SparseMatrix does not support move semantics.
2015-09-07 13:00:41 +02:00
Atgeirr Flø Rasmussen
097542a527 Whitespace fixes.
It turns out I accidentally used tabs for a while, this commit
fixes that for all touched files.
2015-09-07 13:00:41 +02:00
Atgeirr Flø Rasmussen
3c905845f9 Use std::vector instead of DiagonalMatrix.
This is because DiagonalMatrix lacks a swap() method.
2015-09-07 13:00:02 +02:00
Atgeirr Flø Rasmussen
87f677af02 Fix bug in fastDiagSparseProduct(). 2015-09-07 13:00:02 +02:00
Atgeirr Flø Rasmussen
11a33b3017 Experiment with fast diagonal-sparse products. 2015-09-07 13:00:02 +02:00
Atgeirr Flø Rasmussen
1f32594f79 Fix bug in prodDD(), add test. 2015-09-07 13:00:02 +02:00
Atgeirr Flø Rasmussen
51dde7cec5 In collapseJacs(), avoid explicit zeros. 2015-09-07 13:00:02 +02:00
Atgeirr Flø Rasmussen
dd52d444e7 Fix print() method. 2015-09-07 13:00:02 +02:00
Atgeirr Flø Rasmussen
c795113ce3 Changes to make flow compile with AutoDiffMatrix. 2015-09-07 13:00:02 +02:00
Atgeirr Flø Rasmussen
c712d0070d Bugfixes for AutoDiffMatrix. 2015-09-07 12:58:51 +02:00
Atgeirr Flø Rasmussen
ffeaa5143d Add more ops and methods to AutoDiffMatrix.
To make it possible to use it instead of Eigen::SparseMatrix in
a range of cases.
2015-09-07 12:58:51 +02:00
Atgeirr Flø Rasmussen
47e7dbe943 New implementation of AutoDiffMatrix, some tests.
Compiles and tests successfully, but test coverage very
limited. New approach based on relatively primitive
run-time switching instead of trying to use inheritance.
2015-09-07 12:58:51 +02:00
Atgeirr Flø Rasmussen
6a5a48e728 Work in progress on AutoDiffMatrix (not compiling). 2015-09-07 12:58:51 +02:00
Bård Skaflestad
63d34157ef Merge pull request #462 from blattms/fix-build
Removes unused experimental header include to fix build.
2015-09-07 11:23:59 +02:00