fixed: fix build with dune 2.6

This commit is contained in:
Arne Morten Kvarving 2022-06-20 14:16:08 +02:00
parent ffb09ee53e
commit da57e15271
3 changed files with 12 additions and 7 deletions

View File

@ -9,6 +9,7 @@
#ifndef OPM_MATRIXMARKETSPECIALIZATIONS_HEADER_INCLUDED
#define OPM_MATRIXMARKETSPECIALIZATIONS_HEADER_INCLUDED
#include <dune/common/version.hh>
#include <dune/istl/matrixmarket.hh>
namespace Opm
@ -43,10 +44,12 @@ namespace MatrixMarketImpl
os << i << " " << j << std::endl;
}
};
} // namespace MatrixMarketImpl
template<class M>
struct mm_multipliers;
#if DUNE_VERSION_NEWER(DUNE_ISTL, 2, 7)
namespace MatrixMarketImpl
{
#endif
template <typename T, int i, int j, typename A>
struct mm_multipliers<BCRSMatrix<Opm::MatrixBlock<T,i,j>, A>>
{
@ -55,9 +58,9 @@ namespace MatrixMarketImpl
cols = j
};
};
#if DUNE_VERSION_NEWER(DUNE_ISTL, 2, 7)
} // namespace MatrixMarketImpl
#endif
} // namespace Dune

View File

@ -783,7 +783,8 @@ namespace Opm
}
// make cpr weights for well by pure avarage of reservoir weights of the perforations
if(not(this->isPressureControlled(well_state))){
auto well_weight = weights[0]*0.0;
auto well_weight = weights[0];
well_weight = 0.0;
int num_perfs = 0;
for (size_t rowB = 0; rowB < this->duneB_.N(); ++rowB) {
for (auto colB = this->duneB_[rowB].begin(), endB = this->duneB_[rowB].end(); colB != endB; ++colB) {

View File

@ -2191,7 +2191,8 @@ namespace Opm
// use_well_weights is a quasiimpes formulation which is not implemented in multisegment
int bhp_var_index = Bhp;
int nperf = 0;
auto cell_weights = weights[0]*0.0;// not need for not(use_well_weights)
auto cell_weights = weights[0];// not need for not(use_well_weights)
cell_weights = 0.0;
assert(this->duneC_.M() == weights.size());
const int welldof_ind = this->duneC_.M() + this->index_of_well_;
// do not assume anything about pressure controlled with use_well_weights (work fine with the assumtion also)