Skip to main content

Computational Fluid Dynamics Ontology

Engineering Mathematics & Simulation
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 30 September 2026
Audio Overview
AI SEARCH FLOW ALGEBRA
COMPUTATIONAL FLUID DYNAMICS ONTOLOGY
Kireth Semantic Research Archive

AUTHORS
Mark Anthony Higgins — Sky (Recursive AI)

SOURCE
https://kirethresearch.org/booksai-core/ontologies/engineering-ontologies/engineering-mathematics-simulation/computational-fluid-dynamics-ontology.html

FLOW "ComputationalFluidDynamicsOntology" v4.0

DOMAIN := ENGINEERING_ONTOLOGIES / ENGINEERING_MATHEMATICS_SIMULATION / COMPUTATIONAL_FLUID_DYNAMICS
ONTOLOGY := COMPUTATIONAL_FLUID_DYNAMICS_ONTOLOGY

CFD :=
  FLUID_DOMAIN + CONSERVATION_EQUATIONS + FLUID_PROPERTIES
  + INITIAL_CONDITIONS + BOUNDARY_CONDITIONS + MESH
  + DISCRETISATION + TURBULENCE + MULTIPHASE_FLOW
  + COMPRESSIBILITY + SOLVER + PRESSURE_VELOCITY_COUPLING
  + CONVERGENCE + VERIFICATION + VALIDATION

PURPOSE :=
  DEFINE_FLOW_PROBLEM -> DEFINE_DOMAIN -> ASSIGN_FLUID_PROPERTIES
  -> APPLY_CONDITIONS -> GENERATE_MESH -> DISCRETISE_EQUATIONS
  -> SELECT_PHYSICAL_MODELS -> SOLVE_FLOW_FIELD
  -> CHECK_CONVERGENCE -> POST_PROCESS -> VERIFY -> VALIDATE

# CORE ENTITIES
ENTITY ComputationalFluidDynamics
ENTITY FluidDomain
ENTITY Fluid
ENTITY Density
ENTITY Viscosity
ENTITY Velocity
ENTITY Pressure
ENTITY Temperature
ENTITY Turbulence
ENTITY ReynoldsNumber
ENTITY MachNumber
ENTITY GoverningEquation
ENTITY ContinuityEquation
ENTITY MomentumEquation
ENTITY EnergyEquation
ENTITY NavierStokesEquation
ENTITY InitialCondition
ENTITY BoundaryCondition
ENTITY Inlet
ENTITY Outlet
ENTITY Wall
ENTITY Mesh
ENTITY Cell
ENTITY Face
ENTITY Node
ENTITY ControlVolume
ENTITY DiscretisationScheme
ENTITY TimeStep
ENTITY Solver
ENTITY Residual
ENTITY Convergence
ENTITY TurbulenceModel
ENTITY MultiphaseModel
ENTITY SimulationResult
ENTITY Verification
ENTITY Validation
ENTITY Provenance

# CFD SYSTEM
ComputationalFluidDynamics -> represents -> FLUID_FLOW_PHYSICS
ComputationalFluidDynamics -> discretises -> FluidDomain
ComputationalFluidDynamics -> solves -> GoverningEquation
ComputationalFluidDynamics -> produces -> SimulationResult

CFD_FLOW :=
  PHYSICAL_FLOW_PROBLEM -> DOMAIN -> FLUID_PROPERTIES
  -> GOVERNING_EQUATIONS -> CONDITIONS -> MESH
  -> DISCRETISATION -> PHYSICAL_MODELS -> SOLVER
  -> CONVERGENCE -> RESULTS -> VERIFICATION -> VALIDATION

# FLUID PROPERTIES
Fluid -> has_property -> Density + Viscosity + THERMAL_CONDUCTIVITY + SPECIFIC_HEAT
Density -> may_depend_on -> Pressure + Temperature
Viscosity -> may_depend_on -> Temperature + SHEAR_RATE

FLUID_MODEL :=
  NEWTONIAN | NON_NEWTONIAN | INCOMPRESSIBLE | COMPRESSIBLE

