|
NonlinearSolver.hpp
Go to the documentation of this file.
129 SimulatorReportSingle step(const SimulatorTimerInterface& timer, const TimeStepControlInterface *timeStepControl)
162 while ( (!converged && (model_->simulator().problem().iterationContext().iteration() <= this->model().param().newton_max_iter_)) ||
163 (model_->simulator().problem().iterationContext().iteration() <= this->model().param().newton_min_iter_));
173 if (timeStepControl && !timeStepControl->timeStepAccepted(relativeChange, timer.currentStepLength())) {
178 std::string msg = "Relative change in solution for time step was " + std::to_string(relativeChange);
Defines a type tags and some fundamental properties all models. Definition: NonlinearSolver.hpp:96 int linearIterationsLastStep() const Number of linear solver iterations used in the last call to step(). Definition: NonlinearSolver.hpp:212 void stabilizeNonlinearUpdate(BVector &dx, BVector &dxOld, const Scalar omega) const Definition: NonlinearSolver.hpp:243 Scalar relaxRelTol() const The relaxation relative tolerance. Definition: NonlinearSolver.hpp:261 Scalar relaxMax() const The greatest relaxation factor (i.e. smallest factor) allowed. Definition: NonlinearSolver.hpp:249 int linearizations() const Number of linearizations used in all calls to step(). Definition: NonlinearSolver.hpp:192 int wellIterationsLastStep() const Number of well iterations used in all calls to step(). Definition: NonlinearSolver.hpp:216 int nonlinearIterations() const Number of full nonlinear solver iterations used in all calls to step(). Definition: NonlinearSolver.hpp:196 void setParameters(const SolverParameters ¶m) Set parameters to override those given at construction time. Definition: NonlinearSolver.hpp:265 NonlinearRelaxType relaxType() const The relaxation type (Dampen or SOR). Definition: NonlinearSolver.hpp:257 int linearIterations() const Number of linear solver iterations used in all calls to step(). Definition: NonlinearSolver.hpp:200 SimulatorReportSingle step(const SimulatorTimerInterface &timer, const TimeStepControlInterface *timeStepControl) Definition: NonlinearSolver.hpp:129 int nonlinearIterationsLastStep() const Number of nonlinear solver iterations used in the last call to step(). Definition: NonlinearSolver.hpp:208 const SimulatorReportSingle & failureReport() const return the statistics if the step() method failed Definition: NonlinearSolver.hpp:188 int wellIterations() const Number of well iterations used in all calls to step(). Definition: NonlinearSolver.hpp:204 const PhysicalModel & model() const Reference to physical model. Definition: NonlinearSolver.hpp:224 void detectOscillations(const std::vector< std::vector< Scalar > > &residualHistory, const int it, bool &oscillate, bool &stagnate) const Detect oscillation or stagnation in a given residual history. Definition: NonlinearSolver.hpp:232 NonlinearSolverParameters< Scalar > SolverParameters Definition: NonlinearSolver.hpp:100 NonlinearSolver(const SolverParameters ¶m, std::unique_ptr< PhysicalModel > model) Definition: NonlinearSolver.hpp:111 Scalar relaxIncrement() const The step-change size for the relaxation factor. Definition: NonlinearSolver.hpp:253 std::vector< std::vector< Scalar > > computeFluidInPlace(const std::vector< int > &fipnum) const Definition: NonlinearSolver.hpp:220 PhysicalModel & model() Mutable reference to physical model. Definition: NonlinearSolver.hpp:228 Interface class for SimulatorTimer objects, to be improved. Definition: SimulatorTimerInterface.hpp:34 virtual double currentStepLength() const =0 virtual double simulationTimeElapsed() const =0 Definition: TimeStepControlInterface.hpp:51 virtual bool timeStepAccepted(const double error, const double timeStepJustCompleted) const =0 Definition: blackoilnewtonmethodparams.hpp:31 void stabilizeNonlinearUpdate(BVector &dx, BVector &dxOld, const Scalar omega, NonlinearRelaxType relaxType) void detectOscillations(const std::vector< std::vector< Scalar > > &residualHistory, const int it, const int numPhases, const Scalar relaxRelTol, const int minimumOscillatingPhases, bool &oscillate, bool &stagnate) Detect oscillation or stagnation in a given residual history. Definition: blackoilbioeffectsmodules.hh:45 @ Dampen typename Properties::Detail::GetPropImpl< TypeTag, Property >::type::type GetPropType get the type alias defined in the property (equivalent to old macro GET_PROP_TYPE(.... Definition: propertysystem.hh:233 std::string to_string(const ConvergenceReport::ReservoirFailure::Type t) The Opm property system, traits with inheritance. Definition: NonlinearSolver.hpp:79 void reset() NonlinearSolverParameters() static void registerParameters() NonlinearRelaxType relaxType_ Definition: NonlinearSolver.hpp:80 Scalar relaxIncrement_ Definition: NonlinearSolver.hpp:82 Definition: NonlinearSolver.hpp:45 static constexpr Scalar value Definition: NonlinearSolver.hpp:45 Definition: NonlinearSolver.hpp:47 static constexpr auto value Definition: NonlinearSolver.hpp:47 A struct for returning timing data from a simulator to its caller. Definition: SimulatorReport.hpp:34 bool time_step_rejected Definition: SimulatorReport.hpp:56 |