Commit Graph

4776 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
46be17cf58
Merge pull request #470 from joakim-hove/set-opm-pack
Add cmake variable $OPM_PACK_COMMAND
2018-08-08 13:26:47 +02:00
Joakim Hove
ce5c617f41 Add cmake variable $OPM_PACK_COMMAND 2018-08-07 22:50:56 +02:00
Joakim Hove
ca1833e6ed
Merge pull request #471 from joakim-hove/parse-test-spe9
Add precision property to DeckOutput class - default = 10
2018-08-07 18:45:05 +02:00
Joakim Hove
bb2e5e0370 Add precision property to DeckOutput class - default = 10 2018-08-07 18:44:05 +02:00
Atgeirr Flø Rasmussen
f6cc04a4ab
Merge pull request #467 from akva2/remove_deck_assignment_operator
changed: delete assignment operator in Deck class
2018-08-03 14:55:35 +02:00
Arne Morten Kvarving
d6c56982cc
Merge pull request #469 from akva2/update_data_with_pr
fixed: allow using update_data with a opm-tests PR
2018-08-03 12:58:44 +02:00
Arne Morten Kvarving
ee6fab7395
Merge pull request #468 from akva2/strip_test_prefix
added: strip test_ prefix from tests added with opm_add_test
2018-08-03 12:08:15 +02:00
Arne Morten Kvarving
93b8d26f86 fixed: allow using update_data with a opm-tests PR
the update_data command needs a full opm-tests checkout,
not just a shallow clone of the PR branch. we thus first
copy the shared copy, then we pull the PR branch into that copy.
2018-08-03 10:19:08 +02:00
Arne Morten Kvarving
0627a9f8ef added: strip test_ prefix from tests added with opm_add_test 2018-08-03 09:58:59 +02:00
Arne Morten Kvarving
3c88335852 changed: delete assignment operator in Deck class 2018-08-01 13:37:21 +02:00
Atgeirr Flø Rasmussen
ef3ef3142a
Merge pull request #465 from joakim-hove/opm-pack
Add application opmpack to load a deck and dump it again as one stream
2018-08-01 08:16:03 +02:00
Joakim Hove
9c6a0cc5d9 Add application opmpack to load a deck and dump it again as one stream 2018-07-31 15:05:34 +02:00
Markus Blatt
6d58f519fd
Merge pull request #459 from blattms/search-deps-in-prereqs
Search for the prerequisites from package configuration file.
2018-07-16 14:32:23 +02:00
Markus Blatt
4a5333887b Research for software if we search for COMPONENTS.
Otherwise we will never search for e.g. Boost multiple
times and the upmost module in the hierarchy will dictate
the components to be used. That does not work for downstream
modules.

Therefore with this change we check whether there is an argument
COMPONENTS passed to find_package and make sure there will be
another call to it if that is the case.
2018-07-13 16:10:32 +02:00
Markus Blatt
760d0d70b4 Export ENABLE_ECL_INPUT as it is used in opm-common-prereq.cmake 2018-07-12 12:25:21 +02:00
Markus Blatt
563c053d3a Set only ecl_LIBRARIES and nothing else for ecl. 2018-07-12 12:25:21 +02:00
Markus Blatt
cbd44ff67a Remove unneeded opm_common_processed variable.
As we now process the prerequisites in the package configuration file
one search for opm-common is fully sufficient.
2018-07-12 12:25:21 +02:00
Markus Blatt
32dabd6572 Handle prerequisites at the end of package configuration file.
The code in @opm-project_NAME@-prereqs uses macros from OpmPackage.cmake. At
the previous location that file was not yet included for the module opm-common
as this is done in the section @OPM_PROJECT_EXTRA_CODE@, which also sets
CMAKE_MODULE_PATH.
2018-07-12 12:24:43 +02:00
Bård Skaflestad
3d61162e29
Merge pull request #451 from bska/restart-xWELL-output
Revise Infrastructure for Well Arrays in Restart Files
2018-07-12 11:57:37 +02:00
Markus Blatt
3fabf2aad3 Unify handling of package dependency.
There was one macro to do that and one inline code in another
macro. With these changes we always use the macro for this.
2018-07-12 10:45:08 +02:00
Bård Skaflestad
3fa0064e5b VectorItems/well.hpp: Annotate More Items
In particular recognize that the 'item*' indices represent values
that aren't fully characterised yet.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
62f267cf89 INTEHEAD: Document Inter-Module Relations
In particular, the index list in InteHEAD.cpp must use public values
from VectorItems/intehead.hpp if available.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
f16b45eeed SWEL Array: Use L=O+W if LRAT Limit Unavailable
As an alternative source for LRAT data.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
7b301cb300 Aggregate Well Data: Report Default BHP Limits if Defaulted
Use E100 default values.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
34b1b3a073 xWEL Restart Vectors: Switch to Using Named Indexes
While here, also update pertinent unit tests to use the same vector
identfication scheme.

