18 #include <deal.II/algorithms/theta_timestepping.h> 20 #include <deal.II/base/parameter_handler.h> 21 #include <deal.II/lac/vector_memory.h> 27 template <
class VECTOR>
29 : vtheta(0.5), adaptive(false), op_explicit(&e), op_implicit(&i)
33 template <
class VECTOR>
41 template <
class VECTOR>
52 template <
class VECTOR>
64 template <
class VECTOR>
70 deallog.
push (
"Theta");
84 src1.
add(p,
"Previous iterate");
88 src2.
add(p,
"Previous iterate");
92 out1.
add(p,
"Result");
95 src2.
add(p,
"Previous time");
99 (*output) << 0U << out;
119 (*op_explicit)(out1, src1);
120 (*op_implicit)(out, src2);
123 (*
output) << count << out;
131 DEAL_II_NAMESPACE_CLOSE
virtual void notify(const Event &)
void add(DATA &v, const std::string &name)
void parse_parameters(ParameterHandler ¶m)
ThetaTimestepping(Operator< VECTOR > &op_explicit, Operator< VECTOR > &op_implicit)
void enter_subsection(const std::string &subsection)
virtual void operator()(NamedData< VECTOR * > &out, const NamedData< VECTOR * > &in)
#define Assert(cond, exc)
double time
The current time.
SmartPointer< Operator< VECTOR >, ThetaTimestepping< VECTOR > > op_implicit
const Event new_timestep_size
SmartPointer< OutputOperator< VECTOR >, ThetaTimestepping< VECTOR > > output
void merge(NamedData< DATA2 > &)
bool get_bool(const std::string &entry_name) const
double step
The current step size times something.
static void declare_parameters(ParameterHandler ¶m)
void push(const std::string &text)
double get_double(const std::string &entry_name) const
void declare_entry(const std::string &entry, const std::string &default_value, const Patterns::PatternBase &pattern=Patterns::Anything(), const std::string &documentation=std::string())
::ExceptionBase & ExcNotImplemented()
SmartPointer< Operator< VECTOR >, ThetaTimestepping< VECTOR > > op_explicit