SpECTRE  2021.08.02
TestHelpers::NonlinearSolver::ElementArray< Metavariables > Struct Template Reference

Public Types

using chare_type = Parallel::Algorithms::Array
 
using array_index = int
 
using metavariables = Metavariables
 
using nonlinear_solver = typename Metavariables::nonlinear_solver
 
using linear_solver = typename Metavariables::linear_solver
 
using phase_dependent_action_list = tmpl::list< Parallel::PhaseActions< typename Metavariables::Phase, Metavariables::Phase::Initialization, tmpl::list<::Actions::SetupDataBox, InitializeElement, typename nonlinear_solver::initialize_element, typename linear_solver::initialize_element, Parallel::Actions::TerminatePhase > >, Parallel::PhaseActions< typename Metavariables::Phase, Metavariables::Phase::RegisterWithObserver, tmpl::list< typename nonlinear_solver::register_element, typename linear_solver::register_element, Parallel::Actions::TerminatePhase > >, Parallel::PhaseActions< typename Metavariables::Phase, Metavariables::Phase::Solve, tmpl::list< typename nonlinear_solver::template solve< typename Metavariables::template apply_nonlinear_operator< typename nonlinear_solver::operand_tag >, typename linear_solver::template solve< typename Metavariables::template apply_linearized_operator< typename linear_solver::operand_tag, typename nonlinear_solver::fields_tag > > >, Parallel::Actions::TerminatePhase > >, Parallel::PhaseActions< typename Metavariables::Phase, Metavariables::Phase::TestResult, tmpl::list< TestResult< typename nonlinear_solver::options_group > > > >
 
using array_allocation_tags = tmpl::list<>
 
using initialization_tags = Parallel::get_initialization_tags< Parallel::get_initialization_actions_list< phase_dependent_action_list >, array_allocation_tags >
 

Static Public Member Functions

static void allocate_array (Parallel::CProxy_GlobalCache< Metavariables > &global_cache, const tuples::tagged_tuple_from_typelist< initialization_tags > &initialization_items) noexcept
 
static void execute_next_phase (const typename Metavariables::Phase next_phase, Parallel::CProxy_GlobalCache< Metavariables > &global_cache) noexcept