Commit Graph

2374 Commits

Author SHA1 Message Date
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
Andreas Lauser
4d63a4b0ba BlackoilModelParameters: add the file name of the deck
this is needed by the ebos based model.
2016-08-09 12:23:29 +02:00
Andreas Lauser
4a66b4495b flow: move the internal classes to separate files
i.e., the contents of the Opm::details namespace, the IterationReport
and the DefaultBlackoilSolutionState classes. the purpose of this is
to share the code between the existing flow variants and flow_ebos.
2016-08-09 12:23:29 +02:00
Andreas Lauser
415bb25166 allow StandardWells.hpp to be included independently
i.e., without BlackoilModelBase.hpp.
2016-08-09 12:23:29 +02:00
Joakim Hove
0a4dfb6d69 Merge pull request #783 from pgdr/downstream-transmult-and-shared_ptrs
TransMult, Init, and SimConfig are references, applyModifierDeck take…
2016-08-09 09:33:18 +02:00
Atgeirr Flø Rasmussen
d6230f74d5 Merge pull request #784 from totto82/fix_ntg_minpv
BUGFIX. Use the modified NTG values in multiplyHalfIntersections_(..)
2016-08-09 08:29:39 +02:00
Tor Harald Sandve
b468d2baa1 BUGFIX. Use the modified NTG values in multiplyHalfIntersections_(..) 2016-08-08 13:22:02 +02:00
Pål Grønås Drange
bd58792714 TransMult, Init, and SimConfig are references, applyModifierDeck takes reference, and EclipseState constructor too 2016-08-08 10:07:09 +02:00
Atgeirr Flø Rasmussen
ac11db635c Merge pull request #778 from qilicun/polymer-well-iters
well iterations should start from 0.
2016-08-05 09:07:35 +02:00
Liu Ming
635c6b3986 well iterations should start from 0. 2016-08-04 10:54:31 +08:00
Liu Ming
6256199176 log the message to OpmLog. 2016-08-04 10:24:15 +08:00
Liu Ming
ec06eebc06 set polymer rates to the right well. 2016-08-04 10:22:49 +08:00
Atgeirr Flø Rasmussen
5581771917 Merge pull request #776 from qilicun/debug-polymer
fix polymer in flow bug.
2016-08-03 08:52:17 +02:00
Liu Ming
3e2907f4bd fix polymer in flow bug. 2016-08-03 11:10:37 +08:00
Andreas Lauser
bec3ce31fd distinguish between the number of non linear iterations and the number of linearizations
while the printed number of "Non linear iterations" was correct in a
strict sense, it was very confusing if one was working on the
linearization code because the last Newton iteration of each time step
was linearized but not solved for (and the solution was thus not
updated hence it does not count as a "non linear iteration"). This
makes sense for large problems were the total runtime is completely
dominated by the performance of the linear solver, but smaller
problems exhibit the opposite behavior (i.e., for them, runtime is
typically dominated by the linearization proceedure), so one is more
interested in the number of linearizations, not the number of linear
solves.
2016-08-02 12:14:10 +02:00
Atgeirr Flø Rasmussen
a084d36da6 Merge pull request #752 from andlaus/pass_timer_instead_of_dt
pass the simulation timer object instead of the time step size
2016-08-02 11:05:27 +02:00
Bård Skaflestad
01ec7befb4 Merge pull request #758 from qilicun/fix-wellIterations-bugs
fix well iterations counting bugs.
2016-07-20 11:20:28 +02:00
Liu Ming
3f4aa65180 add wellIterationsLast_. 2016-07-20 10:44:12 +08:00
Liu Ming
52d51e8565 remove wellIterationsLast_. 2016-07-18 09:02:30 +08:00
Liu Ming
b43cbe0531 drop useages of std::numeric_limits for counting well iterations. 2016-07-14 10:25:32 +08:00
Kai Bao
2f5045bb85 removing some white spaces in MissingFeatures 2016-07-13 09:16:18 +02:00
Liu Ming
6af9aee20f counting well iterations correctly. 2016-07-13 09:00:15 +08:00
Kai Bao
ab31ab470b removing two supported keywords from MissingFeatures. 2016-07-12 16:59:45 +02:00
Andreas Lauser
5410d97701 pass the simulation timer object instead of the time step size
models may need a more detailed picture of where they are in the
simulation. Note that since the timer objects are available at every
call site, this is also not a very deep change.
2016-07-12 15:55:12 +02:00
Liu Ming
bb0164f39f fix well iterations counting bugs. 2016-07-11 11:47:29 +08:00
Liu Ming
daf1eb9e74 use const reference instead of shared_prt. 2016-07-08 14:52:37 +08:00
Liu Ming
3f819e908d Merge remote-tracking branch 'opm/master' into missing-features-handle 2016-07-08 14:49:38 +08:00
Liu Ming
77fedce11e remove unused argument. 2016-07-08 08:19:03 +08:00
Liu Ming
c5fd3b2161 remove some keywords only related to parser. 2016-07-07 15:52:28 +08:00
Liu Ming
1b5b112031 call checkDeck() in FlowMain instead of checkKeywords(). 2016-07-07 15:38:03 +08:00
Liu Ming
3e01b42d55 use std::unordered_set. 2016-07-07 13:50:32 +08:00
Liu Ming
064f512893 Diagnostics keywords that not supported by flow. 2016-07-07 10:38:29 +08:00
Andreas Lauser
88519d70c4 adapt to the EclMaterialLawManager's rename of the *Pointer methods 2016-07-06 13:00:35 +02:00
Kai Bao
399298be21 using mapentry_t instead of iterator. 2016-07-05 15:28:02 +02:00
Kai Bao
a8c2626e5a fixing comments.
no functional change.
2016-07-05 13:02:28 +02:00
Kai Bao
4dad47f90d adding warning tags to all the WECON related warnings. 2016-07-05 13:02:28 +02:00
Kai Bao
ddec62288a fixing the warning messages. 2016-07-05 13:02:28 +02:00
Kai Bao
6a70450422 wrtiting state to report at the end of each time step
insead of writing in the begining of each time step.
2016-07-05 13:02:28 +02:00
Kai Bao
8e52e71993 changing shutted to shut. 2016-07-05 13:02:28 +02:00
Kai Bao
b2524a7dc3 making a forwarded updateListEconLimited in SimulatorBase.
and some changes to make the code compile for all the simulators.
2016-07-05 13:02:28 +02:00
Kai Bao
98a6495abc makeing wellModel public for flow_polymer and flow_solvent. 2016-07-05 13:02:27 +02:00
Kai Bao
cc957a77fe some well will go to stopped list and infomation output. 2016-07-05 13:02:27 +02:00
Kai Bao
e817719d48 When last connection is closed, the well is shut done. 2016-07-05 13:02:27 +02:00
Kai Bao
109b55f61c using OpmLog to give warning. 2016-07-05 13:02:27 +02:00
Kai Bao
41b9fca434 implementing checkRatioEconLimits 2016-07-05 13:02:27 +02:00
Kai Bao
9220a2bbaf refactoring updateListEconLimited based on new functions. 2016-07-05 13:02:27 +02:00
Kai Bao
dd59762c0b adding checkMaxWaterCutLimit to StandardWells. 2016-07-05 13:02:27 +02:00
Kai Bao
c77aa5af09 adding checkRateEconLimited to StandardWells
to check rate related to economic limits.
2016-07-05 13:02:27 +02:00
Kai Bao
d48399ac3a WIP for handling the water cut ecnomic limit 2016-07-05 13:02:27 +02:00
Kai Bao
a019460268 warning if requesting opening a new well after closing a well
it is not supported yet.
2016-07-05 13:02:27 +02:00