mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Always allocate buffers when restarting
This commit is contained in:
parent
337f36bac1
commit
cf7c8552a5
@ -145,7 +145,7 @@ public:
|
|||||||
* \brief Allocate memory for the scalar fields we would like to
|
* \brief Allocate memory for the scalar fields we would like to
|
||||||
* write to ECL output files
|
* write to ECL output files
|
||||||
*/
|
*/
|
||||||
void allocBuffers(unsigned bufferSize, unsigned reportStepNum, const bool substep, const bool log)
|
void allocBuffers(unsigned bufferSize, unsigned reportStepNum, const bool substep, const bool log, const bool isRestart)
|
||||||
{
|
{
|
||||||
if (!std::is_same<Discretization, Opm::EcfvDiscretization<TypeTag> >::value)
|
if (!std::is_same<Discretization, Opm::EcfvDiscretization<TypeTag> >::value)
|
||||||
return;
|
return;
|
||||||
@ -219,8 +219,11 @@ public:
|
|||||||
// always allocate memory for temperature
|
// always allocate memory for temperature
|
||||||
temperature_.resize(bufferSize, 0.0);
|
temperature_.resize(bufferSize, 0.0);
|
||||||
|
|
||||||
// Only provide restart on restart steps
|
// field data should be allocated
|
||||||
if (!restartConfig.getWriteRestartFile(reportStepNum, log) || substep)
|
// 1) when we want to restart
|
||||||
|
// 2) when it is ask for by the user via restartConfig
|
||||||
|
// 3) when it is not a substep
|
||||||
|
if (!isRestart && (!restartConfig.getWriteRestartFile(reportStepNum, log) || substep))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// always output saturation of active phases
|
// always output saturation of active phases
|
||||||
|
@ -251,7 +251,7 @@ public:
|
|||||||
const auto& gridView = simulator_.vanguard().gridView();
|
const auto& gridView = simulator_.vanguard().gridView();
|
||||||
int numElements = gridView.size(/*codim=*/0);
|
int numElements = gridView.size(/*codim=*/0);
|
||||||
bool log = collectToIORank_.isIORank();
|
bool log = collectToIORank_.isIORank();
|
||||||
eclOutputModule_.allocBuffers(numElements, reportStepNum, isSubStep, log);
|
eclOutputModule_.allocBuffers(numElements, reportStepNum, isSubStep, log, /*isRestart*/ false);
|
||||||
|
|
||||||
ElementContext elemCtx(simulator_);
|
ElementContext elemCtx(simulator_);
|
||||||
ElementIterator elemIt = gridView.template begin</*codim=*/0>();
|
ElementIterator elemIt = gridView.template begin</*codim=*/0>();
|
||||||
@ -326,7 +326,7 @@ public:
|
|||||||
const auto& gridView = simulator_.vanguard().gridView();
|
const auto& gridView = simulator_.vanguard().gridView();
|
||||||
int numElements = gridView.size(/*codim=*/0);
|
int numElements = gridView.size(/*codim=*/0);
|
||||||
bool log = collectToIORank_.isIORank();
|
bool log = collectToIORank_.isIORank();
|
||||||
eclOutputModule_.allocBuffers(numElements, reportStepNum, isSubStep, log);
|
eclOutputModule_.allocBuffers(numElements, reportStepNum, isSubStep, log, /*isRestart*/ false);
|
||||||
|
|
||||||
ElementContext elemCtx(simulator_);
|
ElementContext elemCtx(simulator_);
|
||||||
ElementIterator elemIt = gridView.template begin</*codim=*/0>();
|
ElementIterator elemIt = gridView.template begin</*codim=*/0>();
|
||||||
@ -419,7 +419,7 @@ public:
|
|||||||
|
|
||||||
const auto& gridView = simulator_.vanguard().gridView();
|
const auto& gridView = simulator_.vanguard().gridView();
|
||||||
unsigned numElements = gridView.size(/*codim=*/0);
|
unsigned numElements = gridView.size(/*codim=*/0);
|
||||||
eclOutputModule_.allocBuffers(numElements, restartStepIdx, /*isSubStep=*/false, /*log=*/false);
|
eclOutputModule_.allocBuffers(numElements, restartStepIdx, /*isSubStep=*/false, /*log=*/false, /*isRestart*/ true);
|
||||||
|
|
||||||
{
|
{
|
||||||
Opm::SummaryState& summaryState = simulator_.vanguard().summaryState();
|
Opm::SummaryState& summaryState = simulator_.vanguard().summaryState();
|
||||||
|
Loading…
Reference in New Issue
Block a user