Compare commits

...

14 Commits

Author SHA1 Message Date
Arne Morten Kvarving
a6f982b4e4 update packaging versions for final release 2015-11-04 13:13:54 +01:00
Atgeirr Flø Rasmussen
752790f150 Update package release tags. 2015-10-28 15:49:42 +01:00
Markus Blatt
6b97556a5f Make constructor taking one argument explicit. 2015-10-28 15:45:47 +01:00
Markus Blatt
958b9243bc Added comment about 9 entries in permeability tensor. 2015-10-28 15:45:28 +01:00
Markus Blatt
08b45c4203 Renamed well_index to well_index_on_proc and added comment.
This should prevent misunderstandings about what the
well_index_on_proc is. It is not the well_index according to
the eclipse state (on open wells count) but the index of the
wells that are stored on this process' domain.
2015-10-28 15:45:00 +01:00
Markus Blatt
0754573f2e Fix grammar and spelling in warning. 2015-10-28 15:44:38 +01:00
Markus Blatt
f35417a930 Fixes well manager for wells crossing into cells that overlap.
In the parallel run there are cases where wells perforate cells
that are neighbors of overlap/halo cells. On other process only
parts of the well are seen as perforations. These wells should be
ignored there. While the well was indeed ignored, the perforations
found where mistakenly added to the well found due not clearing the
wellperf_data[well_index]. This commit now does this clearing and
results in the right handling of wells for e.g. SPE9.
2015-10-28 15:44:17 +01:00
Markus Blatt
32a3d39fb7 Allow the rock properties to be zero initialized without a deck.
This is needed in parallel runs where the rock properties will not
be read from the deck but be communicated from a master process. Nevertheless
we need to be able to initialize the data structures with the correct
container size. In addition we need to be able to change the container values
from opm-autodiff's BlackoilPropsDataHandle.
2015-10-28 15:43:47 +01:00
Markus Blatt
b8933afd79 [bugfix] Fixes copyOwnerToAll.
Previously, we copied owner/overlap to all which is clearly wrong.
Now we copy from owner to all as the function name says.
2015-10-28 15:43:29 +01:00
Atgeirr Flø Rasmussen
c6ea63ffad Merge pull request #914 from akva2/release/2015.10
Backport dune.module and version.h changes
2015-10-26 12:32:30 +01:00
Atgeirr Flø Rasmussen
7fac2642d3 Remove version.[ch] files. 2015-10-26 11:19:01 +01:00
Atgeirr Flø Rasmussen
7922051e08 Bump version and unify format of dune.module.
Backports relevant parts of 40220994c7
2015-10-26 11:18:43 +01:00
Arne Morten Kvarving
0b4ec3ff11 update versions 2015-10-26 10:52:51 +01:00
Arne Morten Kvarving
a7b1e69a45 disable satfunc test as it is broken
fix equil test by adding fuzz to comparison
2015-10-26 10:52:38 +01:00
11 changed files with 43 additions and 50 deletions

View File

