Mallard 0.8.0
Unstructured, GPU accelerated, high-order finite volume CFD solver
Mallard website
Loading...
Searching...
No Matches
curved.cpp File Reference

Curved (high-order) boundary geometry. More...

#include "curved.h"
#include <algorithm>
#include <cmath>
#include <map>
#include <stdexcept>
#include "comm.h"
#include "input.h"
#include "mesh.h"
#include "mesh_block.h"
#include "zone.h"

Namespaces

namespace  curved
 

Functions

uint32_t curved::element_order (uint32_t n_corners, uint32_t n_nodes)
 Order of a Gmsh boundary element with n_corners corners and n_nodes nodes (1 linear, 2 or 3; triangle9 and quadrangle8 are the incomplete cubic and quadratic ones), or 0 if unsupported.
 
bool curved::enabled (const toml::value &input)
 [mesh] curved: whether curved geometry is used at all (default true).
 
std::vector< Shape > curved::read_shapes (const toml::value &input)
 Analytic shapes of the [[mesh.curved]] entries (none if [mesh] curved = false).
 
Surfaces curved::surfaces_of_mesh (const Mesh &mesh, const toml::value &input)
 The curved surfaces of a whole mesh held by this rank: the high-order faces it was read with (Mesh::high_order_faces) and the faces of the zones of the analytic shapes.
 
Surfaces curved::surfaces_of_block (const MeshBlock &block, const toml::value &input)
 The curved surfaces of a mesh spread over the ranks as blocks (collective): every rank gets the faces of every block.
 

Detailed Description

Curved (high-order) boundary geometry.

Author
Matthew Bonanni (mbona.nosp@m.nni0.nosp@m.01@gm.nosp@m.ail..nosp@m.com)
Version
0.1
Date
2026-10-09