17 #ifndef __deal2__solver_control_h
18 #define __deal2__solver_control_h
21 #include <deal.II/base/config.h>
22 #include <deal.II/base/subscriptor.h>
26 DEAL_II_NAMESPACE_OPEN
108 out <<
"Iterative method reported convergence failure in step "
109 << last_step <<
" with residual " << last_residual << std::endl;
137 const double tol = 1.e-10,
180 const double check_value);
402 const double reduce = 1.e-2,
440 const double check_value);
514 const double check_value);
622 DEAL_II_NAMESPACE_CLOSE
Stop iteration, goal not reached.
double step_reduction(unsigned int step) const
const double last_residual
virtual State check(const unsigned int step, const double check_value)
virtual void print_info(std::ostream &out) const
static void declare_parameters(ParameterHandler ¶m)
bool history_data_enabled
void parse_parameters(ParameterHandler ¶m)
void clear_failure_criterion()
double average_reduction() const
double initial_value() const
IterationNumberControl & operator=(const SolverControl &c)
virtual State check(const unsigned int step, const double check_value)
virtual ~IterationNumberControl()
double last_value() const
const unsigned int last_step
unsigned int log_frequency(unsigned int)
Stop iteration, goal reached.
unsigned int max_steps() const
unsigned int m_log_frequency
double set_reduction(const double)
ReductionControl & operator=(const SolverControl &c)
double relative_failure_residual
unsigned int last_step() const
virtual ~ReductionControl()
static void declare_parameters(ParameterHandler ¶m)
IterationNumberControl(const unsigned int maxiter=100, const double tolerance=1e-12, const bool log_history=false, const bool log_result=true)
double final_reduction() const
void enable_history_data()
double set_tolerance(const double)
ReductionControl(const unsigned int maxiter=100, const double tolerance=1.e-10, const double reduce=1.e-2, const bool log_history=false, const bool log_result=true)
virtual State check(const unsigned int step, const double check_value)
void parse_parameters(ParameterHandler ¶m)
std::vector< double > history_data
SolverControl(const unsigned int n=100, const double tol=1.e-10, const bool log_history=false, const bool log_result=true)
unsigned int set_max_steps(const unsigned int)
DeclException0(ExcHistoryDataRequired)
void set_failure_criterion(const double rel_failure_residual)