SpECTRE  v2024.04.12
TimeSteppers::BoundaryHistory< LocalData, RemoteData, CouplingResult > Class Template Reference

History data used by a TimeStepper for boundary integration. More...

#include <BoundaryHistory.hpp>

Classes

class  ConstSideAccess
 
class  MutableSideAccess
 
class  SideAccessCommon
 

Public Types

using UntypedCouplingResult = math_wrapper_type< CouplingResult >
 The wrapped types presented by the type-erased history. One of the types in MATH_WRAPPER_TYPES.
 

Public Member Functions

 BoundaryHistory (const BoundaryHistory &other)=default
 
 BoundaryHistory (BoundaryHistory &&)=default
 
BoundaryHistoryoperator= (const BoundaryHistory &other)=default
 
BoundaryHistoryoperator= (BoundaryHistory &&)=default
 
MutableSideAccess< true > local ()
 
ConstSideAccess< true > local () const
 
MutableSideAccess< false > remote ()
 
ConstSideAccess< false > remote () const
 
template<typename Coupling >
auto evaluator (Coupling &&coupling) const
 Obtain an object that can evaluate type-erased boundary couplings. More...
 
void clear_coupling_cache ()
 Clear the cached values. More...
 
void pup (PUP::er &p)
 
template<bool IncludeData>
std::ostreamprint (std::ostream &os, size_t padding_size=0) const
 

Detailed Description

template<typename LocalData, typename RemoteData, typename CouplingResult>
class TimeSteppers::BoundaryHistory< LocalData, RemoteData, CouplingResult >

History data used by a TimeStepper for boundary integration.

Template Parameters
LocalDatalocal data passed to the boundary coupling
RemoteDataremote data passed to the boundary coupling
CouplingResulttype of cached boundary couplings

Member Function Documentation

◆ clear_coupling_cache()

template<typename LocalData , typename RemoteData , typename CouplingResult >
void TimeSteppers::BoundaryHistory< LocalData, RemoteData, CouplingResult >::clear_coupling_cache

Clear the cached values.

This is required after existing history entries that have been used in coupling calculations are mutated.

◆ evaluator()

template<typename LocalData , typename RemoteData , typename CouplingResult >
template<typename Coupling >
auto TimeSteppers::BoundaryHistory< LocalData, RemoteData, CouplingResult >::evaluator ( Coupling &&  coupling) const
inline

Obtain an object that can evaluate type-erased boundary couplings.

The passed functor must take objects of types LocalData and RemoteData and return an object convertible to CouplingResult. Results are cached, so different calls to this function should pass equivalent couplings.


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