26 #include <opm/io/eclipse/rst/header.hpp>
27 #include <opm/io/eclipse/rst/aquifer.hpp>
28 #include <opm/io/eclipse/rst/group.hpp>
29 #include <opm/io/eclipse/rst/well.hpp>
30 #include <opm/io/eclipse/rst/udq.hpp>
31 #include <opm/io/eclipse/rst/action.hpp>
33 #include <opm/parser/eclipse/Units/UnitSystem.hpp>
35 #include <opm/parser/eclipse/EclipseState/Schedule/Tuning.hpp>
36 #include <opm/parser/eclipse/EclipseState/Runspec.hpp>
44 namespace Opm {
namespace EclIO {
45 class RestartFileView;
48 namespace Opm {
namespace RestartIO {
51 RstState(std::shared_ptr<EclIO::RestartFileView> rstView,
52 const ::Opm::EclipseGrid* grid);
54 static RstState load(std::shared_ptr<EclIO::RestartFileView> rstView,
57 const ::Opm::EclipseGrid* grid =
nullptr);
59 const RstWell& get_well(
const std::string& wname)
const;
64 std::vector<RstWell> wells;
65 std::vector<RstGroup> groups;
66 std::vector<RstUDQ> udqs;
68 std::vector<RstAction> actions;
72 void load_tuning(
const std::vector<int>& intehead,
73 const std::vector<double>& doubhead);
75 void add_groups(
const std::vector<std::string>& zgrp,
76 const std::vector<int>& igrp,
77 const std::vector<float>& sgrp,
78 const std::vector<double>& xgrp);
80 void add_wells(
const std::vector<std::string>& zwel,
81 const std::vector<int>& iwel,
82 const std::vector<float>& swel,
83 const std::vector<double>& xwel,
84 const std::vector<int>& icon,
85 const std::vector<float>& scon,
86 const std::vector<double>& xcon);
88 void add_msw(
const std::vector<std::string>& zwel,
89 const std::vector<int>& iwel,
90 const std::vector<float>& swel,
91 const std::vector<double>& xwel,
92 const std::vector<int>& icon,
93 const std::vector<float>& scon,
94 const std::vector<double>& xcon,
95 const std::vector<int>& iseg,
96 const std::vector<double>& rseg);
98 void add_udqs(
const std::vector<int>& iudq,
99 const std::vector<std::string>& zudn,
100 const std::vector<std::string>& zudl,
101 const std::vector<double>& dudw,
102 const std::vector<double>& dudg,
103 const std::vector<double>& dudf);
105 void add_actions(
const Parser& parser,
107 std::time_t sim_time,
108 const std::vector<std::string>& zact,
109 const std::vector<int>& iact,
110 const std::vector<float>& sact,
111 const std::vector<std::string>& zacn,
112 const std::vector<int>& iacn,
113 const std::vector<double>& sacn,
114 const std::vector<std::string>& zlact);
The hub of the parsing process.
Definition: Parser.hpp:60
Definition: aquifer.hpp:45
Definition: Runspec.hpp:402
Definition: UnitSystem.hpp:34
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:29
Definition: Tuning.hpp:24