34 first_adjoint_step (true)
59 #ifdef LIBMESH_ENABLE_GHOSTED 74 #ifdef LIBMESH_ENABLE_GHOSTED 107 bool backtracking_failed =
110 bool max_iterations =
113 if (backtracking_failed || max_iterations)
119 libMesh::out <<
"Newton backtracking failed. Trying with smaller timestep, dt=" 125 bool backtracking_still_failed =
128 bool backtracking_max_iterations =
131 if (!backtracking_still_failed && !backtracking_max_iterations)
134 libMesh::out <<
"Reduced dt solve succeeded." << std::endl;
141 libMesh::out <<
"DiffSolver::solve() did not succeed after " 143 <<
" attempts." << std::endl;
144 libmesh_convergence_failure();
169 old_nonlinear_soln = nonlinear_solution;
230 std::unique_ptr<NumericVector<Number>> solution_copy =
235 solution_copy->close();
virtual void reinit() override
std::unique_ptr< NumericVector< Number > > old_local_nonlinear_solution
std::unique_ptr< DiffSolver > _diff_solver
UnsteadySolver(sys_type &s)
virtual void init_data() override
std::unique_ptr< SolutionHistory > solution_history
Number old_nonlinear_solution(const dof_id_type global_dof_number) const
Provides a uniform interface to vector storage schemes for different linear algebra libraries...
dof_id_type n_local_dofs() const
dof_id_type n_dofs() const
virtual void adjoint_advance_timestep() override
dof_id_type n_dofs() const
NumericVector< Number > & add_vector(const std::string &vec_name, const bool projections=true, const ParallelType type=PARALLEL)
virtual ~UnsteadySolver()
virtual void retrieve_timestep() override
const NumericVector< Number > & get_vector(const std::string &vec_name) const
std::unique_ptr< NumericVector< Number > > solution
Real calculate_norm(const NumericVector< Number > &v, unsigned int var, FEMNormType norm_type, std::set< unsigned int > *skip_dimensions=nullptr) const
unsigned int reduce_deltat_on_diffsolver_failure
virtual void solve() override
virtual void advance_timestep() override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real du(const SystemNorm &norm) const override
virtual void init() override
OStreamProxy out(std::cout)
const DofMap & get_dof_map() const
const std::vector< dof_id_type > & get_send_list() const
virtual void localize(std::vector< T > &v_local) const =0