mirror of
https://github.com/OPM/opm-simulators.git
synced 2026-10-14 18:02:01 -05:00
Moved fluid -> props and subdirs.
This is a non-compiling commit.
This commit is contained in:
1 parent
bb944b7e52
commit
4fb45f0e64
29 files changed
+63
-149
No files matched your search
@@ -1,127 +0,0 @@
|
||||
/*
|
||||
Copyright 2012 SINTEF ICT, Applied Mathematics.
|
||||
|
||||
This file is part of the Open Porous Media project (OPM).
|
||||
|
||||
OPM is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
OPM is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with OPM. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef OPM_BLACKOILPVTPROPERTIES_HEADER_INCLUDED
|
||||
#define OPM_BLACKOILPVTPROPERTIES_HEADER_INCLUDED
|
||||
|
||||
|
||||
|
||||
#include <opm/core/fluid/blackoil/SinglePvtInterface.hpp>
|
||||
#include <opm/core/fluid/blackoil/BlackoilPhases.hpp>
|
||||
#include <opm/core/io/eclipse/EclipseGridParser.hpp>
|
||||
#include <string>
|
||||
#include <tr1/memory>
|
||||
|
||||
namespace Opm
|
||||
{
|
||||
|
||||
/// Class collecting the pvt properties for all active phases.
|
||||
/// For all the methods, the following apply: p and z
|
||||
/// are expected to be of size n and n*num_phases, respectively.
|
||||
/// Output arrays shall be of size n*num_phases, and must be valid
|
||||
/// before calling the method.
|
||||
/// NOTE: The difference between this interface and the one defined
|
||||
/// by SinglePvtInterface is that this collects all phases' properties,
|
||||
/// and therefore the output arrays are of size n*num_phases as opposed
|
||||
/// to size n in SinglePvtInterface.
|
||||
class BlackoilPvtProperties : public BlackoilPhases
|
||||
{
|
||||
public:
|
||||
/// Default constructor.
|
||||
BlackoilPvtProperties();
|
||||
|
||||
/// Initialize from deck.
|
||||
/// \param deck An input deck.
|
||||
/// \param samples If greater than zero, indicates the number of
|
||||
/// uniform samples to be taken from monotone spline
|
||||
/// curves interpolating the fluid data.
|
||||
/// Otherwise, interpolate linearly in the original
|
||||
/// data without fitting a spline.
|
||||
void init(const EclipseGridParser& deck, const int samples);
|
||||
|
||||
/// Number of active phases.
|
||||
int numPhases() const;
|
||||
|
||||
/// For each canonical phase, indicates if it is
|
||||
/// active or not (boolean usage of int).
|
||||
/// \return Array of size MaxNumPhases
|
||||
const int* phaseUsed() const;
|
||||
|
||||
/// Positions of canonical phases in arrays of phase
|
||||
/// properties (saturations etc.).
|
||||
/// \return Array of size MaxNumPhases
|
||||
const int* phasePosition() const;
|
||||
|
||||
/// Densities of stock components at surface conditions.
|
||||
/// \return Array of size numPhases().
|
||||
const double* surfaceDensities() const;
|
||||
|
||||
/// Viscosity as a function of p and z.
|
||||
void mu(const int n,
|
||||
const double* p,
|
||||
const double* z,
|
||||
double* output_mu) const;
|
||||
|
||||
/// Formation volume factor as a function of p and z.
|
||||
void B(const int n,
|
||||
const double* p,
|
||||
const double* z,
|
||||
double* output_B) const;
|
||||
|
||||
/// Formation volume factor and p-derivative as functions of p and z.
|
||||
void dBdp(const int n,
|
||||
const double* p,
|
||||
const double* z,
|
||||
double* output_B,
|
||||
double* output_dBdp) const;
|
||||
|
||||
/// Solution factor as a function of p and z.
|
||||
void R(const int n,
|
||||
const double* p,
|
||||
const double* z,
|
||||
double* output_R) const;
|
||||
|
||||
/// Solution factor and p-derivative as functions of p and z.
|
||||
void dRdp(const int n,
|
||||
const double* p,
|
||||
const double* z,
|
||||
double* output_R,
|
||||
double* output_dRdp) const;
|
||||
|
||||
private:
|
||||
// Disabling copying (just to avoid surprises, since we use shared_ptr).
|
||||
BlackoilPvtProperties(const BlackoilPvtProperties&);
|
||||
BlackoilPvtProperties& operator=(const BlackoilPvtProperties&);
|
||||
|
||||
PhaseUsage phase_usage_;
|
||||
|
||||
int region_number_;
|
||||
|
||||
std::vector<std::tr1::shared_ptr<SinglePvtInterface> > props_;
|
||||
|
||||
double densities_[MaxNumPhases];
|
||||
mutable std::vector<double> data1_;
|
||||
mutable std::vector<double> data2_;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endif // OPM_BLACKOILPVTPROPERTIES_HEADER_INCLUDED
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -0,0 +1,54 @@
|
||||
/*
|
||||
Copyright 2012 SINTEF ICT, Applied Mathematics.
|
||||
|
||||
This file is part of the Open Porous Media project (OPM).
|
||||
|
||||
OPM is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
OPM is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with OPM. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <opm/core/fluid/RockBasic.hpp>
|
||||
|
||||
namespace Opm
|
||||
{
|
||||
|
||||
|
||||
/// Default constructor.
|
||||
RockBasic::RockBasic()
|
||||
: dimensions_(-1)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
/// Initialize with homogenous porosity and permeability.
|
||||
void RockBasic::init(const int dimensions,
|
||||
const int num_cells,
|
||||
const double poro,
|
||||
const double perm)
|
||||
{
|
||||
dimensions_ = dimensions;
|
||||
porosity_.clear();
|
||||
porosity_.resize(num_cells, poro);
|
||||
permeability_.clear();
|
||||
const int dsq = dimensions*dimensions;
|
||||
permeability_.resize(num_cells*dsq, 0.0);
|
||||
// #pragma omp parallel for
|
||||
for (int i = 0; i < num_cells; ++i) {
|
||||
for (int d = 0; d < dimensions; ++d) {
|
||||
permeability_[dsq*i + dimensions*d + d] = perm;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
} // namespace Opm
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+9
-22
@@ -17,31 +17,18 @@
|
||||
along with OPM. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <opm/core/fluid/blackoil/SinglePvtInterface.hpp>
|
||||
|
||||
#include <opm/core/fluid/SaturationPropsFromDeck.hpp>
|
||||
#include <opm/core/grid.h>
|
||||
#include <opm/core/utility/buildUniformMonotoneTable.hpp>
|
||||
#include <opm/core/utility/ErrorMacros.hpp>
|
||||
#include <iostream>
|
||||
|
||||
namespace Opm
|
||||
{
|
||||
|
||||
SinglePvtInterface::SinglePvtInterface()
|
||||
: num_phases_(MaxNumPhases)
|
||||
{
|
||||
for (int i = 0; i < MaxNumPhases; ++i) {
|
||||
phase_pos_[i] = i;
|
||||
}
|
||||
}
|
||||
|
||||
SinglePvtInterface::~SinglePvtInterface()
|
||||
{
|
||||
}
|
||||
|
||||
void SinglePvtInterface::setPhaseConfiguration(const int num_phases, const int* phase_pos)
|
||||
{
|
||||
num_phases_ = num_phases;
|
||||
for (int i = 0; i < MaxNumPhases; ++i) {
|
||||
phase_pos_[i] = phase_pos[i];
|
||||
}
|
||||
}
|
||||
|
||||
// This file should be removed in the future.
|
||||
// Holding off until refactoring of SaturationPropsFromDeck class is done.
|
||||
|
||||
} // namespace Opm
|
||||
|
||||
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
Reference in new issue
Block a user