SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
volume_inputs.hpp File Reference
Include dependency graph for volume_inputs.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  serif::operators::backend::mfem::MetadataTracking
 Validate external mesh resources before the graph compares their metadata. More...
 
struct  serif::operators::backend::mfem::DisplacementCoefficients
 
struct  serif::operators::backend::mfem::CompactificationCoefficients
 
struct  serif::operators::backend::mfem::CoefficientTracking
 Track coefficient values using an owned snapshot and the identity of their binding. More...
 

Namespaces

namespace  serif
 
namespace  serif::operators
 
namespace  serif::operators::backend
 
namespace  serif::operators::backend::mfem
 

Typedefs

using serif::operators::backend::mfem::MeshAndCoefficientBindings = volume_keys::Scoped<void>::Bindings
 

Functions

template<typename TestT, typename SchemaT>
void serif::operators::backend::mfem::validate_volume_discretization (const VolumeDiscretization< TestT, SchemaT > &discretization)
 Check borrowed mesh objects before sampling or applying accepted results.
 
template<VolumeEquation EquationT, typename Scope = void, typename SchemaT, typename CoefficientsT, typename... Columns>
auto serif::operators::backend::mfem::make_volume_binding_input (const VolumeDiscretization< typename EquationT::Test, SchemaT > &discretization, const CoefficientsT &term_coefficients, utils::types::TypeList< Columns... >)
 Validate one equation's bindings without constructing duplicate coefficient resources.
 
template<VolumeEquation EquationT, typename Scope = void, typename SchemaT, typename CoefficientsT>
auto serif::operators::backend::mfem::make_volume_binding_input (const VolumeDiscretization< typename EquationT::Test, SchemaT > &discretization, const CoefficientsT &term_coefficients)
 Share equation metadata with a model's common physical coefficient context.
 
template<VolumeEquation EquationT, typename Scope = void, typename SchemaT, typename CoefficientsT, typename... Columns>
auto serif::operators::backend::mfem::make_volume_inputs (const VolumeDiscretization< typename EquationT::Test, SchemaT > &discretization, const CoefficientsT &term_coefficients, utils::types::TypeList< Columns... > columns)
 Supply precisely the consumed terms for a standalone equation.
 
template<VolumeEquation EquationT, typename Scope = void, typename SchemaT, typename CoefficientsT>
auto serif::operators::backend::mfem::make_volume_inputs (const VolumeDiscretization< typename EquationT::Test, SchemaT > &discretization, const CoefficientsT &term_coefficients)
 Bind equation and reference inputs when displacement will be produced inside the dependency graph.
 
template<VolumeEquation EquationT, typename Scope = void, typename SchemaT, typename CoefficientsT, typename... Columns>
auto serif::operators::backend::mfem::make_volume_inputs (const VolumeDiscretization< typename EquationT::Test, SchemaT > &discretization, const CoefficientsT &term_coefficients, const ::mfem::Vector &displacement_coefficients, utils::types::TypeList< Columns... > columns)
 Append a checked external displacement while preserving each original resource's tracking policy.
 
template<VolumeEquation EquationT, typename Scope = void, typename SchemaT, typename CoefficientsT>
auto serif::operators::backend::mfem::make_volume_inputs (const VolumeDiscretization< typename EquationT::Test, SchemaT > &discretization, const CoefficientsT &term_coefficients, const ::mfem::Vector &displacement_coefficients)
 Build a checked source context without retaining the coefficient vectors.
 
template<VolumeEquation EquationT, typename Scope = void, typename SchemaT, typename CoefficientsT>
void serif::operators::backend::mfem::make_volume_inputs (const VolumeDiscretization< typename EquationT::Test, SchemaT > &, const CoefficientsT &, ::mfem::Vector &&)=delete
 
template<VolumeEquation EquationT, typename Scope = void, typename SchemaT, typename CoefficientsT>
void serif::operators::backend::mfem::make_volume_inputs (const VolumeDiscretization< typename EquationT::Test, SchemaT > &, const CoefficientsT &, const ::mfem::Vector &&)=delete