Commit Graph
140 Commits
Author SHA1 Message Date
chflo 4c932207a9 OPM-157: Added writehandler for RFT data, and corresponding test 2015-03-05 15:34:29 +01:00
Joakim Hove a959c578e1 Install ParallelIstlInformation.hpp 2015-02-12 12:21:30 +01:00
Robert K fbaa790e70 AdaptiveSimulatorTimer: -improvement in time step adjustment near end of time interval
-max time step parameter

PIDTimeStepControl --> TimeStepControl:
- added simple iteration count time step control
- bug fix in PIDAndIterationCountTimeStepControl

AdaptiveTimeStepping: apply the above changes.
2015-02-06 13:59:50 +01:00
Atgeirr Flø Rasmussen 9f4da3ad03 Rename directory opm/core/tof -> opm/core/flowdiagnostics. 2015-02-03 21:44:24 +01:00
Bård Skaflestad 6c25e04c9f Merge pull request #728 from blattms/global-reductions
Added methods for computing global reductions.
2015-01-23 17:28:12 +01:00
Markus Blatt 566aee7896 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 1e0d2ec43e 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
Atgeirr Flø Rasmussen a0f07e4421 Use single-phase props and solvers, only support deck input. 2015-01-20 15:47:50 +01:00
Atgeirr Flø Rasmussen 3d73bd3c72 Add IncompPropertiesSinglePhase class. 2015-01-20 15:47:50 +01:00
Robert K 4d1a2ad918 Introduce an interface for SimulatorTimer and AdaptiveSimulatorTimer.
currentDateTime and currentPosixTime are default implementations.
2015-01-09 16:21:20 +01:00
Tor Harald Sandve 183d18e78e 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 7d4f44b2d7 Add a utility for actually running the eikonal solver. 2014-12-29 12:28:30 +01:00
Atgeirr Flø Rasmussen 1f79502f10 Add skeleton of AnisotropicEikonal class and test. 2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen 060a2fea0f Merge pull request #702 from jorgekva/linsolver_petsc
PETSc support in OPM
2014-12-19 11:25:58 +01:00
Jørgen Kvalsvik 510074e858 Removed installation of file call_petsc.h 2014-12-10 18:35:49 +01:00
chflo 2fd00e04a1 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 578f467b59 Add free function vertexNeighbours() and test. 2014-11-27 14:49:32 +01:00
Alf B. Rustad 3180570262 This commit introduces mirror_grid
Fixed various nits
2014-11-27 12:28:29 +01:00
osae b3b15188d9 Made hysteresis variant of gwseg consistent ...
... with the base gwseg behaviour.  Added test.
2014-11-05 17:00:11 +01:00
osae 830273db7a Forgot to list the DATA-files ... 2014-11-05 16:10:05 +01:00
osae 18c8927334 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
Jørgen Kvalsvik 5ed0f73ba2 Removes call_petsc.c and calls the lib from C++
call_petsc.c was really a thin C wrapper around the call to petsc itself and
turns out was mostly unnecessary C++ emulation. This removes the file entirely
and ports its functionality into LinearSolverPetsc.cpp.

All features from the file should now be more readable as well as properly
utilising modern C++ features.

The patch uses the CHKERRXX macro from petsc to handle errors reported by
petsc, and currently does not handle this and give the control back to OPM's
error/throw system.
2014-10-14 14:43:42 +02:00
Robert K 3f8d379c7f added new files. 2014-10-06 14:25:44 +02:00
Atgeirr Flø Rasmussen c838f34dc6 Add new headers. 2014-09-20 10:36:10 +02:00
Bård Skaflestad 1a3f7b230f Merge pull request #639 from atgeirr/threshold-pressure
Threshold pressure function
2014-08-29 09:13:27 +02:00
Bård Skaflestad 37dfc4a3b5 Add facility for accessing active subset of global data array
This commit introduces a fairly general mechanism for accessing the
active subset of a global grid (property) array.  Essentially, this
takes on the role of translating the active cell index through the
"global_cell" mapping when accessing, e.g., the net-to-gross data
value.

The primary component is class template

    Opm::GridPropertyAccess::Compressed<DataArray,Tag>

which implements a read-only

    value_type operator[](const int c)

