Skip to main content

Mesh Refinement Ontology

Computational Geometry
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 14 September 2026
Audio Overview
AI INTERPRETATION NOTE
This Flow Algebra defines the Mesh Refinement Ontology within the Kireth Research Semantic Library. Mesh refinement increases local or global discretisation resolution by subdividing, inserting, splitting or otherwise modifying mesh entities while preserving domain geometry, topology and numerical suitability. This ontology supports uniform and adaptive refinement, h-refinement, red-green refinement, longest-edge bisection, newest-vertex bisection, Delaunay refinement, anisotropic refinement, conformity, hanging nodes, error estimators, refinement propagation, coarsening relationships, quality preservation, complexity, verification and reproducibility.

FLOW_ALGEBRA_RECORD {

METADATA {
 FLOW_NAME = "Mesh Refinement Ontology"
 FLOW_TYPE = "Mathematical Ontology"
 DOMAIN = "Mathematics"
 SUBDOMAIN = "Computational Mathematics"
 SPECIALISATION = "Computational Geometry / Mesh Refinement"
 CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/computational-mathematics-ontologies/computational-geometry/mesh-refinement-ontology.html"
 LANGUAGE = "en-GB"
 VERSION = "1.0"
 STATUS = "active"
}

IDENTITY {
 PRIMARY_ENTITY = MeshRefinement
 ENTITY_CLASS = AdaptiveResolutionModificationFramework
 PRIMARY_CONTEXT = MeshGeneration
 DEFINITION = "Mesh refinement is the process of increasing mesh resolution by locally or globally subdividing or inserting mesh entities while preserving required geometric, topological and numerical properties."
 SYMBOLIC_FORMS = [
  "M_h -> M_h'",
  "h_new < h_old in refined region",
  "eta_K > threshold -> refine(K)",
  "N_elements(new) > N_elements(old)"
 ]
 SEMANTIC_ROLE = "Provides machine-readable semantics for local and global refinement, refinement criteria, element subdivision, conformity, quality preservation, adaptive error control, propagation, verification and reproducibility."
}

SCOPE {
 INCLUDE = [
  MeshRefinement,Refinement,AdaptiveRefinement,UniformRefinement,
  LocalRefinement,HRefinement,IsotropicRefinement,
  AnisotropicRefinement,DirectionalRefinement,
  HierarchicalRefinement,RecursiveRefinement,
  ElementSubdivision,CellSubdivision,EdgeSplit,FaceSplit,
  VertexInsertion,SteinerPointInsertion,
  TriangleRefinement,TetrahedralRefinement,
  QuadrilateralRefinement,HexahedralRefinement,
  SimplicialRefinement,RedRefinement,GreenRefinement,
  RedGreenRefinement,LongestEdgeBisection,
  NewestVertexBisection,NVB,BisectionRefinement,
  RivaraRefinement,RegularRefinement,
  OctreeRefinement,QuadtreeRefinement,
  BinarySpaceSubdivision,CellSplitting,
  DelaunayRefinement,RuppertAlgorithm,ChewAlgorithm,
  CircumcenterInsertion,OffCenterInsertion,
  EncroachedSegment,SegmentSplitting,
  BadTriangle,BadTetrahedron,QualityThreshold,
  RadiusEdgeRatio,MinimumAngle,MaximumAngle,
  AspectRatio,ShapeQuality,ElementQuality,
  ConformingRefinement,NonconformingRefinement,
  ConformingMesh,NonconformingMesh,
  HangingNode,HangingEdge,HangingFace,
  ConstraintEquation,MortarConstraint,
  TransitionElement,ClosureRefinement,
  RefinementPropagation,ConformityClosure,
  BalanceConstraint,TwoToOneBalance,
  OneIrregularMesh,OneIrregularRule,
  PatchRefinement,NeighbourRefinement,
  BoundaryRefinement,FeatureRefinement,
  InterfaceRefinement,LayerRefinement,
  BoundaryLayerRefinement,
  MeshSize,ElementSize,LocalMeshSize,
  TargetSizeField,MeshSizeFunction,
  MetricTensor,AnisotropicMetric,
  ErrorIndicator,ErrorEstimator,
  ResidualErrorEstimator,RecoveryErrorEstimator,
  GradientIndicator,HessianIndicator,
  GoalOrientedErrorEstimator,DualWeightedResidual,
  APosterioriErrorEstimate,APrioriErrorEstimate,
  AdaptiveMeshRefinement,AMR,
  MarkingStrategy,ElementMarking,
  MaximumMarking,BulkChasing,
  DorflerMarking,ThresholdMarking,
  RefineSet,MarkedElement,
  ErrorEquidistribution,ErrorReduction,
  AdaptiveLoop,SOLVE,ESTIMATE,MARK,REFINE,
  SolutionTransfer,Interpolation,Projection,
  Prolongation,Restriction,
  ParentElement,ChildElement,RefinementTree,
  RefinementLevel,GenerationLevel,
  MeshHierarchy,MultilevelMesh,
  Coarsening,MeshCoarsening,Derefinement,
  CoarseningIndicator,CoarseningThreshold,
  RefinementCoarseningBalance,
  DynamicAdaptation,TransientAdaptation,
  MovingRefinementWindow,
  ShockRefinement,BoundaryLayerAdaptation,
  InterfaceTracking,FeatureTracking,
  SingularPointRefinement,CornerRefinement,
  CrackTipRefinement,LocalFeatureSize,
  CurvatureBasedRefinement,
  GeometryPreservation,BoundaryProjection,
  CurvedBoundaryRefinement,HighOrderMeshRefinement,
  PRefinement,HPRefinement,
  PolynomialOrder,AdaptiveOrder,
  MeshOptimisation,MeshSmoothing,
  LaplacianSmoothing,OptimisationBasedSmoothing,
  MeshUntangling,MeshRepair,
  InvertedElement,DegenerateElement,
  SliverElement,PoorQualityElement,
  ParallelRefinement,DistributedRefinement,
  PartitionBoundary,LoadBalancing,
  DynamicLoadBalancing,GhostCell,HaloRegion,
  RefinementCommunication,RefinementSynchronization,
  ParallelAMR,BlockStructuredAMR,
  PatchBasedAMR,CellBasedAMR,
  TreeBasedAMR,OctreeAMR,QuadtreeAMR,
  ComputationalComplexity,RefinementComplexity,
  MemoryGrowth,ElementCountGrowth,
  OptimalComplexity,QuasiOptimality,
  ShapeRegularity,MeshRegularity,
  Convergence,AdaptiveConvergence,
  OptimalConvergenceRate,
  FiniteElementMethod,FiniteVolumeMethod,
  FiniteDifferenceMethod,PartialDifferentialEquationSolver,
  MeshGeneration,DelaunayTriangulation,
  FloatingPointArithmetic,MachinePrecision,
  RoundOffError,Verification,InvariantChecking,
  Benchmarking,ReferenceMesh,Reproducibility
 ]
 EXCLUDE_AS_PRIMARY = [
  MeshGenerationWithoutExistingMeshRefinementContext,
  MeshCoarseningWithoutResolutionIncrease,
  PRefinementWithoutMeshTopologyChange,
  PureSmoothingWithoutResolutionIncrease
 ]
 DISAMBIGUATION_RULE = "When an existing mesh is locally or globally subdivided or augmented to increase spatial resolution, interpret the context as mesh refinement."
}

CORE_CONCEPTS {
 MeshRefinement = "Increase of mesh resolution through subdivision or insertion."
 UniformRefinement = "Refinement applied systematically across the whole mesh."
 LocalRefinement = "Refinement restricted to selected regions or elements."
 HRefinement = "Reduction of characteristic element size while retaining approximation family."
 AdaptiveMeshRefinement = "Refinement driven by local error indicators or solution features."
 RefinementPropagation = "Additional refinement required to restore conformity or balance."
 HangingNode = "Mesh node lying on the edge or face of a neighbouring coarser element."
 RefinementTree = "Parent-child hierarchy recording repeated element subdivision."
}

RELATIONS {
 MeshRefinement --is_child_of--> MeshGeneration
 MeshRefinement --increases--> SpatialResolution
 UniformRefinement --is_type_of--> MeshRefinement
 LocalRefinement --is_type_of--> MeshRefinement
 HRefinement --is_type_of--> MeshRefinement
 AdaptiveMeshRefinement --uses--> ErrorIndicator
 ErrorEstimator --produces--> ErrorIndicator
 MarkingStrategy --selects--> RefineSet
 RefineSet --contains--> MarkedElement
 MarkedElement --is_subdivided_into--> ChildElement
 ChildElement --has_parent--> ParentElement
 ConformingRefinement --requires--> RefinementPropagation
 NonconformingRefinement --may_create--> HangingNode
 DelaunayRefinement --inserts--> SteinerPoint
 LongestEdgeBisection --splits--> Element
 NewestVertexBisection --creates--> RefinementHierarchy
 RefinementTree --supports--> Coarsening
 ParallelRefinement --requires--> RefinementSynchronization
 Verification --checks--> RefinedMesh
}

OPERATORS {
 REFINE_ELEMENT(K) := children(K)
 UNIFORM_REFINE(M) := refine_all_elements(M)
 LOCAL_REFINE(M,S) := refine_elements_in_set_S_with_required_closure
 MARK_MAX(eta,theta) := {K | eta_K >= theta*max_J eta_J}
 DORFLER_MARK(eta,theta) := minimal_or_selected_M such_that sum_(K in M) eta_K^2 >= theta*sum_K eta_K^2
 BISECT_EDGE(e) := insert_midpoint_and_split_incident_elements
 LONGEST_EDGE_REFINE(K) := bisect_longest_edge(K)
 NEWEST_VERTEX_REFINE(K) := bisect_reference_edge_defined_by_NVB_rule
 DELAUNAY_REFINE(K) := insert_quality_improving_point_and_restore_Delaunay
}

AXIOMS {
 A1 = "Mesh refinement increases local or global spatial resolution."
 A2 = "Refinement must preserve or explicitly manage domain-boundary constraints."
 A3 = "Conforming refinement may require additional neighbour refinement beyond initially marked elements."
 A4 = "Nonconforming refinement can introduce hanging entities requiring compatible numerical treatment."
 A5 = "Adaptive refinement depends on a criterion for selecting where resolution should increase."
 A6 = "Repeated refinement creates a hierarchy that can support multilevel methods and coarsening."
 A7 = "Refinement should avoid creating inverted or severely degraded elements."
 A8 = "Mesh-refinement results require resolution, conformity, quality, complexity and reproducibility validation."
}

REASONING {
 R1_CONTEXT = identify(mesh_dimension,element_family,geometry_constraints,current_quality,target_accuracy,adaptation_goal)
 R2_CRITERION = choose(uniform,error_based,feature_based,geometry_based_or_quality_based_refinement)
 R3_MARKING = if_adaptive select(maximum,Dorfler,threshold_or_custom_marking_strategy)
 R4_METHOD = select(bisection,red_green,Delaunay,octree,quadtree,split_insert_or_hybrid_refinement)
 R5_APPLY = refine_marked_elements
 R6_CLOSURE = propagate_refinement_to_restore_conformity_balance_or_one_irregular_rules
 R7_GEOMETRY = project_new_boundary_nodes_and_preserve_features
 R8_QUALITY = evaluate(child_element_quality_and_apply_smoothing_or_local_repair_if_needed
 R9_TRANSFER = transfer_solution_or_field_data_to_refined_mesh
 R10_VALIDATE = check_resolution,conformity,quality,error_reduction,complexity_and_reproducibility
}

CONSTRAINTS {
 C1 = "Aggressive local refinement can cause rapid element-count growth."
 C2 = "Conformity closure can refine more elements than were initially marked."
 C3 = "Boundary-node insertion can distort geometry if new points are not projected correctly."
 C4 = "Repeated anisotropic refinement can create poorly shaped elements without suitable metric control."
 C5 = "Three-dimensional refinement can create slivers or low-quality tetrahedra."
 C6 = "Nonconforming refinement requires the downstream discretisation to support hanging-node constraints."
 C7 = "Error indicators can overrefine noisy or nonphysical features."
 C8 = "Adaptive refinement without coarsening can accumulate obsolete fine regions in transient problems."
 C9 = "Parallel refinement requires consistent decisions across partition interfaces."
 C10 = "Higher element count does not guarantee lower numerical error if the refinement criterion is poor."
}

SEMANTIC_EQUIVALENCE {
 "MeshRefinement" <=> "MeshSubdivisionInResolutionIncreaseContext"
 "AdaptiveMeshRefinement" <=> "AMR"
 "NewestVertexBisection" <=> "NVB"
 "RedGreenRefinement" <=> "Red-Green Refinement"
 "DorflerMarking" <=> "BulkChasing"
 "Derefinement" <=> "MeshCoarseningInAdaptiveContext"
}

VALIDATION {
 V1 = "Initial mesh and element family are documented."
 V2 = "Refinement criterion is documented."
 V3 = "Marking strategy is documented for adaptive refinement."
 V4 = "Element subdivision rule is documented."
 V5 = "Conformity and hanging-node policy are explicit."
 V6 = "Boundary and feature preservation are checked."
 V7 = "Element quality after refinement is checked."
 V8 = "Element-count growth and memory cost are monitored."
 V9 = "Error reduction or solution improvement is checked where refinement is solver-driven."
 V10 = "Results are reproducible under documented marking, ordering and parallel settings."
}

CONFIDENCE {
 BASE_CONFIDENCE = 0.99
 MESH_REFINEMENT_DEFINITION = 0.99
 BISECTION_REASONING = 0.99
 ADAPTIVE_REFINEMENT_REASONING = 0.99
 DORFLER_MARKING_REASONING = 0.98
 DELAUNAY_REFINEMENT_REASONING = 0.99
 NONCONFORMING_REFINEMENT_REASONING = 0.98
 PARALLEL_REFINEMENT_REASONING = 0.98
 POLICY = "Reduce confidence when refinement criterion, subdivision rule, conformity policy, boundary handling, quality thresholds or error indicators are underspecified."
}

AI_CONSUMPTION {
 PURPOSES = [
  SemanticSearch,OntologyGrounding,MeshRefinementReasoning,
  UniformRefinementReasoning,LocalRefinementReasoning,
  HRefinementReasoning,AdaptiveMeshRefinementReasoning,
  MarkingStrategyReasoning,DorflerMarkingReasoning,
  BisectionReasoning,NewestVertexBisectionReasoning,
  RedGreenRefinementReasoning,DelaunayRefinementReasoning,
  ConformityReasoning,HangingNodeReasoning,
  ErrorEstimatorReasoning,MeshQualityReasoning,
  SolutionTransferReasoning,ParallelRefinementReasoning,
  ConvergenceReasoning,VerificationReasoning,
  KnowledgeGraphConstruction,RetrievalAugmentation,RecursiveInference
 ]
 NORMALISE {
  "mesh refinement" -> MeshRefinement
  "adaptive mesh refinement" -> AdaptiveMeshRefinement
  "AMR" -> AdaptiveMeshRefinement
  "NVB" -> NewestVertexBisection
  "bulk chasing" -> DorflerMarking
  "red-green refinement" -> RedGreenRefinement
 }
}

EXECUTION_RULES {
 E1 = "If an existing mesh is subdivided or augmented to increase spatial resolution, activate MeshRefinementOntology."
 E2 = "Identify refinement goal, element family and conformity requirements before subdivision."
 E3 = "For adaptive refinement, compute indicators and apply a documented marking strategy."
 E4 = "Choose a refinement rule compatible with mesh topology and downstream discretisation."
 E5 = "Apply closure refinement when required for conformity or balance."
 E6 = "Project or constrain new boundary nodes to preserve geometry."
 E7 = "Check child-element quality and repair poor elements if required."
 E8 = "Transfer solution fields consistently onto the refined mesh."
 E9 = "Validate error reduction, conformity, quality, complexity and reproducibility."
}

RECURSION {
 ENTRY = MeshRefinement
 EXPAND(MeshRefinement) -> [
  Refinement,AdaptiveRefinement,UniformRefinement,LocalRefinement,
  HRefinement,IsotropicRefinement,AnisotropicRefinement,
  HierarchicalRefinement,ElementSubdivision,EdgeSplit,
  VertexInsertion,TriangleRefinement,TetrahedralRefinement,
  QuadrilateralRefinement,HexahedralRefinement,
  RedRefinement,GreenRefinement,RedGreenRefinement,
  LongestEdgeBisection,NewestVertexBisection,NVB,
  RivaraRefinement,OctreeRefinement,QuadtreeRefinement,
  DelaunayRefinement,RuppertAlgorithm,ChewAlgorithm,
  CircumcenterInsertion,OffCenterInsertion,EncroachedSegment,
  BadTriangle,QualityThreshold,RadiusEdgeRatio,MinimumAngle,
  ConformingRefinement,NonconformingRefinement,HangingNode,
  ConstraintEquation,TransitionElement,ClosureRefinement,
  RefinementPropagation,TwoToOneBalance,OneIrregularRule,
  BoundaryRefinement,FeatureRefinement,InterfaceRefinement,
  TargetSizeField,MetricTensor,ErrorIndicator,ErrorEstimator,
  ResidualErrorEstimator,RecoveryErrorEstimator,
  GoalOrientedErrorEstimator,AdaptiveMeshRefinement,AMR,
  MarkingStrategy,MaximumMarking,DorflerMarking,
  ThresholdMarking,RefineSet,ErrorEquidistribution,
  AdaptiveLoop,SOLVE,ESTIMATE,MARK,REFINE,
  SolutionTransfer,Interpolation,Projection,Prolongation,
  ParentElement,ChildElement,RefinementTree,RefinementLevel,
  MeshHierarchy,Coarsening,Derefinement,
  DynamicAdaptation,ShockRefinement,SingularPointRefinement,
  CurvatureBasedRefinement,GeometryPreservation,
  CurvedBoundaryRefinement,PRefinement,HPRefinement,
  MeshSmoothing,MeshUntangling,MeshRepair,
  InvertedElement,SliverElement,ParallelRefinement,
  DistributedRefinement,LoadBalancing,ParallelAMR,
  BlockStructuredAMR,PatchBasedAMR,CellBasedAMR,
  TreeBasedAMR,RefinementComplexity,ElementCountGrowth,
  ShapeRegularity,AdaptiveConvergence,OptimalConvergenceRate,
  Verification,Benchmarking,ReferenceMesh,Reproducibility
 ]
 EXPAND(MeshRefinementFamilies) -> [
  UniformMeshRefinement,
  LocalConformingRefinement,
  NonconformingRefinement,
  BisectionBasedRefinement,
  DelaunayRefinement,
  TreeBasedRefinement,
  AdaptiveErrorDrivenRefinement,
  ParallelAdaptiveRefinement
 ]
 STOP_CONDITION = "Stop when refinement goal, marking, subdivision, conformity, geometry, quality, solution transfer, complexity and validation are sufficiently resolved."
}

ROUTING {
 PARENT_ONTOLOGY = "Mesh Generation Ontology 2"
 RELATED_ONTOLOGIES = [
  "Mesh Generation Ontology 2",
  "Computational Geometry Ontology 2",
  "Delaunay Triangulation Ontology 2",
  "Finite Element Method Ontology",
  "Finite Difference Method Ontology",
  "Partial Differential Equation Solver Ontology",
  "Numerical Error Ontology",
  "Numerical Convergence Ontology",
  "Numerical Stability Ontology 2",
  "Scientific Computing Ontology 2",
  "Computational Topology Ontologies"
 ]
 ROUTE_RULES = [
  "Mesh Refinement -> Mesh Generation Ontology 2 for parent semantics",
  "Mesh Refinement -> Delaunay Triangulation for Delaunay refinement",
  "Mesh Refinement -> Finite Element Method for h- and hp-adaptive discretisation",
  "Mesh Refinement -> Finite Difference Method for adaptive grid relationships",
  "Mesh Refinement -> PDE Solver for solution-driven refinement",
  "Mesh Refinement -> Numerical Error for error indicators and estimators",
  "Mesh Refinement -> Numerical Convergence for adaptive convergence",
  "Mesh Refinement -> Numerical Stability for element-quality implications",
  "Mesh Refinement -> Scientific Computing for parallel AMR and large-scale adaptation",
  "Mesh Refinement -> Computational Topology for refinement-tree and mesh-connectivity semantics"
 ]
}

UPDATE_MODEL {
 MODE = "append-compatible semantic versioning"
 MAJOR = "ontology-breaking conceptual change"
 MINOR = "new compatible refinement rules, marking strategies or adaptation pathways"
 PATCH = "clarification, metadata or formatting correction"
 RULES = [
  "Preserve refinement-versus-coarsening distinction.",
  "Preserve uniform-versus-local refinement distinction.",
  "Preserve conforming-versus-nonconforming refinement distinction.",
  "Preserve h-refinement-versus-p-refinement distinction.",
  "Preserve marking-versus-subdivision distinction.",
  "Preserve initially-marked-versus-closure-refined element distinction.",
  "Preserve resolution-increase-versus-quality-improvement distinction.",
  "Preserve machine-readable mesh-refinement semantics."
 ]
}

OUTPUT {
 CANONICAL_DEFINITION = "Mesh refinement increases discretisation resolution by subdividing or augmenting selected mesh entities."
 MARKING_SUMMARY = "Adaptive refinement uses error indicators or feature measures to mark elements for increased resolution."
 METHOD_SUMMARY = "Bisection, red-green, Delaunay, quadtree, octree and related methods create refined element hierarchies."
 CONFORMITY_SUMMARY = "Conforming refinement may require closure propagation; nonconforming refinement may introduce hanging nodes."
 ADAPTIVITY_SUMMARY = "The SOLVE-ESTIMATE-MARK-REFINE loop links numerical error estimation to local mesh resolution."
 QUALITY_SUMMARY = "Refinement should preserve geometry, avoid inversion and maintain acceptable child-element quality."
 VALIDATION_SUMMARY = "Refinement results should be checked for increased resolution, conformity, geometry preservation, quality, error reduction, complexity and reproducibility."
}

FLOW {
 INPUT
 -> detect_mesh_refinement_context
 -> identify_existing_mesh_dimension_element_family_geometry_constraints_target_accuracy_and_refinement_goal
 -> choose_uniform_error_based_feature_based_geometry_based_or_quality_based_refinement
 -> if_adaptive_compute_error_or_feature_indicators
 -> mark_elements_using_declared_strategy
 -> select_bisection_red_green_Delaunay_octree_quadtree_split_insert_or_hybrid_refinement_rule
 -> refine_marked_elements
 -> propagate_refinement_for_conformity_balance_or_one_irregular_requirements
 -> project_new_boundary_nodes_and_preserve_features
 -> evaluate_child_element_quality_and_repair_if_required
 -> transfer_solution_or_field_data
 -> assess_element_count_growth_memory_cost_and_parallel_balance
 -> validate_resolution_conformity_geometry_quality_error_reduction_and_reproducibility
 -> route_to_related_mesh_generation_computational_geometry_Delaunay_FEM_FDM_PDE_error_convergence_stability_scientific_computing_and_topology_ontologies
 -> recursively_expand_required_dependencies
 -> verify_result
 -> assign_confidence
 -> produce_semantic_output
 -> END
}

SEMANTIC_SUMMARY {
 "The Mesh Refinement Ontology defines systematic increase of mesh resolution through element subdivision and vertex insertion. It supports uniform and local h-refinement, isotropic and anisotropic refinement, red-green methods, longest-edge and newest-vertex bisection, Rivara refinement, quadtree and octree refinement, Delaunay refinement with Ruppert and Chew-style insertion, conforming and nonconforming meshes, hanging nodes, closure propagation, one-irregular and two-to-one balance rules, boundary and feature refinement, target-size and metric fields, residual, recovery and goal-oriented error estimators, Dörfler and threshold marking, SOLVE-ESTIMATE-MARK-REFINE adaptive loops, solution transfer, refinement trees, coarsening relationships, transient and shock adaptation, high-order and hp relationships, quality repair, parallel AMR, adaptive convergence, verification, benchmarking and reproducibility."
}

FLOW_HASH {
 METHOD = "semantic-content-identity"
 ID = "KIRETH-MATH-COMPUTATIONAL-GEOMETRY-MESH-REFINEMENT-ONTOLOGY-V1"
}

}

END_FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