Commit Graph

115 Commits

Author SHA1 Message Date
Joakim Hove
867fdb2de5 Added maskedSet() and initMask() GridProperties<T> 2014-12-18 18:02:08 +01:00
Joakim Hove
b585655a5c Changes in the log class:
1. Moved to from eclipse/Parser -> eclipse/Log
 2. Renamed ParserLog -> OpmLog
2014-12-15 17:36:10 +01:00
Andreas Lauser
0cba93a283 address the review comment of #373 2014-12-09 12:41:04 +01:00
Tor Harald Sandve
bb40baa96f Make MULTREGT work for NNC.
The region multipliers are no longer added  to the cartesian logical
MULT[XYZ] structure. Instead a new method
getRegionMultiplier(globalIndex1, globalIndex2,FaceDir) is added that
return the multiplier between globalIndex1 cell and globalIndex2 cell.
The face direction is added to support directional dependent MULTREGT
input. This implementation of MULTREGT also supports restricting the
multipliers to only apply for NNC or NONNNC.
2014-12-09 12:14:36 +01:00
Joakim Hove
e03413f149 Merge pull request #378 from andlaus/remove_trailing_whitespace
remove all trailing white space
2014-12-08 19:54:53 +01:00
Andreas Lauser
aeb17403a7 GridPropertyInitializers: fix signedness comparison warning 2014-12-08 18:28:19 +01:00
Andreas Lauser
ea38a25af4 remove all trailing white space
this is just the result of

```
find -iname "*.[ch]pp" | xargs sed -i "s/ *$//"
find opm/parser/share/keywords -type f |  xargs sed -i "s/ *$//"
```

