Commit Graph

2801 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
e38b9ffcb7 Classify convergence failure as a "problem" not "error". 2016-10-20 22:36:20 +02:00
Atgeirr Flø Rasmussen
8e8b624d4c Ensure logging only on first rank. 2016-10-20 22:36:20 +02:00
Jørgen Kvalsvik
1057e6d3d0 Update to shared_ptr-less parser interface. 2016-10-20 10:14:41 +02:00
Atgeirr Flø Rasmussen
33872cfb4a Undo premature API change adaption. 2016-10-18 15:34:53 +02:00
Atgeirr Flø Rasmussen
f72832dbd6 Merge pull request #1085 from andlaus/opm-parser_units
consolidate the units code to opm-parser
2016-10-18 15:25:20 +02:00
Andreas Lauser
07707ecc30 consolidate the unit system to opm-parser
since the unit code within opm-parser is now a drop-in replacement,
this simplifies things and make them less error-prone.

unfortunately, this requires quite a few PRs. (most are pretty
trivial, though.)
2016-10-10 17:50:26 +02:00
Joakim Hove
5fdb868526 Header file moved in opm-output. 2016-10-06 14:23:47 +02:00
Jørgen Kvalsvik
29ba3465b4 Schedule::getGroup returns reference, not pointer 2016-10-05 15:24:14 +02:00
Markus Blatt
a44500623a Log the message of exceptions in the catch clause of adaptive time stepper. 2016-10-04 10:33:56 +02:00
Atgeirr Flø Rasmussen
22f7d1ec32 Merge pull request #1078 from andlaus/fix_initial_rs_and_rv
set the Rv and Rs factors to the saturated values for cells which have no gas and no oil
2016-09-30 14:40:06 +02:00
Atgeirr Flø Rasmussen
dda280fcf9 Merge pull request #1080 from akva2/units_constexpr
changed: generate unit type conversion constants on compile-time
2016-09-30 13:42:37 +02:00
Arne Morten Kvarving
04fe79aa23 changed: generate unit type conversion constants on compile-time
as a bonus it avoids unused variable warnings in compile
units only using parts of the conversion units.
2016-09-30 11:35:28 +02:00
Tor Harald Sandve
f202f2948c Add initalizer for adaptiveTimeStepper that uses values from TUNING
Some of the tuning values from the TUNING keywords is used to tune the
timestepping.
2016-09-30 10:36:30 +02:00
Atgeirr Flø Rasmussen
a6995fdf3e Merge pull request #1073 from blattms/only-write-substeps-in-adaptive-time-stepper
Only call writeTimeStep for real sub steps.
2016-09-29 17:48:12 +02:00
Atgeirr Flø Rasmussen
fe19c589c4 Merge pull request #1071 from totto82/moveBlackoilstate
Remove Compat.hpp
2016-09-29 17:32:57 +02:00
Arne Morten Kvarving
e8c3389b80 update petsc code
- api changes in newer versions
- do not manually destroy the preconditioner. this is, and has always
  been, owned by the ksp object and dies with its destruction.
2016-09-29 14:19:48 +02:00
Andreas Lauser
3647834b96 set the Rv and Rs factors to the saturated values for cells which have no gas and no oil
the purpose of this is to get a more defined behaviour when doing the
gravity correction/upstream cell determination in the flux term.

I consider this to be just a kludge, so if anyone has a better idea of
what the composition for the non-existing gas and oil phases is,
please tell me. (note that generic compositional models do not exhibit
this issue because the composition of all fluids is always fully
defined because each component is assumed to dissolve in every phase.)
2016-09-28 16:38:40 +02:00
Tor Harald Sandve
60da3d9213 Remove Compat.hpp
Compat.hpp is moved to opm-simulators
2016-09-27 08:39:26 +02:00
Markus Blatt
ac37eef547 Only call writeTimeStep for real sub steps.
Previously, we also called it when the full time step was done.
As the simulator writes that information anyway and we cannot call
it a sub step, we omit the final write in the adaptive time stepper.
2016-09-26 11:51:17 +02:00
Atgeirr Flø Rasmussen
08b90e8acd Merge pull request #1064 from totto82/hardcodedTimestepping
Timestepper based on user input
2016-09-26 08:53:36 +02:00
Atgeirr Flø Rasmussen
74e9925769 Avoid shadowing warning by using explicit scope. 2016-09-23 15:15:17 +02:00
Atgeirr Flø Rasmussen
cd75174650 Forward declare structs as same to avoid warning. 2016-09-23 15:14:36 +02:00
Tor Harald Sandve
ff81d48551 Guard against non-existing file 2016-09-21 13:46:31 +02:00
Markus Blatt
f426a03801 Zero initialize wells with no perforations.
For these wells access its well_cells might read of the bounds
an array if they are the last wells in the struct. Therefore
we cannnot initialiue first_cell and the well control is uninitialized,
to.

With this commit theses wells are now detected and theor bhp, thp, and well_rates
are initialized to zero.
2016-09-21 12:23:34 +02:00
Tor Harald Sandve
f1bdd67438 Small fixes hardcodedTimestepControl
-- avoid using eof()
-- add comments
-- no longer assumes two lines of comments.
-- revert change to default value for timestep.initial_step_length
-- make contructer explicit
-- pass reference
2016-09-21 09:39:36 +02:00
Tor Harald Sandve
6e9bb4cf0b Timestepper based on userInput
A new timestepper that reads timesteps from a file generated using
ecl_summary "DECK" TIME
and applies it to the simulator

