zoomy_core.numerics.boundary_closure#
Classify, per boundary face and row, whether a boundary condition fixes the value (Dirichlet),
the normal derivative (Neumann) or neither (ghost), from the ghost-state kernel.
Feeds the constrained LSQ derivative fits of geometry_xp.build_topology; a row misclassified
as ghost costs accuracy, never correctness.
References
Mavriplis 2003, https://doi.org/10.2514/6.2003-3986
Module Contents#
Functions#
Kinds ( |
|
Row spaces whose derivative fits a solver template closes: the state of |
|
|
Data#
API#
- zoomy_core.numerics.boundary_closure.KIND_NAMES#
None
- zoomy_core.numerics.boundary_closure.face_kinds(nsm, space, branch, normals)#
Kinds (
GHOST/DIRICHLET/NEUMANN) of the rows ofspaceon the boundary faces.Args
branch: BC branch per face (-1: no BC, e.g. a partition cut, gives ghost).normals: outward unit normals, shape(dim_n, n_faces).
Returns
(n_rows, n_faces)int8 array.
- zoomy_core.numerics.boundary_closure.closure_spaces(nsm, systems=())#
Row spaces whose derivative fits a solver template closes: the state of
nsmandsystems, and the reconstruction variables at order >= 2.Returns
List of
(key, system, space)withkey = (owner, space).
- zoomy_core.numerics.boundary_closure.closure_kinds(nsm, systems, branch, normals)#
{key: (n_rows, n_bf) kinds}overclosure_spaces, theclosureargument ofgeometry_xp.build_topology; systems without BCs are skipped.