blackoilextboparams.hpp
Go to the documentation of this file.
1// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2// vi: set et ts=4 sw=4 sts=4:
3/*
4 This file is part of the Open Porous Media project (OPM).
5
6 OPM is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 2 of the License, or
9 (at your option) any later version.
10
11 OPM is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with OPM. If not, see <http://www.gnu.org/licenses/>.
18
19 Consult the COPYING file in the top-level source directory of this
20 module for the precise wording of the license and the list of
21 copyright holders.
22*/
32#ifndef OPM_BLACK_OIL_EXTBO_PARAMS_HPP
33#define OPM_BLACK_OIL_EXTBO_PARAMS_HPP
34
35#include <opm/material/common/Tabulated1DFunction.hpp>
36#include <opm/material/common/UniformXTabulated2DFunction.hpp>
37
38#include <vector>
39
40namespace Opm {
41
42#if HAVE_ECL_INPUT
43class EclipseState;
44#endif
45
47template<class Scalar>
49{
50 using TabulatedFunction = Tabulated1DFunction<Scalar>;
51 using Tabulated2DFunction = UniformXTabulated2DFunction<Scalar>;
52
53#if HAVE_ECL_INPUT
54 template<bool enableExtbo>
55 void initFromState(const EclipseState& eclState);
56#endif
57
58
59 std::vector<Tabulated2DFunction> X_;
60 std::vector<Tabulated2DFunction> Y_;
61 std::vector<Tabulated2DFunction> PBUB_RS_;
62 std::vector<Tabulated2DFunction> PBUB_RV_;
63 std::vector<Tabulated2DFunction> VISCO_;
64 std::vector<Tabulated2DFunction> VISCG_;
65 std::vector<Tabulated2DFunction> BO_;
66 std::vector<Tabulated2DFunction> BG_;
67 std::vector<Tabulated2DFunction> RS_;
68 std::vector<Tabulated2DFunction> RV_;
69
70 std::vector<Scalar> zReferenceDensity_;
71
72 std::vector<Scalar> zLim_;
73 std::vector<TabulatedFunction> oilCmp_;
74 std::vector<TabulatedFunction> gasCmp_;
75};
76
77} // namespace Opm
78
79#endif // OPM_BLACK_OIL_EXTBO_PARAMS_HPP
Definition: blackoilboundaryratevector.hh:37
Struct holding the parameters for the BlackoilExtboModule class.
Definition: blackoilextboparams.hpp:49
UniformXTabulated2DFunction< Scalar > Tabulated2DFunction
Definition: blackoilextboparams.hpp:51
std::vector< TabulatedFunction > oilCmp_
Definition: blackoilextboparams.hpp:73
std::vector< Tabulated2DFunction > Y_
Definition: blackoilextboparams.hpp:60
std::vector< Tabulated2DFunction > RS_
Definition: blackoilextboparams.hpp:67
std::vector< Scalar > zReferenceDensity_
Definition: blackoilextboparams.hpp:70
std::vector< Tabulated2DFunction > PBUB_RV_
Definition: blackoilextboparams.hpp:62
std::vector< Scalar > zLim_
Definition: blackoilextboparams.hpp:72
std::vector< Tabulated2DFunction > VISCG_
Definition: blackoilextboparams.hpp:64
std::vector< Tabulated2DFunction > VISCO_
Definition: blackoilextboparams.hpp:63
std::vector< Tabulated2DFunction > PBUB_RS_
Definition: blackoilextboparams.hpp:61
std::vector< TabulatedFunction > gasCmp_
Definition: blackoilextboparams.hpp:74
Tabulated1DFunction< Scalar > TabulatedFunction
Definition: blackoilextboparams.hpp:50
std::vector< Tabulated2DFunction > X_
Definition: blackoilextboparams.hpp:59
std::vector< Tabulated2DFunction > RV_
Definition: blackoilextboparams.hpp:68
std::vector< Tabulated2DFunction > BO_
Definition: blackoilextboparams.hpp:65
std::vector< Tabulated2DFunction > BG_
Definition: blackoilextboparams.hpp:66