Commit Graph

528 Commits

Author SHA1 Message Date
Kai Bao
b4f4878901 fixing the errors from rebasing. 2016-05-23 15:11:51 +02:00
Joakim Hove
3729f91b6d Some checks for file open and file has keyword.
Using type 'const char*' instead of auto to guarantee C
interoperability.
2016-05-19 10:02:28 +02:00
Liu Ming
8564c7b6e9 remove internal counter. 2016-05-19 09:47:57 +08:00
Kai Bao
f5fcbb03b5 adding test_multisegmentwells 2016-05-09 10:33:53 +02:00
Pål Grønås Drange
75936c1d9c Using getInputGrid API from Parser, changed GridManager to no longer accept Deck in constructor 2016-04-20 08:51:10 +02:00
Pål Grønås Drange
18f6672df0 Using getInputGrid API from Parser 2016-04-19 17:03:41 +02:00
Pål Grønås Drange
dcd45ba397 Fixed major indentation issue---whole file indented arbitrarily 2016-04-19 15:20:34 +02:00
Atgeirr Flø Rasmussen
486633fded Merge pull request #997 from totto82/Fix_guiderates
Bugfix in setup guiderates
2016-04-15 08:46:17 +02:00
Tor Harald Sandve
db7135d7bf Add COMPDAT to wells_group.data
Without COMPDAT the wells will be shut and thus not added to the well
collection.
2016-04-15 08:32:38 +02:00
jokva
8b71d81a14 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
Pål Grønås Drange
f1a31ca5e4 Using API get3DProperties() 2016-04-11 15:13:38 +02:00
Arne Morten Kvarving
ec84849361 add files imported from opm-core to build system
change include path for thresholdPressures.hpp in test.
note that the test is currently disabled (it was not enabled in
opm-core and does not build).
2016-04-11 10:01:01 +02:00
Arne Morten Kvarving
66333051e7 Import the following files from opm-core
opm/core/utility/thresholdPressures.hpp
tests/test_thresholdpressure.cpp
opm/core/simulator/SimulatorCompressibleTwophase.hpp
opm/core/simulator/SimulatorCompressibleTwophase.cpp
opm/core/simulator/SimulatorIncompTwophase.hpp
opm/core/simulator/SimulatorIncompTwophase.cpp
examples/sim_2p_comp_reorder.cpp

the files in opm/core has been put in opm/simulators
2016-04-11 09:59:25 +02:00
Pål Grønås Drange
eb700248ed uses new api, made reference instead of copy 2016-04-08 16:31:59 +02:00
Atgeirr Flø Rasmussen
37c4bd16b1 Adapt code to dune-cornerpoint -> opm-grid renaming. 2016-04-06 13:29:47 +02:00
Tor Harald Sandve
21ad35b691 Fixes to test_solventprops_ad
- fix mismatch between grid size and the test cell size
- avoid using new
2016-04-05 08:48:54 +02:00
Tor Harald Sandve
4824019b92 Adapt to rename of parserMode to parserContext 2016-04-01 16:08:30 +02:00
Tor Harald Sandve
a02a07289e Implement pressure effects in the Todd-Longstaff mixing parameter
The Todd-Longstaff model is extended to incorporate pressure effects
The solvent viscosity is then caculated as

mu_eff = mu_s^(1-\alpha * \omega) * mu_mix^(\alpha * \omega)

where \omega accounts for the porous media effects and \alpha =
\alpha(pressure) accounts for the miscibility of the solvent and oil
when contacted.
The \alpha values can be given using the TLPMIXPA keyword

If no entries are given to TLPMIXPA the table specified using PMISC will
be used as default.
IF TLPMIXPA does not appear in the grid \alpha = 1 and the pressure
effect is neglected.
This is tested in test_solventprops_ad.cpp
2016-04-01 15:55:56 +02:00
Liu Ming
939085155e refactor relperm diagnostics using OpmLog functions. 2016-04-01 12:27:03 +08:00
Joakim Hove
18c07d5d66 Replaced SimulatorState -> SimulationDataContainer 2016-03-29 10:48:36 +02:00
Joakim Hove
a256dc0e5d 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
Liu Ming
17e5eb2dee rename ParseMode as ParseContext. 2016-03-17 10:02:50 +08:00
Liu Ming
dcd12f052a rename ParseMode as ParseContext. 2016-03-17 09:57:59 +08:00
Liu Ming
8cd08728f7 rename ParseMode as ParseContext. 2016-03-17 09:57:59 +08:00
Liu Ming
c2622708e4 rename ParseMode as ParseContext. 2016-03-17 09:57:59 +08:00
Tor Harald Sandve
35b34f1b3a Add pow() for constant base raised to variable exponent in AutoDiffBlock
- associated tests are added
- this PR also contains some clean up
2016-03-08 10:35:29 +01:00
Tor Harald Sandve
b2e02f6d2b Add power method for general f^g in the AutoDiffBlock
A power method where both f and g are ADB variables is added
using the general derivative rule
(f^g)' = f^g * ln(f) * g' + g * f^(g-1) * f'

Tests are added to test_block.cpp
2016-03-07 14:23:45 +01:00
Andreas Lauser
a9f758a8e7 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
Jørgen Kvalsvik
dd77a39d95 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
Joakim Hove
a9262e4574 Set abs_diff limit for restart_test to 1e-2 2016-02-19 13:00:27 +01:00
Jørgen Kvalsvik
19e41bd246 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-19 11:55:19 +01:00
Joakim Hove
95752bcd97 Added absolute eps for comparison. 2016-02-19 07:42:38 +01:00
Joakim Hove
d1b30f4f48 Changed wording: relative -> absolute 2016-02-19 07:41:53 +01:00
chflo
d7c5c30314 Changed numeric limits for restart test failure 2016-02-19 07:39:41 +01:00
chflo
3fc8ea4c9c Added restart test 2016-02-10 14:47:56 +01:00
Jørgen Kvalsvik
850f0884f1 Improve includes from opm-parser
Adopting to opm-parser PR#661, add previously missing includes.

