Commit Graph
318 Commits
Author SHA1 Message Date
Markus Blatt 98e11bf14e [bugfix] Use reasonable timestep if NEXTSTEP in ACTIONX is used.
The step size might still need to be smaller than suggested to not
simulate beyond the end of the current report step. To ensure this we
now use AdaptiveTimeSimulationTimer::provideTimeStepEstimate which
will limit it and also make sure that subsequent time steps will not
get to small either.
2024-03-22 14:25:09 +01:00
Arne Morten Kvarving acb066eac1 AdaptiveTimeStepping: rename ebosProblem to problem 2024-03-08 12:39:48 +01:00
Markus Blatt 2cd490b601 [Fix] Correct handling of NEXTSTEP in ACTIONX
Previously, the step size would only have used for the first time step
of the next report step (at least of --enable-tuning=true was used).
2024-03-05 13:59:24 +01:00
Arne Morten Kvarving def5c9cb24 AdaptiveTimeStepping: use {fmt} to format messages
std::to_string doesn't use generic format and thus small numbers
are truncated to 0.0000000
2024-02-29 11:58:26 +01:00
Markus Blatt cc9d9bab41 Merge pull request #5193 from akva2/move_timestepping_params
move ebos/ecltimesteppingparams.hh to opm/simulators/timestepping
2024-02-23 10:13:24 +01:00
Vegard Kippe b8b9a3810d Ensure NEXTSTEP is respected also withouth --enbale-tuning=true 2024-02-19 19:15:43 +01:00
Arne Morten Kvarving 846da295d6 move ebos/ecltimesteppingparams.hh to opm/simulators/timestepping 2024-02-19 09:28:50 +01:00
Atgeirr Flø Rasmussen 780f282ed8 Merge pull request #5174 from atgeirr/time-reporting-improvements
Time reporting improvements
2024-02-14 19:36:43 +01:00
Atgeirr Flø Rasmussen 346e37c218 Removing redundant report output and renaming. 2024-02-12 10:54:50 +01:00
Atgeirr Flø Rasmussen d78288a401 Minor improvements to timing report.
- Using the term Wasted instead of Failed.
 - Making all indents two spaces.
 - Allowing one more digit for linear solver timing output.
2024-02-09 14:50:21 +01:00
Arne Morten Kvarving 5e4c5e8174 BlackoilModel: rename ebosSimulator to simulator 2024-02-08 10:38:25 +01:00
Arne Morten Kvarving f4222a4f02 SimulatorReport.cpp: correct comment 2024-02-06 14:02:50 +01:00
Arne Morten Kvarving cbb8cb29f5 AdaptiveTimeSteppingEbos: rename to AdaptiveTimeStepping 2024-02-01 17:57:59 +01:00
Atgeirr Flø Rasmussen 04492413ff Move formatting utilities for convergence failures.
This makes them available for use in other places. The function
std::string to_string(const ConvergenceReport::WellFailure& wf) is new,
but uses the format already established.
2024-01-23 11:16:57 +01:00
Torbjørn Skille 72892f0c4b PRT file updates
* Arrays genarated from RPTSOL + FIP is now strictly following Eclipse format
* Adding reservoir volume array also for custom FIP regions
2024-01-03 21:47:54 +01:00
Arne Morten Kvarving 6f4ecd13d8 AdaptiveTimeSteppingEbos: remove unnecessary ScheduleState.hpp include 2024-01-02 10:18:36 +01:00
Markus Blatt 0cc839314e log problem if asked to continue with nonconverged nonlinear solver.
The user has explicitly asked for this behavior using
--solver-continue-on-convergence-failure=true in this rare case.
2023-11-08 17:16:21 +01:00
Arne Morten Kvarving 3c525aefae changed: put ecl time stepping parameters in separate struct
this to allow reuse in ebos simulators
2023-08-30 11:22:22 +02:00
Vegard Kippe f5c31588cb Quick fix.. 2023-08-25 14:01:51 +02:00
Arne Morten Kvarving 92fa9577da consistently use std::size_t 2023-08-15 09:32:10 +02:00
Markus Blatt f20716eaf3 Rename LinearTimeSteppingBreakdown to TimeSteppingBreakdown. 2023-07-25 15:10:07 +02:00
Markus Blatt fc9b1cccce Improve error message when time step is cut too often/much.
Changes
```
Program threw an exception: [/home/mblatt/src/dune/opm/opm-simulators/opm/simulators/timestepping/AdaptiveTimeSteppingEbos.hpp:586] Solver failed to converge after cutting timestep 11 times.
```
to
```
Simulation aborted: Solver failed to converge after cutting timestep 11 times.
```

