mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
adjust serialization of VFPProdTable
This commit is contained in:
@@ -124,10 +124,8 @@ struct TrivialFixture {
|
||||
nz(gfr_axis.size()),
|
||||
nu(alq_axis.size()),
|
||||
nv(flo_axis.size()),
|
||||
size{{ nx, ny, nz, nu, nv }},
|
||||
data(size)
|
||||
data(nx*ny*nz*nu*nv)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
~TrivialFixture() {
|
||||
@@ -143,7 +141,7 @@ struct TrivialFixture {
|
||||
for (int k=0; k<nz; ++k) {
|
||||
for (int l=0; l<nu; ++l) {
|
||||
for (int m=0; m<nv; ++m) {
|
||||
data[i][j][k][l][m] = value;
|
||||
(*this)(i,j,k,l,m) = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -166,7 +164,7 @@ struct TrivialFixture {
|
||||
for (int m=0; m<nv; ++m) {
|
||||
double v = m / static_cast<double>(nv-1);
|
||||
// table[thp_idx][wfr_idx][gfr_idx][alq_idx][flo_idx];
|
||||
data[i][j][k][l][m] = x + 2*y + 3*z + 4*u + 5*v;
|
||||
(*this)(i,j,k,l,m) = x + 2*y + 3*z + 4*u + 5*v;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -187,7 +185,7 @@ struct TrivialFixture {
|
||||
for (int k=0; k<nz; ++k) {
|
||||
for (int l=0; l<nu; ++l) {
|
||||
for (int m=0; m<nv; ++m) {
|
||||
data[i][j][k][l][m] = randx / max_val;
|
||||
(*this)(i,j,k,l,m) = randx / max_val;
|
||||
randx = (randx*1103515245 + 12345);
|
||||
}
|
||||
}
|
||||
@@ -214,6 +212,11 @@ struct TrivialFixture {
|
||||
properties.reset(new Opm::VFPProdProperties(table.get()));
|
||||
}
|
||||
|
||||
double& operator()(size_t thp_idx, size_t wfr_idx, size_t gfr_idx, size_t alq_idx, size_t flo_idx) {
|
||||
return data[thp_idx*ny*nz*nu*nv + wfr_idx*nz*nu*nv + gfr_idx*nu*nv + alq_idx*nv + flo_idx];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
std::shared_ptr<Opm::VFPProdProperties> properties;
|
||||
@@ -231,7 +234,6 @@ private:
|
||||
int nz;
|
||||
int nu;
|
||||
int nv;
|
||||
Opm::VFPProdTable::extents size;
|
||||
Opm::VFPProdTable::array_type data;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user