MiscibilityDead.hpp
Go to the documentation of this file.
1 //===========================================================================
2 //
3 // File: MiscibilityDead.hpp
4 //
5 // Created: Wed Feb 10 09:05:47 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_MISCIBILITYDEAD_HEADER
32 #define SINTEF_MISCIBILITYDEAD_HEADER
33 
38 #include "MiscibilityProps.hpp"
39 #include <opm/core/utility/UniformTableLinear.hpp>
40 #include <opm/parser/eclipse/EclipseState/EclipseState.hpp>
41 
42 namespace Opm
43 {
45  {
46  public:
47 
48  MiscibilityDead(const PvdoTable& pvdoTable);
49  MiscibilityDead(const PvdgTable& pvdgTable);
50  virtual ~MiscibilityDead();
51 
52  virtual double getViscosity(int region, double press, const surfvol_t& surfvol) const;
53  virtual double B(int region, double press, const surfvol_t& surfvol) const;
54  virtual double dBdp(int region, double press, const surfvol_t& surfvol) const;
55  virtual double R(int region, double press, const surfvol_t& surfvol) const;
56  virtual double dRdp(int region, double press, const surfvol_t& surfvol) const;
57 
58  virtual void getViscosity(const std::vector<PhaseVec>& pressures,
59  const std::vector<CompVec>& surfvol,
60  int phase,
61  std::vector<double>& output) const;
62  virtual void B(const std::vector<PhaseVec>& pressures,
63  const std::vector<CompVec>& surfvol,
64  int phase,
65  std::vector<double>& output) const;
66  virtual void dBdp(const std::vector<PhaseVec>& pressures,
67  const std::vector<CompVec>& surfvol,
68  int phase,
69  std::vector<double>& output_B,
70  std::vector<double>& output_dBdp) const;
71  virtual void R(const std::vector<PhaseVec>& pressures,
72  const std::vector<CompVec>& surfvol,
73  int phase,
74  std::vector<double>& output) const;
75  virtual void dRdp(const std::vector<PhaseVec>& pressures,
76  const std::vector<CompVec>& surfvol,
77  int phase,
78  std::vector<double>& output_R,
79  std::vector<double>& output_dRdp) const;
80 
81  private:
82  // PVT properties of dry gas or dead oil
83  Opm::utils::UniformTableLinear<double> one_over_B_;
84  Opm::utils::UniformTableLinear<double> viscosity_;
85  };
86 
87 }
88 
89 #endif // SINTEF_MISCIBILITYDEAD_HEADER
90 
virtual double dRdp(int region, double press, const surfvol_t &surfvol) const
Definition: MiscibilityDead.hpp:44
Definition: BlackoilFluid.hpp:31
virtual double dBdp(int region, double press, const surfvol_t &surfvol) const
MiscibilityDead(const PvdoTable &pvdoTable)
virtual double B(int region, double press, const surfvol_t &surfvol) const
CompVec surfvol_t
Definition: MiscibilityProps.hpp:49
virtual double getViscosity(int region, double press, const surfvol_t &surfvol) const
virtual double R(int region, double press, const surfvol_t &surfvol) const
virtual ~MiscibilityDead()
Definition: MiscibilityProps.hpp:46