16 #ifndef dealii__solver_h 17 #define dealii__solver_h 19 #include <deal.II/base/config.h> 20 #include <deal.II/base/subscriptor.h> 21 #include <deal.II/lac/vector_memory.h> 22 #include <deal.II/lac/solver_control.h> 25 DEAL_II_DISABLE_EXTRA_DIAGNOSTICS
26 #include <boost/signals2.hpp> 29 DEAL_II_NAMESPACE_OPEN
31 template <
typename number>
class Vector;
324 template <
class VectorType = Vector<
double> >
385 boost::signals2::connection
387 const double check_value,
388 const VectorType ¤t_iterate)> &slot);
419 template <
typename Iterator>
421 const Iterator end)
const;
446 const double check_value,
447 const VectorType ¤t_iterate),
455 template <
class VectorType>
474 template <
class VectorType>
475 template <
typename Iterator>
479 const Iterator end)
const 481 Assert (begin != end,
ExcMessage (
"You can't combine iterator states if no state is given."));
487 for (; p != end; ++p)
488 state = this->
operator()(state, *p);
494 template<
class VectorType>
506 std_cxx11::ref(solver_control),
513 template<
class VectorType>
525 std_cxx11::ref(solver_control),
532 template<
class VectorType>
534 boost::signals2::connection
537 const double check_value,
538 const VectorType ¤t_iterate)> &slot)
545 DEAL_II_NAMESPACE_CLOSE
Stop iteration, goal not reached.
virtual State check(const unsigned int step, const double check_value)
::ExceptionBase & ExcMessage(std::string arg1)
GrowingVectorMemory< VectorType > static_vector_memory
boost::signals2::connection connect(const std_cxx11::function< SolverControl::State(const unsigned int iteration, const double check_value, const VectorType ¤t_iterate)> &slot)
Stop iteration, goal reached.
#define Assert(cond, exc)
Solver(SolverControl &solver_control, VectorMemory< VectorType > &vector_memory)
VectorMemory< VectorType > & memory
boost::signals2::signal< SolverControl::State(const unsigned int iteration, const double check_value, const VectorType ¤t_iterate), StateCombiner > iteration_status