DiFfRG
Loading...
Searching...
No Matches
DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim > Class Template Reference

A class to perform time stepping using the Boost Adams-Bashforth-Moulton method. This stepper uses fixed time steps and is fully explicit. More...

#include <boost_abm.hh>

Inheritance diagram for DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >:

Public Types

using NumberType = typename Base::NumberType
 
using InverseSparseMatrixType = typename Base::InverseSparseMatrixType
 
using BlockVectorType = typename Base::BlockVectorType
 

Public Member Functions

virtual void run (AbstractFlowingVariables< NumberType > *initial_condition, const double t_start, const double t_stop) override
 Run the time stepping algorithm.
 

Private Types

using Base = AbstractTimestepper<VectorType, SparseMatrixType, dim>
 

Private Member Functions

void run (VectorType &initial_data, const double t_start, const double t_stop)
 
void run (BlockVectorType &initial_data, const double t_start, const double t_stop)
 
void run_vars (VectorType &initial_data, const double t_start, const double t_stop)
 

Detailed Description

template<typename VectorType, typename SparseMatrixType = dealii::SparseMatrix<get_type::NumberType<VectorType>>, uint dim = 0>
class DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >

A class to perform time stepping using the Boost Adams-Bashforth-Moulton method. This stepper uses fixed time steps and is fully explicit.

Member Typedef Documentation

◆ Base

template<typename VectorType , typename SparseMatrixType = dealii::SparseMatrix<get_type::NumberType<VectorType>>, uint dim = 0>
using DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >::Base = AbstractTimestepper<VectorType, SparseMatrixType, dim>
private

◆ BlockVectorType

template<typename VectorType , typename SparseMatrixType = dealii::SparseMatrix<get_type::NumberType<VectorType>>, uint dim = 0>
using DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >::BlockVectorType = typename Base::BlockVectorType

◆ InverseSparseMatrixType

template<typename VectorType , typename SparseMatrixType = dealii::SparseMatrix<get_type::NumberType<VectorType>>, uint dim = 0>
using DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >::InverseSparseMatrixType = typename Base::InverseSparseMatrixType

◆ NumberType

template<typename VectorType , typename SparseMatrixType = dealii::SparseMatrix<get_type::NumberType<VectorType>>, uint dim = 0>
using DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >::NumberType = typename Base::NumberType

Member Function Documentation

◆ run() [1/3]

template<typename VectorType , typename SparseMatrixType = dealii::SparseMatrix<get_type::NumberType<VectorType>>, uint dim = 0>
virtual void DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >::run ( AbstractFlowingVariables< NumberType > * initial_condition,
const double t_start,
const double t_stop )
overridevirtual

Run the time stepping algorithm.

◆ run() [2/3]

template<typename VectorType , typename SparseMatrixType = dealii::SparseMatrix<get_type::NumberType<VectorType>>, uint dim = 0>
void DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >::run ( BlockVectorType & initial_data,
const double t_start,
const double t_stop )
private

◆ run() [3/3]

template<typename VectorType , typename SparseMatrixType = dealii::SparseMatrix<get_type::NumberType<VectorType>>, uint dim = 0>
void DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >::run ( VectorType & initial_data,
const double t_start,
const double t_stop )
private

◆ run_vars()

template<typename VectorType , typename SparseMatrixType = dealii::SparseMatrix<get_type::NumberType<VectorType>>, uint dim = 0>
void DiFfRG::TimeStepperBoostABM< VectorType, SparseMatrixType, dim >::run_vars ( VectorType & initial_data,
const double t_start,
const double t_stop )
private

The documentation for this class was generated from the following file: