SpECTRE  v2024.04.12
evolution::dg::subcell::fd::CellCenteredFlux< System, FluxMutator, Dim, ComputeOnlyOnRollback, Fr > Struct Template Reference

Mutator that wraps the system's FluxMutator to correctly set the cell-centered fluxes on the subcell grid. More...

#include <CellCenteredFlux.hpp>

Public Types

using flux_variables = typename System::flux_variables
 
using return_tags = tmpl::list< subcell::Tags::CellCenteredFlux< flux_variables, Dim > >
 
using argument_tags = tmpl::push_front< typename FluxMutator::argument_tags, subcell::Tags::SubcellOptions< Dim >, subcell::Tags::Mesh< Dim >, domain::Tags::Mesh< Dim >, domain::Tags::MeshVelocity< Dim, Frame::Inertial >, ::Tags::Variables< flux_variables >, subcell::Tags::DidRollback >
 

Static Public Member Functions

template<typename... FluxTags, typename... Args>
static void apply (const gsl::not_null< std::optional< Variables< tmpl::list< FluxTags... > > > * > cell_centered_fluxes, const subcell::SubcellOptions &subcell_options, const Mesh< Dim > &subcell_mesh, const Mesh< Dim > &dg_mesh, const std::optional< tnsr::I< DataVector, Dim > > &dg_mesh_velocity, const ::Variables< flux_variables > &cell_centered_flux_vars, const bool did_rollback, Args &&... args)
 

Detailed Description

template<typename System, typename FluxMutator, size_t Dim, bool ComputeOnlyOnRollback, typename Fr = Frame::Inertial>
struct evolution::dg::subcell::fd::CellCenteredFlux< System, FluxMutator, Dim, ComputeOnlyOnRollback, Fr >

Mutator that wraps the system's FluxMutator to correctly set the cell-centered fluxes on the subcell grid.

Currently we only use high-order FD if the FD order was specified in the input file. We will need to extend this to support adaptive-order in the future. In that case we need to check if the FD reconstruction reports back the order to use.


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