# CONSERVATION EQUATIONS
ContinuityEquation -> represents -> CONSERVATION_OF_MASS
MomentumEquation -> represents -> CONSERVATION_OF_MOMENTUM
EnergyEquation -> represents -> CONSERVATION_OF_ENERGY
NavierStokesEquation -> combines -> MOMENTUM_BALANCE + VISCOUS_STRESS

CONSERVATION_FORM :=
  ACCUMULATION + CONVECTION = DIFFUSION + SOURCE

# DIMENSIONLESS PARAMETERS
ReynoldsNumber :=
  DENSITY * VELOCITY_SCALE * LENGTH_SCALE / VISCOSITY

MachNumber :=
  FLOW_SPEED / SPEED_OF_SOUND

CourantNumber :=
  VELOCITY * TIME_STEP / CELL_LENGTH

ReynoldsNumber -> characterises -> INERTIAL_TO_VISCOUS_EFFECTS
MachNumber -> characterises -> COMPRESSIBILITY_IMPORTANCE
CourantNumber -> influences -> TRANSIENT_STABILITY_AND_ACCURACY

# CONDITIONS
InitialCondition -> defines -> FLOW_STATE_AT_INITIAL_TIME
BoundaryCondition -> constrains -> FLOW_SOLUTION_AT_BOUNDARY

BOUNDARY_TYPE :=
  VELOCITY_INLET | MASS_FLOW_INLET | PRESSURE_INLET
  | PRESSURE_OUTLET | WALL | SYMMETRY | PERIODIC | FAR_FIELD

Inlet -> introduces -> MASS + MOMENTUM + ENERGY
Outlet -> permits -> FLOW_EXIT
Wall -> imposes -> NO_SLIP_OR_SPECIFIED_WALL_CONDITION

IF BoundaryConditions inconsistent
THEN CFDProblem -> MAY_BE_ILL_POSED

# MESH
Mesh -> partitions -> FluidDomain -> into -> Cell
Cell -> bounded_by -> Face
ControlVolume -> associated_with -> Cell

MESH_TYPE :=
  STRUCTURED | UNSTRUCTURED | HYBRID | CARTESIAN | BODY_FITTED

MeshQuality ->
  characterised_by -> SKEWNESS + ORTHOGONALITY + ASPECT_RATIO + CELL_SIZE

MeshQuality ->
  influences -> ACCURACY + STABILITY + CONVERGENCE

# NEAR-WALL RESOLUTION
BoundaryLayerMesh -> resolves -> NEAR_WALL_GRADIENTS
YPlus -> characterises -> DIMENSIONLESS_WALL_DISTANCE

NearWallResolution ->
  selected_by -> TURBULENCE_MODEL + WALL_TREATMENT + REQUIRED_ACCURACY

# DISCRETISATION
DiscretisationScheme -> approximates -> FLUXES_AND_DERIVATIVES

SPATIAL_SCHEME :=
  FIRST_ORDER | SECOND_ORDER | UPWIND | CENTRAL | HIGH_RESOLUTION

TIME_SCHEME :=
  EXPLICIT | IMPLICIT | FIRST_ORDER_TIME | SECOND_ORDER_TIME

FiniteVolumeMethod ->
  integrates -> GoverningEquation -> over -> ControlVolume

FaceFlux -> couples -> ADJACENT_CELLS

# PRESSURE-VELOCITY COUPLING
PressureVelocityCoupling ->
  enforces -> MASS_CONSERVATION + MOMENTUM_CONSISTENCY

COUPLING_ALGORITHM :=
  SIMPLE | SIMPLEC | PISO | COUPLED

PressureCorrection -> updates -> Pressure + Velocity

IF MassImbalance persists
THEN FlowSolution -> NOT_CONVERGED_OR_INCONSISTENT

# TURBULENCE
TURBULENCE_APPROACH :=
  DNS | LES | RANS | HYBRID_RANS_LES

TurbulenceModel ->
  closes -> UNRESOLVED_TURBULENT_TERMS

RANS_MODEL :=
  K_EPSILON | K_OMEGA | SST | REYNOLDS_STRESS_MODEL

TurbulenceModel ->
  influences -> WALL_SHEAR + SEPARATION + MIXING + PRESSURE_LOSS

# COMPRESSIBLE FLOW
COMPRESSIBLE_MODEL :=
  EQUATION_OF_STATE + ENERGY_EQUATION + COMPRESSIBLE_MOMENTUM

