#include <nystroem.hh>
Public Member Functions | |
Nystroem (concepts::SolverFabric< Real > &fabric, concepts::Operator< Real > &D2, concepts::Operator< Real > &D0, timestepping::TimeVector &trhs, const concepts::Vector< Real > &Y0, const concepts::Vector< Real > &Z0, Real dt) | |
Protected Member Functions | |
virtual std::ostream & | info (std::ostream &os) const |
Returns information in an output stream. | |
virtual void | next () |
Protected Attributes | |
std::unique_ptr< concepts::Operator< Real > > | solver_ |
Solver for the linear system. | |
concepts::Operator< Real > * | liCo_ |
concepts::Vector< Real > | sol_ |
concepts::Vector< Real > | rhs_ |
Real | dt_ |
Time step size. | |
Real | t_ |
Time of the actual solution. | |
Timestep strategy for a Nyström algorithm to solve second order problems in time with no first order time derivative.
The scheme needs no parameters. It is explicit, has convergence order 2, is symplectic and conditionally stable. The stability criterion for the model problem is . For linear operators and f(x,t)=0, this scheme is identic to the leap frog scheme.
Definition at line 41 of file nystroem.hh.
timestepping::Nystroem::Nystroem | ( | concepts::SolverFabric< Real > & | fabric, |
concepts::Operator< Real > & | D2, | ||
concepts::Operator< Real > & | D0, | ||
timestepping::TimeVector & | trhs, | ||
const concepts::Vector< Real > & | Y0, | ||
const concepts::Vector< Real > & | Z0, | ||
Real | dt | ||
) |
Constructor
fabric | Solver fabric for solving the occuring systems |
D2 | Space operator D2 |
D0 | Space operator D0 |
trhs | Timedependent external driver f(x,t) |
Y0 | Initial condition y(x,0) |
Z0 | Initial condition d/dt y(x,0) |
dt | Time step size |
|
protectedvirtual |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
|
protectedvirtual |
The overloaded member function next() has to calculate the new right hand side and to release the solution vector. Then the Timestepping solver can set the new solution.
Implements timestepping::TimeStepStrategy.
|
protectedinherited |
Time step size.
Definition at line 77 of file strategy.hh.
|
protectedinherited |
Operator of the linear equation system which is solved by the friend class TimeStepping. It can be stored as a linear combination of two operators. The exact form depends on the specific scheme.
Definition at line 65 of file strategy.hh.
|
protectedinherited |
The right hand side vector of the linear equation system which is solved by the friend class TimeStepping.
Definition at line 75 of file strategy.hh.
|
protectedinherited |
The solution vector of the linear equation system which is solved by the friend class TimeStepping.
Definition at line 70 of file strategy.hh.
|
protectedinherited |
Solver for the linear system.
Definition at line 59 of file strategy.hh.
|
protectedinherited |
Time of the actual solution.
Definition at line 79 of file strategy.hh.