SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
intrp::Events::InterpolateWithoutInterpComponent< VolumeDim, InterpolationTargetTag, tmpl::list< SourceVarTags... > > Class Template Reference

Does an interpolation onto an InterpolationTargetTag by calling Actions on the InterpolationTarget component. More...

#include <InterpolateWithoutInterpComponent.hpp>

Public Types

using options = tmpl::list<>
using compute_tags_for_observation_box
using return_tags = tmpl::list<>
using argument_tags
using is_ready_argument_tags = tmpl::list<>

Public Member Functions

template<typename ParallelComponent, typename Metavariables>
void operator() (const typename InterpolationTargetTag::temporal_id::type &temporal_id, const tnsr::I< DataVector, VolumeDim, frame > &all_target_points, const Mesh< VolumeDim > &mesh, const tnsr::I< DataVector, VolumeDim, frame > coordinates, const typename SourceVarTags::type &... source_vars_input, Parallel::GlobalCache< Metavariables > &cache, const ElementId< VolumeDim > &array_index, const ParallelComponent *const, const ObservationValue &) const
template<typename ArrayIndex, typename Component, typename Metavariables>
bool is_ready (Parallel::GlobalCache< Metavariables > &, const ArrayIndex &, const Component *const) const
bool needs_evolved_variables () const override
 Whether the event uses anything depending on the evolved_variables. If this returns false, anything depending on the evolved variables may have an incorrect value when the event is run.
Public Member Functions inherited from Event
 Event (CkMigrateMessage *msg)
 WRAPPED_PUPable_abstract (Event)
template<typename ComputeTagsList, typename DataBoxType, typename Metavariables, typename ArrayIndex, typename ComponentPointer>
void run (const gsl::not_null< ObservationBox< ComputeTagsList, DataBoxType > * > box, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &array_index, const ComponentPointer, const ObservationValue &observation_value) const
template<typename DbTags, typename Metavariables, typename ArrayIndex, typename ComponentPointer>
bool is_ready (const db::DataBox< DbTags > &box, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &array_index, const ComponentPointer) const

Static Public Member Functions

static std::string name ()

Static Public Attributes

static constexpr Options::String help

Detailed Description

template<size_t VolumeDim, typename InterpolationTargetTag, typename... SourceVarTags>
class intrp::Events::InterpolateWithoutInterpComponent< VolumeDim, InterpolationTargetTag, tmpl::list< SourceVarTags... > >

Does an interpolation onto an InterpolationTargetTag by calling Actions on the InterpolationTarget component.

Note
The intrp::TargetPoints::Sphere target is handled specially because it has the potential to be very slow due to it usually having the most points out of all the stationary targets. An optimization for the future would be to have each target be responsible for intelligently computing the block_logical_coordinates for it's own points.

Member Typedef Documentation

◆ argument_tags

template<size_t VolumeDim, typename InterpolationTargetTag, typename... SourceVarTags>
using intrp::Events::InterpolateWithoutInterpComponent< VolumeDim, InterpolationTargetTag, tmpl::list< SourceVarTags... > >::argument_tags
Initial value:
tmpl::list<
typename InterpolationTargetTag::temporal_id,
The mesh for the observation computational grid. For hybrid methods like DG-FD the observer mesh chan...
Definition Tags.hpp:24
The coordinates in a given frame.
Definition Tags.hpp:85
PointInfo holds the points to be interpolated onto, in whatever frame those points are to be held con...
Definition PointInfoTag.hpp:25

◆ compute_tags_for_observation_box

template<size_t VolumeDim, typename InterpolationTargetTag, typename... SourceVarTags>
using intrp::Events::InterpolateWithoutInterpComponent< VolumeDim, InterpolationTargetTag, tmpl::list< SourceVarTags... > >::compute_tags_for_observation_box
Initial value:
detail::get_compute_items_on_source_or_default_t<InterpolationTargetTag,
tmpl::list<>>

Member Function Documentation

◆ needs_evolved_variables()

template<size_t VolumeDim, typename InterpolationTargetTag, typename... SourceVarTags>
bool intrp::Events::InterpolateWithoutInterpComponent< VolumeDim, InterpolationTargetTag, tmpl::list< SourceVarTags... > >::needs_evolved_variables ( ) const
inlineoverridevirtual

Whether the event uses anything depending on the evolved_variables. If this returns false, anything depending on the evolved variables may have an incorrect value when the event is run.

Implements Event.

Member Data Documentation

◆ help

template<size_t VolumeDim, typename InterpolationTargetTag, typename... SourceVarTags>
Options::String intrp::Events::InterpolateWithoutInterpComponent< VolumeDim, InterpolationTargetTag, tmpl::list< SourceVarTags... > >::help
staticconstexpr
Initial value:
=
"Does interpolation using the given InterpolationTargetTag, "
"without an Interpolator ParallelComponent."

The documentation for this class was generated from the following file:
  • src/ParallelAlgorithms/Interpolation/Events/InterpolateWithoutInterpComponent.hpp