class
UnsMesh3D unstructured mesh class
Contents
Public types
-
template<std::size_t N>struct Eq
-
template<std::size_t N>struct Hash
- using Chunk = std::tuple<std::vector<std::size_t>, std::vector<std::size_t>, std::unordered_map<std::size_t, std::size_t>>
- using EdgeSet = std::unordered_set<Edge, Hash<2>, Eq<2>>
- Unique set of edges.
- using FaceSet = std::unordered_set<Face, Hash<3>, Eq<3>>
- Unique set of faces.
- using TetSet = std::unordered_set<Tet, Hash<4>, Eq<4>>
- Unique set of tets.
Public functions
Aliases for element primitives
Constructors
- UnsMesh() explicit
- UnsMesh(const std::vector<std::size_t>& tetinp) explicit
- Constructor copying over element connectivity.
- UnsMesh(std::vector<std::size_t>&& tetinp) explicit
- Constructor swallowing element connectivity.
- UnsMesh(const std::vector<std::size_t>& tetinp, const std::vector<real>& X, const std::vector<real>& Y, const std::vector<real>& Z) explicit
- Constructor copying over element connectivity and point coordinates.
- UnsMesh(const std::vector<std::size_t>& tetinp, const Coords& coord) explicit
- Constructor copying over element connectivity and array of point coordinates.
-
UnsMesh(const Coords& coord,
const std::vector<std::size_t>& triinp,
const std::vector<std::string>& nodevarnames = {},
const std::vector<std::string>& elemvarnames = {},
const std::vector<tk::
real>& vartimes = {}, const std::vector<std::vector<std::vector<tk:: real>>>& nodevars = {}, const std::vector<std::vector<std::vector<tk:: real>>>& elemvars = {}) explicit - Constructor copying over triangle element connectivity and array of point coordinates.
- UnsMesh(std::vector<std::size_t>&& tetinp, std::vector<real>&& X, std::vector<real>&& Y, std::vector<real>&& Z) explicit
- Constructor swallowing element connectivity and point coordinates.
- UnsMesh(std::vector<std::size_t>&& tetinp, Coords&& coord) explicit
- Constructor swallowing element connectivity and array of point coordinates.
- UnsMesh(const std::vector<std::size_t>& tetinp, const Coords& coord, const std::map<int, std::vector<std::size_t>>& bf, const std::vector<std::size_t>& triinp, const std::map<int, std::vector<std::size_t>>& fid) explicit
- Constructor with connectivities and side set faces.
- UnsMesh(const std::vector<std::size_t>& tetinp, const Coords& coord, const std::map<int, std::vector<std::size_t>>& bn) explicit
- Constructor with connectivities and side set nodes.
Typedef documentation
using tk:: UnsMesh:: Chunk = std::tuple<std::vector<std::size_t>, std::vector<std::size_t>, std::unordered_map<std::size_t, std::size_t>>
Alias for storing a mesh chunk
The first vector is the element connectivity (local mesh node IDs), the second vector is the global node IDs of owned elements, while the third one is a map of global(key)->local(value) node IDs.
using tk:: UnsMesh:: Edge = std::array<std::size_t, 2>
Edge: node IDs of two end-points
Function documentation
tk:: UnsMesh:: UnsMesh() explicit
Constructor without initializing anything