OPM/opm-parser#661
2016-01-26 13:32:34 +01:00
Jørgen Kvalsvik
e8c6c3102f 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
Jørgen Kvalsvik
b0692304d5 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
Jørgen Kvalsvik
98190eceb1 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
Jørgen Kvalsvik
50c1bbdc85 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
Jørgen Kvalsvik
087710df7d 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-20 15:11:30 +01:00
Liu Ming
0470428cab fix relperm diagnostics tests issue. 2016-01-11 16:05:33 +08:00
Joakim Hove
8ff67bd4a1 Removed erroneous test data. 2016-01-05 11:47:20 +01:00
Atgeirr Flø Rasmussen
186d77867a Silence warnings in test programs. 2015-12-14 15:25:27 +01:00
Atgeirr Flø Rasmussen
c8a1492ca9 Merge pull request #928 from totto82/minpv_pinch
compatibility of MINPV and PINCH
2015-12-14 11:33:20 +01:00
Tor Harald Sandve
96b0f2e8cb Bugfix. Fix face direction in the pinchprocessor 2015-12-14 10:48:26 +01:00
Atgeirr Flø Rasmussen
d30147abfd Merge pull request #555 from totto82/residualSaturations
Add methods for critial gas and gas in oil saturations
2015-12-11 13:08:54 +01:00
Tor Harald Sandve
4b66b0874e Add methods for critial gas and gas in oil saturations
Methods that returns the scaled critical gas (SGCR) saturation and the
scaled critical gas in oil saturation (SOGCR) is added to
BlackoilPropsAdFromDeck and BlackoilPropsAdInterface

A test is added in test_boprops_ad and fluid.data is modified to make
the test non trivial.
2015-12-11 12:53:54 +01:00
Tor Harald Sanve
650fef5bc2 Add power operator to AutoDiffBlock 2015-12-10 10:30:28 +01:00
Tor Harald Sandve
ca3e48d099 Adapt to changes in the NNC class 2015-12-08 13:03:15 +01:00
Tor Harald Sandve
5a3ee3b961 Adapt to changed API in the pinch-processor 2015-12-08 09:25:35 +01:00
Tor Harald Sandve
04b0321f13 Fix to account for the combination of minpv and pinch 2015-12-08 09:21:51 +01:00
Liu Ming
db103c7868 Merge remote branch 'remotes/opm/master' into relpermDiagnostics
Conflicts:
	CMakeLists_files.cmake
2015-12-08 16:08:02 +08:00
Arne Morten Kvarving
3ce3b0aac1 move polymer test to tests directory 2015-12-07 10:46:20 +01:00
Joakim Hove
d7913c4173 Added out-of-range tests. 2015-12-03 16:19:43 +01:00
Joakim Hove
364dbf809f Added regression test for norne PvtLiveOil PVT. 2015-12-03 14:16:04 +01:00
Liu Ming
bff9920814 Add simple tests. 2015-12-02 10:59:13 +08:00
Andreas Lauser
5d37b61a77 fix build for newish boost versions
my boost is 1.58. once more, boost seemed to have become more picky on
where a semicolon must be placed and where not.
2015-11-27 16:09:01 +01:00
Atgeirr Flø Rasmussen
2a0051655c Merge pull request #520 from totto82/surface_dens
Support for non-constant surface densities
2015-11-13 11:40:30 +01:00
Tor Harald Sandve
a47c9add9b Change interface of surfaceDensity()
Add phaseIdx as input and return array of n density values for the
phase. And adapt the usage accordingly.
2015-11-10 14:54:49 +01:00
Atgeirr Flø Rasmussen
a8227f977e Modify test to trigger on buggy behaviour in AutoDiff. 2015-11-10 13:37:36 +01:00
Tor Harald Sandve
a46b64adcd Support for non constant surface densities
The surface density function returns one value pr cell to allow for non
constant surface densities.
2015-11-10 12:49:19 +01:00
Atgeirr Flø Rasmussen
682f53fdc5 Remove unused arguments in PinchProcessor methods.
This silences warnings. It also makes it clear that
the cell thicknesses are not used in the current
algorithm, the doc comment has been updated to
reflect this.
2015-10-21 11:52:31 +02:00
Atgeirr Flø Rasmussen
852693b72c Merge pull request #892 from qilicun/pinchprocessor
PinchProcessor
2015-10-19 10:22:44 +02:00
Atgeirr Flø Rasmussen
67f1def789 Add "allow crossflow" argument to add_well() calls. 2015-10-15 09:54:53 +02:00
Atgeirr Flø Rasmussen
10b4d6c6f7 Merge pull request #897 from totto82/crossflow
Add boolean flag to determine whether crossflow is allowed in a well
2015-10-14 09:36:27 +02:00
Liu Ming
2f7f54982b use PinchMode instead of string. 2015-10-09 16:30:39 +08:00
Liu Ming
10e9df4bd1 Add tests case for pinch processor. 2015-10-09 10:33:21 +08:00
Tor Harald Sandve
40ec39fa71 Add boolean flag to determine whether crossflow is allowed in a well
This PR adds allow_cf to the wells structure that determine whether
crossflow is allowed or not. An extra argument is added to addWell(..)
to specify the allow_cf flag.
2015-10-06 15:54:20 +02:00
Joakim Hove
76f674b16b Updated path to warning suppression header. 2015-10-06 12:11:49 +02:00
Joakim Hove
197dda9ee0 Relocated warning headers. 2015-10-06 11:39:14 +02:00
Tor Harald Sandve
7bdd91d78f Allow for different surface densities in well perforations
The surface density input in well_perforation_densities() in
WellDensitySegmented.hpp is changed from one value pr. phase to one
value pr phase and perforation. This allow for different densities in
different perforation. The test is changed accordingly.
2015-10-06 10:38:36 +02:00
babrodtk
7f9175e046 Created named constructor for identity matrices 2015-10-02 10:22:05 +02:00
Atgeirr Flø Rasmussen
3d27454c6b Make grid in deck have larger number of cells.
This makes some tests succeed that use this deck only
for its properties and not its grid: if the grid in the
deck has fewer cells than the grid that is used for the
test we will fail in the SATNUM mapping.
2015-10-01 15:20:08 +02:00
Bård Skaflestad
99368d73d2 RegionMapping<>: Support arbitrary region IDs
This commit introduces a new public method, activeRegions(), that
retrieves those region IDs that contain at least one active cell.
We furthermore extend the cells() method to support lookup of
arbitrary region IDs.  Non-active region IDs produce empty cell
ranges.

