|
Peano
|
Slight modification of toolbox's update particle action set. More...


Public Member Functions | |
| __init__ (self, particle_set, particle_particle_interaction_kernel, touch_vertex_first_time_compute_particle_update_kernel, touch_vertex_last_time_compute_particle_update_kernel, prepare_traversal_kernel, unprepare_traversal_kernel, additional_includes, active_particle_set, alter_particle_position_or_interaction_radius, wait_for_all_tasks_to_finish_after_traversal) | |
| Construct. | |
| get_body_of_operation (self, operation_name) | |
| Return actual C++ code snippets to be inserted into C++ code. | |
| get_attributes (self) | |
| Return attributes as copied and pasted into the generated class. | |
| get_action_set_name (self) | |
| Return unique action set name. | |
Public Member Functions inherited from peano4.api.toolbox.particles.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets | |
| get_body_of_createGridControlEventsForNextTraversal (self) | |
| Return the grid control events that this action set wants to trigger. | |
| get_body_of_prepareTraversal (self) | |
| get_body_of_unprepareTraversal (self) | |
| user_should_modify_template (self) | |
| Is the user allowed to modify the output. | |
| get_includes (self) | |
| Return include statements that you need. | |
| get_constructor_body (self) | |
| Define a tailored constructor body. | |
Public Member Functions inherited from peano4.api.solversteps.ActionSet.ActionSet | |
| get_static_initialisations (self, full_qualified_classname) | |
| get_destructor_body (self) | |
| get_implementation_of_createGridControlEventsForNextTraversal (self) | |
| Return the C++ implementation of createGridControlEventsForNextTraversal() | |
| get_implementation_of_prepareTraversal (self) | |
| Return the C++ implementation of prepareTraversal() | |
| get_implementation_of_unprepareTraversal (self) | |
| Return the C++ implementation of unprepareTraversal() | |
| get_guard_of_operation (self, operation_name) | |
| Return the guard of an operation. | |
| get_implementation_of_operation (self, operation_name) | |
| Return the C++ implementation of an operation. | |
| bool | may_run_in_background_task (self) |
| May a task graph compiler move touchCellFirstTime() into a task. | |
Slight modification of toolbox's update particle action set.
The interesting stuff is actually happing in TaskGarphKernelWrappers.py however.
Definition at line 13 of file UpdateParticle_MultiLevelInteraction_Sets.py.
| exaparty.api.actionsets.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.__init__ | ( | self, | |
| particle_set, | |||
| particle_particle_interaction_kernel, | |||
| touch_vertex_first_time_compute_particle_update_kernel, | |||
| touch_vertex_last_time_compute_particle_update_kernel, | |||
| prepare_traversal_kernel, | |||
| unprepare_traversal_kernel, | |||
| additional_includes, | |||
| active_particle_set, | |||
| alter_particle_position_or_interaction_radius, | |||
| wait_for_all_tasks_to_finish_after_traversal | |||
| ) |
Construct.
| wait_for_all_tasks_to_finish_after_traversal | Boolean If this one is set, we insert a wait into the unprepare traversal event. Each rank then waits for all tasks to be completed before it continues. We have a strong synchronisation point. |
| alter_particle_position_or_interaction_radius | Boolean Set if the underlying AlgorithmStep's effect might change a particle's position or interaction radius. |
Reimplemented from peano4.api.toolbox.particles.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.
Definition at line 25 of file UpdateParticle_MultiLevelInteraction_Sets.py.
Referenced by exaparty.api.actionsets.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.__init__().


| exaparty.api.actionsets.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.get_action_set_name | ( | self | ) |
Return unique action set name.
Returns a description (word) for the mapping which is also used as class name for the generated type. As a consequence, the result should be one word (if possible) and uppercase. Also, every subclass should overwrite this routine.
The generator will take the result and construct eventually classes similar to MyStep2Dummy.h and MyStep2Dummy.cpp or similar for the example below, where we return Dummy.
Reimplemented from peano4.api.toolbox.particles.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.
Definition at line 107 of file UpdateParticle_MultiLevelInteraction_Sets.py.
| exaparty.api.actionsets.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.get_attributes | ( | self | ) |
Return attributes as copied and pasted into the generated class.
Please note that action sets are not persistent, i.e. there is one object creation per grid sweep per tree.
Reimplemented from peano4.api.toolbox.particles.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.
Definition at line 99 of file UpdateParticle_MultiLevelInteraction_Sets.py.
Referenced by exaparty.api.actionsets.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.get_attributes().


| exaparty.api.actionsets.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.get_body_of_operation | ( | self, | |
| operation_name | |||
| ) |
Return actual C++ code snippets to be inserted into C++ code.
See class' string constants starting with OPERATION_ for possible values of operation_name. The snippet is executed if and only if the guard returned by get_guard_of_operation() holds, i.e. the body should not evaluate the guard itself. See the section "Guard and body" in the class documentation.
Reimplemented from peano4.api.toolbox.particles.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.
Definition at line 91 of file UpdateParticle_MultiLevelInteraction_Sets.py.
Referenced by exaparty.api.actionsets.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.get_body_of_operation(), and peano4.api.solversteps.ActionSet.ActionSet.get_implementation_of_operation().