Which seems more user friendly.
2023-07-12 16:18:29 +02:00
Atgeirr Flø Rasmussen cbfe25d0f0 Add NLDD nonlinear solver option. 2023-06-23 16:24:18 +02:00
Atgeirr Flø Rasmussen fb076a7acc Merge pull request #4508 from akva2/simulatorreport_avoid_nan
SimulatorReport: protect against division by zero
2023-03-03 11:55:42 +01:00
Arne Morten Kvarving 0cb69ffaa8 SimulatorReport: protect against division by zero 2023-03-03 10:39:57 +01:00
Atgeirr Flø Rasmussen c9ba0afea3 Silence warnings: struct/class, missing override. 2023-03-03 10:12:46 +01:00
Arne Morten Kvarving c4e025190e AdaptiveTimeSteppingEbos: put consistentlyFailingWells in detail namespace
no reason for this to be a template
2023-03-02 12:37:13 +01:00
Arne Morten Kvarving b232613623 AdaptiveTimeSteppingEbos: put logTimer in detail namespace 2023-03-02 12:37:13 +01:00
Arne Morten Kvarving ebd53ee72d move StepReport into ConvergenceReport.hpp
there is no reason for this to be typetag dependent
2023-03-02 12:37:13 +01:00
Kai Bao 460aa5027b not considering wells with wrong flow direction as converged
under THP constraint, well can get converged with wrong flow direction
(e.g. a producer is injecting), becasue we cut off the wrong flow
direction as zero rate in the VFP evaluation
2023-02-24 14:30:45 +01:00
Arne Morten Kvarving a21d59977d SimulatorReport: add serialization support 2023-02-16 11:56:40 +01:00
Arne Morten Kvarving f0ca3120ff SimulatorReportSingle: add serialization support 2023-02-16 11:56:40 +01:00
Atgeirr Flø Rasmussen 358d9997ee Fix a few warnings in recently added code. 2023-02-14 15:46:08 +01:00
Arne Morten Kvarving 13a54bbdbb AdaptiveTimeSteppingEbos: add serialization support 2023-02-13 22:03:58 +01:00
Arne Morten Kvarving 5f6bc76512 PIDAndIterationCountTimeStepControl: add serialization support 2023-02-13 22:03:19 +01:00
Arne Morten Kvarving 1827de96a2 PIDTimeStepControl: add serialization support 2023-02-13 22:03:19 +01:00
Arne Morten Kvarving 87bc1d8c10 HardcodedTimeStepControl: add serialization support 2023-02-13 22:03:19 +01:00
Arne Morten Kvarving bd538cf61d SimpleIterationCountTimeStepControl: add serialization support 2023-02-13 22:03:19 +01:00
Arne Morten Kvarving f2a14b2d07 SimulatorTimer: add serialization support 2023-02-13 18:01:16 +01:00
Arne Morten Kvarving 4786deeffc SimulatorTimer: include boost header instead of forwarding
drop the pointer usage which was used to enable forwarding
2023-02-13 17:59:35 +01:00
Arne Morten Kvarving 382fd73fca SimulatorReportSingle: pass argument as std::ostream
no reason for this to explicitly be an ostringstream
2023-02-09 11:35:27 +01:00
Arne Morten Kvarving cb3b50f4b7 SimulatorReportSingle: use in-class initializers
this way there are no explicit ctors, which again means
brace initialization works
2023-02-09 11:35:27 +01:00
Arne Morten Kvarving 1919f6ae54 std::string default construct to empty string 2023-02-08 15:26:39 +01:00
Arne Morten Kvarving 8beb8adfc6 replace typedef with using 2023-02-08 15:26:39 +01:00
Arne Morten Kvarving 02215964ae AdaptiveTimeSteppingEbos: add missing includes
and replace iostream with sstream which is actually in use
2023-02-08 15:26:39 +01:00
Kai Bao 899ab9b13d fix the running when solution does not change between time steps
The PID time step control will not pose any constraint on the time step
size by returning a largest possible time step size.
2023-02-02 22:36:43 +01:00
Arne Morten Kvarving 3745a4c02d clean up Units.hpp includes
include it where required instead of relying on other
headers to pull it in
2023-01-16 12:21:29 +01:00
Arne Morten Kvarving 1903a43971 AdaptiveSimulatorTimer: avoid <iostream> include in header 2023-01-03 15:25:20 +01:00
Arne Morten Kvarving 4abf4e6d38 TimeStepControl: avoid use of sstream 2023-01-02 15:23:48 +01:00
Arne Morten Kvarving 527280ab28 AdaptiveTimeSteppingEbos: avoid use of sstream 2023-01-02 15:23:34 +01:00