Intended use case is

    for (const auto& reg : rmap.activeRegions()) {
        const auto& c = rmap.cells(reg);

        // use c
    }
2015-09-15 15:33:22 +02:00
babrodtk
39154f04fe Added tests for autodiffmatrix 2015-09-07 13:01:31 +02:00
babrodtk
945593295d Fixed test_autodiffhelpers 2015-09-07 13:00:41 +02:00
babrodtk
3a9a153c22 Fixed test_block 2015-09-07 13:00:41 +02:00
Atgeirr Flø Rasmussen
097542a527 Whitespace fixes.
It turns out I accidentally used tabs for a while, this commit
fixes that for all touched files.
2015-09-07 13:00:41 +02:00
Atgeirr Flø Rasmussen
1f32594f79 Fix bug in prodDD(), add test. 2015-09-07 13:00:02 +02:00
Atgeirr Flø Rasmussen
47e7dbe943 New implementation of AutoDiffMatrix, some tests.
Compiles and tests successfully, but test coverage very
limited. New approach based on relatively primitive
run-time switching instead of trying to use inheritance.
2015-09-07 12:58:51 +02:00
Atgeirr Flø Rasmussen
6a5a48e728 Work in progress on AutoDiffMatrix (not compiling). 2015-09-07 12:58:51 +02:00
Andreas Lauser
7905894a0f "fix" the satfunc unit test
the derivatives changed in some instances compared to the old
implementations. this patch updates them to the new versions.

thanks to [at]atgeirr for discovering this.
2015-09-02 12:29:18 +02:00
Joakim Hove
8c6f06147e Ensure that thresholdPressure.hpp is compiled.
Added a test to ensure that thresholdPressure is compiled; however the
test is deactivated because it requires the GridHelpers from opm-autodiff.
2015-08-25 16:22:38 +02:00
babrodtk
6c590d4bdb Implemented proper targets for switching to/from THP control 2015-08-19 17:03:41 +02:00
Atgeirr Flø Rasmussen
3c1c3a30ab Merge pull request #430 from babrodtk/vfpprod
Vertical flow performance
2015-08-19 13:27:37 +02:00
Atgeirr Flø Rasmussen
3db9d9062e Fix bug in test program. 2015-08-19 13:12:14 +02:00
babrodtk
9458fcc498 Fixed several compiler warnings 2015-08-19 13:12:14 +02:00
babrodtk
f320b04c4d Initial integration of VFP 2015-08-19 13:10:48 +02:00
babrodtk
f3553313d2 Rewrote function finding interpolation data 2015-08-19 12:37:54 +02:00
babrodtk
b2335ced24 Minor fixes for PR 2015-08-19 11:32:38 +02:00
babrodtk
6b3356e74d Minor fixes for comments in PR 2015-08-19 08:07:51 +02:00
babrodtk
657a7c58b8 Added hydrostatic correction for vfp table depth
Closer to reproducing proper results, but som oscillating
 behaviour in plots of actual BHP.
