|
|
template<class... InitializationTags> |
| | DgElementArrayMember (const Parallel::CProxy_GlobalCache< Metavariables > &global_cache_proxy, tuples::TaggedTuple< InitializationTags... > initialization_items, ElementId< Dim > element_id) |
| void | start_phase (Parallel::Phase next_phase, bool force=false) override |
| | Start execution of the phase-dependent action list in next_phase. If next_phase has already been visited, execution will resume at the point where the previous execution of the same phase left off.
|
|
const auto & | databox () const |
| void | perform_algorithm () override |
| | Start evaluating the algorithm until it is stopped by an action.
|
|
template<typename ThisAction, typename PhaseIndex, typename DataBoxIndex> |
| bool | invoke_iterable_action () |
| template<typename Action, typename... Args> |
| void | simple_action (Args &&... args) |
| | Invokes a simple action on the element.
|
| std::string | print_types () const override |
| | Print the expanded type aliases.
|
| std::string | print_inbox () const override |
| | Print the current contents of the inboxes.
|
| std::string | print_databox () const override |
| | Print the current contents of the DataBox.
|
|
void | pup (PUP::er &p) override |
|
auto & | inboxes () |
| | Get read access to all the inboxes.
|
|
const auto & | inboxes () const |
| | Get read access to all the inboxes.
|
|
const auto & | get_inboxes () const |
| | Get read access to all the inboxes.
|
|
| DgElementArrayMemberBase (const DgElementArrayMemberBase &)=default |
|
DgElementArrayMemberBase & | operator= (const DgElementArrayMemberBase &)=default |
|
| DgElementArrayMemberBase (DgElementArrayMemberBase &&)=default |
|
DgElementArrayMemberBase & | operator= (DgElementArrayMemberBase &&)=default |
|
| WRAPPED_PUPable_abstract (DgElementArrayMemberBase) |
|
| DgElementArrayMemberBase (CkMigrateMessage *msg) |
|
Parallel::Phase | phase () const |
| | Get the current phase.
|
|
void | set_terminate (gsl::not_null< size_t * > number_of_elements_terminated, gsl::not_null< Parallel::NodeLock * > nodegroup_lock, bool terminate) |
| | Tell the Algorithm it should no longer execute the algorithm. This does not mean that the execution of the program is terminated, but only that the algorithm has terminated. An algorithm can be restarted by passing true as the second argument to the receive_data method or by calling perform_algorithm(true).
|
|
bool | get_terminate () const |
| | Check if an algorithm should continue being evaluated.
|
|
size_t | algorithm_step () const |
| | The zero-indexed step in the algorithm.
|
|
std::string | print_state () const |
| | Print the current state of the algorithm.
|
| Parallel::NodeLock & | inbox_lock () |
| | The inbox_lock() only locks the inbox, nothing else. The inbox is unsafe to access without this lock.
|
| Parallel::NodeLock & | element_lock () |
| | Locks the element, except for the inbox, which is guarded by the inbox_lock().
|
|
void | set_core (size_t core) |
| | Set which core this element should pretend to be bound to.
|
|
size_t | get_core () const |
| | Get which core this element should pretend to be bound to.
|
|
const std::string & | deadlock_analysis_next_iterable_action () const |
| | Returns the name of the last "next iterable action" to be run before a deadlock occurred.
|
|
void | pup (PUP::er &p) override |
template<size_t Dim, typename Metavariables, typename... PhaseDepActionListsPack, typename SimpleTagsFromOptions>
template<typename Action, typename... Args>
| void Parallel::DgElementArrayMember< Dim, Metavariables, tmpl::list< PhaseDepActionListsPack... >, SimpleTagsFromOptions >::simple_action |
( |
Args &&... | args | ) |
|
|
inline |
Invokes a simple action on the element.
- Note
- This does not lock the element. It is up to the calling action to lock the element if needed.
template<size_t Dim, typename Metavariables, typename... PhaseDepActionListsPack, typename SimpleTagsFromOptions>
Start execution of the phase-dependent action list in next_phase. If next_phase has already been visited, execution will resume at the point where the previous execution of the same phase left off.
If force is true, then regardless of how this component terminated (error or deadlock), it will resume.
- Warning
- Don't set
force to true unless you are absolutely sure you want to. This can have very unintended consequences if used incorrectly.
Implements Parallel::DgElementArrayMemberBase< Dim >.