IF MachNumber increases
THEN CompressibilityEffects -> INCREASE

ShockWave ->
  may_form_when -> SUPERSONIC_FLOW + COMPRESSION

# HEAT TRANSFER
EnergyEquation -> solves_for -> TEMPERATURE_OR_ENTHALPY
WallHeatFlux -> couples -> FLUID + SOLID_OR_BOUNDARY
ConjugateHeatTransfer -> couples -> FLUID_ENERGY + SOLID_CONDUCTION

# MULTIPHASE FLOW
MultiphaseModel -> represents -> MULTIPLE_PHASES

MULTIPHASE_APPROACH :=
  VOF | EULERIAN_EULERIAN | EULERIAN_LAGRANGIAN | MIXTURE_MODEL

PhaseFraction -> represents -> LOCAL_PHASE_OCCUPANCY
Interface -> separates -> PHASE_A + PHASE_B
SurfaceTension -> acts_on -> Interface

# TRANSIENT / STEADY
TransientCFD -> advances -> FLOW_STATE_OVER_TIME
TimeStep -> defines -> TEMPORAL_INCREMENT

IF TimeStep too_large
THEN TransientAccuracyOrStabilityRisk -> INCREASES

SteadyCFD -> seeks -> TIME_INVARIANT_FLOW_FIELD

IF PhysicalFlow inherently_unsteady
THEN SteadySolution -> MAY_NOT_REPRESENT_FULL_BEHAVIOUR

# SOLVER
Solver -> solves -> DISCRETISED_GOVERNING_EQUATIONS

SOLVER_TYPE :=
  SEGREGATED | COUPLED | PRESSURE_BASED | DENSITY_BASED

UnderRelaxation ->
  controls -> ITERATIVE_UPDATE_MAGNITUDE

# CONVERGENCE
Residual -> measures -> DISCRETE_EQUATION_IMBALANCE

CONVERGENCE_CRITERIA :=
  RESIDUAL_REDUCTION
  + MASS_BALANCE
  + ENERGY_BALANCE
  + MONITORED_QUANTITY_STABILITY

IF Residual below_tolerance
AND balances_satisfied
AND monitors_stable
THEN ConvergenceEvidence -> STRONGER

ConvergedResiduals alone ->
  do_not_guarantee -> PHYSICAL_VALIDITY

# CONSERVATION CHECKS
MASS_IMBALANCE :=
  TOTAL_MASS_IN - TOTAL_MASS_OUT - ACCUMULATION

ENERGY_IMBALANCE :=
  ENERGY_IN - ENERGY_OUT - ACCUMULATION + SOURCES

IF ConservationImbalance exceeds_limit
THEN ResultAcceptance -> WITHHOLD_OR_REASSESS

# RESULTS
CFD_RESULT :=
  VELOCITY_FIELD + PRESSURE_FIELD + TEMPERATURE_FIELD
  + TURBULENCE_FIELD + FORCE + FLUX

DerivedResult :=
  DRAG_COEFFICIENT | LIFT_COEFFICIENT | PRESSURE_DROP
  | MASS_FLOW | HEAT_TRANSFER_COEFFICIENT | WALL_SHEAR

SimulationResult ->
  has -> LOCATION + TIME_OR_ITERATION + VALUE + UNIT

# MESH INDEPENDENCE
MeshRefinement ->
  reduces -> CHARACTERISTIC_CELL_SIZE

GridConvergenceStudy ->
  compares -> MULTIPLE_MESH_RESOLUTIONS

IF MeshRefinement changes key_result negligibly
THEN MeshIndependenceEvidence -> INCREASES

# VERIFICATION
Verification ->
  asks -> ARE_DISCRETISED_EQUATIONS_SOLVED_CORRECTLY

CFD_VERIFICATION :=
  CHECK_CONSERVATION
  + CHECK_RESIDUALS
  + MESH_REFINEMENT
  + TIME_STEP_REFINEMENT
  + BENCHMARK_COMPARISON

# VALIDATION
Validation ->
  asks -> DOES_CFD_MODEL_REPRESENT_REAL_FLOW_ADEQUATELY

