15#ifndef dealii_trilinos_nox
16#define dealii_trilinos_nox
20#ifdef DEAL_II_TRILINOS_WITH_NOX
26# include <Teuchos_ParameterList.hpp>
86 template <
typename VectorType>
171 const Teuchos::RCP<Teuchos::ParameterList> &
parameters =
172 Teuchos::rcp(
new Teuchos::ParameterList));
204 std::function<void(
const VectorType &u, VectorType &F)>
residual;
285 void(
const VectorType &y, VectorType &x,
const double tolerance)>
321 int(
const VectorType &y, VectorType &x,
const double tolerance)>
345 const VectorType ¤t_u,
346 const VectorType &f)>
std::function< void(const VectorType &x, VectorType &y)> apply_jacobian
std::function< SolverControl::State(const unsigned int i, const double norm_f, const VectorType ¤t_u, const VectorType &f)> check_iteration_status
unsigned int n_residual_evaluations
unsigned int n_nonlinear_iterations
std::function< void(const VectorType ¤t_u)> setup_preconditioner
unsigned int n_last_linear_iterations
std::function< void(const VectorType &y, VectorType &x, const double tolerance)> solve_with_jacobian
std::function< bool()> update_preconditioner_predicate
std::function< void(const VectorType &u, VectorType &F)> residual
AdditionalData additional_data
unsigned int solve(VectorType &solution)
NOXSolver(AdditionalData &additional_data, const Teuchos::RCP< Teuchos::ParameterList > ¶meters=Teuchos::rcp(new Teuchos::ParameterList))
std::function< void(const VectorType ¤t_u)> setup_jacobian
const Teuchos::RCP< Teuchos::ParameterList > parameters
std::exception_ptr pending_exception
unsigned int n_jacobian_applications
std::function< int(const VectorType &y, VectorType &x, const double tolerance)> solve_with_jacobian_and_track_n_linear_iterations
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
#define DeclException0(Exception0)
static ::ExceptionBase & ExcNOXNoConvergence()
unsigned int threshold_n_linear_iterations
unsigned int threshold_nonlinear_iterations
AdditionalData(const unsigned int max_iter=10, const double abs_tol=1.e-20, const double rel_tol=1.e-5, const unsigned int threshold_nonlinear_iterations=1, const unsigned int threshold_n_linear_iterations=0, const bool reuse_solver=false)