Commit Graph

2983 Commits

Author SHA1 Message Date
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
Andreas Lauser
ff899f3c53 pass the timer object instead of the time step size to the simulators 2016-07-05 12:23:55 +02:00
Kai Bao
6f8acf49f8 adding default constructor for DynamicListEconLimited 2016-07-04 16:21:55 +02:00
Kai Bao
1fc189065c adding a initialStep() function to SimulatorTimer
to indicate if the current step is the inital step.
2016-07-04 11:12:53 +02:00
Kai Bao
c58a0fce43 addressing comments.
no functional change.
2016-06-30 16:20:38 +02:00
Kai Bao
30bc54ba4a removing some commented lines. 2016-06-30 15:17:13 +02:00
Kai Bao
4b4492e877 adding stopped wells list to DynamicListEconLimited
when well is closed due to rate economic limits, based on the auto
shut-in configuration, the well can be STOP or SHUT.

When well is closed due to all the connections are closed, it should be
SHUT.
2016-06-30 14:41:14 +02:00
Kai Bao
a07f628469 handling connection closing in DynamicListEconLimited
due to econ limits.
2016-06-30 14:41:14 +02:00
Kai Bao
c7c38374ec adding list_econ_limited to setupWellControls 2016-06-30 14:41:14 +02:00
Kai Bao
bc1fb8e477 WIP in adding class DynamicListEconLimited
to handle the closed wells and connection dynamically based on the
economic limits provied by keyword WECON
2016-06-30 14:41:14 +02:00
Atgeirr Flø Rasmussen
9c6eeae068 Merge pull request #1045 from qilicun/time-messages-to-PRT-file
Change adaptive time stepping message type to OpmLog::note
2016-06-30 09:19:49 +02:00
Liu Ming
50573d1168 output well iterations if it is a valid number. 2016-06-30 09:03:30 +08:00
Liu Ming
2c25bb8262 Add space. 2016-06-28 15:26:06 +08:00
Liu Ming
745666468f output well iterations and non-linear iterations. 2016-06-28 13:40:32 +08:00
Markus Blatt
cd32e65632 Use NULL instead of 0 in null comparison. 2016-06-27 14:38:30 +02:00
Markus Blatt
7d97ef7e4a Make wells_equal work for only one null pointer. 2016-06-27 13:29:44 +02:00
Markus Blatt
f66f699fca Make wells_equal work for null wells.
This is needed to run test cases without wells with debugging on.
Without this commit we get segmentation fault in an assert statement.
2016-06-27 12:21:45 +02:00
Atgeirr Flø Rasmussen
2177aa745e Merge pull request #1027 from totto82/fix_2p_equil_init
Fix two phase equil initialization
2016-06-24 14:42:48 +02:00
Tor Harald Sandve
fd049a6962 Fixing some nitpicks 2016-06-24 13:36:05 +02:00
Liu Ming
afc9e4453a get current date time. 2016-06-21 11:25:05 +08:00
Liu Ming
49d5d4c79a mark time stepping messages type as OpmLog::note 2016-06-21 08:44:32 +08:00
Atgeirr Flø Rasmussen
bdebcf48a3 Merge pull request #1043 from pgdr/remove-return-type-warn
Remove warnings (by throwing), added copyright header
2016-06-20 22:34:40 +02:00
Pål Grønås Drange
06cd6c85f3 Using OPM_THROW to log messages, fixed Copyright headers 2016-06-20 17:20:33 +02:00
Joakim Hove
c686ec69d7 Merge pull request #1041 from jokva/removal-shared_ptr-well
WellPtr and GroupPtr deprecated
2016-06-20 14:57:10 +02:00
Pål Grønås Drange
4323b2f4fa Remove [-Wreturn-type] warnings (added throw), added copyright header 2016-06-20 14:13:29 +02:00
Tor Harald Sandve
db03e88090 Fix bug for OIL-GAS case
- Differentiate between active and canonical phase index
2016-06-20 11:14:36 +02:00
Tor Harald Sandve
bd9c514457 Fix reference pressure for oil-water problem
In opm-material the wetting phase is the reference phase for two-phase
problems i.e water for oil-water system, but for flow it is always oil.
Add oil capillary pressure value to shift the reference phase to oil
2016-06-20 10:36:24 +02:00
Tor Harald Sandve
4db70d1902 Fix two phase EQUIL initialization 2016-06-20 10:36:24 +02:00
Atgeirr Flø Rasmussen
d9c33cbcb6 Merge pull request #1039 from atgeirr/fix-compile-maxabs-unsigned
Avoid ambiguous calls to abs with unsigned integers.
2016-06-17 08:02:20 +02:00
Atgeirr Flø Rasmussen
f3f6170881 Merge pull request #1038 from qilicun/equil-check
Rise up a warning if equil region has no active cells.
2016-06-16 10:02:49 +02:00
Jørgen Kvalsvik
6e2099d293 WellPtr and GroupPtr deprecated
shared_ptr aliases are considered deprecated and has largely been
removed upstream (and replaced by raw pointers).
2016-06-16 09:33:43 +02:00
Atgeirr Flø Rasmussen
89cb2680a1 Make specialization for all unsigned integer types. 2016-06-16 08:47:21 +02:00
Bård Skaflestad
8f4d65a0c2 Merge pull request #1037 from atgeirr/add-phasepresence-ops
Add operator== and operator!= to PhasePresence.
2016-06-15 19:56:11 +02:00
Bård Skaflestad
6fdfcefaa0 Merge pull request #1040 from atgeirr/fix-linsolverfactory-default-solver
Set default solver depending on configuration.
2016-06-15 17:34:41 +02:00
Atgeirr Flø Rasmussen
15e12c89bf Merge pull request #1034 from qilicun/minor-format-change
Minor format changes
2016-06-15 15:10:57 +02:00
Atgeirr Flø Rasmussen
8f2e2c91b1 Merge pull request #1029 from blattms/make-ownermask-accessible
Make ParallelIstlInformation::ownerMask_ accessible.
2016-06-15 15:08:58 +02:00
Atgeirr Flø Rasmussen
8b2ebc690b Address review comments. 2016-06-15 15:01:45 +02:00
Atgeirr Flø Rasmussen
e6da69575a Set default solver depending on configuration. 2016-06-15 14:32:00 +02:00
Atgeirr Flø Rasmussen
291b13c2d4 Avoid ambiguous calls to abs with unsigned integers. 2016-06-15 10:55:42 +02:00
Liu Ming
34805c1bf7 it should be the same number in EQLNUM. 2016-06-15 16:53:51 +08:00
Liu Ming
a824ef9c22 use correct region number. 2016-06-15 16:52:32 +08:00
Liu Ming
cb82608779 Rise up a warning if equil region has no active cells. 2016-06-15 15:40:38 +08:00
Atgeirr Flø Rasmussen
b5dc48af0e Make new ops const. 2016-06-15 09:20:19 +02:00
Atgeirr Flø Rasmussen
fcb99e425d Add operator== and operator!= to PhasePresence.
This makes it simpler to write code debugging or inspecting changed phase configurations.
2016-06-15 08:57:20 +02:00
Liu Ming
d87afa29ab fix indentation issue. 2016-06-15 11:26:06 +08:00
Liu Ming
881ed8fc49 unify output. 2016-06-15 11:24:20 +08:00
Arne Morten Kvarving
ba255d89d3 Revert "Check for HAVE_UMFPACK in LinearSolverFactory"
This reverts commit f54c74db06.
2016-06-13 10:43:21 +02:00
Liu Ming
413e3fe381 add "\n" at the end of the message. 2016-06-13 13:55:01 +08:00
Liu Ming
6ae9c3104f minor format changes 2016-06-13 13:49:58 +08:00
Jørgen Kvalsvik
f54c74db06 Check for HAVE_UMFPACK in LinearSolverFactory
Check for the right preprocessor define to enable umfpack support.
Matches the directive set in config.h
2016-06-10 17:00:34 +02:00
Joakim Hove
d3aa0926c8 Merge pull request #1016 from jokva/refactor-output-restart
Breaking opm-core dependency in opm-output; new summary implementation
2016-06-10 13:15:34 +02:00
Markus Blatt
c94cdb0de8 Make ParallelIstlInformation::ownerMask_ accessible.
This is needed in opm-simulator to calculate the parallel euclidian
product of the saturations.
2016-06-08 11:02:13 +02:00
Atgeirr Flø Rasmussen
bb2a582aa8 Merge pull request #1028 from qilicun/format-message
Format message
2016-06-08 10:57:31 +02:00
Liu Ming
1db1b3d178 Output file name and line number. 2016-06-08 09:45:32 +02:00
Liu Ming
f948d9ea44 add a blank line. 2016-06-08 09:45:04 +02:00
Markus Blatt
324e60171c Added utilities to compute a real L-infinity norm in parallel. 2016-06-07 15:00:57 +02:00
Atgeirr Flø Rasmussen
681846686a Merge pull request #1024 from andlaus/lad_to_dad
rename some variables from "Lad" to "Eval" (was: to "Dad")
2016-06-07 11:43:42 +02:00
Andreas Lauser
20662fffb9 rename some variables from "*Lad" to "*Eval"
this was an involuntary omission in the "local AD" to "dense AD"
rename...
2016-06-07 11:14:11 +02:00
Tor Harald Sandve
ae9a10942e Fix to handle cases without DISGAS and VAPOIL
- adds boolean has_disgas and has_vapoil to initHydroCarbonState()
2016-06-07 08:18:09 +02:00
Andreas Lauser
42e5e41fa2 Merge pull request #1022 from andlaus/localad_to_densead
rename "local AD" to "dense AD"
2016-06-06 14:02:45 +02:00
Jørgen Kvalsvik
2ad419bd1a Make struct wells unique member of WellState 2016-06-06 12:42:54 +02:00
Jørgen Kvalsvik
392dc8557d 2 -> To 2016-06-06 12:41:48 +02:00
Jørgen Kvalsvik
c0b0b0d40a Newlines 2016-06-06 12:41:04 +02:00
Jørgen Kvalsvik
c6fc7f5e30 Braces. 2016-06-06 12:40:44 +02:00
Jørgen Kvalsvik
be0187d512 WellState::report() to make opm-output Well data 2016-06-06 12:40:44 +02:00
Liu Ming
408ea0845d paramemters output should go in Debug mode. 2016-06-06 11:57:05 +02:00
Andreas Lauser
2d2f86f089 rename "local AD" to "dense AD" 2016-06-03 21:57:48 +02:00
Jørgen Kvalsvik
8f3829bb76 utility/Compat
Introduces some helper functions to quickly enable support for the new
opm-output implementation. Conversion from simulator oriented cell- and
well representation to opm-output defined representation.
2016-05-30 14:24:25 +02:00
Atgeirr Flø Rasmussen
ef2125f39e Merge pull request #1019 from qilicun/log-more-messages
Write more messages into OpmLog.
2016-05-26 11:20:49 +02:00
Liu Ming
94ee69505a make toString() method as static. 2016-05-24 09:07:28 +08:00
Liu Ming
7eba8b01f5 fix strange indentation. 2016-05-23 10:55:36 +08:00
Liu Ming
eab67baa3b simplify the implementation. 2016-05-23 10:48:51 +08:00
Liu Ming
97eeee516d fix indentation and messages. 2016-05-23 10:47:26 +08:00
Liu Ming
341472456a write well related information into OpmLog. 2016-05-20 16:14:16 +08:00
Liu Ming
b7f7352b6d Add enum to string functions. 2016-05-20 16:13:37 +08:00
Atgeirr Flø Rasmussen
537c4dd730 Merge pull request #1010 from qilicun/log_timer_messages
Log timer messages
2016-05-20 08:39:14 +02:00
Liu Ming
d06b515c47 write the parameters information into OpmLog. 2016-05-20 14:30:43 +08:00
Liu Ming
f55d216561 log the warning messages to OpmLog. 2016-05-20 14:27:38 +08:00
Liu Ming
a44ab90759 Cleanup the prefix. 2016-05-20 08:54:12 +08:00
Atgeirr Flø Rasmussen
2a43e9631f Merge pull request #1011 from qilicun/format-output-relperm-diagnostics
Unify output messages format.
2016-05-19 15:06:52 +02:00
Liu Ming
b3db61bf7e remove the prefix from raw string, using OpmLog format. 2016-05-19 10:07:36 +08:00
Liu Ming
3028e819c6 remove internal counter. 2016-05-19 09:47:57 +08:00
Liu Ming
b25a964597 remove internal messages container. 2016-05-19 09:28:34 +08:00
Liu Ming
98a413bf5c use tag for terminal output control. 2016-05-19 09:22:03 +08:00
Liu Ming
d660dea73b add missing braces. 2016-05-16 09:04:54 +08:00
Tor Harald Sandve
79f04b6c9e Fixing PR comments
- Use std::vector<HydroCarbonState> instead of std::vector<int>
- Use the initializer list to initialize members in constructors
- Fix indent
- Return OilOnly for cases without gas to avoid potential trouble
further down the line
2016-05-13 12:49:45 +02:00
Tor Harald Sandve
cb4b698b51 Add method for calculating the initial hydroCarbonState
The following hydroCarbonState are used
    enum HydroCarbonState {
        GasOnly = 0,
        GasAndOil = 1,
        OilOnly = 2
    };
