|
AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
|
This class creates a view containing sorted selected zones, given an optional list of selected zones. More...
#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/main/src/axom/bump/SelectedZones.hpp>
Public Member Functions | |
| SelectedZones (axom::IndexType nzones, const conduit::Node &n_options, const std::string &selection_key=std::string("selectedZones"), int allocator_id=axom::execution_space< ExecSpace >::allocatorID()) | |
| Constructor. More... | |
| void | setSorted (bool sorted) |
| Set whether we need to sort the selected zone ids. More... | |
| const axom::ArrayView< axom::IndexType > | view () const |
| Return a view that contains the list of selected zone ids for the mesh. More... | |
| const std::string & | selectionKey () const |
| Return the selection key for the options. More... | |
Protected Member Functions | |
| void | buildSelectedZones (axom::IndexType nzones, const conduit::Node &n_options) |
| The options may contain a "selectedZones" (or other provided name) member that is a list of zones on which to operate. If such an array is present, copy and sort it. If the zone list is not present, make an array that selects every zone. More... | |
| template<typename ZonesViewType > | |
| int | buildSelectedZones (ZonesViewType zones_view, axom::IndexType nzones) |
| Help build the selected zones, converting them to axom::IndexType and sorting them. More... | |
Protected Attributes | |
| std::string | m_selectionKey |
| axom::Array< axom::IndexType > | m_selectedZones |
| axom::ArrayView< axom::IndexType > | m_selectedZonesView |
| bool | m_sorted |
| int | m_allocator_id |
This class creates a view containing sorted selected zones, given an optional list of selected zones.
| ExecSpace | The execution space where the algorithm will run. |
|
inline |
Constructor.
| nzones | The total number of zones in the associated topology. |
| n_options | The node that contains the options. |
| selection_key | The name of the node with the selection data in the options. |
The n_options node contains options that influence how the class runs. The options can contain a "selectedZones" node that contains an array of zone ids that will be processed. The array should exist in the memory space that is appropriate for the execution space. If this node is not present then all zones will be selected.
References axom::bump::SelectedZones< ExecSpace >::buildSelectedZones().
|
inline |
Set whether we need to sort the selected zone ids.
| sorted | Whether the ids need to be sorted. |
References axom::bump::SelectedZones< ExecSpace >::m_sorted.
|
inline |
Return a view that contains the list of selected zone ids for the mesh.
References axom::bump::SelectedZones< ExecSpace >::m_selectedZonesView.
|
inline |
Return the selection key for the options.
References axom::bump::SelectedZones< ExecSpace >::m_selectionKey.
|
inlineprotected |
The options may contain a "selectedZones" (or other provided name) member that is a list of zones on which to operate. If such an array is present, copy and sort it. If the zone list is not present, make an array that selects every zone.
| nzones | The total number of zones that are possible. |
| n_options | A Conduit node that contains the selection. |
References AXOM_LAMBDA, axom::bump::SelectedZones< ExecSpace >::m_allocator_id, axom::bump::SelectedZones< ExecSpace >::m_selectedZones, axom::bump::SelectedZones< ExecSpace >::m_selectedZonesView, axom::bump::SelectedZones< ExecSpace >::m_selectionKey, SLIC_ASSERT, SLIC_ERROR, and axom::Array< T, DIM, SPACE, StoragePolicy >::view().
|
inlineprotected |
Help build the selected zones, converting them to axom::IndexType and sorting them.
| zones_view | The view that contains the source zone ids. |
| nzones | The number of zones in the mesh. |
References AXOM_LAMBDA, axom::bump::SelectedZones< ExecSpace >::m_allocator_id, axom::bump::SelectedZones< ExecSpace >::m_selectedZones, axom::bump::SelectedZones< ExecSpace >::m_selectedZonesView, axom::bump::SelectedZones< ExecSpace >::m_sorted, and axom::Array< T, DIM, SPACE, StoragePolicy >::view().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |