Add TableManager argument to FieldProps constructor
This commit is contained in:
@@ -26,12 +26,13 @@ namespace Opm {
|
||||
class EclipseGrid;
|
||||
class Deck;
|
||||
class FieldProps;
|
||||
class TableManager;
|
||||
|
||||
class FieldPropsManager {
|
||||
public:
|
||||
// The default constructor should be removed when the FieldPropsManager is mandatory
|
||||
FieldPropsManager() = default;
|
||||
FieldPropsManager(const Deck& deck, const EclipseGrid& grid);
|
||||
FieldPropsManager(const Deck& deck, const EclipseGrid& grid, const TableManager& tables);
|
||||
void reset_grid(const EclipseGrid& grid);
|
||||
|
||||
/*
|
||||
|
||||
@@ -337,7 +337,7 @@ namespace Opm {
|
||||
std::vector<PvtoTable> m_pvtoTables;
|
||||
std::vector<Rock2dTable> m_rock2dTables;
|
||||
std::vector<Rock2dtrTable> m_rock2dtrTables;
|
||||
PvtwTable m_pvtwTable;
|
||||
PvtwTable m_pvtwTable;
|
||||
PvcdoTable m_pvcdoTable;
|
||||
DensityTable m_densityTable;
|
||||
RockTable m_rockTable;
|
||||
|
||||
@@ -139,7 +139,7 @@ void assert_field_properties(const EclipseGrid& grid, const FieldPropsManager& f
|
||||
m_inputGrid( deck, nullptr ),
|
||||
m_eclipseProperties( deck, m_tables, m_inputGrid ),
|
||||
#ifdef ENABLE_3DPROPS_TESTING
|
||||
field_props( deck, m_inputGrid),
|
||||
field_props( deck, m_inputGrid, m_tables),
|
||||
#endif
|
||||
m_simulationConfig( m_eclipseConfig.getInitConfig().restartRequested(), deck, m_eclipseProperties ),
|
||||
m_transMult( GridDims(deck), deck, m_eclipseProperties )
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
#include <opm/parser/eclipse/Parser/ParserKeywords/P.hpp>
|
||||
|
||||
#include <opm/parser/eclipse/Deck/Deck.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Tables/TableManager.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Grid/EclipseGrid.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Grid/BoxManager.hpp>
|
||||
|
||||
@@ -284,9 +285,10 @@ void handle_box_keyword(const EclipseGrid& grid, const DeckKeyword& deckKeyword,
|
||||
|
||||
|
||||
|
||||
FieldProps::FieldProps(const Deck& deck, const EclipseGrid& grid_arg) :
|
||||
FieldProps::FieldProps(const Deck& deck, const EclipseGrid& grid_arg, const TableManager& table_arg) :
|
||||
unit_system(deck.getActiveUnitSystem()),
|
||||
grid(std::addressof(grid_arg)),
|
||||
tables(table_arg),
|
||||
active_size(grid_arg.getNumActive()),
|
||||
actnum(grid_arg.getACTNUM()),
|
||||
default_region(default_region_keyword(deck))
|
||||
|
||||
@@ -30,6 +30,7 @@ namespace Opm {
|
||||
|
||||
class Deck;
|
||||
class EclipseGrid;
|
||||
class TableManager;
|
||||
|
||||
class FieldProps {
|
||||
public:
|
||||
@@ -105,7 +106,7 @@ public:
|
||||
};
|
||||
|
||||
|
||||
FieldProps(const Deck& deck, const EclipseGrid& grid);
|
||||
FieldProps(const Deck& deck, const EclipseGrid& grid, const TableManager& table_arg);
|
||||
void reset_grid(const EclipseGrid& grid);
|
||||
|
||||
template <typename T>
|
||||
@@ -168,6 +169,7 @@ private:
|
||||
|
||||
const UnitSystem unit_system;
|
||||
const EclipseGrid* grid; // A reseatable pointer to const.
|
||||
const TableManager& tables;
|
||||
std::size_t active_size;
|
||||
std::vector<int> actnum;
|
||||
const std::string default_region;
|
||||
|
||||
@@ -26,8 +26,8 @@
|
||||
|
||||
namespace Opm {
|
||||
|
||||
FieldPropsManager::FieldPropsManager(const Deck& deck, const EclipseGrid& grid_arg) :
|
||||
fp(std::make_shared<FieldProps>(deck, grid_arg))
|
||||
FieldPropsManager::FieldPropsManager(const Deck& deck, const EclipseGrid& grid_arg, const TableManager& tables) :
|
||||
fp(std::make_shared<FieldProps>(deck, grid_arg, tables))
|
||||
{}
|
||||
|
||||
void FieldPropsManager::reset_grid(const EclipseGrid& grid) {
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Well/Connection.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Well/WellConnections.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Grid/EclipseGrid.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Tables/TableManager.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Grid/FieldPropsManager.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Eclipse3DProperties.hpp>
|
||||
|
||||
@@ -149,7 +150,7 @@ Opm::WellConnections loadCOMPDAT(const std::string& compdat_keyword) {
|
||||
Opm::Parser parser;
|
||||
const auto deck = parser.parseString(compdat_keyword);
|
||||
Opm::Eclipse3DProperties props(deck, tables, grid );
|
||||
Opm::FieldPropsManager field_props(deck, grid);
|
||||
Opm::FieldPropsManager field_props(deck, grid, Opm::TableManager());
|
||||
const auto& keyword = deck.getKeyword("COMPDAT", 0);
|
||||
Opm::WellConnections connections1(10,10);
|
||||
Opm::WellConnections connections2(10,10);
|
||||
|
||||
@@ -271,7 +271,7 @@ struct Setup
|
||||
tablemanager(deck),
|
||||
grid(deck),
|
||||
props(deck, tablemanager, grid),
|
||||
fp(deck, grid)
|
||||
fp(deck, grid, tablemanager)
|
||||
{
|
||||
}
|
||||
};
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#include <opm/parser/eclipse/Deck/Section.hpp>
|
||||
#include <opm/parser/eclipse/Deck/Deck.hpp>
|
||||
#include <opm/parser/eclipse/Deck/DeckKeyword.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Tables/TableManager.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Grid/FieldPropsManager.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Grid/EclipseGrid.hpp>
|
||||
|
||||
@@ -42,7 +43,7 @@ using namespace Opm;
|
||||
BOOST_AUTO_TEST_CASE(CreateFieldProps) {
|
||||
EclipseGrid grid(10,10,10);
|
||||
Deck deck;
|
||||
FieldPropsManager fpm(deck, grid);
|
||||
FieldPropsManager fpm(deck, grid, TableManager());
|
||||
BOOST_CHECK(!fpm.try_get<double>("PORO"));
|
||||
BOOST_CHECK(!fpm.try_get<double>("PORO"));
|
||||
BOOST_CHECK_THROW(fpm.get<double>("PORO"), std::out_of_range);
|
||||
@@ -78,7 +79,7 @@ PERMX
|
||||
actnum[i] = 0;
|
||||
EclipseGrid grid(EclipseGrid(10,10,10), actnum);
|
||||
Deck deck = Parser{}.parseString(deck_string);
|
||||
FieldPropsManager fpm(deck, grid);
|
||||
FieldPropsManager fpm(deck, grid, TableManager());
|
||||
|
||||
BOOST_CHECK(!fpm.has<double>("NO-PORO"));
|
||||
BOOST_CHECK(fpm.has<double>("PORO"));
|
||||
@@ -107,7 +108,7 @@ COPY
|
||||
|
||||
EclipseGrid grid(EclipseGrid(10,10,10));
|
||||
Deck deck = Parser{}.parseString(deck_string);
|
||||
BOOST_CHECK_THROW( FieldPropsManager(deck, grid), std::invalid_argument);
|
||||
BOOST_CHECK_THROW( FieldPropsManager(deck, grid, TableManager()), std::invalid_argument);
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(GRID_RESET) {
|
||||
@@ -121,7 +122,7 @@ SATNUM
|
||||
std::vector<int> actnum1 = {1,1,1,0,0,0,1,1,1};
|
||||
EclipseGrid grid(3,1,3); grid.resetACTNUM(actnum1);
|
||||
Deck deck = Parser{}.parseString(deck_string);
|
||||
FieldPropsManager fpm(deck, grid);
|
||||
FieldPropsManager fpm(deck, grid, TableManager());
|
||||
const auto& s1 = fpm.get<int>("SATNUM");
|
||||
BOOST_CHECK_EQUAL(s1.size(), 6);
|
||||
BOOST_CHECK_EQUAL(s1[0], 0);
|
||||
@@ -163,7 +164,7 @@ ADDREG
|
||||
std::vector<int> actnum1 = {1,1,0,0,1,1};
|
||||
EclipseGrid grid(3,2,1); grid.resetACTNUM(actnum1);
|
||||
Deck deck = Parser{}.parseString(deck_string);
|
||||
FieldPropsManager fpm(deck, grid);
|
||||
FieldPropsManager fpm(deck, grid, TableManager());
|
||||
const auto& poro = fpm.get<double>("PORO");
|
||||
BOOST_CHECK_EQUAL(poro.size(), 4);
|
||||
BOOST_CHECK_EQUAL(poro[0], 0.10);
|
||||
|
||||
Reference in New Issue
Block a user