2015-08-14 14:48:15 +02:00
Atgeirr Flø Rasmussen
24f91aa248 Use the correct (new) method from the Group class for group RESV.
Production controls now are no longer initialised from injection control data.
2015-08-13 10:21:24 +02:00
babrodtk
2994d1d932 Refactoring 2015-08-11 12:21:06 +02:00
babrodtk
08dd631a8d Refactoring/restructuring 2015-08-11 10:24:55 +02:00
babrodtk
5af128bcb6 Refactoring 2015-08-11 09:47:06 +02:00
Atgeirr Flø Rasmussen
9a0ff41221 Silence warnings. 2015-08-11 09:20:35 +02:00
Atgeirr Flø Rasmussen
5216550cdf Suppress warnings. 2015-08-10 16:07:45 +02:00
babrodtk
c5c965adec Fixed bugs in tests for VFP tables 2015-08-10 09:31:25 +02:00
babrodtk
d45543b8fb Proper integration of derivatives for THP 2015-08-10 08:55:06 +02:00
babrodtk
ff403afb1d Fixed bug in superset when index list empty 2015-08-10 08:55:06 +02:00
babrodtk
7eb94caeba Updated integration of VFP tables. Produces almost identical results to bhp control 2015-08-10 08:55:05 +02:00
babrodtk
16a4580219 Implemented test to check derivatives for interpolateplane 2015-08-10 08:55:05 +02:00
babrodtk
34edf3a5b8 Changed API of VFPProperties to take ADBs 2015-08-10 08:55:05 +02:00
André R. Brodtkorb
99c23d3810 Bugfix interpolation 2015-08-10 08:55:05 +02:00
babrodtk
f424a26651 Added initial calculation of derivatives 2015-08-10 08:55:05 +02:00
babrodtk
0d36d81e51 Implemented test for case when bhp(thp) == bhp 2015-08-10 08:55:05 +02:00
babrodtk
926f7ba175 Return zero for e.g., the gas:oil-ratio if no oil 2015-08-10 08:54:34 +02:00
babrodtk
79410685ca Refactoring and updated tests 2015-08-10 08:54:34 +02:00
babrodtk
d27403b427 Initial integration of VFPProdTables 2015-08-10 08:54:34 +02:00
babrodtk
3260e978da Minor refactoring of VFPProperties to prepare for support for VFPINJ tables 2015-08-10 08:53:42 +02:00
André R. Brodtkorb
066e54bbfc Updated VFPProperties to support a vector VFPProdTable's 2015-08-10 08:50:26 +02:00
André R. Brodtkorb
fe7b5f2f6f Updated tests to support units 2015-08-10 08:50:26 +02:00
André R. Brodtkorb
179a210ad5 Updated VFPProperties to use the newly implemented VFPProdTable class in opm-parser (with units) 2015-08-10 08:50:26 +02:00
André R. Brodtkorb
1d7f601fab Removed superfluous varible 2015-08-10 08:50:26 +02:00
André R. Brodtkorb
3d14ea9432 Added test of the most high-level bhp function 2015-08-10 08:50:26 +02:00
André R. Brodtkorb
ab445a6d9a Added proper error checking and partial units 2015-08-10 08:50:26 +02:00
André R. Brodtkorb
ccf06c2c1c Added tests for computing the flo/wfr/gfr values based on the aqua/liquid/vapour flow rates 2015-08-10 08:50:26 +02:00
André R. Brodtkorb
2f6e44500b Updated ADB test case 2015-08-10 08:50:26 +02:00
André R. Brodtkorb
3dfd9ad56d Added ADB version of bhp function 2015-08-10 08:50:25 +02:00
André R. Brodtkorb
0e3b951cd0 Added skeleton of interpolation using ADBs as input 2015-08-10 08:50:25 +02:00
André R. Brodtkorb
7b0132b110 Added linear extrapolation 2015-08-10 08:50:25 +02:00
André R. Brodtkorb
106467e889 Tabs to spaces 2015-08-10 08:50:25 +02:00
André R. Brodtkorb
67b55f873c Created tests for the VFPProperties class 2015-08-10 08:50:25 +02:00
Joakim Hove
83c14a4dd7 Removed extre trailing '/' 2015-08-06 18:39:36 +02:00
Joakim Hove
b94d5a135d Updated to use ParseMode. 2015-08-06 15:56:51 +02:00
Joakim Hove
23b3670c1e Updated to use ParseMode. 2015-08-06 15:56:51 +02:00
Joakim Hove
7bd36a6b65 Addde ParseMode argument to parse and EclipseState 2015-08-05 14:18:05 +02:00
Atgeirr Flø Rasmussen
7b9bdb6017 Do not use pressure() until after init() in BlackoilState. 2015-07-08 17:58:38 +02:00
Atgeirr Flø Rasmussen
a5da86a9ec Silence multiple warnings.
Also add more warnings to the disabling list of disable_warnings.h.
2015-05-28 14:05:09 +02:00
Markus Blatt
baf76dc1bf Test the global reductions for more types.
Previously, we only tested with int which left at least
one bug unreveiled. Now we test with unsigned integers
and floating point values in addition.
2015-05-27 14:49:30 +02:00
Markus Blatt
8fce12c526 Update copyright 2015-05-27 11:07:16 +02:00
Markus Blatt
a4e28119a3 Adds the possibility to compute a parallel inner product. 2015-05-27 11:07:15 +02:00
Arne Morten Kvarving
a87b46a037 fix tests
- cannot use BOOST_CHECK_CLOSE around 0 due to a relative test
- slacken a tolerance significantly
2015-04-24 10:49:13 +02:00
Atgeirr Flø Rasmussen
059bfaf036 Fix error in test for vertcatCollapseJacs(). 2015-03-24 15:05:05 +01:00
Atgeirr Flø Rasmussen
9af3296aa9 Add test for vertcatCollapseJacs().
The test case is non-trivial in that it concatenates elements with a mix of
empty() and non-empty jacobian vectors.
2015-03-24 09:50:34 +01:00
Atgeirr Flø Rasmussen
5ff65b40e1 Fix bug added when adapting to new API.
Avoid using invalidated 'jacs', make copy.
2015-03-16 14:22:32 +01:00
Atgeirr Flø Rasmussen
04b255a03f Make more use of move semantics in AD code.
This makes some API changes to AutoDiffBlock.
 - Add overload for the constant() constructor taking rvalue ref.
 - Add overload for the variable() constructor taking rvalue ref.
 - Make the function() constructor *require* rvalue refs.
 - Add a swap() function.

The remaining changes in this commit are follow-ups especially
to the third change (adding std::move in many places), and
some removal of unnecessary block pattern arguments from calls to
the constant() static method.
2015-03-16 14:22:32 +01:00
Atgeirr Flø Rasmussen
965be0471f Remove non-AD overload of muWat().
The AD version is made a little smarter, detecting the
case of input with no derivatives. Existing use of the
non-AD rewritten.
2015-03-03 12:56:30 +01:00
Atgeirr Flø Rasmussen
4d9a30807b Fix test_rateconverter failure.
- Make test use three phases, not two.
 - Avoid interpolation failure by adding a line to PVDG.
