Reference documentation for deal.II version 9.2.0
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
newton.h
Go to the documentation of this file.
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2010 - 2019 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/base/config.h>
21 
24 
26 
28 
30 
31 // Forward declaration
32 #ifndef DOXYGEN
33 class ParameterHandler;
34 #endif
35 
36 namespace Algorithms
37 {
73  template <typename VectorType>
74  class Newton : public OperatorBase
75  {
76  public:
82 
86  static void
88 
92  void
94 
98  void
100 
107  virtual void
108  operator()(AnyData &out, const AnyData &in) override;
109 
110  virtual void
111  notify(const Event &) override;
112 
117  double
118  threshold(double new_value);
119 
124 
125  private:
130 
135 
141 
147 
156  unsigned int n_stepsize_iterations;
157 
171 
172  public:
182  unsigned int debug;
183  };
184 } // namespace Algorithms
185 
187 
188 #endif
AnyData
Definition: any_data.h:37
Algorithms::Newton::assemble_now
bool assemble_now
Definition: newton.h:146
operator.h
Algorithms::Newton::assemble_threshold
double assemble_threshold
Definition: newton.h:170
Algorithms::OperatorBase
Definition: operator.h:72
Algorithms::Event
Definition: event.h:49
Algorithms::Newton::declare_parameters
static void declare_parameters(ParameterHandler &param)
Algorithms::Newton::threshold
double threshold(double new_value)
ReductionControl
Definition: solver_control.h:427
Algorithms::Newton::control
ReductionControl control
Definition: newton.h:123
Algorithms::Newton::residual
SmartPointer< OperatorBase, Newton< VectorType > > residual
Definition: newton.h:129
Algorithms::Newton::initialize
void initialize(OutputOperator< VectorType > &output)
DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_OPEN
Definition: config.h:358
Algorithms::Newton::n_stepsize_iterations
unsigned int n_stepsize_iterations
Definition: newton.h:156
smartpointer.h
Algorithms
Definition: newton.h:36
Algorithms::Newton::debug
unsigned int debug
Definition: newton.h:182
Algorithms::Newton::debug_vectors
bool debug_vectors
Definition: newton.h:177
Algorithms::Newton
Definition: newton.h:74
Algorithms::Newton::inverse_derivative
SmartPointer< OperatorBase, Newton< VectorType > > inverse_derivative
Definition: newton.h:134
SmartPointer
Definition: smartpointer.h:68
any_data.h
Algorithms::Newton::operator()
virtual void operator()(AnyData &out, const AnyData &in) override
ParameterHandler
Definition: parameter_handler.h:845
config.h
Algorithms::Newton::notify
virtual void notify(const Event &) override
Algorithms::Newton::Newton
Newton(OperatorBase &residual, OperatorBase &inverse_derivative)
Algorithms::OutputOperator
Definition: operator.h:113
DEAL_II_NAMESPACE_CLOSE
#define DEAL_II_NAMESPACE_CLOSE
Definition: config.h:359
solver_control.h
Algorithms::Newton::parse_parameters
void parse_parameters(ParameterHandler &param)
Algorithms::Newton::data_out
SmartPointer< OutputOperator< VectorType >, Newton< VectorType > > data_out
Definition: newton.h:140