36#ifndef UG_PLUGINS__LIMEX__NEWTON_LIMEX
37#define UG_PLUGINS__LIMEX__NEWTON_LIMEX
51template <
typename TAlgebra>
Newton solver for assembling-based discretizations solved using Limex.
Definition newton_limex.h:55
TAlgebra algebra_type
algebra type
Definition newton_limex.h:58
SmartPtr< AssembledLinearOperator< algebra_type > > m_J
jacobi operator
Definition newton_limex.h:120
number m_linSolverRate
Definition newton_limex.h:129
TAlgebra::vector_type vector_type
vector type
Definition newton_limex.h:61
LimexNewtonSolver()
default constructor
Definition newton_limex_impl.h:59
virtual bool prepare(vector_type &u)
prepare operator
Definition newton_limex_impl.h:109
size_t m_linSolverSteps
Definition newton_limex.h:128
void write_debug(const vector_type &vec, const char *filename)
TAlgebra::matrix_type matrix_type
matrix type
Definition newton_limex.h:64
SmartPtr< ILinearOperatorInverse< vector_type > > m_spLinearSolver
linear solver
Definition newton_limex.h:113
number linear_solver_rate() const
prints average linear solver convergence
Definition newton_limex_impl.h:211
SmartPtr< IAssemble< TAlgebra > > m_spAss
assembling
Definition newton_limex.h:123
virtual bool init(SmartPtr< IOperator< vector_type > > N)
This operator inverts the operator N: Y -> X.
Definition newton_limex_impl.h:96
SmartPtr< AssembledOperator< algebra_type > > m_N
assembling routine
Definition newton_limex.h:117
void set_linear_solver(SmartPtr< ILinearOperatorInverse< vector_type > > LinearSolver)
sets the linear solver
Definition newton_limex.h:77
virtual std::string config_string() const
Returns information about configuration parameters. This should return necessary information about pa...
Definition newton_limex_impl.h:223
virtual bool apply(vector_type &u)
apply operator, i.e. N^{-1}(0) = u
Definition newton_limex_impl.h:116
void write_debug(const matrix_type &mat, const char *filename)
int linear_solver_steps() const
information on linear solver convergence
Definition newton_limex_impl.h:217