Commit Graph
100 Commits
Author SHA1 Message Date
Robert Kloefkorn 4266f89397 [cleanup] remove logFile line since it does not make sense. 2017-08-25 12:57:25 +02:00
Robert Kloefkorn 9ed71510c1 [feature][flow] add tests for flow. 2017-08-24 11:57:14 +02:00
Robert Kloefkorn 36c2133783 [cleanup] improvement of output message. 2017-08-24 11:39:46 +02:00
Robert Kloefkorn 07e0d71906 [feature][flow] Add a common executable for all flow variants, i.e.
flow_ebos, flow_ebos_polymer, flow_ebos_solvent, flow_ebos_2p.
2017-08-23 16:21:15 +02:00
Robert Kloefkorn ce7f3f46a1 [feature] Added two-phase executable for numEq = 2. 2017-06-29 12:56:37 +02:00
Robert Kloefkorn 936d035dc2 [bugfix][StandardWellsDense] remove auto from method parameter list. 2017-06-27 16:51:11 +02:00
Robert Kloefkorn 2f13de8592 [cleanup][Ebos::getConvergence] removed unnecessary creation of vectors
for temporary quantities.
2017-06-22 14:37:43 +02:00
Robert Kloefkorn e3c898030c [cleanup] ilu_iteration --> ilu_fillin_level. 2017-06-13 15:48:01 +02:00
Robert Kloefkorn 0b90b7863b [cleanup[ use Dune::Amg::SequentialInformation instead of int. 2017-06-13 15:48:01 +02:00
Robert Kloefkorn 38300a4c9b [cleanup] avoid over aggressive memory allocation in ILU. 2017-06-13 15:48:01 +02:00
Robert Kloefkorn 1fa04096c3 [bugfix] circumvent bug in dune-istl when matrix was assembled in
row_wise mode. Also cleanup of output.
2017-06-13 15:48:01 +02:00
Robert Kloefkorn e4f1bf9955 [feature] make ILU relaxation and iteration a dynamic parameter. 2017-06-13 15:48:01 +02:00
Robert Kloefkorn a774128fb7 [feature] Make ILU use CRS for storing lower and upper triangular matrices.
Then the backwards in memory iteration for the upper triangular can be
avoided by storing the matrix blocks in the correct order.
2017-06-13 15:48:01 +02:00
Robert Kloefkorn ee7520d896 [cleanup] initialized Eval variables with 0. 2017-06-08 15:35:40 +02:00
Robert Kloefkorn 46f66e34b9 [bugfix] Only create asyncOutput when output is enabled globally. 2017-06-02 13:09:48 +02:00
Robert Kloefkorn 3db16ede73 [bugfix] Fix invalid read in WellDenseStandard when used with 2P Model. 2017-05-31 16:17:59 +02:00
Robert Kloefkorn e46810d2dc [bugfix] 1) create asyncOutput object on all ranks to avoid deadlock in
MPI_Bcast call in writeTimeStepWithCellProperties.
2) ThreadHandle waits on destruction until all objects have been dealt with.
2017-05-29 18:08:18 +02:00
Robert Kloefkorn 8a7141fa88 [feature] Add GridInit for PolyhedralGrid. 2017-04-05 13:54:12 +02:00
Robert Kloefkorn 11f36de73e [bugfix] Use AutoDiffGrid in unspecialized version of ParallelDebugOutput. 2017-04-05 13:53:28 +02:00
Robert Kloefkorn 085df34183 [cleanup] Only iterate over grid once during getConvergence.
Resolved cherry-pick conflicts by @blattms.
2017-03-21 10:52:37 +01:00
Robert Kloefkorn 9e30d4b27c Revert PR 1070 to use auto instead of preprocessor statements. 2017-02-23 15:46:52 +01:00
Robert Kloefkorn 4c118c6455 Merge remote-tracking branch 'upstream/master' into PR/cleanup-output-writers 2017-02-13 21:28:54 +01:00
Robert Kloefkorn b18f07c1bd Address comments. 2017-02-13 16:11:24 +01:00
Robert Kloefkorn 82658c92d0 Removal of SimulatorFullyImplicitBlackoilOutputEbos.{h,c}pp.
All simulators now use SimulationDataContainer to store intermediate data that
is passed to the output Solution container. This is in cases not the most
efficient way, but it's unified to avoid errors from code duplication.
2017-02-09 16:57:45 +01:00
Robert Kloefkorn bf18ee7fb9 fix the merge fallout 2016-12-06 20:05:24 +01:00
Robert Kloefkorn 42ab4d133f [bugfix] add defunct_well_names to BlackoilModelEbos. 2016-12-02 11:13:06 +01:00
Robert Kloefkorn 2eca5d71e6 [bugfix] fix ownerMask for parallel FIP code. 2016-12-01 22:25:46 +01:00
Robert Kloefkorn c5ca9649d7 [bugfix] Make initialization work in parallel for flow_ebos. 2016-12-01 16:50:31 +01:00
Robert Kloefkorn 1c2a2c417c [bugfix] make flow_ebos work when no wells are present. 2016-12-01 16:50:28 +01:00
Robert Kloefkorn feea8c1753 Introduce parameter for time step in days when single precision should be used
in the linear solvers. Also, a parameter was introduced to toggle the use of AMG.
2016-11-21 17:18:24 +01:00
Robert Kloefkorn a2b2e6dd27 [cleanup][ParallelDebugOutput] remove unused variable and tabbing. 2016-11-21 11:26:08 +01:00
Robert Kloefkorn 5fce54fd44 [bugfix][ISTLSolver] make code compile with AMG when different matrix operator
is used.
2016-11-18 12:47:54 +01:00
Robert Kloefkorn 59f40ba14e [cleanup][WellModelMatrixAdapter] use only one implementation of the matrix
adapter to avoid confusion.
2016-11-18 12:47:54 +01:00
Robert Kloefkorn a0da20378c [bugfix][WellModelMatrixAdapter] fix applyscaleadd method. 2016-11-18 12:47:54 +01:00
Robert Kloefkorn 439a084508 [bugfix][BlockoilModelEbos] fix invalidation of intensive quantities after
linear solver failure.
2016-11-18 12:47:54 +01:00
Robert Kloefkorn 90247a02b2 [feature] make convergenceReduction work in parallel (needs testing). 2016-11-02 17:44:06 +01:00
Robert Kloefkorn 4ff23191eb [feature] make flow and flow_ebos use the same linear solver setup. 2016-11-02 16:41:11 +01:00
Robert Kloefkorn 01bb7ee4d7 [cleanup] only print first letter of phaseName in iteration output. 2016-11-02 11:25:43 +01:00
Robert Kloefkorn 11238b1997 [cleanup] Use class variables instead of creating new vectors inside the apply
method of StandardWellsDense.
2016-11-02 10:43:55 +01:00
Robert Kloefkorn 134bf914dc Merge branch 'frankenstein' into PR/remove-Eigen-from-BMEbos 2016-10-28 16:24:55 +02:00
Robert Kloefkorn 31724030c9 Merge branch 'frankenstein' into PR/remove-Eigen-from-BMEbos 2016-10-21 14:13:58 +02:00
Robert Kloefkorn c8374a4b95 [cleanup] Remove Eigen from BlackoilModelEbos. 2016-10-21 13:26:48 +02:00
Robert Kloefkorn a9663447c2 Avoid copying of matrices inside StandardWellsDense. 2016-09-13 23:07:38 +02:00
Robert Kloefkorn b092b2504c make code compile and run. 2016-08-26 11:54:59 +02:00
Robert Kloefkorn 3db63b0a22 add flow_ebos, an ebos based simulator
it uses ebos for linearization of the mass balance equations and the
current flow code from opm-simulators for all the rest. currently, the
results match the ones from plain `flow` for SPE1, SPE9 and Norne, but
performance is not optimal: on SPE9, converting from and to the legacy
data structures takes about a third of the time to do the actual mass
balance assembly. nevertheless `flow_ebos` is almost as fast as plain
`flow` for SPE9. (for Norne `flow_ebos` is about 15% slower, even
though the results match quite closely. the reason for this is that it
requires more iterations for some reason.)
2016-08-09 18:38:23 +02:00
Robert Kloefkorn 93386b44ed Merge remote-tracking branch 'upstream/master' into PR/flag-to-ignore-solverconv 2016-05-27 12:56:20 +02:00
Robert Kloefkorn 7dd76cc967 NewtonIterationBlackoilInterleaved: added flag to allow to ignore solver convergence
failure.
2016-05-27 12:55:46 +02:00
Robert Kloefkorn 42a76e3da6 SimulatorFullyImplicitBlackoilOutput: use HAVE_PTHREAD to enable async_output by
default.
2016-05-09 16:58:07 +02:00
Robert Kloefkorn da0e725eb8 BackupRestore: remove all specializations for BlackoilState. This is now covered by
SimulationDataContainer.
2016-04-15 12:21:47 +02:00
Robert Kloefkorn e80ad5a9fe Merge remote-tracking branch 'upstream/master' into PR/async-output 2016-04-08 13:07:44 +02:00
Robert Kloefkorn b3a313bfec ThreadHandle: added documentation and use std::unique_ptr to store object pointers. 2016-04-08 11:12:09 +02:00
Robert Kloefkorn ec45b5547d cleanup. 2016-04-06 15:39:57 +02:00
Robert Kloefkorn 7e6a6fb20a ThreadHandle: cleanup and docu. 2016-04-06 15:26:47 +02:00
Robert Kloefkorn 54ea243c5f SimulatorFullyImplicitBlackoilOutput: added threaded asynchronous output. 2016-04-06 11:10:01 +02:00
Robert Kloefkorn 8d11be71e0 SimulatorState --> SimulationDataContainer. 2016-03-30 11:01:34 +02:00
Robert Kloefkorn 9c67c0e135 Merge remote-tracking branch 'upstream/master' into PR/async-output 2016-03-30 10:45:40 +02:00
Robert Kloefkorn 5044a07e46 SimFullImplOutput: added future to ensure that write history is accounted for. 2016-03-29 15:22:33 +02:00
Robert Kloefkorn d5c375f297 SimulatorFullyImplicitOutput: added flag for async output. 2016-03-29 10:49:49 +02:00
Robert Kloefkorn 29053dc18d SimulFulImplBOOutput: asynchronous serial output. 2016-03-29 10:49:49 +02:00
Robert Kloefkorn 65d4127f4e SimulatorTimerInterface: include missing header for unique_ptr. 2016-03-29 10:42:03 +02:00
Robert Kloefkorn f9f13143a2 SimulatorTimers: added method clone to allow for copying of the objects. 2016-03-29 10:34:16 +02:00
Robert Kloefkorn 8b08be2b78 fastSparseAdd/Substruct: use operator += and -=. 2016-02-18 15:31:35 +01:00
Robert Kloefkorn ce04e22399 BackupRestore: bugfix due to mixup of size_t and unsigned int. 2016-02-18 15:30:52 +01:00
Robert Kloefkorn d001cac5b7 equalSparsityPattern: address nitpicks. 2016-02-17 15:59:34 +01:00
Robert Kloefkorn bc71458d44 AutoDiffMatrix: added braces in operator += and -=. 2016-02-17 14:24:55 +01:00
Robert Kloefkorn 75ffd897da AutoDiffBlock: revert changes in operator /.
equalSparsityPattern: also include outer index in check.
2016-02-16 17:18:04 +01:00
Robert Kloefkorn 23036e8096 Merge remote-tracking branch 'upstream/master' into PR/fast-sparse-add 2016-02-16 15:25:10 +01:00
Robert Kloefkorn 9661973387 Also check outer ptr. 2016-02-16 15:24:52 +01:00
Robert Kloefkorn 4df4c9147a fastSparseProduct.hpp --> fastSparseOperations.hpp 2016-02-16 10:25:57 +01:00
Robert Kloefkorn 743fad877a remove unused typedef. 2016-02-16 10:25:57 +01:00
Robert Kloefkorn 2eebf73e1a computeWellFlux: use operator -= when possible. 2016-02-16 10:25:57 +01:00
Robert Kloefkorn 98c49fd52f AutoDiffMatrix: use operator += to add matrices 2016-02-16 10:25:57 +01:00
Robert Kloefkorn fadf5528e3 squash 2016-02-16 10:25:56 +01:00
Robert Kloefkorn d5b6566e06 AutoDiffMatrix: use fastSparse{Add,Substract} when sparsisty patterns match. 2016-02-16 10:25:56 +01:00
Robert Kloefkorn 530c0fe57f MatrixBlock: cleanup invert implementation to be less confusing. 2016-02-12 12:17:01 +01:00
Robert Kloefkorn 3aa8ed200f NewtonBlackoilInterleaved: increase maximal allowed iteration to 75. 2016-02-12 12:14:02 +01:00
Robert Kloefkorn 37e49a62c8 BlackoilModelBase: use single precision for solver when dt < 20 days. 2016-02-12 12:14:02 +01:00
Robert Kloefkorn e3b578d685 NewtonIterationBlackoilInterleaved: single precision can be used whether UMFpack is
there or not.
2016-02-12 12:14:02 +01:00
Robert Kloefkorn 4111797822 BlackoilModelBase: added parameter singlePrecision and print residual to large at right
place.
2016-02-12 12:14:02 +01:00
Robert Kloefkorn 915177979c SimulatorBase: also show total time at each time step for performance comparison. 2016-02-12 12:14:02 +01:00
Robert Kloefkorn 82d508727f MatrixBlock: added function firstmatrixelement.
NewtonBlackoilInterleaved: some cleanup and variable naming.
2016-02-12 12:14:02 +01:00
Robert Kloefkorn 783f158c93 NewtonBlackoilInterleaved: anable the use of AMG preconditioner. 2016-02-12 12:14:02 +01:00
Robert Kloefkorn 31812bd2f9 NewtonBlackoilInterleaved: add solver option for single precision. 2016-02-12 12:14:02 +01:00
Robert Kloefkorn 37dc877074 CPRPreconditioner: extract creation of AMG into a function. 2016-02-12 12:14:02 +01:00
Robert Kloefkorn a000c5a0b1 DuneMatrix: adjust to changes in dune 3.0 2016-01-28 13:50:25 -07:00
Robert Kloefkorn ab12d95273 relativeChange: brackets for if statement. 2015-11-10 10:07:57 -07:00
Robert Kloefkorn ebf61ed1bd added docu. 2015-11-10 10:05:06 -07:00
Robert Kloefkorn 31aa0544e7 computeTimeError --> relativeChange. 2015-11-10 10:00:04 -07:00
Robert Kloefkorn d3af817ff2 timeError --> relativeChange. 2015-11-10 09:53:40 -07:00
Robert Kloefkorn 77f9977ca8 BlackOilModelBase: revision of adaptive time stepping such that time error is computed
by model.
2015-11-10 09:53:25 -07:00
Robert Kloefkorn 005a0c2930 AdaptiveTimeStepping: pass object to compute time error to time step control. This
allows us to shift the computation of the error to the physical model.
2015-11-10 09:45:07 -07:00
Robert Kloefkorn 9d5df94080 ParallelDebugOutput: remove warning and cleanup. 2015-10-28 19:03:37 +01:00
Robert Kloefkorn e30688fb85 ParallelDebugOutput: initialize wells with current report step number. 2015-10-28 19:03:37 +01:00
Robert Kloefkorn 4d121dccf4 NewtonIterationBlackoilInterleavedImpl: cleanup. 2015-10-09 13:39:02 +02:00
Robert Kloefkorn 476a09e0d6 NewtonIterationBlackoilInterleaved: print "...to cover np = 0" 2015-10-09 12:12:50 +02:00
Robert Kloefkorn ac034bd80e NewtonIterationBlackoilInterleaved: fix docu. 2015-10-09 12:06:29 +02:00
Robert Kloefkorn 885aedb1e8 NewtonIterationBlackoilInterleaved: make parameter a struct to avoid multi reading. 2015-10-09 12:03:58 +02:00
Robert Kloefkorn 28902065cf NewtonIterationBlackoilInterleavedImpl: silence warnings about unused and shadowed
variables.
2015-10-08 15:54:21 +02:00
Robert Kloefkorn d93a1a5b63 NewtonIterationBlackoilInterleaved: replace switch-case statement by proper template
recursion.
2015-10-08 15:54:21 +02:00
Robert Kloefkorn 884edadbd6 NewtonIterationBlackoilInterleaved: remove old docu. 2015-10-08 15:54:21 +02:00