Cells almost filled with water are treated as a GasAndOil state
2016-05-13 09:10:13 +02:00
Tor Harald Sandve
31133af803 Add member hydroCarbonState to the BlackoilState
The hydroCarbonState is used to store the hydroCarbonState
  State 1: Gas only
  State 2: Gas and Oil
  State 3: Oil only
An empty vector is return at initialization as
no default values are provided by the blackoilstate.
2016-05-12 10:32:39 +02:00
Liu Ming
dd510244f8 unify the format. 2016-05-10 14:52:13 +08:00
Liu Ming
da70ab4e84 use OpmLog only for error messages. 2016-05-10 14:13:33 +08:00
Liu Ming
9f90e6cc3f output timer messages for terminal and log file. 2016-05-09 13:31:04 +08:00
Liu Ming
684614fe77 use ostream not std::cout directly. 2016-05-09 13:30:28 +08:00
Markus Blatt
e7a0b60b1c Prevent dereferencing the end iterator.
This happened for empty regions and surfaced when compiling
with "-D_GLIBCXX_DEBUG  -DDEBUG -DGLIBCXX_FORCE_NEW".
2016-05-06 21:40:33 +02:00
babrodtk
131e900cf3 Code cleanup 2016-04-26 07:48:58 +02:00
babrodtk
c8d5174113 Runs first iterations of two-phase test case plausibly 2016-04-26 07:48:58 +02:00
babrodtk
404929fe34 Checkpoint 2016-04-26 07:48:58 +02:00
Pål Grønås Drange
973438128c Using getInputGrid API from Parser, changed GridManager to no longer accept Deck in constructor 2016-04-20 08:51:10 +02:00
Andreas Lauser
145d61d751 adapt code w.r.t. the removal of the tags for Opm::Evaluation 2016-04-15 18:48:47 +02:00
Tor Harald Sandve
e76b9dd7f1 BUGFIX. Comparison with null pointer 2016-04-15 12:56:04 +02:00
Atgeirr Flø Rasmussen
165b17564d Merge pull request #997 from totto82/Fix_guiderates
Bugfix in setup guiderates
2016-04-15 08:46:17 +02:00
Atgeirr Flø Rasmussen
78a927c859 Update CMake list with deleted files. 2016-04-14 11:29:17 +02:00
jokva
eacbd4f214 Merge pull request #994 from pgdr/use-eclipse3dproperties
@bska We're merging as-is for now, and we've made a note to replace `shared_ptr` and maintain (and document!) this property. Those changes will obviously be internal and you won't notice a difference.
2016-04-13 11:01:43 +02:00
Tor Harald Sandve
acade0bb5f Bugfix in setup guiderates
- Handle shut wells
- Use the groups control type to determine which phase to calculate
the guide rates from. i.e for a ORAT controlled group, calculate the
guide rates from the oil phase well potentials etc.
2016-04-12 13:05:56 +02:00
Pål Grønås Drange
284f3702a2 Using API get3DProperties() 2016-04-11 15:23:35 +02:00
Pål Grønås Drange
fee514375d Using API get3DProperties() 2016-04-11 15:13:38 +02:00
Pål Grønås Drange
1e0356d392 This commit introduces non-trivial changes as GridProperty no longer is stored as a shared pointer. This file needs a thorough read-through, and it would be nice with some documentation. 2016-04-08 16:41:41 +02:00
Pål Grønås Drange
8a7bf1ef3c Updated opm-core to use new EclipseState API in opm-parser 2016-04-08 16:30:01 +02:00
Atgeirr Flø Rasmussen
90e9374a2b Renoved SimulatorOutput class from this module. 2016-04-07 15:41:40 +02:00
Atgeirr Flø Rasmussen
b5cbf0ea2d Rename HAVE_DUNE_CORNERPOINT -> HAVE_OPM_GRID.
Note that this is quite strange since opm-core is upstream and not downstream
from opm-grid. However, when this file is used from opm-autodiff the macro is used.
2016-04-05 15:14:02 +02:00
Atgeirr Flø Rasmussen
2b9b1f8b05 Merge pull request #987 from qilicun/refactor-relpermDiagnostics
Refactor relperm diagnostics using OpmLog functionalities.
2016-04-04 15:04:44 +02:00
Tor Harald Sandve
e1298ff21b Minor fixes based on PR comments
- fix comments, typos add missing reference arguments.
2016-04-04 08:10:24 +02:00
Liu Ming
5e6e4b2a38 mistake: count warning as error. 2016-04-02 11:53:36 +08:00
Liu Ming
53485a7ae7 do not write error summary twice. 2016-04-02 11:45:18 +08:00
Tor Harald Sandve
0fb81945f6 Calculate default guide rates using the well potentials
The default guide rates are caculated using the well potentials.
The well potentials are calculated in the simulator and given as input
to the wellsManager.
2016-04-01 15:00:21 +02:00
Liu Ming
88d41057c0 refactor relperm diagnostics using OpmLog functions. 2016-04-01 12:27:03 +08:00
Atgeirr Flø Rasmussen
09c31b67ca Merge pull request #984 from totto82/bugfix_groupcontrol
BUGFIX. Call setupGuideRates before groupcontrol is applied
2016-03-31 13:28:08 +02:00
Tor Harald Sandve
b8bad8b26b BUGFIX. Call setupGuideRates before groupcontrol is applied 2016-03-31 09:32:09 +02:00
Kjell W. Kongsvik
77a6c4229a Replace comment with "ifdef DISABLE_OUTPUT" 2016-03-29 14:57:58 +02:00
Kjell W. Kongsvik
8e68a4d815 Deleted all files in opm/core/io
This removes OutputWriter and eclipse, vtk, vag as this
functionality has moved to opm-output.
2016-03-29 14:57:58 +02:00
Kjell W. Kongsvik
03d5a5ba25 Commented out usage of OutputWriter in simulator 2016-03-29 14:56:25 +02:00
Joakim Hove
ce6cdb4a47 Merge pull request #962 from joakim-hove/remove-simulator-state
Replaced SimulatorState -> SimulationDatacontainer
2016-03-29 13:16:19 +02:00
Atgeirr Flø Rasmussen
e4929b7263 Implement direct fast field access. 2016-03-29 10:46:14 +02:00
Joakim Hove
c360079926 Replaced SimulatorState -> SimulationDatacontainer
Have removed the SimulatorState base class, and instead replaced with
the SimulationDatacontainer class from opm-common. The SimulatorState
objects were typcially created with a default constructor, and then
explicitly initialized with a SimulatorState::init() method. For the
SimulationDataContainer RAII is employed; the init( ) has been removed -
and there is no default constructor.
2016-03-29 10:44:49 +02:00
Robert Kloefkorn
3f63d09f86 SimulatorTimerInterface: include missing header for unique_ptr. 2016-03-29 10:42:03 +02:00
Robert Kloefkorn
a2d64e681e SimulatorTimers: added method clone to allow for copying of the objects. 2016-03-29 10:34:16 +02:00
Joakim Hove
fcd4368da4 Merge pull request #979 from jokva/missing-cassert-include
Add missing <cassert> include
2016-03-25 07:36:28 +01:00
Jørgen Kvalsvik
4f857b71fc Add missing <cassert> include 2016-03-18 15:40:57 +01:00
chflo
755873f5cc Changed include due to OpmLog changed path 2016-03-17 15:59:50 +01:00
Liu Ming
d943cbfe2a rename ParseMode as ParseContext. 2016-03-17 08:56:38 +08:00
Joakim Hove
2ca569d2e4 Merge pull request #973 from andlaus/fix_PERMXYZ
Fix PERM[XYZ] output
2016-03-16 11:28:22 +01:00
Andreas Lauser
31aac3481d EclipseWriter: deal with the concept of active cells for PERM[XYZ]
... and also with grids that reorder their cell indices.
2016-03-14 18:03:41 +01:00
Liu Ming
897aa67b89 use two slashes for comments inside functions. 2016-03-11 17:19:39 +08:00
Liu Ming
26e18bdcc4 use error variable. 2016-03-11 17:15:32 +08:00
Liu Ming
aa32349f19 fix saturation family bug. 2016-03-11 17:13:40 +08:00
Liu Ming
eafa6e2d9a fix indentation and fluid system issues. 2016-03-11 17:03:31 +08:00
Liu Ming
47fefe9e3a Merge remote branch 'remotes/opm/master' into solvent-diagnostics 2016-03-10 14:38:22 +08:00
Liu Ming
b7972eb01c Add solvent saturation functions support. 2016-03-10 14:32:43 +08:00
Liu Ming
95d65222fa Add solvent to fluid system. 2016-03-10 11:17:18 +08:00
Andreas Lauser
c635d84d37 threshold pressures: consider the saturated case and fix a typo
the typo was caused the surface density of the oil phase to be used
instead of the one of gas. This caused the density to be off by a
factor of typically about 900.

