16 #ifndef __deal2__appframe__newton_base_h
17 #define __deal2__appframe__newton_base_h
19 #include <deal.II/lac/solver_control.h>
23 using namespace dealii;
24 using namespace FuelCell::ApplicationCore;
28 namespace ApplicationCore
183 virtual void declare_parameters (ParameterHandler& param);
188 virtual void initialize (ParameterHandler& param);
193 void _initialize (ParameterHandler& param);
199 double threshold(
double new_value);
211 virtual void assemble();
250 void debug_output(
const FEVector& sol,
unsigned int debug
Write debug output to FcstUtilities::log; the higher the number, the more output. ...
Definition: newton_base.h:290
bool debug_update
Print Newton update after each step into file Newton_dNNN?
Definition: newton_base.h:280
void initialize_initial_guess(BlockVector< double > &dst)
Control object for the Newton iteration.
Definition: newton_base.h:204
bool debug_solution
Print updated solution after each step into file Newton_uNNN?
Definition: newton_base.h:275
static const FuelCell::ApplicationCore::Event bad_derivative
The Event set if convergence is becoming bad and a new matrix should be assembled.
Definition: newton_base.h:165
bool debug_residual
Print Newton residual after each step into file Newton_rNNN?
Definition: newton_base.h:285
bool assemble_now
This flag is set by the function assemble(), indicating that the matrix must be assembled anew upon s...
Definition: newton_base.h:259
double assemble_threshold
Threshold for re-assembling matrix.
Definition: newton_base.h:270
Base class for applications.
Definition: application_base.h:113
Base class for all classes performing Newton's iteration.
Definition: newton_base.h:156
This class implements either iterative or time-stepping wrapper of applications.
Definition: application_wrapper.h:39
ReductionControl control
Control object for the Newton iteration.
Definition: newton_base.h:238
Objects of this kind are used to notify interior applications of changes provoked by an outer loop...
Definition: event.h:51
BlockVector< double > FEVector
The vector class used by applications.
Definition: application_data.h:46
The data type used in function calls of Application.
Definition: fe_vectors.h:59
unsigned int step
The number of a basic Newton iteration.
Definition: newton_base.h:294
unsigned int n_blocks
The total number of blocks.
Definition: newton_base.h:318
double numIter
Number of Iterations;.
Definition: newton_base.h:243
std::vector< unsigned int > blocks
This vector specifies the blocks of the global solution which are supposed to be treated specially...
Definition: newton_base.h:313