Finite Volume Solver  prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
Public Member Functions | Static Public Attributes | Private Attributes | List of all members
fub::amrex::MultiBlockSourceTerm< SourceTerm > Class Template Reference

This class manages multiple kinetic source terms which are associated to independend one-dimensional domains. More...

#include <MultiBlockSourceTerm.hpp>

Public Member Functions

 MultiBlockSourceTerm (const std::vector< SourceTerm > &src_terms)
 
 MultiBlockSourceTerm (std::vector< SourceTerm > &&src_terms)
 
void ResetHierarchyConfiguration (const std::shared_ptr< MultiBlockGriddingAlgorithm > &grid)
 
Duration ComputeStableDt (int level) noexcept
 
template<typename IntegratorContext >
Result< void, TimeStepTooLargeAdvanceLevel (IntegratorContext &context, int level, Duration dt, [[maybe_unused]] const ::amrex::IntVect &ngrow=::amrex::IntVect(0))
 Integrates the source term for each tube in the specified context. More...
 

Static Public Attributes

static constexpr int Rank
 

Private Attributes

std::vector< SourceTerm > source_terms_
 

Detailed Description

template<typename SourceTerm>
class fub::amrex::MultiBlockSourceTerm< SourceTerm >

This class manages multiple kinetic source terms which are associated to independend one-dimensional domains.

Constructor & Destructor Documentation

◆ MultiBlockSourceTerm() [1/2]

template<typename SourceTerm >
fub::amrex::MultiBlockSourceTerm< SourceTerm >::MultiBlockSourceTerm ( const std::vector< SourceTerm > &  src_terms)
inlineexplicit

◆ MultiBlockSourceTerm() [2/2]

template<typename SourceTerm >
fub::amrex::MultiBlockSourceTerm< SourceTerm >::MultiBlockSourceTerm ( std::vector< SourceTerm > &&  src_terms)
inlineexplicit

Member Function Documentation

◆ AdvanceLevel()

template<typename SourceTerm >
template<typename IntegratorContext >
Result<void, TimeStepTooLarge> fub::amrex::MultiBlockSourceTerm< SourceTerm >::AdvanceLevel ( IntegratorContext context,
int  level,
Duration  dt,
[[maybe_unused] ] const ::amrex::IntVect &  ngrow = ::amrex::IntVect(0) 
)
inline

Integrates the source term for each tube in the specified context.

◆ ComputeStableDt()

template<typename SourceTerm >
Duration fub::amrex::MultiBlockSourceTerm< SourceTerm >::ComputeStableDt ( int  level)
inlinenoexcept

◆ ResetHierarchyConfiguration()

template<typename SourceTerm >
void fub::amrex::MultiBlockSourceTerm< SourceTerm >::ResetHierarchyConfiguration ( const std::shared_ptr< MultiBlockGriddingAlgorithm > &  grid)
inline

Member Data Documentation

◆ Rank

template<typename SourceTerm >
constexpr int fub::amrex::MultiBlockSourceTerm< SourceTerm >::Rank
staticconstexpr

◆ source_terms_

template<typename SourceTerm >
std::vector<SourceTerm> fub::amrex::MultiBlockSourceTerm< SourceTerm >::source_terms_
private

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