DUNE-FEM (unstable)

DuneODE::ExplicitMultiStepSolver< DestinationImp > Class Template Referenceabstract

Exlicit multi step ODE solver. More...

#include <dune/fem/solver/multistep.hh>

Public Types

typedef Monitor MonitorType
 monitor type
 

Public Member Functions

 ExplicitMultiStepSolver (OperatorType &op, TimeProviderBase &tp, int pord, bool verbose=false)
 constructor More...
 
virtual ~ExplicitMultiStepSolver ()
 destructor
 
void initialize (const DestinationType &U0)
 apply operator once to get dt estimate
 
void solve (DestinationType &U0)
 solve system
 
virtual void solve (DestinationType &u, MonitorType &monitor)=0
 solve \(\partial_t u = L(u)\) where \(L\) is the internal operator. More...
 
virtual void description (std::ostream &) const =0
 print description of ODE solver to out stream
 
void initialize (const DestinationType &U0)
 apply operator once to get dt estimate
 
void solve (DestinationType &U0)
 solve the system
 
void solveRK (DestinationType &U0)
 solve the system
 

Detailed Description

template<class DestinationImp>
class DuneODE::ExplicitMultiStepSolver< DestinationImp >

Exlicit multi step ODE solver.

Todo:
port usage of CFL constant to new time provider interface, i.e., use the CFL constant saved in this solver

Constructor & Destructor Documentation

◆ ExplicitMultiStepSolver()

template<class DestinationImp >
DuneODE::ExplicitMultiStepSolver< DestinationImp >::ExplicitMultiStepSolver ( OperatorType op,
TimeProviderBase tp,
int  pord,
bool  verbose = false 
)
inline

constructor

Parameters
[in]opOperator \(L\)
[in]tpTimeProvider
[in]pordpolynomial order
[in]verboseverbosity

Member Function Documentation

◆ solve()

template<class DestinationImp >
virtual void DuneODE::OdeSolverInterface< DestinationImp >::solve ( DestinationType u,
MonitorType monitor 
)
pure virtualinherited

solve \(\partial_t u = L(u)\) where \(L\) is the internal operator.

Parameters
[in]uunknown to solve for
[in]monitorMonitor to get some inside information

Implemented in DuneODE::BasicImplicitRungeKuttaSolver< ParDGHelmholtz< Destination >, ParDGNewtonInverse< Destination >, ImplicitRungeKuttaTimeStepControl >, DuneODE::BasicImplicitRungeKuttaSolver< HelmholtzOperator, NonlinearSolver, ImplicitRungeKuttaTimeStepControl >, DuneODE::BasicImplicitRungeKuttaSolver< ParDGHelmholtz< Destination >, ParDGNewtonInverse< Destination >, ImplicitRungeKuttaTimeStepControl, SemiImplicitRungeKuttaSourceTerm< SpaceOperatorInterface< Destination > > >, DuneODE::BasicImplicitRungeKuttaSolver< HelmholtzOperator, NonlinearSolver, ImplicitRungeKuttaTimeStepControl, SemiImplicitRungeKuttaSourceTerm< ExplicitOperator > >, DuneODE::BasicROWRungeKuttaSolver< HelmholtzOperator, NonlinearSolver, ImplicitRungeKuttaTimeStepControl >, DuneODE::BasicImplicitRungeKuttaSolver< ParDGHelmholtz< Destination >, ParDGNewtonInverse< Destination >, ImplicitRungeKuttaTimeStepControl >, DuneODE::BasicImplicitRungeKuttaSolver< HelmholtzOperator, NonlinearSolver, ImplicitRungeKuttaTimeStepControl >, DuneODE::BasicImplicitRungeKuttaSolver< ParDGHelmholtz< Destination >, ParDGNewtonInverse< Destination >, ImplicitRungeKuttaTimeStepControl, SemiImplicitRungeKuttaSourceTerm< SpaceOperatorInterface< Destination > > >, DuneODE::BasicImplicitRungeKuttaSolver< HelmholtzOperator, NonlinearSolver, ImplicitRungeKuttaTimeStepControl, SemiImplicitRungeKuttaSourceTerm< ExplicitOperator > >, DuneODE::BasicROWRungeKuttaSolver< HelmholtzOperator, NonlinearSolver, ImplicitRungeKuttaTimeStepControl >, and DuneODE::ExplicitRungeKuttaSolver< DestinationImp >.


The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Nov 21, 23:30, 2024)