62 template <
typename Comm>
63 void communicate(
const Comm& comm) {
64 auto size = this->m_in_injecting_group.size();
65 comm.sum( this->m_in_injecting_group.data(), size);
66 comm.sum( this->m_in_producing_group.data(), size);
67 comm.sum( this->m_is_open.data(), size);
68 comm.min( this->m_efficiency_scaling_factors.data(), size);
69 is_rank0_ = (comm.rank() == 0);
75 bool in_producing_group(
const std::string&
wname)
const;
76 bool in_injecting_group(
const std::string&
wname)
const;
77 bool is_open(
const std::string&
wname)
const;
78 std::size_t well_index(
const std::string&
wname)
const;
79 const std::string& well_name(std::size_t well_index)
const;
82 void update_efficiency_scaling_factor(std::size_t well_index,
const Scalar efficiency_scaling_factor);
83 Scalar efficiency_scaling_factor(
const std::string&
wname)
const;
88 std::vector<std::size_t> local_map;
90 std::map<std::string, std::size_t> name_map;
91 std::vector<int> m_in_injecting_group;
92 std::vector<int> m_in_producing_group;
93 std::vector<int> m_is_open;
94 std::vector<Scalar> m_efficiency_scaling_factors;
constexpr auto getPropValue()
get the value data member of a property
Definition propertysystem.hh:240