MiscibilityProps.hpp
Go to the documentation of this file.
1//===========================================================================
2//
3// File: MiscibilityProps.hpp
4//
5// Created: Wed Feb 10 09:04:35 2010
6//
7// Author: Bjørn Spjelkavik <bsp@sintef.no>
8//
9// Revision: $Id$
10//
11//===========================================================================
12/*
13 Copyright 2010 SINTEF ICT, Applied Mathematics.
14
15 This file is part of the Open Porous Media project (OPM).
16
17 OPM is free software: you can redistribute it and/or modify
18 it under the terms of the GNU General Public License as published by
19 the Free Software Foundation, either version 3 of the License, or
20 (at your option) any later version.
21
22 OPM is distributed in the hope that it will be useful,
23 but WITHOUT ANY WARRANTY; without even the implied warranty of
24 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 GNU General Public License for more details.
26
27 You should have received a copy of the GNU General Public License
28 along with OPM. If not, see <http://www.gnu.org/licenses/>.
29*/
30
31#ifndef SINTEF_MISCIBILITYPROPS_HEADER
32#define SINTEF_MISCIBILITYPROPS_HEADER
33
38#include "BlackoilDefs.hpp"
39#include <vector>
40#include <array>
41
42namespace Opm
43{
44
45
47 {
48 public:
50
53
54 virtual double getViscosity(int region, double press, const surfvol_t& surfvol) const = 0;
55 virtual double B (int region, double press, const surfvol_t& surfvol) const = 0;
56 virtual double dBdp(int region, double press, const surfvol_t& surfvol) const = 0;
57 virtual double R (int region, double press, const surfvol_t& surfvol) const = 0;
58 virtual double dRdp(int region, double press, const surfvol_t& surfvol) const = 0;
59
60 virtual void getViscosity(const std::vector<PhaseVec>& pressures,
61 const std::vector<CompVec>& surfvol,
62 int phase,
63 std::vector<double>& output) const = 0;
64 virtual void B(const std::vector<PhaseVec>& pressures,
65 const std::vector<CompVec>& surfvol,
66 int phase,
67 std::vector<double>& output) const = 0;
68 virtual void dBdp(const std::vector<PhaseVec>& pressures,
69 const std::vector<CompVec>& surfvol,
70 int phase,
71 std::vector<double>& output_B,
72 std::vector<double>& output_dBdp) const = 0;
73 virtual void R(const std::vector<PhaseVec>& pressures,
74 const std::vector<CompVec>& surfvol,
75 int phase,
76 std::vector<double>& output) const = 0;
77 virtual void dRdp(const std::vector<PhaseVec>& pressures,
78 const std::vector<CompVec>& surfvol,
79 int phase,
80 std::vector<double>& output_R,
81 std::vector<double>& output_dRdp) const = 0;
82 };
83
84} // namespace Opm
85
86#endif // SINTEF_MISCIBILITYPROPS_HEADER
87
Definition: BlackoilDefs.hpp:31
Dune::FieldVector< Scalar, numComponents > CompVec
Definition: BlackoilDefs.hpp:40
Definition: MiscibilityProps.hpp:47
virtual double dRdp(int region, double press, const surfvol_t &surfvol) const =0
virtual double B(int region, double press, const surfvol_t &surfvol) const =0
virtual void dRdp(const std::vector< PhaseVec > &pressures, const std::vector< CompVec > &surfvol, int phase, std::vector< double > &output_R, std::vector< double > &output_dRdp) const =0
virtual void getViscosity(const std::vector< PhaseVec > &pressures, const std::vector< CompVec > &surfvol, int phase, std::vector< double > &output) const =0
virtual void R(const std::vector< PhaseVec > &pressures, const std::vector< CompVec > &surfvol, int phase, std::vector< double > &output) const =0
virtual ~MiscibilityProps()
virtual double R(int region, double press, const surfvol_t &surfvol) const =0
virtual void B(const std::vector< PhaseVec > &pressures, const std::vector< CompVec > &surfvol, int phase, std::vector< double > &output) const =0
virtual double getViscosity(int region, double press, const surfvol_t &surfvol) const =0
CompVec surfvol_t
Definition: MiscibilityProps.hpp:49
virtual void dBdp(const std::vector< PhaseVec > &pressures, const std::vector< CompVec > &surfvol, int phase, std::vector< double > &output_B, std::vector< double > &output_dBdp) const =0
virtual double dBdp(int region, double press, const surfvol_t &surfvol) const =0
Definition: BlackoilFluid.hpp:32