2015-02-27 10:20:30 +01:00
Atgeirr Flø Rasmussen
d9ce8625cf Remove unused classes.
After this, the two affected tests fail due to bugs in PVT region
support in BlackoilPropsAdFromDeck.
2015-02-23 13:42:51 +01:00
Markus Blatt
fc137afcd5 Adds a constructor to BlackoilPropsAdFromDeck that allows copy the grid independant part.
In the parallel simulator we will have to be able adress only poperties on
some part of the global grid. To create thos properties we need to be able
to copy the grid independant data of the properties object and resize the rest.
This commit adds a construct taking a properties object for reading and a
new number of cells to accomplish this.
2015-02-12 21:33:41 +01:00
Atgeirr Flø Rasmussen
fb983a44b1 Add default producer BHP control when not given in deck.
Default limit is 1 atm.
2015-02-04 10:30:15 +01:00
Atgeirr Flø Rasmussen
9cb9ec50b1 Rename directory opm/core/tof -> opm/core/flowdiagnostics. 2015-02-03 21:44:24 +01:00
Markus Blatt
aac4cb7d66 Correctly compute the minimum and maximum values.
As there are no functors for computing the minimum and maximum,
we convert the std::max and std::min function pointers to
functors (which is not really nice.) Previously we were somehow
tricked into using std::greater and std::less, which of course do
return true or false and not what we need. Additionally, do more
excessive testing with different ranges.
2015-01-23 20:48:53 +01:00
Bård Skaflestad
6d8c89abea Merge pull request #728 from blattms/global-reductions
Added methods for computing global reductions.
2015-01-23 17:28:12 +01:00
Markus Blatt
d137b0c144 Calm warnings about excessive semi-colons, unused variables, and missing declarations. 2015-01-23 16:36:48 +01:00
Markus Blatt
7bce15c04b Added methods for computing global reductions.
We need to compute quite a few global reductions in the
Newton method of opm-autodiff. This commit adds the functionality
to compute several reductions combined using only one global
communication. Compiles and test succeeds with one or more process.
2015-01-21 16:19:35 +01:00
Atgeirr Flø Rasmussen
77ae151be9 Added calculation of flow diagnostics quantities.
New functions:
 - computeFandPhi()
 - computeLorenz()
 - computeSweep()

Also a unit test has been added for the new features.
2015-01-21 14:58:44 +01:00
Markus Blatt
dca6b436a7 Activates transmissibilities test for CpGrid without warnings.
Tests run fine for both grids.
2015-01-15 21:27:07 +01:00
Markus Blatt
b0707e05bf Ported test_transmissibilities to the UgGridHelpers interface.
Previously, there were a completely different check for UnstructuredGrid
and CpGrid. The latter probably not working properly due to missing
support in the DUNE grid interface.

This commit resorts the code to use the UgGridHelpers abtraction instead of
UnstructuredGrid's legacy grid interface. Thus one code can be used to do
the checks for both grids. For UG the code compiles and the test is successful.
For CpGrid it compiles but of course the test still fails due to missing
transmissibility multiplier support. This will be sorted out in a different PR.
2015-01-14 11:56:37 +01:00
Markus Blatt
e681d6b836 Use correct constructor for ntgGeology.
This should have been in the previous PR. But I missed it when splitting
things up.
2015-01-14 11:56:37 +01:00
Markus Blatt
55fb6fa7ed Use correct constructor of DerivedGeology used with CpGrid in test_transmissibilities.
The constructor now needs and additional boolean to
flag whether to local permeabilities. The old one used
is not there anymore. Therefor this patch moves the code
to the new constructor interface.
2015-01-12 14:56:42 +01:00
Joakim Hove
80423a0188 Pure white-space change 2015-01-12 12:43:44 +01:00
Tor Harald Sandve
82eafbb510 Renaming well is shut to well is stopped.
Rename the the meaning for shut as whats used in Eclipse.
STOP: Well stopped off above the formation. I.e. allow for flow in the
well.
SHUT: Well completely isolated from the formation. The well is removed
from the well list.
2015-01-09 09:10:10 +01:00
Tor Harald Sandve
d50ec0d4d1 Modify the well manager test as we now support stopped wells.
We no longer expect an exception when we meet stopped wells.
2015-01-09 09:10:10 +01:00
Tor Harald Sandve
0d044eada0 Add test case for stopped wells
The test check that the rates are set to zero for stopped wells.
2015-01-09 09:10:10 +01:00
Atgeirr Flø Rasmussen
10d4d228d1 Use dummy test if anisotropic eikonal solver unavailable. 2015-01-07 10:20:49 +01:00
Atgeirr Flø Rasmussen
4c12bf485d Modify test to succeed.
No longer test for (unattainable) exact values. Use actual
computed value instead. This makes the test a regression
test rather than a truth test.
2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
e3a0eac260 Uncomment second test.
Test fails, it requires exact match which is too strict.
2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
8b99d6394d Fix bug in test.
Also add (inactive) second test.
2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
84da6a28f3 Added simple test, work in progress. 2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
3001768632 Add skeleton of AnisotropicEikonal class and test. 2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
dea6e8c044 Merge pull request #702 from jorgekva/linsolver_petsc
PETSc support in OPM
2014-12-19 11:25:58 +01:00
Tor Harald Sandve
02724b7f7a Implement comments for PR#249
1) Add the possibility for the user to chose between local and global
coordinate permeability in the transmissibility calculations.
2) Trow for CpGrid
3) Add default for switch
2014-12-10 07:29:05 +01:00
chflo
c2116149c9 OPM-139: Added unitttest and testdata for testing writing of welldata to eclipse restart files 2014-12-08 12:04:06 +01:00
Atgeirr Flø Rasmussen
7b2334b758 Fix wrong resize() usage for Eigen::Array. 2014-12-02 09:24:03 +01:00
Andreas Lauser
4e3a69cc90 PVT properties: allow them to be temperature dependent
Note that this patch does not introduce any real temperature
dependence but only changes the APIs for the viscosity and for the
density related methods. Note that I also don't like the fact that
this requires so many changes to so many files, but with the current
design of the property classes I cannot see a way to avoid this...
2014-12-01 20:06:02 +01:00
Atgeirr Flø Rasmussen
bce2d6ad1a Avoid using VLAs (C99 feature).
Regular C fixed-size arrays are sufficient here, although in general
std::vector is the preferred replacement (if needing the dynamic size).
2014-11-24 10:55:10 +01:00
osae
239a5e12e8 Made hysteresis variant of gwseg consistent ...
... with the base gwseg behaviour.  Added test.
2014-11-05 17:00:11 +01:00
osae
31d1842ce4 Consistency between scaled and unscaled gwseg.
Modified the endpoint scaled version of SatFuncGwseg and updated
the tests accordingly.
2014-11-05 16:10:05 +01:00
osae
cc7d3dab93 Added some tests for the endpoint scaled relperm.
- satfuncStandard: Unscaled curves, using standard version of the
Gwseg model.
- satfuncEPSBase: Unscaled curves, but using the EPS version of
the Gwseg model.  There are some differences between this and the
standard version of Gwseg for derivatives at critical saturations.
The scheme for calculating the derivatives should be discussed.
(Will file a separate issue on this.)
- satfuncEPS_A: Scaled curves.  Scaling parameters specified via
SWL family.
- satfuncEPS_B: Scaled curves.  Scaling parameters identical to _A
but this time specified via the ENPTVD table.  Test currently
suspended due problems with eclipse-state.
- satfuncEPS_C: Scaled curves.  Scaling parameters identical to _A
but this time specified via Norne-like syntax (EQUALS, COPY etc.).
2014-11-05 16:10:05 +01:00
Tor Harald Sandve
a59044bd93 The wellmanager test is modified to account for not adding shut wells
Shut wells are not added to the well list and the well manager test is
modified accordinly.
2014-10-27 07:23:58 +01:00
Tor Harald Sandve
ef9bbe4ce7 Make the comment in test_wellsmanager more precise
The comment now precisly says that Shut wells are not added instead to
the well list instead of removed.
2014-10-24 07:05:43 +02:00
Tor Harald Sandve
4585446e5a Fix SHUT wells
Shut wells are not added to the well list and thus not considered in the
simulator.