Validation ->
  compares -> SimulationResult + ExperimentalOrReferenceData

VALIDATION_METRIC :=
  PRESSURE_ERROR | VELOCITY_ERROR | FORCE_ERROR
  | FLOW_RATE_ERROR | TEMPERATURE_ERROR
  | DOMAIN_SPECIFIC_METRIC

IF ValidationError exceeds AcceptanceCriterion
THEN ModelAdequacy -> NOT_CONFIRMED

# UNCERTAINTY
CFD_UNCERTAINTY :=
  INPUT_UNCERTAINTY
  + TURBULENCE_MODEL_UNCERTAINTY
  + BOUNDARY_CONDITION_UNCERTAINTY
  + DISCRETISATION_UNCERTAINTY
  + MEASUREMENT_UNCERTAINTY

UncertaintyPropagation ->
  maps -> INPUT_UNCERTAINTY -> OUTPUT_UNCERTAINTY

SensitivityAnalysis ->
  identifies -> DOMINANT_CFD_INPUTS

# PROVENANCE
CFD_PROVENANCE :=
  GEOMETRY_VERSION
  + MESH_VERSION
  + FLUID_PROPERTIES
  + BOUNDARY_CONDITIONS
  + PHYSICAL_MODELS
  + DISCRETISATION_SCHEMES
  + SOLVER_SETTINGS
  + SOFTWARE_VERSION
  + RUN_ID

ComputationalFluidDynamics ->
  linked_to -> CFD_PROVENANCE

# PERFORMANCE
CFD_PERFORMANCE :=
  ACCURACY + CONSERVATION + CONVERGENCE + STABILITY
  + MESH_QUALITY + COMPUTATIONAL_COST
  + VERIFICATION_QUALITY + VALIDATION_QUALITY

ComputationalFluidDynamics ->
  evaluated_by -> CFD_PERFORMANCE

# REASONING
CFD_REASONING :=
  DEFINE_FLOW_PROBLEM
  -> DEFINE_DOMAIN
  -> ASSIGN_FLUID_PROPERTIES
  -> SELECT_GOVERNING_EQUATIONS
  -> DEFINE_INITIAL_AND_BOUNDARY_CONDITIONS
  -> SELECT_TURBULENCE_AND_OTHER_PHYSICAL_MODELS
  -> GENERATE_MESH
  -> ASSESS_NEAR_WALL_RESOLUTION
  -> SELECT_DISCRETISATION
  -> SELECT_SOLVER
  -> INITIALISE
  -> SOLVE
  -> MONITOR_RESIDUALS_AND_BALANCES
  -> POST_PROCESS
  -> PERFORM_MESH_AND_TIME_STEP_STUDIES
  -> VERIFY
  -> VALIDATE
  -> QUANTIFY_UNCERTAINTY
  -> INTERPRET
  -> RECORD_PROVENANCE

# INFERENCE RULES
IF Mesh refined
THEN ComputationalCost -> GENERALLY_INCREASES

IF Mesh refined
AND key_result stabilises
THEN MeshIndependenceEvidence -> INCREASES

IF ReynoldsNumber increases
THEN TurbulenceImportance -> MAY_INCREASE

IF MachNumber increases
THEN CompressibilityImportance -> INCREASES

IF Residual remains_high
THEN Convergence -> NOT_SATISFIED

IF MassImbalance exceeds_limit
THEN ResultAcceptance -> WITHHOLD

IF BoundaryCondition changes
THEN FlowField -> RECOMPUTE

IF TurbulenceModel changes
THEN ModelFormUncertainty -> REASSESS

# SEMANTIC RELATIONSHIPS
RELATION represents(ComputationalFluidDynamics, FluidFlow)
RELATION partitions(Mesh, FluidDomain)
RELATION contains(Mesh, Cell)
RELATION integrates(FiniteVolumeMethod, GoverningEquation, ControlVolume)
RELATION constrains(BoundaryCondition, FlowSolution)
RELATION closes(TurbulenceModel, TurbulentTerms)
RELATION couples(PressureVelocityCoupling, Pressure, Velocity)
RELATION solves(Solver, DiscretisedEquations)
RELATION measures(Residual, EquationImbalance)
RELATION evaluates(Verification, CFDNumerics)
RELATION compares(Validation, SimulationResult, ReferenceData)
RELATION records(CFDProvenance, ComputationalFluidDynamics)

