diff --git a/opm/autodiff/BlackoilModelEbos.hpp b/opm/autodiff/BlackoilModelEbos.hpp index 6c84f8d70..8f7713c73 100644 --- a/opm/autodiff/BlackoilModelEbos.hpp +++ b/opm/autodiff/BlackoilModelEbos.hpp @@ -181,6 +181,7 @@ namespace Opm { wellModel().setWellsActive( wellsActive ); // compute global sum of number of cells global_nc_ = detail::countGlobalCells(grid_); + wellModel().setVFPProperties(&vfp_properties_); if (!istlSolver_) { OPM_THROW(std::logic_error,"solver down cast to ISTLSolver failed"); diff --git a/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp b/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp index 90ff48d8d..af269fe9f 100644 --- a/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp +++ b/opm/autodiff/SimulatorFullyImplicitBlackoilEbos.hpp @@ -435,7 +435,6 @@ protected: well_model.init(phaseUsage, activePhases, - /*vfpProperties=*/nullptr, gravity, legacyDepth_, legacyPoreVolume_, diff --git a/opm/autodiff/StandardWellsDense.hpp b/opm/autodiff/StandardWellsDense.hpp index 16cee601c..644db37b5 100644 --- a/opm/autodiff/StandardWellsDense.hpp +++ b/opm/autodiff/StandardWellsDense.hpp @@ -118,7 +118,6 @@ enum WellVariablePositions { void init(const PhaseUsage phase_usage_arg, const std::vector& active_arg, - const VFPProperties* vfp_properties_arg, const double gravity_arg, const std::vector& depth_arg, const std::vector& pv_arg, @@ -126,6 +125,7 @@ enum WellVariablePositions { long int global_nc, const Grid& grid); + void setVFPProperties(const VFPProperties* vfp_properties_arg); /// The number of components in the model. int numComponents() const diff --git a/opm/autodiff/StandardWellsDense_impl.hpp b/opm/autodiff/StandardWellsDense_impl.hpp index 39100538a..9b66ee3a8 100644 --- a/opm/autodiff/StandardWellsDense_impl.hpp +++ b/opm/autodiff/StandardWellsDense_impl.hpp @@ -43,7 +43,6 @@ namespace Opm { StandardWellsDense:: init(const PhaseUsage phase_usage_arg, const std::vector& active_arg, - const VFPProperties* vfp_properties_arg, const double gravity_arg, const std::vector& depth_arg, const std::vector& pv_arg, @@ -60,7 +59,6 @@ namespace Opm { phase_usage_ = phase_usage_arg; active_ = active_arg; - vfp_properties_ = vfp_properties_arg; gravity_ = gravity_arg; cell_depths_ = extractPerfData(depth_arg); pv_ = pv_arg; @@ -132,6 +130,19 @@ namespace Opm { + + + template + void + StandardWellsDense:: + setVFPProperties(const VFPProperties* vfp_properties_arg) + { + vfp_properties_ = vfp_properties_arg; + } + + + + template SimulatorReport StandardWellsDense::