The shut well test in test_wellsmanager is modified to assert this
behaviour.

BUG: This change provokes an assert in the EclipeWriter as number of
wells in wellstate is different from number of wells in the schedule.
2014-10-24 06:57:38 +02:00
Joakim Hove
4c53baed3e Updated WellsManager testing 2014-10-16 16:34:00 +02:00
Joakim Hove
0657cc4deb Added test for SHUT well 2014-10-07 12:12:15 +02:00
Joakim Hove
73b82ed188 Removed 'dead' data at the end of test data. 2014-10-07 12:11:17 +02:00
Andreas Lauser
6f5d942502 blackoil fluids test: add section markers to make EclipseState happy
this is necessary because tables now must be queried using
EclipseState instead of directly. This implies that EclipseState can
be instantiated in the first place...

TODO (?): allow EclipseState instatiation for decks without a grid.
2014-09-19 15:27:12 +02:00
Tor Harald Sandve
dfa2c42233 Changes in the ref. solution in the DeakAllDead test 2014-08-12 07:08:57 +02:00
osae
91a19ff333 Correcting the equil test. 2014-08-11 13:19:17 +02:00
Bård Skaflestad
82fc769922 RESV: Add facility for surface-to-reservoir rate conversion
This commit adds a simple facility for converting component rates at
surface conditions to voidage rates at reservoir conditions.  It is
intentionally limited in scope and meant to be employed only in the
context of class FullyImplicitBlackoilSolver<> or something very
similar.  In particular, class SurfaceToReservoirVoidage<> assumes
that it will be used to compute conversion coefficients for
component rates to voidage rates, and that those coefficients will
typically be entered into the coefficient matrix of a linearised
residual.

Add a trivial test just to demonstrate the setup and calling
process.  This is not a feature or correctness test.
2014-08-08 11:40:50 +02:00
Robert Kloefkorn
f61eab46df Make code compile with dune trunk version (ie 3.0-git). This should include support for
dune 2.3.
2014-08-06 14:00:54 +02:00
Andreas Lauser
faa98b4f74 add a unit test for the implementation of transmissibilty multipliers in DerivedGeology
for the legacy C-style grid the unit test is more or less complete (it
does not test FAULTMULT and NNC, etc, but these could be added with
sufficient determination), for Dune::CpGrid it currently does not
really check anything because I have not found a good way for CpGrid
to produce the "global" intersection index of an intersection...
2014-07-28 11:30:13 +02:00
Liu Ming
28b354c625 Add HAVE_PETSC macro. 2014-07-08 10:58:39 +08:00
Atgeirr Flø Rasmussen
12c9ef2b09 Merge pull request #607 from osae/swatinit
Scaling of capillary pressure / initialisation from kw SWATINIT.
2014-07-07 14:10:02 +02:00
Bård Skaflestad
033625c5a8 well_controls: Add deep-copy (clone) support
New function well_controls_clone(), implemented in terms of the
public API only, mirrors the objective of function clone_wells(),
only for well control sets.  Add a basic test to demonstrate the
function too.
2014-07-03 16:09:56 +02:00
osae
c1732b0b32 Make use of EclipseState for EQLNUM and SWATINIT. 2014-06-26 14:46:57 +02:00
Andreas Lauser
05775a0b36 Glue in support for the grid property modifier keywords
this basically means using Opm::EclipseState instead of the raw deck
for these keywords.

with this, property modifiers like ADD, MULT, COPY and friends are
supported for at least the PERM* keywords. If additional keywords are
required these can be added relatively easily as well.

