Commit Graph

3073 Commits

Author SHA1 Message Date
Joakim Hove
bfca3e895c Moved integration tests. 2017-06-27 09:47:15 +02:00
Joakim Hove
416959c359 Merge pull request #1097 from joakim-hove/explicit-keyworlist
Added EclipseGrid method to get corner positions.
2017-06-27 09:41:24 +02:00
Joakim Hove
3c9f56a146 Initialize TEMPI property from RTEMP keyword. 2017-06-26 18:32:52 +02:00
Joakim Hove
65165f4049 Added keywords RTEMP and RTEMPA. 2017-06-26 18:32:52 +02:00
Joakim Hove
009e00ed61 Added EclipseGrid method to get corner positions. 2017-06-23 17:05:11 +02:00
Joakim Hove
27096ea70f Merge pull request #1095 from bska/support-radial-properties
3D Properties Test: Check Radial Tensor Support
2017-06-21 11:55:22 +02:00
Joakim Hove
9ad260ad5c Merge pull request #1093 from andlaus/add_PLMIXNUM
Add plmixnum
2017-06-21 11:15:38 +02:00
Andreas Lauser
a3c02e8228 add the PLMIXNUM keyword and the corresponding grid property 2017-06-21 10:44:10 +02:00
Bård Skaflestad
df4176ae39 3D Properties Test: Check Radial Tensor Support
Mostly for completeness since the underlying implementation just
piggy-backs on the existing support for Cartesian tensors.
2017-06-21 10:16:12 +02:00
Andreas Lauser
c0ee823513 fix some shenanigans in the OPERNUM grid property definition
it would be weird if the default for the OPERNUM would be region 0
(a.k.a. -1 in C++) while it is 1 for any other *NUM keyword.

also, the //* token should never appear in any productive code. if a
case distinction between C and C++ is necessary, use `#if __cplusplus`!
2017-06-20 23:14:13 +02:00
Bård Skaflestad
e4010e87bc Eclipse3DProperties: Recognize Radial Permeability
Specifically, the PERMR and PERMTHT keywords honour the same rules
as the Cartesian specification (PERMX &c).
2017-06-20 20:37:43 +02:00
Bård Skaflestad
419ec32a2b Relocate RADIAL Keyword to RUNSPEC
As per specification.
2017-06-20 20:35:51 +02:00
Joakim Hove
537ddbea4b Merge pull request #1081 from joakim-hove/explicit-keyworlist
Added explicit list of keywordfiles.
2017-06-20 16:42:22 +02:00
Tor Harald Sandve
80d07d4191 Merge pull request #1091 from totto82/runSpec
Add polymer to phase class in Runspec
2017-06-20 16:20:09 +02:00
Joakim Hove
b2bee96c34 Keyword generator will use explicit list.
The keyword generator will no longer scan the directory with keywords,
instead the explicitly/manually maintained list of keywords will be
passed as an argument to the keyword generator.

The generator will only run once, creating header files, source and
test.
2017-06-20 10:45:06 +02:00
Joakim Hove
16b062ccc2 Added explicit list of keywordfiles. 2017-06-20 10:45:06 +02:00
Joakim Hove
16e12b0a65 Added TimeMap::forward( ) 2017-06-19 10:54:34 +02:00
Joakim Hove
e802737ec4 Changed from boost datetim to std::time_t. 2017-06-19 10:54:33 +02:00
Joakim Hove
f299984280 Changed TimeMap::operator[] to return std::time_t 2017-06-19 10:54:33 +02:00
Joakim Hove
b6afb2ab8c Removed date accessor from IOconfig/RestartConfig. 2017-06-18 16:55:22 +02:00
Tor Harald Sandve
bb0f4f2886 Add polymer to phase class in Runspec
Also add test for solvent in RunspecTests.
2017-06-16 14:01:10 +02:00
Joakim Hove
554e7217db Create boost targets names dynamically
On some systems, in particular Windows or custom boosts, plenty
information about configuration is embedded into the library name.
However, opm-parser's boost names were hard coded to the vanilla library
names, which leads to libraries not being found.

