Commit Graph

1740 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
4f327a5329 Merge pull request #738 from blattms/constify-parallelinformatio-workaround-eigen
Constify parallelinformation and workaround Eigen's weirdness
2015-01-30 20:35:33 +01:00
Markus Blatt
2caaca4160 Do not rely on begin()/end() of the containers to compute reductions.
One would think that such an assumption is safe in any case,
wouldn't one? But foen Eigen'S container this does not hold.
They do not provide STL compliant iterators, and access to them.
With this patch make the even stricter assumption that the containers
are random access and use operator[] instead of iterators.
2015-01-30 16:10:41 +01:00
Robert K
1f2a429a59 BlackoilState: added forgotten rv to equal method. 2015-01-29 11:07:24 +01:00
Markus Blatt
2a3adf7591 Constified the compute reduction functions.
These should and have to be used with a const object.
2015-01-28 21:55:35 +01:00
Joakim Hove
d2dab23d60 Using Parser to calculate well reference depth. 2015-01-26 12:03:11 +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
Markus Blatt
6fe660a3d5 Do recurse in the recursive funtion computeGlobalReduction!
Somehow this was missed and only the first entry in the tuple
was computed globally.
2015-01-23 20:46:46 +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
033f290392 Add missing return statements. 2015-01-23 16:38:08 +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
4a80474782 Fixes formatting according to Atgeirr's coding style. 2015-01-23 14:56:15 +01:00
Atgeirr Flø Rasmussen
3e69d72fbd Reformat header for readability. 2015-01-23 09:13:43 +01:00
Atgeirr Flø Rasmussen
fb0bccc625 Fix whitespace issues. 2015-01-23 09:12:15 +01:00
Atgeirr Flø Rasmussen
3b1aa47830 Add missing #include <algorithm>. 2015-01-22 13:02:16 +01:00
Atgeirr Flø Rasmussen
73a310725e Fixed size of zero vector passed as gpress. 2015-01-21 21:14:32 +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
Atgeirr Flø Rasmussen
998d5f9d5a Added IncompTpfaSinglePhase class. 2015-01-20 15:47:50 +01:00
Atgeirr Flø Rasmussen
fa16d8f616 Add IncompPropertiesSinglePhase class. 2015-01-20 15:47:50 +01:00
Joakim Hove
c2f9390d95 Wellsmanager will check completion status
With this commit the WellsManager will check the status of completions
before adding them to the internal struct wells
datastructure. Completions can be in the four states:

  OPEN, SHUT, AUTO, POPN

Completions with state == SHUT will be ignored, wheras the wellsmanager
will throw  if the states AUTO or POPN are encountered. The WELOPEN
keyword can also have the value 'STOP'; for completions that is
translated to 'SHUT' by Schedule object.
2015-01-12 12:43:45 +01:00
Joakim Hove
80423a0188 Pure white-space change 2015-01-12 12:43:44 +01:00
Joakim Hove
b9e7c88314 Added missing enum rename 2015-01-12 12:41:56 +01:00
Joakim Hove
a0d41dc130 Added WellCompletion namespace 2015-01-12 12:10:51 +01:00
Tor Harald Sandve
880026e893 Fix comments. 2015-01-09 09:10:10 +01:00
Tor Harald Sandve
1718800e55 Add warning to c solvers when stopped wells occur
Stopped wells are treated as shut wells in the c solvers in opm-core.
I.e they are completly isolated from the domain.
2015-01-09 09:10:10 +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
b8bf45d24d Support stopped wells
The given control is applied to the stopped well, and the status is set
to not open. (i.e closed, but currently named shut)
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
45a2631b7f Put reformatted error message in anonymous namespace. 2015-01-07 10:16:13 +01:00
Atgeirr Flø Rasmussen
dfebd46acf Make compilation of class depend on Boost.Heap availablility.
If boost version is too old, the API is still the same and the
class will build, but throws upon construction.
2015-01-07 09:49:47 +01:00
Atgeirr Flø Rasmussen
1e39010ba4 Fix anisotropy closeness test.
The old test was simply wrong: it computed the M-distance and compared
to the grid radius, which becomes dependent on the scaling of the
metric M. The corrected test in isClose() depends on the anisotropy
ratio of M and the grid radius.
2015-01-02 15:22:02 +01:00
Atgeirr Flø Rasmussen
8491d186d4 Make isClose() use actual grid and metric data.
Note that current implementation is somewhat ad-hoc, and not
in line with the algorithm of the paper.
2014-12-29 12:28:30 +01:00
Atgeirr Flø Rasmussen
b54f4f0e2a Add a utility for actually running the eikonal solver. 2014-12-29 12:28:30 +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
2eab160761 Whitespace fix. 2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
451bca1753 Add computeValueUpdate() to avoid recomputing. 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
cb7be97ee5 Change order of steps in algorithm to avoid rework. 2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
5233d37e63 Follow renaming of function. 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
c5a19b250b Fix bug in distance derivative function. 2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
654e06de00 Work in progress. 2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
5d81306007 Initial versions of compute functions done.
Still has bugs.
2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
22cbcc8bf5 Solver logic finished.
Methods isClose(), computeFromTri() and computeFromLine() are still dummies.
2014-12-29 12:28:29 +01:00
Atgeirr Flø Rasmussen
ee4d2be67e Work in progress on AnisotropicEikonal. 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