|
Mallard 0.8.0
Unstructured, GPU accelerated, high-order finite volume CFD solver
Mallard website |
Identification of the nodes of periodic boundary zones. More...
#include "periodic.h"#include <algorithm>#include <cmath>#include <limits>#include <map>#include <set>#include <stdexcept>#include <string>Functions | |
| std::vector< size_t > | periodic_directions (const std::vector< Mesh::PeriodicPair > &pairs, PeriodicNodes &result) |
| Check the pairs (zones used once, nonzero translations, at most three distinct ones) and fill result.zones and result.translations. Returns the lattice direction of every pair: pairs with the same translation share one. | |
| rtype | periodic_tolerance (rtype h) |
| Matching tolerance of a pair whose zones' shortest edge is h. | |
| std::string | periodic_point_string (const std::array< rtype, N_DIM > &x) |
| "(x, y[, z])", for error messages. | |
| PeriodicNodes | match_periodic_nodes (const std::vector< std::array< rtype, N_DIM > > &nodes, const std::vector< Mesh::BoundaryFace > &boundary_faces, const std::vector< Mesh::PeriodicPair > &pairs) |
| Match the nodes of zone_b of every pair to the nodes of zone_a translated by the pair's translation (within 1e-6 of the zones' shortest edge) and join the matches into periodic classes. Pairs with the same translation share a lattice direction; there are at most three directions. Throws if a node has no match or several, or if the matches put a node at two different offsets from its key. | |
Identification of the nodes of periodic boundary zones.
| PeriodicNodes match_periodic_nodes | ( | const std::vector< std::array< rtype, N_DIM > > & | nodes, |
| const std::vector< Mesh::BoundaryFace > & | boundary_faces, | ||
| const std::vector< Mesh::PeriodicPair > & | pairs | ||
| ) |
Match the nodes of zone_b of every pair to the nodes of zone_a translated by the pair's translation (within 1e-6 of the zones' shortest edge) and join the matches into periodic classes. Pairs with the same translation share a lattice direction; there are at most three directions. Throws if a node has no match or several, or if the matches put a node at two different offsets from its key.
| std::vector< size_t > periodic_directions | ( | const std::vector< Mesh::PeriodicPair > & | pairs, |
| PeriodicNodes & | result | ||
| ) |
Check the pairs (zones used once, nonzero translations, at most three distinct ones) and fill result.zones and result.translations. Returns the lattice direction of every pair: pairs with the same translation share one.
| std::string periodic_point_string | ( | const std::array< rtype, N_DIM > & | x | ) |
"(x, y[, z])", for error messages.