19#ifndef FIELDPROPS_MANAGER_HPP
20#define FIELDPROPS_MANAGER_HPP
24#include <unordered_map>
34template<
typename T>
struct FieldData;
39class NumericalAquifers;
51 virtual void reset_actnum(
const std::vector<int>& actnum);
52 const std::string& default_region()
const;
53 virtual std::vector<int> actnum()
const;
54 virtual std::vector<double> porv(
bool global =
false)
const;
57 void apply_schedule_keywords(
const std::vector<DeckKeyword>& keywords);
68 std::size_t active_size()
const;
127 template <
typename T>
128 std::vector<T> get_copy(
const std::string& keyword,
bool global=
false)
const;
139 template <
typename T>
const std::vector<T>* try_get(
const
140 std::string& keyword)
const;
147 template <
typename T>
148 std::vector<bool> defaulted(
const std::string& keyword)
const;
160 template <
typename T>
161 static bool supported(
const std::string& keyword);
170 template <
typename T>
171 std::vector<std::string> keys()
const;
174 get_int_field_data(
const std::string& keyword)
const;
181 virtual const std::vector<int>& get_int(
const std::string& keyword)
const {
return this->get<int>(keyword); }
182 virtual std::vector<int> get_global_int(
const std::string& keyword)
const {
return this->get_global<int>(keyword); }
184 virtual const std::vector<double>& get_double(
const std::string& keyword)
const {
return this->get<double>(keyword); }
185 virtual std::vector<double> get_global_double(
const std::string& keyword)
const {
return this->get_global<double>(keyword); }
187 virtual bool has_int(
const std::string& keyword)
const {
return this->has<int>(keyword); }
188 virtual bool has_double(
const std::string& keyword)
const {
return this->has<double>(keyword); }
221 virtual bool tran_active(
const std::string& keyword)
const;
232 virtual void apply_tran(
const std::string& keyword, std::vector<double>& tran_data)
const;
234 void apply_numerical_aquifers(
const NumericalAquifers& aquifers);
236 const std::unordered_map<std::string,Fieldprops::TranCalculator>& getTran()
const;
255 template <
typename T>
256 const std::vector<T>& get(
const std::string& keyword)
const;
263 template <
typename T>
264 bool has(
const std::string& keyword)
const;
271 template <
typename T>
272 std::vector<T> get_global(
const std::string& keyword)
const;
274 std::shared_ptr<FieldProps> fp;
277template<
class MapType>
278void apply_tran(
const std::unordered_map<std::string, Fieldprops::TranCalculator>& tran,
279 const MapType& double_data,
280 std::size_t active_size,
281 const std::string& keyword, std::vector<double>& data);
About cell information and dimension: The actual grid information is held in a pointer to an ERT ecl_...
Definition: EclipseGrid.hpp:54
Definition: FieldPropsManager.hpp:41
const Fieldprops::FieldData< double > & get_double_field_data(const std::string &keyword, bool allow_unsupported=false) const
Get double field data associated with a keyword.
bool is_usable() const
Whether we can call methods on the manager.
Definition: Runspec.hpp:37
Definition: TableManager.hpp:65
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:30
Definition: FieldData.hpp:55