Struct t8_msh_file_node

Struct Documentation

struct t8_msh_file_node

The nodes are stored in the .msh file in the format

$Nodes n_nodes // The number of nodes i x_i y_i z_i // the node index and the node coordinates j x_j y_j z_j ….. $EndNodes

The node indices do not need to be in consecutive order. We thus use a hash table to read all node indices and coordinates. The hash value is the node index modulo the number of nodes.

Public Functions

inline t8_msh_file_node()

Default constructor.

inline t8_msh_file_node(t8_gloidx_t id, std::array<double, 3> coords)

Constructor for non-parametric nodes.

Parameters:
  • id[inout] ID of the node.

  • coords[inout] Coords of the node.

inline t8_msh_file_node(t8_gloidx_t id, std::array<double, 3> coords, std::array<double, 2> params, bool parametric, int entity_dim, t8_locidx_t entity_tag)

Constructor for parametric nodes.

Parameters:
  • id[inout] ID of the node.

  • coords[inout] Coords of the node.

  • params[inout] Parameters of the node in the parametric space.

  • parametric[in] True if the node is parametric, false otherwise.#

  • entity_dim[in] The dimension of the entity to which the node belongs.

  • entity_tag[in] The tag of the entity to which the node belongs.

inline t8_msh_file_node(const t8_msh_file_node &other)

Copy constructor

Parameters:

other[in] The node to copy.

inline t8_msh_file_node(t8_msh_file_node &&other) noexcept

Move constructor.

Parameters:

other[in] The node to move.

inline t8_msh_file_node &operator=(const t8_msh_file_node &other)

Copy assignment operator.

Parameters:

other[in] The node to copy.

Returns:

Reference to this node.

inline t8_msh_file_node &operator=(t8_msh_file_node &&other) noexcept

Move assignment operator.

Parameters:

other[in] The node to move.

Returns:

Reference to this node.

Public Members

std::array<double, 2> parameters

Parameters of the node in the parametric space, if applicable. For example, for a point on a curve, this would be the parameter on the curve.

std::array<double, 3> coordinates

Coordinates of the node in physical space.

t8_gloidx_t index

The index of the node in the msh file.

bool parametric

True if the node is parametric, false otherwise. If true, the parameters are stored in the parameters array.

int entity_dim

The dimension of the entity to which the node belongs. For example, for a point on a curve, this would be 1.

t8_locidx_t entity_tag

The tag of the entity to which the node belongs. For example, for a point on a curve, this would be the tag of the curve.