SimulatorFullyImplicitBlackoil.hpp
Go to the documentation of this file.
1 /*
2  Copyright 2013 SINTEF ICT, Applied Mathematics.
3  Copyright 2015 Andreas Lauser
4 
5  This file is part of the Open Porous Media project (OPM).
6 
7  OPM is free software: you can redistribute it and/or modify
8  it under the terms of the GNU General Public License as published by
9  the Free Software Foundation, either version 3 of the License, or
10  (at your option) any later version.
11 
12  OPM is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with OPM. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 #ifndef OPM_SIMULATORFULLYIMPLICITBLACKOIL_HEADER_INCLUDED
22 #define OPM_SIMULATORFULLYIMPLICITBLACKOIL_HEADER_INCLUDED
23 
24 #include "SimulatorBase.hpp"
25 
26 #include "NewtonSolver.hpp"
27 
28 namespace Opm {
29 
30 template <class GridT>
32 
33 template <class GridT>
35 {
37  typedef BlackoilState ReservoirState;
39  typedef GridT Grid;
42 };
43 
45 template <class GridT>
47  : public SimulatorBase<SimulatorFullyImplicitBlackoil<GridT> >
48 {
50 public:
51  // forward the constructor to the base class
52  SimulatorFullyImplicitBlackoil(const parameter::ParameterGroup& param,
53  const typename Base::Grid& grid,
54  const DerivedGeology& geo,
56  const RockCompressibility* rock_comp_props,
58  const double* gravity,
59  const bool disgas,
60  const bool vapoil,
61  std::shared_ptr<EclipseState> eclipse_state,
62  BlackoilOutputWriter& output_writer,
63  const std::vector<double>& threshold_pressures_by_face)
64  : Base(param, grid, geo, props, rock_comp_props, linsolver, gravity, disgas, vapoil,
65  eclipse_state, output_writer, threshold_pressures_by_face)
66  {}
67 };
68 
69 } // namespace Opm
70 
71 #endif // OPM_SIMULATORFULLYIMPLICITBLACKOIL_HEADER_INCLUDED
Definition: GeoProps.hpp:53
GridT Grid
Definition: SimulatorFullyImplicitBlackoil.hpp:39
BlackoilOutputWriter OutputWriter
Definition: SimulatorFullyImplicitBlackoil.hpp:38
Definition: BlackoilPropsAdInterface.hpp:38
Definition: AdditionalObjectDeleter.hpp:22
BlackoilState ReservoirState
Definition: SimulatorFullyImplicitBlackoil.hpp:37
Definition: WellStateFullyImplicitBlackoil.hpp:41
Traits::Grid Grid
Definition: SimulatorBase.hpp:92
A Newton solver class suitable for general fully-implicit models.
Definition: NewtonSolver.hpp:33
Class collecting all necessary components for a two-phase simulation.
Definition: SimulatorBase.hpp:84
SimulatorFullyImplicitBlackoil(const parameter::ParameterGroup &param, const typename Base::Grid &grid, const DerivedGeology &geo, BlackoilPropsAdInterface &props, const RockCompressibility *rock_comp_props, NewtonIterationBlackoilInterface &linsolver, const double *gravity, const bool disgas, const bool vapoil, std::shared_ptr< EclipseState > eclipse_state, BlackoilOutputWriter &output_writer, const std::vector< double > &threshold_pressures_by_face)
Definition: SimulatorFullyImplicitBlackoil.hpp:52
a simulator for the blackoil model
Definition: SimulatorFullyImplicitBlackoil.hpp:31
Interface class for (linear) solvers for the fully implicit black-oil system.
Definition: NewtonIterationBlackoilInterface.hpp:31
Definition: SimulatorBase.hpp:80
BlackoilModel< Grid > Model
Definition: SimulatorFullyImplicitBlackoil.hpp:40
WellStateFullyImplicitBlackoil WellState
Definition: SimulatorFullyImplicitBlackoil.hpp:36
Wrapper class for VTK, Matlab, and ECL output.
Definition: SimulatorFullyImplicitBlackoilOutput.hpp:195
Definition: BlackoilModel.hpp:43
NewtonSolver< Model > Solver
Definition: SimulatorFullyImplicitBlackoil.hpp:41