diff --git a/opm/core/fluid/blackoil/BlackoilPvtProperties.hpp b/opm/core/fluid/blackoil/BlackoilPvtProperties.hpp
deleted file mode 100644
index 29abb1f74..000000000
--- a/opm/core/fluid/blackoil/BlackoilPvtProperties.hpp
+++ /dev/null
@@ -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 .
-*/
-
-#ifndef OPM_BLACKOILPVTPROPERTIES_HEADER_INCLUDED
-#define OPM_BLACKOILPVTPROPERTIES_HEADER_INCLUDED
-
-
-
-#include
-#include
-#include
-#include
-#include
-
-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 > props_;
-
- double densities_[MaxNumPhases];
- mutable std::vector data1_;
- mutable std::vector data2_;
- };
-
-}
-
-
-
-#endif // OPM_BLACKOILPVTPROPERTIES_HEADER_INCLUDED
diff --git a/opm/core/fluid/blackoil/BlackoilPhases.hpp b/opm/core/props/BlackoilPhases.hpp
similarity index 100%
rename from opm/core/fluid/blackoil/BlackoilPhases.hpp
rename to opm/core/props/BlackoilPhases.hpp
diff --git a/opm/core/fluid/BlackoilPropertiesBasic.cpp b/opm/core/props/BlackoilPropertiesBasic.cpp
similarity index 100%
rename from opm/core/fluid/BlackoilPropertiesBasic.cpp
rename to opm/core/props/BlackoilPropertiesBasic.cpp
diff --git a/opm/core/fluid/BlackoilPropertiesBasic.hpp b/opm/core/props/BlackoilPropertiesBasic.hpp
similarity index 100%
rename from opm/core/fluid/BlackoilPropertiesBasic.hpp
rename to opm/core/props/BlackoilPropertiesBasic.hpp
diff --git a/opm/core/fluid/BlackoilPropertiesFromDeck.cpp b/opm/core/props/BlackoilPropertiesFromDeck.cpp
similarity index 100%
rename from opm/core/fluid/BlackoilPropertiesFromDeck.cpp
rename to opm/core/props/BlackoilPropertiesFromDeck.cpp
diff --git a/opm/core/fluid/BlackoilPropertiesFromDeck.hpp b/opm/core/props/BlackoilPropertiesFromDeck.hpp
similarity index 100%
rename from opm/core/fluid/BlackoilPropertiesFromDeck.hpp
rename to opm/core/props/BlackoilPropertiesFromDeck.hpp
diff --git a/opm/core/fluid/BlackoilPropertiesInterface.hpp b/opm/core/props/BlackoilPropertiesInterface.hpp
similarity index 100%
rename from opm/core/fluid/BlackoilPropertiesInterface.hpp
rename to opm/core/props/BlackoilPropertiesInterface.hpp
diff --git a/opm/core/fluid/IncompPropertiesBasic.cpp b/opm/core/props/IncompPropertiesBasic.cpp
similarity index 100%
rename from opm/core/fluid/IncompPropertiesBasic.cpp
rename to opm/core/props/IncompPropertiesBasic.cpp
diff --git a/opm/core/fluid/IncompPropertiesBasic.hpp b/opm/core/props/IncompPropertiesBasic.hpp
similarity index 100%
rename from opm/core/fluid/IncompPropertiesBasic.hpp
rename to opm/core/props/IncompPropertiesBasic.hpp
diff --git a/opm/core/fluid/IncompPropertiesFromDeck.cpp b/opm/core/props/IncompPropertiesFromDeck.cpp
similarity index 100%
rename from opm/core/fluid/IncompPropertiesFromDeck.cpp
rename to opm/core/props/IncompPropertiesFromDeck.cpp
diff --git a/opm/core/fluid/IncompPropertiesFromDeck.hpp b/opm/core/props/IncompPropertiesFromDeck.hpp
similarity index 100%
rename from opm/core/fluid/IncompPropertiesFromDeck.hpp
rename to opm/core/props/IncompPropertiesFromDeck.hpp
diff --git a/opm/core/fluid/IncompPropertiesInterface.hpp b/opm/core/props/IncompPropertiesInterface.hpp
similarity index 100%
rename from opm/core/fluid/IncompPropertiesInterface.hpp
rename to opm/core/props/IncompPropertiesInterface.hpp
diff --git a/opm/core/fluid/blackoil/phaseUsageFromDeck.hpp b/opm/core/props/phaseUsageFromDeck.hpp
similarity index 100%
rename from opm/core/fluid/blackoil/phaseUsageFromDeck.hpp
rename to opm/core/props/phaseUsageFromDeck.hpp
diff --git a/opm/core/fluid/PvtPropertiesBasic.cpp b/opm/core/props/pvt/PvtPropertiesBasic.cpp
similarity index 100%
rename from opm/core/fluid/PvtPropertiesBasic.cpp
rename to opm/core/props/pvt/PvtPropertiesBasic.cpp
diff --git a/opm/core/fluid/PvtPropertiesBasic.hpp b/opm/core/props/pvt/PvtPropertiesBasic.hpp
similarity index 100%
rename from opm/core/fluid/PvtPropertiesBasic.hpp
rename to opm/core/props/pvt/PvtPropertiesBasic.hpp
diff --git a/opm/core/fluid/PvtPropertiesIncompFromDeck.cpp b/opm/core/props/pvt/PvtPropertiesIncompFromDeck.cpp
similarity index 100%
rename from opm/core/fluid/PvtPropertiesIncompFromDeck.cpp
rename to opm/core/props/pvt/PvtPropertiesIncompFromDeck.cpp
diff --git a/opm/core/fluid/PvtPropertiesIncompFromDeck.hpp b/opm/core/props/pvt/PvtPropertiesIncompFromDeck.hpp
similarity index 100%
rename from opm/core/fluid/PvtPropertiesIncompFromDeck.hpp
rename to opm/core/props/pvt/PvtPropertiesIncompFromDeck.hpp
diff --git a/opm/core/props/rock/RockBasic.cpp b/opm/core/props/rock/RockBasic.cpp
new file mode 100644
index 000000000..b66ccccec
--- /dev/null
+++ b/opm/core/props/rock/RockBasic.cpp
@@ -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 .
+*/
+
+#include
+
+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
diff --git a/opm/core/fluid/RockBasic.hpp b/opm/core/props/rock/RockBasic.hpp
similarity index 100%
rename from opm/core/fluid/RockBasic.hpp
rename to opm/core/props/rock/RockBasic.hpp
diff --git a/opm/core/fluid/RockCompressibility.cpp b/opm/core/props/rock/RockCompressibility.cpp
similarity index 100%
rename from opm/core/fluid/RockCompressibility.cpp
rename to opm/core/props/rock/RockCompressibility.cpp
diff --git a/opm/core/fluid/RockCompressibility.hpp b/opm/core/props/rock/RockCompressibility.hpp
similarity index 100%
rename from opm/core/fluid/RockCompressibility.hpp
rename to opm/core/props/rock/RockCompressibility.hpp
diff --git a/opm/core/fluid/RockFromDeck.cpp b/opm/core/props/rock/RockFromDeck.cpp
similarity index 100%
rename from opm/core/fluid/RockFromDeck.cpp
rename to opm/core/props/rock/RockFromDeck.cpp
diff --git a/opm/core/fluid/RockFromDeck.hpp b/opm/core/props/rock/RockFromDeck.hpp
similarity index 100%
rename from opm/core/fluid/RockFromDeck.hpp
rename to opm/core/props/rock/RockFromDeck.hpp
diff --git a/opm/core/fluid/SaturationPropsBasic.cpp b/opm/core/props/satfunc/SaturationPropsBasic.cpp
similarity index 100%
rename from opm/core/fluid/SaturationPropsBasic.cpp
rename to opm/core/props/satfunc/SaturationPropsBasic.cpp
diff --git a/opm/core/fluid/SaturationPropsBasic.hpp b/opm/core/props/satfunc/SaturationPropsBasic.hpp
similarity index 100%
rename from opm/core/fluid/SaturationPropsBasic.hpp
rename to opm/core/props/satfunc/SaturationPropsBasic.hpp
diff --git a/opm/core/fluid/blackoil/SinglePvtInterface.cpp b/opm/core/props/satfunc/SaturationPropsFromDeck.cpp
similarity index 58%
rename from opm/core/fluid/blackoil/SinglePvtInterface.cpp
rename to opm/core/props/satfunc/SaturationPropsFromDeck.cpp
index 1241b5221..83c942c59 100644
--- a/opm/core/fluid/blackoil/SinglePvtInterface.cpp
+++ b/opm/core/props/satfunc/SaturationPropsFromDeck.cpp
@@ -17,31 +17,18 @@
along with OPM. If not, see .
*/
-#include
-
+#include
+#include
+#include
+#include
+#include
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
+
+
diff --git a/opm/core/fluid/SaturationPropsFromDeck.hpp b/opm/core/props/satfunc/SaturationPropsFromDeck.hpp
similarity index 100%
rename from opm/core/fluid/SaturationPropsFromDeck.hpp
rename to opm/core/props/satfunc/SaturationPropsFromDeck.hpp
diff --git a/opm/core/fluid/SaturationPropsFromDeck_impl.hpp b/opm/core/props/satfunc/SaturationPropsFromDeck_impl.hpp
similarity index 100%
rename from opm/core/fluid/SaturationPropsFromDeck_impl.hpp
rename to opm/core/props/satfunc/SaturationPropsFromDeck_impl.hpp
diff --git a/opm/core/fluid/SaturationPropsInterface.hpp b/opm/core/props/satfunc/SaturationPropsInterface.hpp
similarity index 100%
rename from opm/core/fluid/SaturationPropsInterface.hpp
rename to opm/core/props/satfunc/SaturationPropsInterface.hpp