@ -143,7 +143,6 @@ list (APPEND MAIN_SOURCE_FILES
opm/core/utility/parameters/tinyxml/tinyxmlerror.cpp
opm/core/utility/parameters/tinyxml/tinyxmlparser.cpp
opm/core/utility/parameters/tinyxml/xmltest.cpp
opm/core/version.c
opm/core/wells/InjectionSpecification.cpp
opm/core/wells/ProductionSpecification.cpp
opm/core/wells/WellCollection.cpp
@ -183,7 +182,7 @@ list (APPEND TEST_SOURCE_FILES
tests/test_parallel_linearsolver.cpp
tests/test_param.cpp
tests/test_blackoilfluid.cpp
tests/test_satfunc.cpp
# tests/test_satfunc.cpp
tests/test_shadow.cpp
tests/test_equil.cpp
tests/test_regionmapping.cpp
@ -310,7 +309,6 @@ list (APPEND PUBLIC_HEADER_FILES
opm/core/linalg/blas_lapack.h
opm/core/linalg/call_umfpack.h
opm/core/linalg/sparse_sys.h
opm/core/version.h
opm/core/wells.h
opm/core/well_controls.h
opm/core/pressure/CompressibleTpfa.hpp

16
debian/changelog vendored
View File

@ -1,17 +1,5 @@
opm-core (2013.10-2~precise) precise; urgency=low
opm-core (2015.10-rfinal-1~trusty) trusty; urgency=medium
* New release
-- Arne Morten Kvarving <arne.morten.kvarving@sintef.no> Tue, 22 Oct 2013 12:22:29 +0200
opm-core (2013.03-2) precise; urgency=low
* Now compatible with precise + launchpad
-- Arne Morten Kvarving <arne.morten.kvarving@sintef.no> Wed, 03 Apr 2013 12:27:52 +0200
opm-core (2013.03-1) precise; urgency=low
* Initial release
-- Arne Morten Kvarving <arne.morten.kvarving@sintef.no> Mon, 14 Jan 2013 15:33:54 +0100
-- Arne Morten Kvarving <arne.morten.kvarving@sintef.no> Fri, 23 Oct 2015 11:41:33 +0200

View File

@ -1,7 +1,13 @@
####################################################################
# Dune module information file: This file gets parsed by dunecontrol
# and by the CMake build scripts.
####################################################################
Module: opm-core
Description: Open Porous Media Initiative Core Library
# if you change this, make sure to also change opm/core/version.h
Version: 1.1
Label: 2013.10
Version: 2015.10
Label: 2015.10
Maintainer: atgeirr@sintef.no
MaintainerName: Atgeirr F. Rasmussen
Url: http://opm-project.org
Depends: dune-common (>= 2.2) dune-istl (>= 2.2) opm-common opm-parser opm-material

View File

@ -144,8 +144,9 @@ public:
void copyOwnerToAll (const T& source, T& dest) const
{
typedef Dune::Combine<Dune::EnumItem<Dune::OwnerOverlapCopyAttributeSet::AttributeSet,Dune::OwnerOverlapCopyAttributeSet::owner>,Dune::EnumItem<Dune::OwnerOverlapCopyAttributeSet::AttributeSet,Dune::OwnerOverlapCopyAttributeSet::overlap>,Dune::OwnerOverlapCopyAttributeSet::AttributeSet> OwnerOverlapSet;
typedef Dune::EnumItem<Dune::OwnerOverlapCopyAttributeSet::AttributeSet,Dune::OwnerOverlapCopyAttributeSet::owner> OwnerSet;
typedef Dune::Combine<OwnerOverlapSet, Dune::EnumItem<Dune::OwnerOverlapCopyAttributeSet::AttributeSet,Dune::OwnerOverlapCopyAttributeSet::copy>,Dune::OwnerOverlapCopyAttributeSet::AttributeSet> AllSet;
OwnerOverlapSet sourceFlags;
OwnerSet sourceFlags;
AllSet destFlags;
Dune::Interface interface(communicator_);
if( !remoteIndices_->isSynced() )

View File

@ -72,6 +72,14 @@ namespace Opm
{
}
RockFromDeck::RockFromDeck(std::size_t number_of_cells)
: porosity_(number_of_cells, 0),
// full permeability tensor in 3D stores 9 scalars
permeability_(number_of_cells*9, 0.0),
permfield_valid_(number_of_cells, false)
{
}
void RockFromDeck::init(Opm::EclipseStateConstPtr eclState,
int number_of_cells, const int* global_cell,
const int* cart_dims)

View File

@ -31,10 +31,16 @@ namespace Opm
class RockFromDeck
{
// BlackoilPropsDataHandle needs mutable
// access to porosity and permeability
friend class BlackoilPropsDataHandle;
public:
/// Default constructor.
RockFromDeck();
/// Creates rock properties with zero porosity and permeability
/// \param number_of_cells The number of cells
explicit RockFromDeck(std::size_t number_of_cells);
/// Initialize from deck and cell mapping.
/// \param eclState The EclipseState (processed deck) produced by the opm-parser code
/// \param number_of_cells The number of cells in the grid.

View File

@ -350,7 +350,7 @@ namespace Opm
const double temp,
const double sat_oil = 0.0 ) const
{
if (sat_oil > 0.0) {
if (std::abs(sat_oil) > 1e-16) {
return satRv(press, temp);
} else {
return std::min(satRv(press, temp), linearInterpolation(depth_, rv_, depth));

View File

@ -1,8 +0,0 @@
/* this file is written by the build system; don't include it anywhere else */
#include <project-version.h>
/* declaration of the externally visible symbol */
#include <opm/core/version.h>
/* initialization */
const char* const opm_core_version = PROJECT_VERSION;

View File

@ -1,11 +0,0 @@
/**
* This symbol is initialized with the built version of the library.
*/
extern const char* const opm_core_version;
/**
* Current API level (for use with DUNE_VERSION_xxx):
*/
#define OPM_CORE_VERSION_MAJOR 1
#define OPM_CORE_VERSION_MINOR 1
#define OPM_CORE_VERSION_REVISION 0

View File

@ -128,7 +128,11 @@ void WellsManager::createWellsFromSpecs(std::vector<WellConstPtr>& wells, size_t
wellperf_data.resize(wells.size());
wells_on_proc.resize(wells.size(), 1);
int well_index = 0;
// The well index on the current process.
// Note that some wells are deactivated as they live on the interior
// domain of another proccess. Therefore this might different from
// the index of the well according to the eclipse state
int well_index_on_proc = 0;
for (auto wellIter= wells.begin(); wellIter != wells.end(); ++wellIter) {
WellConstPtr well = (*wellIter);
@ -198,7 +202,7 @@ void WellsManager::createWellsFromSpecs(std::vector<WellConstPtr>& wells, size_t
}
pd.well_index *= wellPi;
}
wellperf_data[well_index].push_back(pd);
wellperf_data[well_index_on_proc].push_back(pd);
}
} else {
++shut_completions_number;
@ -226,18 +230,19 @@ void WellsManager::createWellsFromSpecs(std::vector<WellConstPtr>& wells, size_t
// Check that the complete well is on this process
if ( sum_completions_on_proc < completionSet->size() )
{
std::cout<< "Well "<< well->name() << " semms not be in "
std::cout<< "Well "<< well->name() << " does not seem to be"
<< "completely in the disjoint partition of "
<< "process deactivating here." << std::endl;
<< "process. Therefore we deactivate it here." << std::endl;
// Mark well as not existent on this process
wells_on_proc[wellIter-wells.begin()] = 0;
wellperf_data[well_index_on_proc].clear();
continue;
}
}
}
}
{ // WELSPECS handling
well_names_to_index[well->name()] = well_index;
well_names_to_index[well->name()] = well_index_on_proc;
well_names.push_back(well->name());
{
WellData wd;
@ -253,7 +258,7 @@ void WellsManager::createWellsFromSpecs(std::vector<WellConstPtr>& wells, size_t
}
}
well_index++;
well_index_on_proc++;
}
// Set up reference depths that were defaulted. Count perfs.

View File

@ -2,10 +2,10 @@
# spec file for package opm-core
#
%define tag rc3
%define tag final
Name: opm-core
Version: 2013.10
Version: 2015.10
Release: 0
Summary: Open Porous Media - core library
License: GPL-3.0