mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
add wellIterationsLast_.
This commit is contained in:
parent
52d51e8565
commit
3f4aa65180
@ -117,6 +117,9 @@ namespace Opm {
|
|||||||
/// Number of linear solver iterations used in the last call to step().
|
/// Number of linear solver iterations used in the last call to step().
|
||||||
int linearIterationsLastStep() const;
|
int linearIterationsLastStep() const;
|
||||||
|
|
||||||
|
/// Number of well iterations used in all calls to step().
|
||||||
|
int wellIterationsLastStep() const;
|
||||||
|
|
||||||
/// Reference to physical model.
|
/// Reference to physical model.
|
||||||
const PhysicalModel& model() const;
|
const PhysicalModel& model() const;
|
||||||
|
|
||||||
@ -157,6 +160,7 @@ namespace Opm {
|
|||||||
int wellIterations_;
|
int wellIterations_;
|
||||||
int nonlinearIterationsLast_;
|
int nonlinearIterationsLast_;
|
||||||
int linearIterationsLast_;
|
int linearIterationsLast_;
|
||||||
|
int wellIterationsLast_;
|
||||||
};
|
};
|
||||||
} // namespace Opm
|
} // namespace Opm
|
||||||
|
|
||||||
|
@ -36,7 +36,8 @@ namespace Opm
|
|||||||
linearIterations_(0),
|
linearIterations_(0),
|
||||||
wellIterations_(0),
|
wellIterations_(0),
|
||||||
nonlinearIterationsLast_(0),
|
nonlinearIterationsLast_(0),
|
||||||
linearIterationsLast_(0)
|
linearIterationsLast_(0),
|
||||||
|
wellIterationsLast_(0)
|
||||||
{
|
{
|
||||||
if (!model_) {
|
if (!model_) {
|
||||||
OPM_THROW(std::logic_error, "Must provide a non-null model argument for NonlinearSolver.");
|
OPM_THROW(std::logic_error, "Must provide a non-null model argument for NonlinearSolver.");
|
||||||
@ -85,6 +86,11 @@ namespace Opm
|
|||||||
return linearIterationsLast_;
|
return linearIterationsLast_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <class PhysicalModel>
|
||||||
|
int NonlinearSolver<PhysicalModel>::wellIterationsLastStep() const
|
||||||
|
{
|
||||||
|
return wellIterationsLast_;
|
||||||
|
}
|
||||||
|
|
||||||
template <class PhysicalModel>
|
template <class PhysicalModel>
|
||||||
int
|
int
|
||||||
@ -143,9 +149,10 @@ namespace Opm
|
|||||||
|
|
||||||
linearIterations_ += linIters;
|
linearIterations_ += linIters;
|
||||||
nonlinearIterations_ += iteration - 1; // Since the last one will always be trivial.
|
nonlinearIterations_ += iteration - 1; // Since the last one will always be trivial.
|
||||||
wellIterations_ = wellIters;
|
wellIterations_ += wellIters;
|
||||||
linearIterationsLast_ = linIters;
|
linearIterationsLast_ = linIters;
|
||||||
nonlinearIterationsLast_ = iteration;
|
nonlinearIterationsLast_ = iteration;
|
||||||
|
wellIterationsLast_ = wellIters;
|
||||||
|
|
||||||
// Do model-specific post-step actions.
|
// Do model-specific post-step actions.
|
||||||
model_->afterStep(dt, reservoir_state, well_state);
|
model_->afterStep(dt, reservoir_state, well_state);
|
||||||
|
Loading…
Reference in New Issue
Block a user