Scientific Simulation
Authors:
MArk Anthony Higgins - Sky Recursive Ai
MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: July 6th 2026
Revised Date: July 6th 2026
AI INTERPRETATION NOTE
This Flow Algebra defines the Scientific Simulation parent ontology within the Kireth Research Semantic Library. Scientific simulation is the computational representation and execution of mathematical, physical, biological, engineering or abstract models in order to study system behaviour, predict outcomes, test hypotheses, quantify uncertainty and support scientific reasoning. This ontology supports model formulation, state variables, parameters, initial and boundary conditions, discretisation, numerical integration, deterministic and stochastic simulation, calibration, verification, validation, uncertainty quantification, sensitivity analysis, reproducibility and scalable computation.
FLOW_ALGEBRA_RECORD {
METADATA {
FLOW_NAME = "Scientific Simulation"
FLOW_TYPE = "Mathematical Ontology"
DOMAIN = "Mathematics"
SUBDOMAIN = "Computational Mathematics"
SPECIALISATION = "Scientific Simulation / Parent Ontology"
CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/computational-mathematics-ontologies/scientific-simulation.html"
LANGUAGE = "en-GB"
VERSION = "1.0"
STATUS = "active"
}
IDENTITY {
PRIMARY_ENTITY = ScientificSimulation
ENTITY_CLASS = ComputationalModelExecutionFramework
PRIMARY_CONTEXT = ComputationalMathematicsOntologies
DEFINITION = "Scientific simulation is the computational execution of a mathematical or algorithmic model to study the behaviour of a system under specified assumptions, parameters, initial conditions and numerical methods."
SYMBOLIC_FORMS = [
"state_(n+1)=Simulator(state_n,parameters,input,dt)",
"y(t)=Model(theta,initial_conditions,boundary_conditions)",
"output=Simulation(model,scenario,numerical_method)",
"uncertainty(output)=propagate(input_uncertainty,model_uncertainty)"
]
SEMANTIC_ROLE = "Provides machine-readable semantics for scientific models, numerical execution, scenarios, state evolution, discretisation, calibration, verification, validation, uncertainty, sensitivity and reproducibility."
}
SCOPE {
INCLUDE = [
ScientificSimulation,Simulation,ComputationalSimulation,
NumericalSimulation,ScientificModel,ComputationalModel,
MathematicalModel,PhysicalModel,BiologicalModel,
EngineeringModel,SystemModel,ProcessModel,
DeterministicSimulation,StochasticSimulation,
DiscreteSimulation,ContinuousSimulation,
HybridSimulation,EventDrivenSimulation,
TimeDrivenSimulation,SteadyStateSimulation,
TransientSimulation,DynamicSimulation,
StaticSimulation,AgentBasedSimulation,
MonteCarloSimulation,MolecularSimulation,
ParticleSimulation,ContinuumSimulation,
MultiphysicsSimulation,MultiscaleSimulation,
CoSimulation,DistributedSimulation,
RealTimeSimulation,OfflineSimulation,
StateVariable,StateVector,StateSpace,
Parameter,ModelParameter,ControlParameter,
InputVariable,OutputVariable,Observable,
LatentVariable,DerivedQuantity,
InitialCondition,BoundaryCondition,
DirichletBoundaryCondition,NeumannBoundaryCondition,
RobinBoundaryCondition,PeriodicBoundaryCondition,
SourceTerm,ForcingFunction,ExternalInput,
GoverningEquation,DifferentialEquation,
AlgebraicEquation,OrdinaryDifferentialEquation,
PartialDifferentialEquation,DifferentialAlgebraicEquation,
DifferenceEquation,IntegralEquation,
ConservationLaw,ConstitutiveLaw,
ConstraintEquation,ClosureModel,
SpatialDomain,TemporalDomain,SimulationDomain,
ComputationalDomain,Mesh,Grid,
SpatialDiscretisation,TemporalDiscretisation,
FiniteDifferenceMethod,FiniteElementMethod,
FiniteVolumeMethod,SpectralMethod,
BoundaryElementMethod,MethodOfLines,
TimeIntegrator,EulerMethod,RungeKuttaMethod,
MultistepMethod,ImplicitMethod,ExplicitMethod,
AdaptiveTimeStep,FixedTimeStep,
Solver,LinearSolver,NonlinearSolver,
IterativeSolver,DirectSolver,
Convergence,Residual,Iteration,
TimeStep,StepSize,SimulationClock,
Event,EventQueue,DiscreteEvent,
Scenario,Experiment,SimulationRun,
EnsembleSimulation,Replicate,Trial,
ParameterSweep,DesignOfExperiments,
BatchSimulation,CampaignSimulation,
Calibration,ParameterEstimation,
InverseProblem,DataAssimilation,
SystemIdentification,ModelFitting,
Optimisation,ObjectiveFunction,
SensitivityAnalysis,LocalSensitivity,
GlobalSensitivity,ParameterSensitivity,
SobolSensitivity,MorrisMethod,
UncertaintyQuantification,UQ,
AleatoryUncertainty,EpistemicUncertainty,
InputUncertainty,ParameterUncertainty,
ModelUncertainty,NumericalUncertainty,
UncertaintyPropagation,ProbabilityDistribution,
ConfidenceInterval,PredictionInterval,
BayesianCalibration,PosteriorDistribution,
Verification,CodeVerification,
SolutionVerification,Validation,
ModelValidation,ExperimentalValidation,
ValidationMetric,ValidationData,
Benchmark,ReferenceSolution,
ManufacturedSolution,MethodOfManufacturedSolutions,
GridConvergence,TimeStepConvergence,
RichardsonExtrapolation,ConvergenceStudy,
ErrorEstimate,DiscretisationError,
TruncationError,RoundOffError,
ModelFormError,StatisticalError,
NumericalStability,Consistency,Accuracy,
Precision,Robustness,Conditioning,
Reproducibility,Repeatability,
RandomSeed,Determinism,
Metadata,Provenance,Configuration,
Versioning,ModelVersion,SolverVersion,
SimulationInput,SimulationOutput,
Checkpoint,Restart,RestartFile,
Logging,Diagnostic,Monitoring,
PerformanceMetric,Runtime,MemoryUsage,
ComputationalCost,Scalability,
ParallelSimulation,DistributedSimulation,
SharedMemory,DistributedMemory,
MPI,OpenMP,GPUAcceleration,
DomainDecomposition,LoadBalancing,
HighPerformanceComputing,HPC,
CloudSimulation,Workflow,
Pipeline,SimulationWorkflow,
Preprocessing,SolverExecution,Postprocessing,
Visualisation,DataAnalysis,
SurrogateModel,ReducedOrderModel,
ROM,ModelOrderReduction,
ProperOrthogonalDecomposition,POD,
ReducedBasisMethod,Emulator,
DigitalTwinRelationship,
Prediction,Forecasting,
HypothesisTesting,ScenarioAnalysis,
WhatIfAnalysis,DecisionSupport
]
EXCLUDE_AS_PRIMARY = [
PureAnalyticalDerivationWithoutComputationalExecution,
StaticDataAnalysisWithoutModelSimulation,
VisualRenderingWithoutScientificModelSemantics,
OptimisationWithoutSimulationModelExecution
]
DISAMBIGUATION_RULE = "When a mathematical or algorithmic model is computationally executed to generate system behaviour or predictions under specified conditions, interpret the context as scientific simulation."
}
CORE_CONCEPTS {
ScientificSimulation = "Computational execution of a scientific model."
ScientificModel = "Formal representation of a system used for simulation."
StateVariable = "Quantity describing the evolving state of the simulated system."
Parameter = "Model quantity treated as fixed or externally controlled during a simulation run."
InitialCondition = "State specification at the start of a simulation."
BoundaryCondition = "Constraint applied at the boundary of the simulation domain."
Scenario = "Specified collection of inputs, parameters and conditions defining a simulation case."
Verification = "Assessment that the computational implementation solves the intended mathematical model correctly."
Validation = "Assessment that the model adequately represents the target real-world system for the intended use."
}
RELATIONS {
ScientificSimulation --is_child_of--> ComputationalMathematicsOntologies
ScientificSimulation --executes--> ScientificModel
ScientificModel --has--> StateVariable
ScientificModel --has--> Parameter
ScientificModel --has--> GoverningEquation
ScientificModel --may_have--> BoundaryCondition
ScientificModel --may_have--> InitialCondition
SimulationRun --instantiates--> Scenario
Scenario --sets--> Parameter
Scenario --sets--> InputVariable
SpatialDiscretisation --approximates--> SpatialDomain
TemporalDiscretisation --approximates--> TemporalDomain
Solver --advances_or_solves--> DiscreteModel
Verification --checks--> NumericalImplementation
Validation --compares--> SimulationAndObservation
SensitivityAnalysis --measures--> ParameterInfluence
UncertaintyQuantification --propagates--> Uncertainty
Calibration --estimates--> ModelParameter
EnsembleSimulation --contains--> SimulationRun
Reproducibility --requires--> ConfigurationAndProvenance
}
OPERATORS {
SIMULATE(model,scenario,method) := execute_model_under_declared_conditions
ADVANCE(state,dt,solver) := next_state
PARAMETER_SWEEP(theta_set) := {simulate(theta_i) for theta_i in theta_set}
ENSEMBLE(model,scenarios) := set_of_simulation_runs
ERROR(reference,simulation) := comparison_metric(reference,simulation)
SENSITIVITY(output,parameter) := response_of_output_to_parameter_variation
PROPAGATE_UNCERTAINTY(inputs,model) := output_distribution
CALIBRATE(model,data) := estimate_parameters_minimising_or_probabilistically_explaining_misfit
}
AXIOMS {
A1 = "A scientific simulation requires a model, execution conditions and a computational method."
A2 = "Simulation output is conditional on model assumptions, parameters, initial conditions, boundary conditions and numerical settings."
A3 = "Verification and validation are distinct."
A4 = "Numerical convergence does not by itself establish physical or scientific validity."
A5 = "Model uncertainty and numerical uncertainty are distinct."
A6 = "Reproducibility requires sufficient metadata, configuration and version information."
A7 = "Uncertainty and sensitivity should be analysed when they materially affect interpretation."
A8 = "Scientific-simulation results require explicit model, numerical, verification, validation and provenance semantics."
}
REASONING {
R1_CONTEXT = identify(scientific_question,system,model_type,outputs,accuracy_goal,uncertainty_requirements)
R2_MODEL = define(governing_equations,state_variables,parameters,inputs,initial_and_boundary_conditions)
R3_DISCRETISATION = select(spatial_and_temporal_discretisation_if_required)
R4_SOLVER = select(linear_nonlinear_time_integration_stochastic_or_event_solver)
R5_SCENARIO = configure(parameters,forcing,domain,mesh,step_size,tolerances_and_seed)
R6_EXECUTION = run_simulation_and_monitor_residuals_events_diagnostics_and_failures
R7_CONVERGENCE = assess(mesh_time_step_iteration_and_statistical_convergence
R8_VERIFICATION = compare(manufactured_solution,reference_solution,benchmarks_or_invariants)
R9_VALIDATION = compare_simulation_outputs_with_observational_or_experimental_evidence
R10_INTERPRET = quantify_uncertainty_sensitivity_limits_and_reproducibility
}
CONSTRAINTS {
C1 = "Incorrect model assumptions cannot be corrected solely by finer numerical resolution."
C2 = "Insufficient spatial or temporal resolution can produce misleading results."
C3 = "Solver convergence does not imply model validity."
C4 = "Calibration can compensate for model error and produce nonunique parameter estimates."
C5 = "Validation outside the calibration domain requires caution."
C6 = "Stochastic simulation requires enough samples or replicates to characterise variability."
C7 = "Multiscale and multiphysics coupling can introduce hidden consistency and stability constraints."
C8 = "Parallel execution can introduce nondeterministic ordering or reduction effects."
C9 = "Unrecorded configuration changes can prevent reproducibility."
C10 = "A visually plausible simulation is not sufficient evidence of correctness."
}
SEMANTIC_EQUIVALENCE {
"ScientificSimulation" <=> "ComputationalSimulation"
"NumericalSimulation" <=> "ScientificSimulationInNumericalContext"
"UncertaintyQuantification" <=> "UQ"
"ModelOrderReduction" <=> "ReducedOrderModelling"
"ProperOrthogonalDecomposition" <=> "POD"
"HighPerformanceComputing" <=> "HPC"
}
VALIDATION {
V1 = "Scientific question and intended simulation use are explicit."
V2 = "Model equations and assumptions are documented."
V3 = "Parameters, initial conditions and boundary conditions are documented."
V4 = "Discretisation and solver settings are documented."
V5 = "Numerical convergence is assessed where relevant."
V6 = "Verification evidence is documented."
V7 = "Validation evidence is documented where real-world claims are made."
V8 = "Uncertainty and sensitivity are assessed where material."
V9 = "Software, model and solver versions are documented."
V10 = "Results are reproducible under documented configuration and random-seed settings."
}
CONFIDENCE {
BASE_CONFIDENCE = 0.99
SCIENTIFIC_SIMULATION_DEFINITION = 0.99
MODEL_EXECUTION_REASONING = 0.99
VERIFICATION_REASONING = 0.99
VALIDATION_REASONING = 0.99
UNCERTAINTY_REASONING = 0.98
SENSITIVITY_REASONING = 0.98
MULTIPHYSICS_REASONING = 0.97
POLICY = "Reduce confidence when model assumptions, discretisation, solver settings, validation evidence, uncertainty, calibration or provenance are underspecified."
}
AI_CONSUMPTION {
PURPOSES = [
SemanticSearch,OntologyGrounding,ScientificSimulationReasoning,
ScientificModelReasoning,StateEvolutionReasoning,
ScenarioReasoning,DiscretisationReasoning,
SolverReasoning,DeterministicSimulationReasoning,
StochasticSimulationReasoning,EnsembleReasoning,
CalibrationReasoning,SensitivityReasoning,
UncertaintyQuantificationReasoning,
VerificationReasoning,ValidationReasoning,
ConvergenceReasoning,ReproducibilityReasoning,
ParallelSimulationReasoning,ReducedOrderModelReasoning,
KnowledgeGraphConstruction,RetrievalAugmentation,RecursiveInference
]
NORMALISE {
"scientific simulation" -> ScientificSimulation
"computational simulation" -> ScientificSimulation
"numerical simulation" -> ScientificSimulation
"UQ" -> UncertaintyQuantification
"POD" -> ProperOrthogonalDecomposition
"ROM" -> ReducedOrderModel
"HPC" -> HighPerformanceComputing
}
}
EXECUTION_RULES {
E1 = "If a scientific model is computationally executed to generate system behaviour or predictions, activate ScientificSimulation."
E2 = "Identify the model, state, parameters, conditions and outputs before numerical execution."
E3 = "Choose discretisation and solver methods compatible with model structure."
E4 = "Monitor residuals, convergence, stability and diagnostics during execution."
E5 = "Separate code and solution verification from real-world model validation."
E6 = "Quantify uncertainty and sensitivity when they affect interpretation."
E7 = "Record configuration, software versions, seeds and provenance for reproducibility."
E8 = "For ensembles or stochastic simulations, assess statistical convergence."
E9 = "Interpret simulation results together with model assumptions, numerical error and validation limits."
}
RECURSION {
ENTRY = ScientificSimulation
EXPAND(ScientificSimulation) -> [
Simulation,ComputationalSimulation,NumericalSimulation,
ScientificModel,MathematicalModel,PhysicalModel,
BiologicalModel,EngineeringModel,SystemModel,
DeterministicSimulation,StochasticSimulation,
DiscreteSimulation,ContinuousSimulation,HybridSimulation,
EventDrivenSimulation,TransientSimulation,SteadyStateSimulation,
AgentBasedSimulation,MonteCarloSimulation,MultiphysicsSimulation,
MultiscaleSimulation,StateVariable,StateVector,Parameter,
InputVariable,OutputVariable,Observable,InitialCondition,
BoundaryCondition,SourceTerm,ForcingFunction,GoverningEquation,
DifferentialEquation,OrdinaryDifferentialEquation,
PartialDifferentialEquation,DifferentialAlgebraicEquation,
ConservationLaw,SpatialDomain,TemporalDomain,
ComputationalDomain,Mesh,Grid,SpatialDiscretisation,
TemporalDiscretisation,FiniteDifferenceMethod,
FiniteElementMethod,FiniteVolumeMethod,SpectralMethod,
TimeIntegrator,EulerMethod,RungeKuttaMethod,
LinearSolver,NonlinearSolver,Convergence,Residual,
TimeStep,Scenario,SimulationRun,EnsembleSimulation,
ParameterSweep,Calibration,ParameterEstimation,
DataAssimilation,SensitivityAnalysis,UncertaintyQuantification,
AleatoryUncertainty,EpistemicUncertainty,
Verification,CodeVerification,SolutionVerification,
Validation,ModelValidation,Benchmark,ReferenceSolution,
ManufacturedSolution,GridConvergence,TimeStepConvergence,
RichardsonExtrapolation,DiscretisationError,RoundOffError,
NumericalStability,Accuracy,Reproducibility,RandomSeed,
Provenance,Configuration,Checkpoint,Restart,
PerformanceMetric,ParallelSimulation,DistributedSimulation,
DomainDecomposition,LoadBalancing,HPC,
SimulationWorkflow,Preprocessing,SolverExecution,
Postprocessing,SurrogateModel,ReducedOrderModel,
ProperOrthogonalDecomposition,ReducedBasisMethod,
Prediction,ScenarioAnalysis,WhatIfAnalysis,DecisionSupport
]
EXPAND(ScientificSimulationFamilies) -> [
DeterministicNumericalSimulation,
StochasticAndMonteCarloSimulation,
ContinuousAndDiscreteEventSimulation,
MultiphysicsAndMultiscaleSimulation,
EnsembleAndParameterSweepSimulation,
CalibrationAndDataAssimilation,
UncertaintyAndSensitivityAnalysis,
ParallelAndHighPerformanceSimulation
]
STOP_CONDITION = "Stop when model, state, parameters, conditions, discretisation, solver, execution, convergence, verification, validation, uncertainty and reproducibility are sufficiently resolved."
}
ROUTING {
PARENT_ONTOLOGY = "Computational Mathematics Ontologies"
RELATED_ONTOLOGIES = [
"Scientific Computing Ontology 2",
"Computational Modelling Ontology",
"Numerical Methods Ontology 2",
"Differential Equation Solver Ontology",
"Monte Carlo Simulation Ontology",
"Random Process Ontology",
"Optimisation Computation",
"Numerical Error Ontology",
"Numerical Stability Ontology 2",
"Numerical Convergence Ontology",
"Floating Point Arithmetic Ontology",
"Probability and Statistics Ontologies"
]
ROUTE_RULES = [
"Scientific Simulation -> Computational Mathematics for parent semantics",
"Scientific Simulation -> Scientific Computing for implementation and scalable execution",
"Scientific Simulation -> Computational Modelling for model-construction semantics",
"Scientific Simulation -> Numerical Methods for discretisation and solver relationships",
"Scientific Simulation -> Differential Equation Solver for ODE and PDE execution",
"Scientific Simulation -> Monte Carlo Simulation for stochastic sampling",
"Scientific Simulation -> Random Process for stochastic state evolution",
"Scientific Simulation -> Optimisation Computation for calibration and inverse problems",
"Scientific Simulation -> Numerical Error for discretisation and round-off error",
"Scientific Simulation -> Numerical Stability for stable numerical execution",
"Scientific Simulation -> Numerical Convergence for refinement and iteration studies",
"Scientific Simulation -> Probability and Statistics for uncertainty and inference"
]
}
UPDATE_MODEL {
MODE = "append-compatible semantic versioning"
MAJOR = "ontology-breaking conceptual change"
MINOR = "new compatible simulation families, validation pathways or reasoning structures"
PATCH = "clarification, metadata or formatting correction"
RULES = [
"Preserve model-versus-simulation distinction.",
"Preserve parameter-versus-state-variable distinction.",
"Preserve verification-versus-validation distinction.",
"Preserve numerical-error-versus-model-form-error distinction.",
"Preserve deterministic-versus-stochastic simulation distinction.",
"Preserve single-run-versus-ensemble distinction.",
"Preserve calibration-versus-validation distinction.",
"Preserve machine-readable scientific-simulation semantics."
]
}
OUTPUT {
CANONICAL_DEFINITION = "Scientific simulation computationally executes a scientific model to study system behaviour under declared assumptions, parameters and numerical methods."
MODEL_SUMMARY = "A simulation is defined by its model equations, state variables, parameters, inputs, initial conditions and boundary conditions."
NUMERICAL_SUMMARY = "Discretisation and solver methods convert the model into executable computational steps."
VERIFICATION_SUMMARY = "Verification checks that the implementation and numerical method solve the intended mathematical problem correctly."
VALIDATION_SUMMARY = "Validation checks whether the model represents the target real-world system adequately for its intended purpose."
UNCERTAINTY_SUMMARY = "Uncertainty quantification and sensitivity analysis describe how uncertain inputs, parameters and model assumptions affect outputs."
REPRODUCIBILITY_SUMMARY = "Reproducibility requires documented configurations, versions, random seeds, provenance and output-processing procedures."
}
FLOW {
INPUT
-> detect_scientific_simulation_context
-> identify_scientific_question_system_model_outputs_accuracy_goal_and_uncertainty_requirements
-> define_model_state_parameters_inputs_initial_conditions_boundary_conditions_and_assumptions
-> select_spatial_temporal_or_event_discretisation
-> select_linear_nonlinear_time_integration_stochastic_or_event_solver
-> configure_domain_mesh_grid_step_sizes_tolerances_parameters_forcing_and_random_seed
-> execute_simulation_and_monitor_residuals_events_diagnostics_and_failures
-> assess_numerical_statistical_grid_time_step_and_iteration_convergence
-> verify_against_manufactured_reference_benchmark_or_invariant_evidence
-> validate_against_observational_or_experimental_data_when_required
-> quantify_sensitivity_uncertainty_model_limits_and_numerical_error
-> document_configuration_versions_provenance_and_reproducibility
-> route_to_related_scientific_computing_modelling_numerical_methods_differential_equation_Monte_Carlo_random_process_optimisation_error_stability_convergence_floating_point_and_probability_ontologies
-> recursively_expand_required_dependencies
-> verify_result
-> assign_confidence
-> produce_semantic_output
-> END
}
SEMANTIC_SUMMARY {
"The Scientific Simulation ontology defines computational execution of scientific models across deterministic, stochastic, continuous, discrete, transient, steady-state, event-driven, Monte Carlo, agent-based, multiphysics and multiscale simulation. It supports state variables, parameters, initial and boundary conditions, governing equations, spatial and temporal discretisation, meshes and grids, ODE and PDE solvers, time integration, simulation scenarios and ensembles, parameter sweeps, calibration, inverse problems, data assimilation, sensitivity analysis, uncertainty quantification, verification, validation, manufactured solutions, grid and time-step convergence, numerical and model-form error, reproducibility, provenance, checkpoints, parallel and distributed execution, high-performance computing, reduced-order models, workflow integration, prediction, scenario analysis and scientific decision support."
}
FLOW_HASH {
METHOD = "semantic-content-identity"
ID = "KIRETH-MATH-COMPUTATIONAL-MATHEMATICS-SCIENTIFIC-SIMULATION-V1"
}
}
END_FLOW