Class documentation of Concepts

Loading...
Searching...
No Matches
theta.hh
Go to the documentation of this file.
1
6#ifndef theta_hh
7#define theta_hh
8
9#include "basics/typedefs.hh"
10#include "function/vector.hh"
11#include "strategy.hh"
12
13namespace concepts {
14 template<typename F>
15 class Operator;
16}
17
18namespace timestepping {
19
20 using concepts::Real;
21
22 class TimeVector;
23
24 // ***************************************************************** Theta **
25
40 class Theta : public TimeStepStrategy {
41 public:
55 const concepts::Vector<Real>& Y0,
56 Real dt,
57 Real theta = 0.5);
58 virtual ~Theta();
59 protected:
60 virtual std::ostream& info(std::ostream& os) const;
61 virtual void next();
62 private:
64 concepts::Operator<Real> &D1_, &D0_;
68 concepts::Vector<Real> Yn1_; // Yn1 = Y(t_{n-1})
70 Real theta_;
72 std::unique_ptr<concepts::Operator<Real> > lhs_;
73 };
74
75}
76
77#endif // theta_hh
virtual void next()
Theta(concepts::SolverFabric< Real > &fabric, concepts::Operator< Real > &D1, concepts::Operator< Real > &D0, timestepping::TimeVector &trhs, const concepts::Vector< Real > &Y0, Real dt, Real theta=0.5)
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
double Real
Definition typedefs.hh:39