mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Communicate rock properties, too.
Somehow I was mislead by the name rock properties that the data stored in them is not associated to grid cells, but to rock regions. With this commit we determine the porosity and permeability by communication.
This commit is contained in:
@@ -242,7 +242,7 @@ public:
|
||||
BlackoilPropsDataHandle(const BlackoilPropsAdFromDeck& sendProps,
|
||||
BlackoilPropsAdFromDeck& recvProps)
|
||||
: sendProps_(sendProps), recvProps_(recvProps),
|
||||
size_(1)
|
||||
size_(11)
|
||||
{
|
||||
// satOilMax might be non empty. In this case we will need to send it, too.
|
||||
// It has to have the same size as the cellPvtRegionIdx_
|
||||
@@ -278,7 +278,12 @@ public:
|
||||
assert( T::codimension == 0);
|
||||
|
||||
buffer.write(sendProps_.cellPvtRegionIndex()[e.index()]);
|
||||
if ( size_ > 1 ) {
|
||||
for( std::size_t i = 0; i < 9; ++i )
|
||||
{
|
||||
buffer.write(sendProps_.rock_.permeability_[e.index()*9+i]);
|
||||
}
|
||||
buffer.write(sendProps_.rock_.porosity_[e.index()]);
|
||||
if ( size_ > 11 ) {
|
||||
buffer.write(sendProps_.satOilMax_[e.index()]);
|
||||
}
|
||||
}
|
||||
@@ -290,7 +295,15 @@ public:
|
||||
double val;
|
||||
buffer.read(val);
|
||||
recvProps_.cellPvtRegionIdx_[e.index()]=val;
|
||||
if ( size_ > 1 ) {
|
||||
for( std::size_t i = 0; i < 9; ++i )
|
||||
{
|
||||
buffer.read(val);
|
||||
recvProps_.rock_.permeability_[e.index()*9+i]
|
||||
= val;
|
||||
}
|
||||
buffer.read(val);
|
||||
recvProps_.rock_.porosity_[e.index()]=val;
|
||||
if ( size_ > 11 ) {
|
||||
buffer.read(val);
|
||||
recvProps_.satOilMax_[e.index()]=val;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user