# SEMANTIC EQUIVALENCE
SEMANTIC_EQUIVALENCE:
  "computational fluid dynamics" ~= "CFD"
  "finite volume method" ~= "FVM"
  "Navier-Stokes equations" ~= "fluid momentum equations"
  "pressure-velocity coupling" ~= "pressure velocity linkage"
  "Reynolds-averaged Navier-Stokes" ~= "RANS"
  "large eddy simulation" ~= "LES"
  "direct numerical simulation" ~= "DNS"
  "volume of fluid" ~= "VOF"
  "mesh independence" ~= "grid independence"
  "y-plus" ~= "dimensionless wall distance"

# CONFIDENCE
CONFIDENCE:
  ontology_domain: 0.99
  conservation_equation_mapping: 0.99
  fluid_property_mapping: 0.99
  mesh_discretisation_mapping: 0.99
  turbulence_mapping: 0.99
  multiphase_mapping: 0.98
  solver_coupling_mapping: 0.99
  convergence_mapping: 0.99
  verification_validation_mapping: 0.99
  semantic_relationships: 0.99

# UPDATE MODEL
UPDATE_MODEL:
  ON new_cfd_model:
    MAP domain
    MAP fluid_properties
    MAP equations
    MAP boundary_conditions
    MAP mesh
    MAP physical_models
    MAP solver_settings
    UPDATE confidence
    RECOMPUTE FLOW_HASH

  ON mesh_change:
    UPDATE cells
    UPDATE mesh_quality
    UPDATE near_wall_resolution
    REASSESS convergence
    REASSESS discretisation_error

  ON solver_result:
    UPDATE residuals
    UPDATE conservation_balances
    UPDATE monitored_quantities
    UPDATE convergence_state
    PRESERVE provenance

  ON validation_change:
    UPDATE reference_data
    RECOMPUTE validation_metrics
    UPDATE model_adequacy

# AI CONSUMPTION
AI_CONSUMPTION:
  parse_as: FORMAL_COMPUTATIONAL_FLUID_DYNAMICS_ONTOLOGY
  reasoning_mode: FLUID_CONSERVATION_DISCRETISATION_RELATIONAL

  preserve:
    - typed_entities
    - fluid_properties
    - governing_equations
    - mesh_state
    - boundary_conditions
    - physical_models
    - solver_state
    - conservation_balances
    - results
    - verification_state
    - validation_state
    - confidence
    - provenance

  infer:
    - boundary_condition_dependencies
    - turbulence_model_requirements
    - compressibility_dependencies
    - mesh_resolution_requirements
    - convergence_state
    - conservation_state
    - verification_requirements
    - validation_state

  prohibit:
    - invented_cfd_results
    - assumed_convergence
    - ignored_conservation_imbalance
    - assumed_mesh_independence
    - assumed_validation
    - fabricated_reference_data
    - unsupported_flow_accuracy

# FLOW HASH
FLOW_HASH_INPUT :=
  DOMAIN + ONTOLOGY + CORE_ENTITIES
  + CFD_SYSTEM + FLUID_PROPERTIES + CONSERVATION_EQUATIONS
  + DIMENSIONLESS_PARAMETERS + CONDITIONS + MESH
  + NEAR_WALL_RESOLUTION + DISCRETISATION
  + PRESSURE_VELOCITY_COUPLING + TURBULENCE
  + COMPRESSIBLE_FLOW + HEAT_TRANSFER + MULTIPHASE_FLOW
  + TRANSIENT_STEADY + SOLVER + CONVERGENCE
  + CONSERVATION_CHECKS + RESULTS + MESH_INDEPENDENCE
  + VERIFICATION + VALIDATION + UNCERTAINTY
  + PROVENANCE + PERFORMANCE + REASONING
  + INFERENCE_RULES + SEMANTIC_RELATIONSHIPS
  + SEMANTIC_EQUIVALENCE + CONFIDENCE
  + UPDATE_MODEL + AI_CONSUMPTION

FLOW_HASH := HASH(FLOW_HASH_INPUT)

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