Reference documentation for deal.II version 9.1.0-pre
newton.h
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2010 - 2017 by the deal.II authors
4 //
5 // This file is part of the deal.II library.
6 //
7 // The deal.II library is free software; you can use it, redistribute
8 // it, and/or modify it under the terms of the GNU Lesser General
9 // Public License as published by the Free Software Foundation; either
10 // version 2.1 of the License, or (at your option) any later version.
11 // The full text of the license can be found in the file LICENSE.md at
12 // the top level directory of deal.II.
13 //
14 // ---------------------------------------------------------------------
15 
16 
17 #ifndef dealii_newton_h
18 #define dealii_newton_h
19 
20 #include <deal.II/algorithms/any_data.h>
21 #include <deal.II/algorithms/operator.h>
22 
23 #include <deal.II/base/smartpointer.h>
24 
25 #include <deal.II/lac/solver_control.h>
26 
27 DEAL_II_NAMESPACE_OPEN
28 
29 class ParameterHandler;
30 
31 namespace Algorithms
32 {
68  template <typename VectorType>
69  class Newton : public OperatorBase
70  {
71  public:
77 
81  static void
83 
87  void
89 
93  void
95 
102  virtual void
103  operator()(AnyData &out, const AnyData &in) override;
104 
105  virtual void
106  notify(const Event &) override;
107 
112  double
113  threshold(double new_value);
114 
119 
120  private:
125 
130 
136 
142 
151  unsigned int n_stepsize_iterations;
152 
166 
167  public:
177  unsigned int debug;
178  };
179 } // namespace Algorithms
180 
181 DEAL_II_NAMESPACE_CLOSE
182 
183 #endif
bool debug_vectors
Definition: newton.h:172
void initialize(OutputOperator< VectorType > &output)
virtual void operator()(AnyData &out, const AnyData &in) override
Newton(OperatorBase &residual, OperatorBase &inverse_derivative)
unsigned int debug
Definition: newton.h:177
static void declare_parameters(ParameterHandler &param)
SmartPointer< OperatorBase, Newton< VectorType > > residual
Definition: newton.h:124
double threshold(double new_value)
virtual void notify(const Event &) override
void parse_parameters(ParameterHandler &param)
unsigned int n_stepsize_iterations
Definition: newton.h:151
SmartPointer< OutputOperator< VectorType >, Newton< VectorType > > data_out
Definition: newton.h:135
double assemble_threshold
Definition: newton.h:165
SmartPointer< OperatorBase, Newton< VectorType > > inverse_derivative
Definition: newton.h:129
ReductionControl control
Definition: newton.h:118