so if it causes conflicts with other patches, the others should get
priority. The rationale behind this patch is that some people tell
their editor to remove white space which leads to larger than
necessary patches...
2014-12-08 16:34:28 +01:00
Andreas Lauser
ad7f915a3e add a grid property for TEMPI
by default it is initialized using the temperature vs depth table...
2014-12-03 18:51:00 +01:00
Joakim Hove
b2fbbfc8a7 Added small method to check if cell is active. 2014-11-16 20:07:03 +01:00
Joakim Hove
ffce0408c4 Removed unused dummy grids in test deck. 2014-11-10 17:07:55 +01:00
Joakim Hove
52883c9e69 Check that exception is raised if PORV is initialized without grid. 2014-11-10 00:17:10 +01:00
Joakim Hove
24cb9944c6 EclipseGrid - check content of c_ptr before use
This commit contains quite large changes to the EclipseGrid. The main
functional change is that the access to the ecl_grid_type pointer is
protected. In addition there are 'white space' changes due to methods
moving around and some methods have been marked static.
2014-11-10 00:14:55 +01:00
Joakim Hove
6f4b353fe5 Using shared_ptr<EclipseGrid> instead of bare EclipseGrid * 2014-11-09 23:46:56 +01:00
Joakim Hove
39bca17ce0 Split EclipseGrid in dimensions and cell info.
In many cases the only required information in an EclipseGrid instance
is the cartesian dimensions. To facilitate simpler testing - and not
have to create a full dummy grid the dimensions have been internalized
as a separate nx,ny,nz triplet. With this commit it is possible to
instantiate a grid with only dimensions, and no underlying ecl_grid_type
pointer.
2014-11-09 23:31:53 +01:00
Andreas Lauser
a7ba8af558 EclipseState: make specifying anything which requires a grid an error if no grid could be instantiated 2014-11-09 17:37:32 +01:00
osae
954decba24 A few missing "SWMAX" ... (confer issue #334) 2014-10-30 18:49:34 +01:00
Joakim Hove
879f30e3ff Merge pull request #331 from andlaus/fix_PORV_tests_v2
Fix PORV tests v2
2014-10-21 14:44:16 +02:00
Andreas Lauser
3d2a6354a4 fix the "only <double> can be queried for NaN" exceptions
seems like some compilers don't overwrite an inline method of a
template class with its specialization. A compiler warning would have
been nice to have in this case, though...
2014-10-21 13:40:49 +02:00
Andreas Lauser
5b5a3337b0 EclipseState: don't use static vectors to specify supported grid properties
this fixes a really ugly and hard to find bug if EclipseState was
instanced multiple times: The EclipseState object passed to some of
these structures was destroyed, but the arrays stayed even if the next
EclipseState object was at a different location and also could use a
completely different grid...
2014-10-21 13:03:09 +02:00
Andreas Lauser
fa845b287e make the PORV test work more reliably
this seems to be a compiler bug, but it could be something
else. Anyway, using multiple functions for the tests instead of nested
scopes is probably not the worst idea anyway...
2014-10-21 11:48:51 +02:00
Joakim Hove
a50e66b8a9 Added BoxTest which will throw for oversized keyword 2014-10-15 13:26:14 +02:00
Joakim Hove
c637463327 Added functionality to calculate PORV property. 2014-10-15 13:26:14 +02:00
Joakim Hove
e0cf8cebde Added postprocessor properties to scatter from top.
For the petrophysical properties PERM? and PORO only the top layer must
be specified, cells further down can be copied from the layer
above. This functionality is implemented with a GridProperty
postprocessor.
2014-10-10 15:48:57 +02:00
Joakim Hove
1df2e656a9 Added post processor to GridProperty 2014-10-10 15:48:01 +02:00
Joakim Hove
e8c5176f1b Added containsNaN() method to GridProperty 2014-10-10 15:48:01 +02:00
Joakim Hove
b26475031c Added GridProperty::multiplyWith( ) 2014-10-10 15:48:00 +02:00
Joakim Hove
88d9319197 Added iset() method to GridProperty 2014-10-10 15:48:00 +02:00
Joakim Hove
dc3f37dd27 Added LogParser argument. 2014-10-10 15:24:58 +02:00
Joakim Hove
82e8d1a56b Added static_cast<long long> before calling std::to_string() 2014-10-10 15:24:26 +02:00
Joakim Hove
14ba7e7e74 Merge pull request #310 from andlaus/improve_logging
Improve logging
2014-10-10 15:04:18 +02:00
Joakim Hove
e5fe0a9b9a New MULTREGT test based on copy FLUXNUM -> MULTNUM 2014-10-09 17:14:27 +02:00
Andreas Lauser
f51016db57 EclipseState: significantly extend usage of the new logging facility
in the process quite a few exceptions have been converted into log
messages.
2014-10-07 15:39:15 +02:00
Joakim Hove
70c94a36b2 Renamed GridProperty::size -> GridProperty::getCartesiansize 2014-09-26 09:57:33 +02:00
Joakim Hove
fa335b50fb Integrated the MULTREGT in the EclipseState/TransMult 2014-09-26 09:57:33 +02:00
Joakim Hove
9c43c63d9e Added class MULTREGTScanner
The class MULTREGTSCanner internalizes the content of one or several
MULTREGT keywords and can then scan through GridProperty region objects
to find region interfaces as specified in the MULTREGT keyword.
2014-09-26 09:53:25 +02:00
Joakim Hove
6a99d7c5ea Updated FaceDir functionality to support MULTREGT 2014-09-26 09:53:24 +02:00
Joakim Hove
f8cbb6592a Added getNXYZ() to the grid property. 2014-09-26 09:53:24 +02:00
Andreas Lauser
755b8f53cf check if the keyword item has sufficiently many data points before using defaultApplied()
this fixes the GridPropertyTests unit test. The morale of this is that
I should probably never trust my own stupidity...
2014-09-25 22:32:07 +02:00
Andreas Lauser
45619a93f2 GridPropertyInitializers: add unit test 2014-09-25 21:36:43 +02:00
Andreas Lauser
c5f602a17c grid properties: implement a table-lookup initializer for the endpoint scaling keywords 2014-09-25 21:36:42 +02:00
Andreas Lauser
f54de8eafb grid properties: introduce initializer objects
this makes it possible to define more complicated initializers for
grid properties. (needed for example for keywords like ISGU.) This
patch does not introduce them yet, but only adds the necessary
infrastructure.

notes:

 - to get around cyclic definitions in template classes, the
   EclipseState is changed to a (defaulted) template parameter which
   causes the compiler to only look up the class definition at
   instantiation time.
 - using std::shared_ptr in the property initializers would lead to
   cyclic references which would cause memory leaks. To avoid that,
   plain old references where used in most places. I think this is
   okay as the GridProperty objects should be considered internal to
   EclipseState and thus the EclipseState object should live at least
   as long as GridProperty objects...
2014-09-25 21:36:42 +02:00
Andreas Lauser
036db1da4a GridProperties: don't use the garbage from defaulted data items
e.g.

```
SWL
10*0.1 10* 10*0.2 /
```

resulted in the SWL keyword exhibiting undefined values for the middle
ten data points.
2014-09-25 21:36:42 +02:00
Andreas Lauser
68df912f7d data items: allow to set only a subset of the values
e.g. Eclipse specifies that for PERMX only the topmost layer needs to
be specified, i.e. the following is valid on a 3x3x3 grid

```
PERMX
9*10 /
```

the previous behaviour was to throw.

also, mark if data items have been defaulted, i.e., the item of

```
PERMX
* /
```

will now return true for 'defaultApplied()'.
2014-09-24 12:47:57 +02:00
Joakim Hove
f88fd65937 Implemented PINCH and MINPV as Value<double> 2014-09-04 22:10:16 +02:00
Joakim Hove
c1f42aee64 Moved OrderMap to EclipseState/Util 2014-09-04 14:09:33 +02:00
Atgeirr Flø Rasmussen
da50b320fa Add MINPV features to EclipseGrid class. 2014-08-25 11:15:39 +02:00
Atgeirr Flø Rasmussen
52c7a4bc3f Remove section-using EclipseGrid constructors.
Also:
 - Simplify implementation (no templates).
 - Update tests.
2014-08-22 12:12:37 +02:00
Atgeirr Flø Rasmussen
eaea25772e Create pointer-to-const objects.
Older gcc (4.4) does not allow conversion of shared_ptr<Foo> to
shared_ptr<const Foo>. Pointed out by @bska.
2014-08-21 15:13:50 +02:00
Atgeirr Flø Rasmussen
193e3d7012 Added test case for construction from deck with no sections. 2014-08-21 13:19:34 +02:00
Atgeirr Flø Rasmussen
4253fb151b Allow DIMENS to be used as well as SPECGRID when no sections are found.
Also refactor DIMENS/SPECGRID to dimension code as a function.
2014-08-21 13:14:03 +02:00