that encapsulates and performs the compressed-to-global cell index
translation.  Template parameter "DataArray" is intended as a policy
parameter that for instance wraps access to a "GridProperty<T>" from
module opm-parser (with a fall-back default value if the data is not
specified on input).  The "Tag" parameter is a provision for type
safety--e.g., to prevent passing a region ID into a function that
requires a porosity value.
2014-08-27 21:19:41 +02:00
Atgeirr Flø Rasmussen c2f03bbc80 Add new file. 2014-08-27 18:09:27 +02:00
Atgeirr Flø Rasmussen f74a0bb3e6 New class MinpvProcessor, and test. 2014-08-25 15:20:01 +02:00
osae 9b30660d1e Correcting the equil test. 2014-08-11 13:19:17 +02:00
Andreas Lauser d8e9b5be21 EclipseWriter: add unit test 2014-07-16 10:41:25 +02:00
Bård Skaflestad 427e53b69b Disable "test_equil" test
This test breaks the Continuous Integration system (Jenkins).  While
we investigate the underlying causes it is better to restore the
build to pristine order.
2014-07-08 22:30:49 +02:00
Liu Ming f9eecfb015 if no petsc installed, we should remove petsc related files from cmake file
list.
2014-07-08 11:02:07 +08:00
Andreas Lauser fbd8d42e8d 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 720acacad3 remove the EclipseGridParser class
RIP!
2014-05-21 11:22:43 +02:00
Andreas Lauser 099f22cf1f attic: remove all files which required EclipseGridParser
since the attic is the place for bits to rot silently, I doubt that
this code would have been of much contemporary use anyway. Even if it
could be made to compile, porting it to opm-parser would hardly be
worth the effort. If you are nostalgic and want to see how things were
done in the olden days, use `git show $COMMIT` or `git log --stat` or
`git log -p` and search for "EclipseGridParser"...
2014-05-21 11:22:43 +02:00
Andreas Lauser 3b2aa175d5 remove the import_rewrite example
that one was quite specific to the old parser and would thus require
more work to convert to the opm-parser than what it is worth the
effort. If you _really_ want to keep this tool, ping me and I'll port
it...
2014-04-25 14:25:54 +02:00
Joakim Hove 8260d945fa Added function grid_equal() to compare two UnstructuredGrid instances. 2014-04-22 15:13:54 +02:00
Bård Skaflestad 04704de376 Merge pull request #518 from blattms/master-refactor-for-cpgrid-support
refactor for cpgrid support to apply to master
2014-04-15 00:02:31 +02:00
Atgeirr Flø Rasmussen 14e93aea75 Remove grdecl.h from file list. 2014-04-10 20:51:06 +02:00
Markus Blatt ebc86bc624 Merge remote-tracking branch 'upstream/master' into master-refactor-for-cpgrid-support
Manually resolved conflicts in:
	opm/core/io/eclipse/EclipseWriter.cpp
	opm/core/io/eclipse/EclipseWriter.hpp
	opm/core/props/satfunc/SaturationPropsFromDeck_impl.hpp
2014-04-08 21:50:00 +02:00
Bård Skaflestad f3ebd78296 Merge pull request #538 from blattms/parallel-solver-support
Added support for parallel dune-istl solvers
2014-04-08 00:17:35 +02:00
Atgeirr Flø Rasmussen 4d5a92e3ff Add test data files needed for test_equil to the right cmake list. 2014-04-04 22:53:34 +02:00
Atgeirr Flø Rasmussen a47c9c7330 Merge pull request #544 from osae/equil-init
Equil init
2014-04-04 22:39:37 +02:00
Markus Blatt d83374e6b7 Merge remote-tracking branch 'upstream/master' into master-refactor-for-cpgrid-support
Removed conflicts in
	opm/core/wells/WellsManager.cpp
that were due to the change
```diff
-                    pd.well_index = WellsManagerDetail::computeWellIndex(radius, cubical, cell_perm, completion->getDiameter());
+                    pd.well_index = WellsManagerDetail::computeWellIndex(radius, cubical, cell_perm, completion->getSkinFactor());
```
in  WellsManager::createWellsFromSpecs which moved from WellsManager.cpp to WellsManager_impl.hpp file in a previous commit.
2014-04-04 21:21:22 +02:00
Markus Blatt 3375e313e5 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
Markus Blatt 8668ce7b71 Merge remote-tracking branch 'upstream/master' into master-refactor-for-cpgrid-support
Manually resolved conflicts:
	opm/core/io/eclipse/EclipseWriter.cpp
	opm/core/io/eclipse/EclipseWriter.hpp
	opm/core/props/BlackoilPropertiesFromDeck.cpp
	opm/core/simulator/initState_impl.hpp
	opm/core/wells/WellsManager.cpp
	opm/core/wells/WellsManager.hpp
2014-03-27 15:27:11 +01:00
Kai Bao 2a359b6457 Added the test and test data for the new SimulatorTimer
Added test_timer.cpp, TESTTIMER.DATA
2014-03-26 17:45:39 +01:00
osae 5df819d509 Merge branch 'master' of git://github.com/OPM/opm-core
Conflicts:
	CMakeLists_files.cmake
2014-03-26 14:51:06 +01:00
Markus Blatt 1e205adcf1 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
Markus Blatt 7281a9567f 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