no ctest regressions have been observed with this patch on my machine.
2014-06-11 13:48:49 +02:00
Andreas Lauser
0219f83563 glue in support for property modifiers
i.e. reading the grid properties from EclipseState instead of from the
raw deck. This requires that all deck files exhibit a GRID and a
SCHEDULE section or else EclipseState will throw in the constructor.
2014-06-09 12:36:46 +02:00
Andreas Lauser
21719a6860 fix the equilibration test by using new values
thanks to @bska for the hints.
2014-06-04 13:26:37 +02:00
Andreas Lauser
d1a8c9d787 add missing PVTW keywords to the decks used by the equil test
the test still fails, but the errors seem to be due to differences in
the saturation functions...
2014-06-04 11:35:24 +02:00
Andreas Lauser
9a7b068d15 Implement multi-region PVT for all property classes
since they are not using a single PVT table anymore, their "Single"
prefix has been removed...
2014-06-04 11:11:35 +02:00
Andreas Lauser
6a50afb219 rename all "newParserDeck" objects to "deck"
The "new" parser is now "the" parser...
2014-05-21 11:22:43 +02:00
Andreas Lauser
f360562aee remove EclipseGridParser compatibility methods from all classes 2014-05-21 11:22:43 +02:00
Liu Ming
559003ef1e Test Petsc. 2014-05-16 14:55:23 +08:00
Andreas Lauser
b7f3ee7b79 rename "newParserDeck" to "deck" 2014-05-02 15:48:04 +02:00
Andreas Lauser
dbb19403fc completely remove the EclipseGridParser from the module 2014-05-02 15:47:52 +02:00
Andreas Lauser
553698a933 remove tests/integration_tests/sim_fibo_ad_test.cpp
this test seems to compare the old and the new parser which does not
make sense anymore once the old parser is no longer available...
2014-05-02 13:59:25 +02:00
Andreas Lauser
83705279bb add the TABDIMS keyword to the data file for the fluid unit test
that's necessary because the Eclipse RM references it in the table
keywords and the opm-parser needs the keyword to be present to use
it...
2014-04-30 16:49:29 +02:00
Andreas Lauser
112e96d7e6 convert the examples and the tests to opm-parser 2014-04-25 14:25:54 +02:00
Joakim Hove
feeaeb1d2e Changed the data files used for testing:
1) Added RUNSPEC section
2) Replaces DEPTHZ keyword with TOPS keyword.
2014-04-24 15:26:39 +02:00
Bård Skaflestad
29ae3ab836 Merge pull request #572 from andlaus/add_tabdims_to_some_decks
add the missing TABDIMS keyword to the live oil and wet gas unit test data files
2014-04-16 13:48:56 +02:00
Andreas Lauser
305e9d1448 add the missing TABDIMS keyword to the live oil and wet gas unit test data files
these are required for the new parser. (without them, these files
would be invalid AFAICT, but I'm not an Eclipse file format expert...)
2014-04-16 11:16:58 +02:00
Atgeirr Flø Rasmussen
b225970686 Add (all-zero) initialisation of new EquilRecord fields. 2014-04-15 13:41:10 +02:00
Bård Skaflestad
333e110d4f Merge pull request #538 from blattms/parallel-solver-support
Added support for parallel dune-istl solvers
2014-04-08 00:17:35 +02:00
Markus Blatt
f67ed5d334 Fix matrix size and symmetry for parallel runs. 2014-04-04 21:01:32 +02:00
Markus Blatt
7fd5b65691 Merge remote-tracking branch 'upstream/master' into parallel-solver-support
Removed conflicts in:
	opm/core/linalg/LinearSolverIstl.cpp
2014-04-04 20:38:52 +02:00
osae
a43ae52c18 Some additional tests: live gas, RSVD and RVVD 2014-04-03 09:07:00 +02:00
osae
054e7b42b8 Update tests and provide some eclipse output. 2014-03-31 15:32:06 +02:00
Kai Bao
5dd0434707 Added the test code and test data.
Added TESTTIMER.DATA and test_timer.cpp
2014-03-26 17:53:06 +01:00
osae
5d028d4eca Merge branch 'master' of git://github.com/OPM/opm-core
Conflicts:
	CMakeLists_files.cmake
2014-03-26 14:51:06 +01:00
Atgeirr Flø Rasmussen
347016a066 Add more checks to cover bug that was in operator -=. 2014-03-26 12:25:11 +01:00
Atgeirr Flø Rasmussen
60ff38adc6 Added test for += and -= operators. 2014-03-26 12:03:44 +01:00
Atgeirr Flø Rasmussen
37a23825c4 Removed dead code in test_block.cpp. 2014-03-26 11:48:13 +01:00
Joakim Hove
f0126b2501 Removed WellsManager constructor which takes an ole Eclipsegridparser instance. 2014-03-25 18:57:58 +01:00
Atgeirr Flø Rasmussen
5a9786aa32 Merge pull request #540 from joakim-hove/wellsmanager-well-properties
Changed the access method to well rates/properties
2014-03-21 08:58:07 +01:00
Joakim Hove
2eab8aeb38 Changed the access to Parser/EclipseState/Schedule to use new well injection and production properties. To be aligned with opm-parser:e75970a28b96374409a55e3e6cea2198b6a0ea23 2014-03-21 00:35:15 +01:00
Markus Blatt
b8959c45dd Increase verbosity such that we see the actual solve 2014-03-20 22:24:33 +01:00
Markus Blatt
eda0be1b8c Fixes the laplacian.
As we do not represent dofs on the boundary, we need to make sure that all diagonal
values are 4.
2014-03-20 22:21:03 +01:00
Markus Blatt
8d9cd23722 Fixed test_linearsolver for the official 2.2 release.
This release does neither support KAMG nor FastAMG. Therfore
this patch deactivates test these preconditioners.
2014-03-20 22:18:27 +01:00
Markus Blatt
bdc4573e2a Added support for the parallel solvers of dune-istl.
To support this the solveSystem methods of the LinearSolverInterface gets
an optional additional template parameter of type boost::any. It can hold any
copy constructable object. In our case it is used to pass the information about
the parallelization into the solvers of dune-istl without the compiler needing to know
their type. Inside of LinearSolverIstl::solveSystem we check whether the type stored inside of
boost::any is the new ParallelIstlInformation. If this is the case we extract the information
and use the parallel solvers if available, otherwise we solve serial/sequential.

The new ParallelIstlInformation is needed as the OwnerOverlapCopyCommunication is not copy
constructable. This is indeed a design flaw that should and will fixed upstream, but for the
time being we need ParallelIstlInformation to transfer the ParallelIndexSet and RemoteIndices
objects.
2014-03-20 21:59:29 +01:00
Atgeirr Flø Rasmussen
fd4f5f5a26 Merge branch 'master' into new_well_formulation
Conflicts:
	opm/autodiff/FullyImplicitBlackoilSolver.cpp

To resolve conflicts, WellState was changed to WellStateFullyImplicitBlackoil
in multiple places, and perfRate() changed to perfPhaseRate() in
WellDensitySegmented.
2014-03-20 10:04:45 +01:00
Markus Blatt
2f3c17bd9d Added a test for the linear solver interface.
This test sets up a simple laplace problem and solves it with the available
solvers. It assume that either dune-istl or UMFPack is present, which is
assume to be safe.
2014-03-19 21:48:07 +01:00
Joakim Hove
8be1f0e8d3 Changed open / close behaviour of well_controls: 1) well_controls has an explicit open_close flag. 2) Will NOT flip current value to change open|close status 2014-03-04 20:23:19 +01:00
Atgeirr Flø Rasmussen
c2b647d245 Add test data file for compute_initial_state.cpp. 2014-02-27 15:55:08 +01:00
Atgeirr Flø Rasmussen
d13bf03e1f Bugfix in RsSatAtContact: use min(), not max().
Also modified test to match output.
2014-02-27 14:57:38 +01:00
Atgeirr Flø Rasmussen
1c9675605c Fix bug in RS initialisation.
Also throw if default init is specified and datum != goc depth.
2014-02-27 14:48:14 +01:00
Atgeirr Flø Rasmussen
a7c45d4e9f Rename PhasePressureSaturationComputer -> InitialStateComputer.
Also add (unused so far) rs_ field to class.
2014-02-27 09:08:39 +01:00
Atgeirr Flø Rasmussen
91ae9df907 Add test for live oil initialisation.
The test is not finished or verified yet.
2014-02-27 08:31:51 +01:00
Atgeirr Flø Rasmussen
38c89f363d Made phase mixing functors a class hierarchy.
In summary:
 - added RsFunction (base class),
 - made NoMixing, RsVD, RsSatAtContact inherit RsFunction,
 - RS and RV are no longer template arguments for EquilReg class,
 - EquilReg constructor now takes two shared_ptr<Miscibility::RsFunction>,
 - use of constructor updated, mostly using make_shared.