Suggested by: [at]joakim-hove and [at]atgeirr.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
20d0565220 Char Array Unit Test: Introduce Convenience Type Alias
Mostly for shortening constructor calls.

Suggested by: [at]atgeirr.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
1695dfe78b Char-Array Unit Test: Prune Duplicate Check
Identified by [at]atgeirr.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
387be05c77 WindowedArray: Add Doxygen-Style Reference Documentation
Requested by: [at]atgeirr
2018-07-12 10:44:27 +02:00
Bård Skaflestad
349ee4657e WindowedArray: Switch to Explicitly Using vector<T>
Suggested by: [at]joakim-hove and [at]atgeirr
2018-07-12 10:44:27 +02:00
Bård Skaflestad
7d7ec8efca WindowedArray: Rename Include Guards
Original name was a remnant of an earlier implementation.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
5c1aa3657d String Trim: Fix Inverted Logic for Blank String
Thanks to: [at]atgeirr.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
bf58a16e33 Rewrite 'wellLoop()' in Terms of Iteration Counter
Suggested by [at]atgeirr.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
84739c3bed InteHEAD: Publish Index of Common Size Items
Use these in implementation of InteHEAD and AggregateWellData.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
1c21ec9d5c Restart *WEL Arrays: Add Facility for Aggregating Vectors
This commit adds a new class that aggregates the *WEL vectors for
restart purposes.  Using the data sources

    - Simulation run's "Schedule" object
    - Simulation run's "UnitSystem" object
    - Current simulation step ("sim_step")
    - WellRates object from simulator at the end of sim_step
    - SummaryState object from Summary class at the end of sim_step

this class will fill in the (presently) known elements of the IWEL
(integers), SWEL (Real/float), XWEL (double precision), and ZWEL
arrays for output to a restart file.  We distinguish contributions
of data sources extracted directly from the simulation deck from
those computed dynamically by the simulator--mostly to separate
concerns and to enable independent testing.  If this introduces too
much computational overhead in actual simulation runs we can fuse
the member functions

    AggregateWellData::captureDeclaredWellData()
    AggregateWellData::captureDynamicWellData()

to reduce the number of loops over active wells.

The overall structure of this facility is that we have a single
templated function, wellLoop(), that calls user-defined "operations"
on each active well.  Each of these operations in turn define a
subset of one of the {I,S,X,Z}WEL arrays pertaining to the
particular well.  We furthermore put implementation functions into
namespaces according to the pertinent arrays.

Many thanks to my Equinor collaborators.
2018-07-12 10:44:27 +02:00
Bård Skaflestad
03b3be48b0 Restart *WEL Arrays: Add Foundational Helper Classes
This commit adds new helper classes,

    Opm::RestartIO::Helpers::CharArrayNullTerm<NChar>
    Opm::RestartIO::Helpers::WindowedArray<T>
    Opm::RestartIO::Helpers::WindowedMatrix<T>

the first of which represents a nul-terminated character string of
'NChar' user data (total array size is NChar + 1).  Mainly intended
for representing Fortran-compatible characters arrays--especially
for ZWEL and similar restart vectors (e.g., ZGRP).

