SpECTRE  v2021.11.01
dg::Actions::Filter< FilterType, tmpl::list< TagsToFilter... > > Class Template Reference

Applies a filter to the specified tags. More...

#include <FilterAction.hpp>

Public Types

using const_global_cache_tags = tmpl::list<::Filters::Tags::Filter< FilterType > >
 

Static Public Member Functions

template<typename DbTags , typename... InboxTags, typename ArrayIndex , typename ActionList , typename ParallelComponent , typename Metavariables >
static std::tuple< db::DataBox< DbTags > && > apply (db::DataBox< DbTags > &box, const tuples::TaggedTuple< InboxTags... > &, const Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &, const ActionList, const ParallelComponent *const)
 

Detailed Description

template<typename FilterType, typename... TagsToFilter>
class dg::Actions::Filter< FilterType, tmpl::list< TagsToFilter... > >

Applies a filter to the specified tags.

If different Filters are desired for different tags then multiple Filter actions must be inserted into the action list with different FilterType. Here is an example of an action list with two different exponential filters:

typename Metavariables::Phase, Metavariables::Phase::Testing,
tmpl::conditional_t<
metavariables::filter_individually,
tmpl::list<dg::Actions::Filter<Filters::Exponential<0>,
tmpl::list<Tags::ScalarVar>>,
dg::Actions::Filter<Filters::Exponential<1>,
tmpl::list<Tags::VectorVar<dim>>>>,
tmpl::list<dg::Actions::Filter<
tmpl::list<Tags::VectorVar<dim>, Tags::ScalarVar>>>>>>;
A cached exponential filter.
Definition: ExponentialFilter.hpp:57
List of all the actions to be executed in the specified phase.
Definition: PhaseDependentActionList.hpp:16

Uses:

  • GlobalCache:
    • Filter
  • DataBox:
    • Tags::Mesh
  • DataBox changes:
    • Adds: nothing
    • Removes: nothing
    • Modifies:
      • TagsToFilter
  • System:
    • volume_dim
    • variables_tag

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