Avoid shared pointe for MaterialLawManager

This commit is contained in:
Tor Harald Sandve 2017-11-21 13:28:49 +01:00
parent 5a9123c1b1
commit 2070247244

View File

@ -117,16 +117,15 @@ public:
equilCartesianToCompressed[ equilCartesianIdx ] = equilElemIdx;
}
auto equilMaterialLawManager =
std::make_shared<Opm::EclMaterialLawManager<EquilTraits> >();
equilMaterialLawManager->initFromDeck(deck, eclState, compressedToCartesianEquilElemIdx);
Opm::EclMaterialLawManager<EquilTraits> equilMaterialLawManager =
Opm::EclMaterialLawManager<EquilTraits>();
equilMaterialLawManager.initFromDeck(deck, eclState, compressedToCartesianEquilElemIdx);
Opm::EQUIL::DeckDependent::InitialStateComputer<FluidSystem> initialState(equilMaterialLawManager,
gridManager.eclState(),
equilGrid,
simulator.problem().gravity()[dimWorld - 1],
enableSwatinit);
enableSwatinit);
std::vector<int> localToEquilIndex( numElems, -1 );
@ -213,7 +212,7 @@ public:
// requested to be applied. this is quite hacky but hey it works!
if (enableSwatinit) {
const auto& equilScalingPoints =
equilMaterialLawManager->oilWaterScaledEpsPointsDrainage(equilElemIdx);
equilMaterialLawManager.oilWaterScaledEpsPointsDrainage(equilElemIdx);
auto& scalingPoints =
materialLawManager.oilWaterScaledEpsPointsDrainage(elemIdx);
scalingPoints.setMaxPcnw(equilScalingPoints.maxPcnw());