Generate the target names dynamically (and address them as variables) so
that the target names match the name of the library actually being
linked to - a name which is also then later exported to the
opm-parser-config.cmake file.
2017-06-14 15:34:24 +02:00
Atgeirr Flø Rasmussen
3502105357 Merge pull request #1083 from akva2/adjust_spe5
adjust for changed opm-data path
2017-06-12 14:35:36 +02:00
Andreas Lauser
178be3e8a6 add SSOL to the double grid properties
the keyword is already present, but as far as I can see it was not yet
treated as a grid property.
2017-06-12 11:02:28 +02:00
Andreas Lauser
938bac204c add support for the the SPOLY keyword
i.e. this allows to specify the initial polymer concentration within
the reservoir.
2017-06-12 11:02:28 +02:00
Arne Morten Kvarving
fba9072c17 adjust for changed opm-data path 2017-06-12 10:29:01 +02:00
Joakim Hove
11632729d3 Merge pull request #1082 from joakim-hove/travis-environment
Set env variable when running travis.
2017-06-11 23:33:01 +02:00
Joakim Hove
1548305837 Set env variable when running travis. 2017-06-11 22:29:44 +02:00
Arne Morten Kvarving
b353126acf pass by reference 2017-06-09 17:38:42 +02:00
Arne Morten Kvarving
d459db661f quell signed/unsigned mismatch comparison warnings 2017-06-09 17:38:42 +02:00
Arne Morten Kvarving
aa21cd8b13 quell cppcheck warnings for non-explicit constructor
- the implicit casts from std::string/char* is part of the design for
the view class so we do not want to disable those.
- intializer list constructors should be implicitly called
2017-06-09 17:38:42 +02:00
Arne Morten Kvarving
1eae9ed8c7 explicitly add default constructor to quell warnings 2017-06-09 17:38:42 +02:00
Arne Morten Kvarving
18f15e7432 mark constructors as explicit 2017-06-09 17:38:42 +02:00
Arne Morten Kvarving
7805a533f8 initialize members 2017-06-09 17:38:42 +02:00
Arne Morten Kvarving
2faaab198e prefer initializer list 2017-06-09 17:38:42 +02:00
Arne Morten Kvarving
51208ac4f5 add static analysis support 2017-06-09 15:46:21 +02:00
Joakim Hove
159eb7b562 Using std::to_string insteadof boost::lexical_cast. 2017-06-08 08:27:24 +02:00
Joakim Hove
494cb74124 Limited support for cylindrical grids.
For cylindrical grids based on the keyword set DRV, DTHETAV, DZV and
TOPS the EclipseGrid implementation will create a cornerpoint
representation of the grid.
2017-06-08 08:26:43 +02:00
Joakim Hove
fbb2ce73cd Added circle property to EclipseGrid 2017-06-08 07:01:25 +02:00
Joakim Hove
d4a4401b59 New keywords required to support cylindrical grids 2017-06-08 07:01:24 +02:00
Markus Blatt
cfbcd27ced Merge pull request #1078 from joakim-hove/DEBUG-debug
Changed debug -> DEBUG to avoid #define conflict
2017-06-06 21:33:27 +02:00
Joakim Hove
eefbdd2efb Changed debug -> DEBUG to avoid #define conflict 2017-06-06 20:32:56 +02:00
jokva
6af2cad882 Merge pull request #1071 from jokva/include-filesystem-path
Include filesystem path, boost_test depends on system
2017-06-02 18:38:12 +02:00
Arne Morten Kvarving
dd5aac18eb update path due to opm-data restructuring 2017-06-02 14:33:30 +02:00
Jørgen Kvalsvik
f9639a330b Include header for boost/filesystem/path 2017-06-02 14:04:20 +02:00
Jørgen Kvalsvik
c138e817bb Include boost/filesystem/path.hpp in JsonObject 2017-06-01 15:29:23 +02:00
Jørgen Kvalsvik
4adda14564 Generate keywords source and test files separately
Simplify the generator logic a bit by only creating one
ParserKeywords.cpp file, and create either source code for the library
or for the test. This is faster to compile serially, but is not possible
to compile in parallel. Still, it's a fair simplification, and clarifes
the makefile quite a bit, and makes dependencies and generation clearer.
2017-06-01 15:29:23 +02:00
Jørgen Kvalsvik
477fa5a988 Combine test files, reduce number of targets
In an effort to reduce the numbers of targets built, and consequently
the repeated work and overhead of compiling boost test, a series of
test programs are combined to larger modules.

Every target typically has a constant cost of 3-6s, depending on the
computer, just for the make to set up dependencies and for the compiler
to parse and compile the testing framework and other dependencies. Each
set of tests typically add very little, so significant savings are
achieved by merging targets.

When tested on a 2015 i5m laptop, this reduced serial, single-core
compile time from ~14m45s to ~11m15s.
2017-06-01 15:29:23 +02:00
Jørgen Kvalsvik
e884b0664c Redesign cmake
Tune the makefile according to new principles, which adds a few bells
and whistles and for clarity.

Synopsis:

* The dependency on opm-common is completely gone. This is reflected in
  travis and appveyor as well. No non-kitware cmake modules are used.
* Directories are flattened, quite a bit - source code is located in the
  lib/ directory if it belongs to opm-parser, and external/ if third
  party.
* The sibling build feature is implemented through cmake's
  export(PACKAGE) rather than implicitly looking through source files.
* Targets explicitly set required public and private include
  directories, compile options and definitions, which cmake will handle
  and propagate
* opm-parser-config.cmake for downstream users is now provided.
* Dependencies are set up using targets. In the future, when cmake 3.x+
  can be used, these should be either targets from newer Find modules,
  or interface libraries.
* Fewer system specific assumptions are coded in, instead we assume
  cmake or users set up system specific details.
* All module wide configuration and looking up libraries is handled in
  the root makefile - all sub directories only set up libraries and
  compile options for the module in question.
* Targets are defined and links handled transitively because cmake now
  is told about them. ${module_LIBRARIES} variables are gone.

This is largely guided by the principles outlined in
https://rix0r.nl/blog/2015/08/13/cmake-guide/

Most source files are just moved - if they have some content change then
it's nothing more than include fixes or similar in order to make them
compile.
2017-06-01 15:29:23 +02:00
Joakim Hove
430b216027 Merge pull request #1069 from jijordre/field_oil_efficiency
Add unit test for field oil efficiency (aka FOE)
2017-06-01 12:06:27 +02:00