Also a parameter timestep.initial_step_length (default 1 day) is added
to controll the frist timestep.
2016-09-21 09:39:36 +02:00
Anders Matheson
18a5c0b748 Remove unused parameter warning 2016-09-20 10:00:50 +02:00
Anders Matheson
4186a37563 Pass PhaseUsage to WellState::report 2016-09-20 09:41:20 +02:00
Atgeirr Flø Rasmussen
cf16b0affe Merge pull request #1062 from blattms/refactor-parallel-wellsmanager
Use provided set of deactivated wells in parallel.
2016-09-19 13:42:37 +02:00
Tor Harald Sandve
a1058d45ea use table.size() instead of read from deck. 2016-09-16 10:31:41 +02:00
Tor Harald Sandve
da29e292b5 Bugfix: Let NTMISC determine number of MISC tables
Number of misc tables is given by NTMISC (MISCNUM) and not NTSFUN
(SATNUM)
2016-09-16 10:31:41 +02:00
Markus Blatt
82822160af Use an unordered_set of string to identify defunct wells.
We do not rely on the order of the set and hope that the lookup
might be faster as it prevents string comparisons.
2016-09-13 10:55:15 +02:00
Markus Blatt
21de431eb1 Do exclude SHUT wells from lookup of deactivated wells.
This should be prevent some unnecessary find calls in the set.
2016-09-13 10:55:15 +02:00
Markus Blatt
c4f0539534 Revert "Use index according to eclipse schedule to identify deactivated wells."
This reverts commit 09205dfa074af24b381595d02c15e799523ddb2b.

We cannot use the index as it might change for a well between different
report steps. Unfortunately the only persistent way to identify wells
over all report steps in the schedule seems to be the well name.
2016-09-13 10:55:15 +02:00
Markus Blatt
05add1884f Use index according to eclipse schedule to identify deactivated wells. 2016-09-13 10:55:15 +02:00
Markus Blatt
17f93ce3bd Use provided set of deactivated wells in parallel.
Before this commit we tried to compute whether a well is represented on
the processor using the grid information. Due to the overlap region and
possible completion on deactivated cells of the global grid this is not
even possible. E.g. we cannot distinguish whether a completion is just
not represented on the domain of a process or the corresponding cell is
not active in the simulation.

With this commit we refactor to passing the well manager an explicit
list of name of wells that should be completely neglected. This information
can easily by computed after the loadbalancer has computed partitions.
2016-09-13 10:55:15 +02:00
Atgeirr Flø Rasmussen
474128fe2d Merge pull request #1060 from babrodtk/output_writer_celldata
Output writer cell data
2016-09-08 09:55:14 +02:00
Joakim Hove
19f6d540fc Merge pull request #1059 from joakim-hove/create-eclipsegrid
Create eclipsegrid
2016-09-07 11:11:10 +02:00
Joakim Hove
8666c8b687 UgGridHelpers::createEclipseGrid( )
- A new function createEclipsegrid has been added to the UgGridHelpers
  namespace.

- The UnstructuredGrid C structure has been augmented with a new member:
  double * zcorn which can be used to hold a copy of the zcorn
  value *after* minpv induced modifications.
2016-09-07 10:56:29 +02:00
babrodtk
466e721e0b Fixed warnings 2016-09-06 07:50:02 +02:00
Joakim Hove
b7bb01b77e shared_ptr<EclipseGrid> -> const EclipseGrid& 2016-09-03 17:49:46 +02:00
babrodtk
d71aceff0b Initial version for outputting cell data 2016-09-01 14:37:41 +02:00
Joakim Hove
9615f0e9d7 Using { .. } initialization. 2016-08-31 09:55:28 +02:00
Pål Grønås Drange
2a773b735e transmult and initconfig are ref's, use ref for EclipseState constructor 2016-08-08 10:02:53 +02:00
Andreas Lauser
d3ff659437 also keep track of the number of linearizations needed for the simulation 2016-08-02 14:05:14 +02:00
Atgeirr Flø Rasmussen
a6f08d13d5 Merge pull request #1052 from andlaus/pass_timer_instead_of_dt
pass the timer object instead of the time step size to the simulators
2016-08-02 11:05:33 +02:00
Bård Skaflestad
bc0977ec3d Merge pull request #1054 from qilicun/fix-output-well-iterations
Drop useage of std::numeric_limits
2016-07-22 00:47:23 +02:00
Andreas Lauser
25c4a8c156 fix incorrect derivative of rock compressibility w.r.t. pressure
since

f(x) = 1 + 0.5*g(x)*g(x)

the derivative is

f'(x) = 0 + 2*0.5*g(x) * g'(x) = g(x)*g'(x)

note that the previous incorrect values do not affect the quality of
the obtained results (if the tolerance of the non-linear solver is
chosen to be small enough), but it may have deteriorated convergence
rates.
2016-07-19 18:19:30 +02:00
Liu Ming
65c7a2c197 fix indentation. 2016-07-14 10:30:20 +08:00
Liu Ming
a792c29f00 drop useage of std::numeric_limits 2016-07-14 10:27:13 +08:00