SpECTRE  v2023.10.11
Actions::RunEventsOnFailure< ObservationId > Struct Template Reference

Invokes all events specified in Tags::EventsRunAtCleanup. More...

#include <RunEventsOnFailure.hpp>

Public Types

using const_global_cache_tags = tmpl::list<::Tags::EventsRunAtCleanup, ::Tags::EventsRunAtCleanupObservationValue >

Static Public Member Functions

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

Detailed Description

template<typename ObservationId>
struct Actions::RunEventsOnFailure< ObservationId >

Invokes all events specified in Tags::EventsRunAtCleanup.

Before running the events, floating point exceptions are disabled. This is to allow manipulating data even if there are NaN or other problematic values. We ultimately just want to be able to see the state of the simulation at failure.

This action is intended to be executed in the Parallel::Phase::PostFailureCleanup phase.

The simulation will almost certainly fail with different elements at different times.

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