atlas::mesh::Elements class

Describe elements of a single type.

Constructors, destructors, conversion operators

Elements(HybridElements& elements, idx_t type_idx)
Constructor that treats elements as sub-elements in HybridElements.
Elements(ElementType*, idx_t nb_elements, const std::vector<idx_t>& node_connectivity)
Constructor that internally creates a HybridElements that owns the data.
Elements(ElementType*, idx_t nb_elements, const idx_t node_connectivity[], bool fortran_array = false)
Constructor that internally creates a HybridElements that owns the data.
~Elements() virtual
Destructor.

Public functions

auto size() const -> idx_t
Number of elements.
auto name() const -> const std::string&
Name of this element type.
auto nb_nodes() const -> idx_t
Number of nodes for each element type.
auto nb_edges() const -> idx_t
Number of edges for each element type.
auto node_connectivity() const -> const BlockConnectivity&
Element to Node connectivity table.
auto node_connectivity() -> BlockConnectivity&
auto edge_connectivity() const -> const BlockConnectivity&
Element to Edge connectivity table.
auto edge_connectivity() -> BlockConnectivity&
auto cell_connectivity() const -> const BlockConnectivity&
Element to Cell connectivity table.
auto cell_connectivity() -> BlockConnectivity&
auto element_type() const -> const ElementType&
Element type of these Elements.
auto begin() const -> idx_t
Access hybrid_elements HybridElements can contain more Elements, and holds the data.
auto end() const -> idx_t
End of elements in hybrid_elements.
auto field(const std::string& name) const -> const Field&
auto field(const std::string& name) -> Field&
auto has_field(const std::string& name) const -> bool
auto field(idx_t idx) const -> const Field&
auto field(idx_t idx) -> Field&
auto nb_fields() const -> idx_t
auto global_index() const -> const Field&
auto global_index() -> Field&
auto remote_index() const -> const Field&
auto remote_index() -> Field&
auto partition() const -> const Field&
auto partition() -> Field&
auto halo() const -> const Field&
auto halo() -> Field&
auto flags() const -> const Field&
auto flags() -> Field&
template<typename DATATYPE, int RANK>
auto view(const Field&) const -> array::LocalView<const DATATYPE, RANK>
template<typename DATATYPE, int RANK>
auto view(Field&) const -> array::LocalView<DATATYPE, RANK>
template<typename DATATYPE, int RANK>
auto indexview(const Field&) const -> array::LocalIndexView<DATATYPE, RANK>
template<typename DATATYPE, int RANK>
auto indexview(Field&) const -> array::LocalIndexView<DATATYPE, RANK>
auto add(const idx_t nb_elements) -> idx_t

Function documentation

idx_t atlas::mesh::Elements::begin() const

Access hybrid_elements HybridElements can contain more Elements, and holds the data.

Index of Elements in hybrid_elements

Begin of elements in hybrid_elements