2014-02-26 14:47:24 +01:00
Atgeirr Flø Rasmussen
64b6a40191 Capitalize nested namespace names.
equil -> Equil
miscibility -> Miscibility
2014-02-24 15:55:14 +01:00
Atgeirr Flø Rasmussen
2b0fcfe748 Move RegionMapping class to its own header, add test.
Class now resides in opm/core/utility/RegionMapping.hpp.
2014-02-24 15:19:04 +01:00
Atgeirr Flø Rasmussen
83d0487097 Add test case with overlapping transitions.
Capillary pressure functions and contact depths
have been modified to ensure a large overlap.
2014-02-21 14:50:45 +01:00
Atgeirr Flø Rasmussen
7d63cb9204 Add test case with capillary transition region. 2014-02-21 08:55:15 +01:00
Atgeirr Flø Rasmussen
b2be489e6e Add saturation computation to and rename computer class.
Opm::equil::DeckDependent::PhasePressureComputer ->
Opm::equil::DeckDependent::PhasePressureSaturationComputer
2014-02-21 08:52:25 +01:00
Atgeirr Flø Rasmussen
dc6bcead91 Add test case for capillary inversion. 2014-02-21 08:32:15 +01:00
Atgeirr Flø Rasmussen
4ec65f2f8f Add another test deck for initialisation.
This deck includes capillary functions.
2014-02-20 15:39:15 +01:00
Atgeirr Flø Rasmussen
ebb6eaf742 Complete pressure test for dead-oil deck. 2014-02-19 13:41:20 +01:00
Atgeirr Flø Rasmussen
2ebaef62a0 Modify test data. 2014-02-19 13:40:02 +01:00
Kristian Flikka
ab42682399 Removed old EclipseGridParser from WellsManager constructor, WGROUPCON still missing 2014-02-14 15:36:32 +01:00
Kristian Flikka
3c93c7a781 Added building of WellsCollection group structure from new opm-parser objects 2014-02-14 13:43:25 +01:00
Kristian Flikka
d7568b4adf Changed the WellCollection addChild functions to be more specific, and strict 2014-02-13 16:00:39 +01:00
Kristian Flikka
1181d1c1bc Create WellsGroupInterface from opm-parser Well/Group objects 2014-02-12 15:39:57 +01:00
Kristian Flikka
7ba6431209 Fixed copyright section 2014-02-11 14:21:15 +01:00
Kristian Flikka
b6072e5112 Added support for creation of WellsGroup objects from new parser Well and Group objects 2014-02-11 14:12:36 +01:00
Kristian Flikka
aa329b8b3e Removed WELOPEN from constructor, added throwing on non OPEN/SHUT statuses 2014-02-06 16:31:35 +01:00
Kristian Flikka
269a2bbd24 Reverting some const_casting, that was introduced with no real reason 2014-02-05 21:24:38 +01:00
Kristian Flikka
2b47f0364b Const-ref of parameter to the runWithXParser() functions 2014-02-05 21:18:03 +01:00