The second two simplify working with subsets of large linear arrays,
particularly those that represent N items per well, group, or
segment.  The WindowedArray is a linear array of windows (N items
per window) packed into a std::vector<T> and the WindowedMatrix
additionally imposes a Row-by-Colum structure which is useful for
the case of N windows (each of size K) for each of M entities (e.g.,
K items for each of N connections for each of M wells).
2018-07-12 10:44:27 +02:00
Bård Skaflestad
b9c68bdc6e InteHEAD: Prune Duplicate Assignments 2018-07-12 10:44:27 +02:00
Bård Skaflestad
7680d1900f
Merge pull request #461 from bska/extra-conn-props
Provide Effective Kh Product as an Extra Connection Property
2018-07-12 10:36:01 +02:00
Bård Skaflestad
0be3f2c76f Unit Tests: Supply Enough Parameters for data::Connection
We must provide cell_pressure, cell_saturation_water,
cell_saturation_gas, and effective_Kh.

Forgotten in commit 687f108.
2018-07-12 00:46:46 +02:00
Bård Skaflestad
d4c49398c5 Recognize Effective Kh in INPUT Unit System
Forgotten in commit 687f108

Pointy Hat: [at]bska
2018-07-12 00:03:01 +02:00
Bård Skaflestad
687f108285 Unit System: Recognize Units for Effective Kh Product
While here, also add check for all (current) unit conversion
constants for METRIC, FIELD, and LAB unit conventions and extend the
existing PVT-M checks to cover effective Kh too.
2018-07-11 22:07:38 +02:00
Bård Skaflestad
48047f8c7a Restart Output (Wells): Store Effective 'Kh' Product
Mostly to forward to SCON array.

While here, also fix 'Missing initializer' warnings in the
'get_completions' unit test.
2018-07-10 17:37:49 +02:00
Bård Skaflestad
3466776c1a Connection: Capture Effective 'Kh' Value from COMPDAT
Needed for restart output (especially, SCON), and also useful for
computing the connection transmissibility factor (WI) in some cases
if not supplied in COMPDAT.
2018-07-10 17:23:04 +02:00
Markus Blatt
efb2904beb Rephrase comment into more proper English 2018-07-10 15:57:10 +02:00
Markus Blatt
d7c855906f Search for the prerequisites from package configuration file.
That is the way it is done in other modules, too. We need this
at least for libecl as this target is used in opm-common_LIBRARIES
and not defined if there was no find_package(ecl) call. That call
is now made during execution of find_package_deps(opm-common).
2018-07-10 15:41:58 +02:00
Joakim Hove
19afcbf769
Merge pull request #458 from joakim-hove/ACTIONX
Add schema for ACTIONX keyword
2018-07-10 10:59:26 +02:00
Joakim Hove
e4d39dc722 Add schema for ACTIONX keyword 2018-07-10 09:35:13 +02:00
Arne Morten Kvarving
c7c2480c01
Merge pull request #455 from blattms/make-calling-prereq-function-possible-without-fuss
Make calling prereq function possible without fuss
2018-07-09 14:40:33 +02:00
Markus Blatt
90cbad1163 Better mark extra code section in opm-project-config.cmake.in 2018-07-06 11:02:50 +02:00
Markus Blatt
5b5d895380 Fix calling function from OpmPackage in package configuration file.
Find package_deps is called from <opm-module-name>-prereqs.cmake that is
included in our package configuration files. So it has to be defined early on.
We do this in the package confguration file of opm-common which needs to
be found before any other OPM module.

This fixes the CMake Error seen be e.g. dumux:
CMake Error at opm-grid/opm-grid-prereqs.cmake:37 (find_package_deps):
  Unknown CMake command "find_package_deps".
2018-07-06 11:02:15 +02:00
Atgeirr Flø Rasmussen
c38100a491
Merge pull request #453 from GitPaean/support_whistctl
handling the over-writing control part of WHISTCTL
2018-07-04 16:17:13 +02:00