Loading [MathJax]/extensions/tex2jax.js
Finite Volume Solver  prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
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: