SpECTRE  v2026.06.09.01
Loading...
Searching...
No Matches
evolution::dg::Initialization::SpectralFilters< Dim, TagList > Struct Template Reference

Initialization mutator that selects the spectral filter for each element and stores it as Filters::Tags::SpectralFilter in the DataBox. More...

#include <SpectralFilters.hpp>

Public Types

using const_global_cache_tags
using mutable_global_cache_tags = tmpl::list<>
using simple_tags_from_options = tmpl::list<>
using simple_tags = tmpl::list<Filters::Tags::SpectralFilter<Dim, TagList>>
using compute_tags = tmpl::list<>
using return_tags = simple_tags
using argument_tags

Static Public Member Functions

static void apply (gsl::not_null< std::unique_ptr< Filters::Filter< Dim, TagList > > * > spectral_filter, const std::vector< std::unique_ptr< Filters::Filter< Dim, TagList > > > &spectral_filters, const Element< Dim > &element, const Mesh< Dim > &mesh)
 Sets spectral_filter to a clone of the unique filter from spectral_filters that supports mesh and applies to element's block.

Detailed Description

template<size_t Dim, typename TagList>
struct evolution::dg::Initialization::SpectralFilters< Dim, TagList >

Initialization mutator that selects the spectral filter for each element and stores it as Filters::Tags::SpectralFilter in the DataBox.

Details

Used with Initialization::Actions::InitializeItems. For each element, apply scans the GlobalCache list Filters::Tags::SpectralFilters<Dim, TagList> and selects the unique filter f for which f->supports_mesh(mesh) returns true AND either f->blocks_to_filter() is std::nullopt (the filter applies to every block) or the element's block id is contained in f->blocks_to_filter().value(). The selected filter is deep-copied via Filters::Filter::get_clone and stored in Filters::Tags::SpectralFilter<Dim, TagList>.

Errors if more than one filter in the list matches an element, or if no filter matches (specify a None filter to disable filtering in an element).

Uses:

DataBox changes:

Template Parameters
DimSpatial dimension of the element mesh.
TagListtmpl::list of tensor tags in the Variables to filter.

Member Typedef Documentation

◆ argument_tags

template<size_t Dim, typename TagList>
using evolution::dg::Initialization::SpectralFilters< Dim, TagList >::argument_tags
Initial value:
tmpl::list<Filters::Tags::SpectralFilters<Dim, TagList>,
The Element associated with the DataBox.
Definition Tags.hpp:52
The computational grid of the Element in the DataBox.
Definition Tags.hpp:62

◆ const_global_cache_tags

template<size_t Dim, typename TagList>
using evolution::dg::Initialization::SpectralFilters< Dim, TagList >::const_global_cache_tags
Initial value:
tmpl::list<Filters::Tags::SpectralFilters<Dim, TagList>>

The documentation for this struct was generated from the following file:
  • src/Evolution/DiscontinuousGalerkin/Initialization/SpectralFilters.hpp