using saturated FVFs does not change much, but it does not hurt
because it is also done that way in the simulator.

This makes the defaults for the threshold pressures reasonable again,
but for some reason they are not exactly the same as in the old
implementation. (although the differences are very tolerable.)

On the question why only "Model 2" is affected by this: the other
decks don't use threshold pressures (SPE-X) or do not default any
values (Norne).
2016-03-08 14:52:09 +01:00
Andreas Lauser
dfda345661 BlackoilPropertiesFromDeck: properly calculate the Rs and Rv values for viscosity
the dissolution factors used for the viscosities were always zero so
far. this was not discovered earlier because flow is completely
unaffected by this since the only place where this class is used in
flow is the equilibration code and the equilibration code does not
need phase viscosities.

thanks to @atgeirr for finding this.
2016-03-08 11:07:20 +01:00
Andreas Lauser
23088f987f replace the blackoil PVT classes by the ones of opm-material
the opm-material classes are the ones which are now used by
opm-autodiff and this patch makes it much easier to keep the opm-core
and opm-autodiff results consistent. Also, the opm-material classes
seem to be a bit faster than the opm-core ones (see
https://github.com/OPM/opm-autodiff/pull/576)

I ran the usual array of tests with `flow`: SPE1, SPE3, SPE9 and Norne
all produce the same results at the identical runtime (modulo noise)
and also "Model 2" seems to work.
2016-03-05 19:11:44 +01:00
Joakim Hove
0c05fc4dc0 Merge pull request #966 from jokva/initconfig-equil
Remove Equil + EquilWrapper, replace with upstream
2016-03-04 18:18:57 +01:00
Atgeirr Flø Rasmussen
eb0f59f96d Merge pull request #965 from atgeirr/remove-unused-parameter
Remove unused 'restart' parameter from SimulatorTimer::init().
2016-03-04 11:22:01 +01:00
Atgeirr Flø Rasmussen
2a4ca8a34e Only .cpp files should include config.h. 2016-03-04 09:10:19 +01:00
Atgeirr Flø Rasmussen
54ac4bd5e4 Include template implementation file. 2016-03-04 09:09:52 +01:00
Liu Ming
58f53cae2a make grid as template parameter. 2016-03-04 09:09:38 +08:00
Jørgen Kvalsvik
27a240ae7f Remove Equil + EquilWrapper, replace with upstream
Upstream (opm-parser) now provides a better Equil + EquilRecord, and
simultaneously deprecated EquilWrapper. This patch fixes the resulting
breakage.

One important note: The new Equil does not expose integers for live
oil/wet gas initialization procedure methods, but rather booleans
through constRs/constRv methods. This is how the variable behaves
according to the Eclipse reference manual (EQUIL keyword section).

Code has been updated to reflect this.
2016-03-01 09:59:54 +01:00
Atgeirr Flø Rasmussen
5c2257cafa Remove unused 'restart' parameter from SimulatorTimer::init(). 2016-02-29 11:03:08 +01:00
Atgeirr Flø Rasmussen
01df431198 Silence sign comparison warning. 2016-02-29 10:58:43 +01:00
Jørgen Kvalsvik
82472a1dfd Add missing opm-parser headers
opm-parser pull #695
https://github.com/OPM/opm-parser/pull/695
2016-02-26 11:49:40 +01:00
Joakim Hove
df6e6a2347 Replaced TwoPhaseState -> SimulatorState 2016-02-22 22:03:43 +01:00
Joakim Hove
6ca10ea57d Added SimulatorState::getCellData() 2016-02-22 22:03:42 +01:00
Joakim Hove
6c5fae2f9d Added free function initSaturation().
The state argument is of type SimulatorState& - and no longer a template
parameter.
2016-02-22 22:03:41 +01:00
Joakim Hove
a214c10595 Changes in SimulatorState:
1. Added method setCellDataComponent()
 2. Removed setFirstSat()

Implemented saturation initialisation using setCellDataComponent()
instead of setFirstSat(). This way the template<class Props> has been
removed from the SimulatorState class.
2016-02-22 08:42:04 +01:00
Andreas Lauser
377b844862 fix build breakage of the unit tests due to OPM/opm-parser#687
While the patch is quite trivial (some forgotten 'const'), the havoc
was caused because I usually configure my modules with --disable-tests
(to get much better turn-around times when switching all modules from
debug to optimization flags) and the usual way to force them to
compile ('make test-suite') does not work for opm-core...
2016-02-21 17:35:33 +01:00
Andreas Lauser
c709e347c3 fix some recent deprecation warnings
these are caused by OPM/opm-parser#687. While they are harmless, they
are certainly annoying. (that's their point!)
2016-02-21 17:29:43 +01:00
Atgeirr Flø Rasmussen
be1ea358ff Merge pull request #953 from andlaus/const_gridproperties
fix the build
2016-02-19 11:46:32 +01:00
Atgeirr Flø Rasmussen
0297d6c657 Merge pull request #957 from joakim-hove/cmp-template
Using template for cmp::vector_equal()
2016-02-19 11:41:07 +01:00
Joakim Hove
58f355935f Using template for cmp::vector_equal() 2016-02-19 07:57:02 +01:00
Jørgen Kvalsvik
b8edc8b5b4 Change Deck access methods/types to references
opm-parser#677 changes the return types for the Deck family of classes.
This patch fixes all broken code from that patch set.

https://github.com/OPM/opm-parser/pull/677
2016-02-18 08:50:26 +01:00
Joakim Hove
1661ac8f58 Merge pull request #956 from jokva/remove-unused-wrapper
Remove unused Wrapper includes from Deck/Utility
2016-02-17 17:10:43 +01:00
Jørgen Kvalsvik
62d7c7bed2 Remove unused Wrapper includes from Deck/Utility 2016-02-17 14:46:15 +01:00
Atgeirr Flø Rasmussen
dc918fcff9 Merge pull request #947 from andlaus/fix_wet_gas_pvt_extrapolation
PvtLiveGas: do not special case in the extrapolation code
2016-02-16 12:44:53 +01:00
Andreas Lauser
8f0d81db2f fix the build
it broke because EclipseState::get*GridProperty() now returns a
pointer to a constant object.
2016-02-15 15:06:05 +01:00
Joakim Hove
5172652e73 Removed opm_memcmp_double() - use cmp from common. 2016-02-14 21:41:51 +01:00
Joakim Hove
9b1efd7810 Revert: Removed unused SimulatorState comparison.
This reverts commit 5ce1d84ac1.
2016-02-04 18:39:40 +01:00
Joakim Hove
b241fde63c Revert: Removed unused SimulatorState::setFirstSat 2016-02-04 18:39:39 +01:00
Joakim Hove
4e46bb3fa4 Merge pull request #948 from joakim-hove/simulatorstate-remove-unused
Simulatorstate remove unused
2016-02-04 15:57:59 +01:00
Joakim Hove
5ce1d84ac1 Removed unused SimulatorState comparison. 2016-02-03 05:54:24 +01:00
Joakim Hove
df0d11b8de Removed unused SimulatorState::setFirstSat() 2016-02-03 05:51:05 +01:00
Andreas Lauser
e6c89a595b PvtLiveGas: do not special case in the extrapolation code
at least, don't special case that much. This caused a discrepancy with
the opm-material PVT relations for Norne after 23 report steps. (which
takes an hour or two to get to with debugging options on my machine.)
As you can probably imagine, finding this was *a lot* of fun...
2016-01-28 14:42:10 +01:00
Bård Skaflestad
6365167109 Merge pull request #946 from jokva/clean-up-header
Improve includes from opm-parser
2016-01-26 15:58:25 +01:00
Bård Skaflestad
d738138afa Merge pull request #943 from qilicun/update_relperm_diagnostics
Update relperm diagnostics
2016-01-26 15:12:28 +01:00
Jørgen Kvalsvik
697763a4b9 Improve includes from opm-parser
Adopting to opm-parser PR#661, add previously missing includes.

https://github.com/OPM/opm-parser/pull/661
2016-01-26 13:30:58 +01:00
Joakim Hove
ba1c06d415 Removed SimulatorState::init( UnstructureGrid& ) 2016-01-25 07:30:03 +01:00
Liu Ming
10baa52828 Omit some usages of to_string function. 2016-01-25 11:18:56 +08:00
Liu Ming
9e9287f20d change headline to saturation functions diagnostics. 2016-01-25 11:00:23 +08:00
Liu Ming
039f9ce1cc Format output and add SATNUM for scaled saturation endpoints. 2016-01-25 10:58:50 +08:00
Liu Ming
229282c310 fix bugs: counter warning as error. 2016-01-25 09:38:55 +08:00
Liu Ming
009f1b101b Merge remote branch 'remotes/opm/master' into update_relperm_diagnostics
Conflicts:
	opm/core/props/satfunc/RelpermDiagnostics.cpp
2016-01-22 13:04:01 +08:00
Jørgen Kvalsvik
c7349b5586 Fixes includes wrt opm-parser PR-656
Several files stopped compiling due to relying on opm-parser headers
doing includes. From opm-parser PR-656
https://github.com/OPM/opm-parser/pull/656 this assumption is no longer
valid.
2016-01-21 09:42:51 +01:00
Liu Ming
8e397ef7ce fix typo. 2016-01-21 16:10:31 +08:00
Liu Ming
ce0ec1e466 remove comments. 2016-01-21 14:04:01 +08:00
Liu Ming
dd9b607c99 make const as more as possible 2016-01-21 14:01:02 +08:00
Liu Ming
743f17169d saturation region should start with 1. 2016-01-21 13:47:57 +08:00
Liu Ming
c02c93ce1b fix formatting and grammar issues. 2016-01-21 13:45:32 +08:00
Liu Ming
2f2bd8a955 Add region number for output and output summary msg to streamLog 2016-01-18 11:10:51 +08:00
Liu Ming
682d0a7d1f change error to warning due to eclipse manual. 2016-01-18 11:10:36 +08:00
Liu Ming
3bce4e72b9 Add region number for unscaled endpoints. 2016-01-18 11:10:26 +08:00
Liu Ming
5e234fcd21 1. use scaled_messages_ to store scaled endpoints infor.
2. format the terminal output messages.
2016-01-18 11:10:14 +08:00
Liu Ming
1f809cf3d5 Add counter for numbering warning, error, proble, and bugs. 2016-01-18 11:10:04 +08:00
Liu Ming
3e143907d3 For that break clipse rules should raise an error. 2016-01-18 11:09:50 +08:00
Liu Ming
f38fe6d91b add cell index for scaled endpoints error messages output. 2016-01-18 11:09:02 +08:00
dr-robertk
b26eb3827f Merge pull request #937 from chflo/OPM_251_support_restart
OPM-251: Prepare for restart
2016-01-15 14:44:06 -07:00
Joakim Hove
a35520a65d Merge pull request #939 from joakim-hove/table-column
Table column
2016-01-08 15:29:10 +01:00
Joakim Hove
a6deb02d04 Changed to use new table api from opm-parser. 2016-01-08 14:47:09 +01:00
chflo
ca60041332 OPM-163: Use EclipseState instead of Deck for PvtInterface 2016-01-07 16:36:28 +01:00
Joakim Hove
a566ac608d Added TableColumn based overloads. 2016-01-06 09:19:47 +01:00
chflo
c003900145 OPM-251: Support for restart 2016-01-04 16:11:21 +01:00
Atgeirr Flø Rasmussen
125c27462d Merge pull request #928 from totto82/minpv_pinch
compatibility of MINPV and PINCH
2015-12-14 11:33:20 +01:00
Tor Harald Sandve
8827ca0794 Bugfix. Fix face direction in the pinchprocessor 2015-12-14 10:48:26 +01:00
Atgeirr Flø Rasmussen
cc07dc80b7 Merge pull request #934 from totto82/residualSaturations
Add method to access the materialLawManager
2015-12-11 13:08:39 +01:00
Tor Harald Sandve
7689f80a7f Add method to access the materialLawManager 2015-12-11 12:50:54 +01:00
Liu Ming
8605675199 make the constructor as explicit. 2015-12-09 16:51:07 +08:00
Tor Harald Sandve
43abdf5946 Adapt to changes in the NNC class 2015-12-08 13:03:15 +01:00
Tor Harald Sandve
c208d32498 BUGfix. Use correct facedirection 2015-12-08 12:57:43 +01:00
Tor Harald Sandve
7e4bff4a18 Hardcode usage of opmfil
The opmfil option in the minpv-processor will be used regardless of
OPMFIL input in the deck.
2015-12-08 11:04:54 +01:00
Tor Harald Sandve
3d7ce4ece2 Cleanup after rebase
- cleanup of some rebase mess
- Added comments
- Use the maxDp for the NNCs
- remove misplaced break in the pinchprocessor
2015-12-08 09:50:07 +01:00
Tor Harald Sandve
b8f54e4e59 Ignore segments with no active cells above or below. 2015-12-08 09:25:35 +01:00
Tor Harald Sandve
a7c1810029 Calculate thresholdPressures for the NNCs 2015-12-08 09:25:35 +01:00
Tor Harald Sandve
97466d988b Fix to account for the combination of minpv and pinch 2015-12-08 09:21:51 +01:00
Tor Harald Sandve
dec23df301 Add option for not including the removed volume in the MinpvProcessor
The volume in cells with pore volume less than the minpv threshold is
removed if minpvMode is ECLStd while it is added to the underlying cell
if minpvMode is OpmFil
2015-12-08 09:21:51 +01:00
Liu Ming
ef203a1d04 Merge remote branch 'remotes/opm/master' into relpermDiagnostics
Conflicts:
	CMakeLists_files.cmake
2015-12-08 16:08:02 +08:00
Liu Ming
252af19e4b Use OpmLog to output messages.
return messages and opmLog.
2015-12-02 10:58:06 +08:00
Atgeirr Flø Rasmussen
fc20fe5be9 Silence some warnings. 2015-12-01 13:36:08 +01:00
Liu Ming
780292875a remove unused functions and comments, add documentations to diagnosis(). 2015-11-30 10:52:34 +08:00
Liu Ming
91e14bec36 1. remove eclState from phaseCheck_ function.
2. rename messager_ to messages_.
3. change 0 and 1 to 0.0 and 1.0
4. change unsigned to int.
2015-11-30 10:42:57 +08:00
Liu Ming
544c7c24f9 reorder function and make more whitespace. 2015-11-30 10:26:59 +08:00
Liu Ming
5cfc3961db make enum as private members. 2015-11-30 10:20:43 +08:00