atlas
|
HybridElements class that describes elements of different types. More...
#include <HybridElements.h>
Public Types | |
typedef MultiBlockConnectivity | Connectivity |
Public Member Functions | |
idx_t | size () const |
Number of elements. | |
idx_t | nb_nodes (idx_t elem_idx) const |
Number of nodes for given element. | |
idx_t | nb_edges (idx_t elem_idx) const |
Number of edges for given element. | |
idx_t | type_idx (idx_t elem_idx) const |
Element type index for given element. | |
const std::string & | name (idx_t elem_idx) const |
Element type name for given element. | |
const HybridElements::Connectivity & | node_connectivity () const |
Element to Node connectivity table. | |
HybridElements::Connectivity & | node_connectivity () |
const HybridElements::Connectivity & | edge_connectivity () const |
Element to Edge connectivity table. | |
HybridElements::Connectivity & | edge_connectivity () |
const HybridElements::Connectivity & | cell_connectivity () const |
Element to Cell connectivity table. | |
HybridElements::Connectivity & | cell_connectivity () |
idx_t | nb_types () const |
Number of types present in HybridElements. | |
const ElementType & | element_type (idx_t type_idx) const |
The element_type description for given type. | |
const Elements & | elements (idx_t type_idx) const |
Sub-elements convenience class for given type This allows optimized access to connectivities and loops. More... | |
Elements & | elements (idx_t type_idx) |
const Field & | field (const std::string &name) const |
Field & | field (const std::string &name) |
bool | has_field (const std::string &name) const |
const Field & | field (idx_t) const |
Field & | field (idx_t) |
idx_t | nb_fields () const |
const util::Metadata & | metadata () const |
util::Metadata & | metadata () |
const Field & | global_index () const |
Field & | global_index () |
const Field & | remote_index () const |
Field & | remote_index () |
const Field & | partition () const |
Field & | partition () |
const Field & | halo () const |
Field & | halo () |
const Field & | flags () const |
Field & | flags () |
idx_t | add (const ElementType *, idx_t nb_elements) |
Add a new element type with given number of elements. More... | |
idx_t | add (const ElementType *, idx_t nb_elements, const std::vector< idx_t > &node_connectivity) |
Add a new element type with given number of elements and node-connectivity. More... | |
idx_t | add (const ElementType *, idx_t nb_elements, const idx_t node_connectivity[]) |
Add a new element type with given number of elements and node-connectivity. More... | |
idx_t | add (const ElementType *, idx_t nb_elements, const idx_t node_connectivity[], bool fortran_array) |
Add a new element type with given number of elements and node-connectivity. More... | |
idx_t | add (const Elements &) |
Add a new element type from existing Elements. More... | |
Field | add (const Field &field) |
void | remove_field (const std::string &name) |
void | insert (idx_t type_idx, idx_t position, idx_t nb_elements=1) |
void | updateDevice () const |
void | updateHost () const |
void | syncHostDevice () const |
void | clear () |
size_t | footprint () const |
Return the memory footprint of the elements. | |
Friends | |
class | Elements |
HybridElements class that describes elements of different types.
idx_t atlas::mesh::HybridElements::add | ( | const ElementType * | element_type, |
idx_t | nb_elements | ||
) |
Add a new element type with given number of elements.
idx_t atlas::mesh::HybridElements::add | ( | const ElementType * | element_type, |
idx_t | nb_elements, | ||
const std::vector< idx_t > & | node_connectivity | ||
) |
Add a new element type with given number of elements and node-connectivity.
idx_t atlas::mesh::HybridElements::add | ( | const ElementType * | element_type, |
idx_t | nb_elements, | ||
const idx_t | node_connectivity[] | ||
) |
Add a new element type with given number of elements and node-connectivity.
idx_t atlas::mesh::HybridElements::add | ( | const ElementType * | element_type, |
idx_t | nb_elements, | ||
const idx_t | node_connectivity[], | ||
bool | fortran_array | ||
) |
Add a new element type with given number of elements and node-connectivity.
Add a new element type from existing Elements.
Data will be copied.
Sub-elements convenience class for given type This allows optimized access to connectivities and loops.