Skip to main content

Partial Differential Equation Solver Ontology

Differential Equation Solvers
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 Partial Differential Equation Solver Ontology within the Kireth Research Semantic Library. It covers numerical solution of elliptic, parabolic, hyperbolic and mixed PDEs through spatial and space-time discretisation, stability analysis, adaptivity, conservation and verification.

FLOW_ALGEBRA_RECORD {

METADATA {
 FLOW_NAME = "Partial Differential Equation Solver Ontology"
 FLOW_TYPE = "Mathematical Ontology"
 DOMAIN = "Mathematics"
 SUBDOMAIN = "Computational Mathematics"
 SPECIALISATION = "Differential Equation Solvers / Partial Differential Equation Solver"
 CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/computational-mathematics-ontologies/differential-equation-solvers/partial-differential-equation-solver-ontology.html"
 LANGUAGE = "en-GB"
 VERSION = "1.0"
 STATUS = "active"
}

IDENTITY {
 PRIMARY_ENTITY = PartialDifferentialEquationSolver
 ENTITY_CLASS = ComputationalPDESolutionFramework
 PRIMARY_CONTEXT = DifferentialEquationSolver
 DEFINITION = "A partial differential equation solver numerically approximates a field satisfying a PDE over a spatial or space-time domain subject to boundary, initial and constraint conditions."
 SYMBOLIC_FORMS = ["L(u)=f","u_t=N(u)","u_t+div(F(u))=S(u)","A_h*u_h=b_h"]
}

SCOPE {
 INCLUDE = [PDESolver,PDE,PDEOperator,SpatialDomain,InitialCondition,BoundaryCondition,DirichletBoundaryCondition,NeumannBoundaryCondition,RobinBoundaryCondition,PeriodicBoundaryCondition,EllipticPDE,ParabolicPDE,HyperbolicPDE,MixedTypePDE,LinearPDE,NonlinearPDE,PoissonEquation,LaplaceEquation,HeatEquation,WaveEquation,AdvectionEquation,DiffusionEquation,ConservationLaw,BurgersEquation,NavierStokesEquation,FiniteDifferenceMethod,FiniteVolumeMethod,FiniteElementMethod,SpectralMethod,DiscontinuousGalerkinMethod,MethodOfLines,SpatialDiscretisation,TemporalDiscretisation,SemiDiscreteSystem,FullyDiscreteSystem,Mesh,StructuredGrid,UnstructuredMesh,Element,Cell,ControlVolume,BasisFunction,WeakForm,Flux,NumericalFlux,RiemannSolver,UpwindScheme,GodunovMethod,ShockCapturing,Stabilisation,TimeIntegrator,IMEXMethod,CFLCondition,VonNeumannStability,Consistency,Stability,Convergence,SpatialError,TemporalError,DiscretisationError,NumericalDiffusion,NumericalDispersion,Conservation,PositivityPreservation,LinearSolver,NonlinearSolver,NewtonMethod,Jacobian,SparseMatrix,Preconditioner,KrylovMethod,Multigrid,AlgebraicMultigrid,DomainDecomposition,AdaptiveMeshRefinement,HRefinement,PRefinement,HPRefinement,ErrorEstimator,ParallelPDESolver,DistributedPDESolver,GPUPDESolver,Verification,ManufacturedSolution,ReferenceSolution,GridConvergenceStudy,Reproducibility]
 EXCLUDE_AS_PRIMARY = [OrdinaryDifferentialEquationSolverWithoutSpatialPDEContext,SymbolicPDESolutionWithoutNumericalDiscretisation]
 DISAMBIGUATION_RULE = "When a field governed by derivatives in multiple independent variables is approximated through spatial or space-time discretisation, interpret the context as a PDE solver."
}

CORE_CONCEPTS {
 SpatialDiscretisation = "Replacement of continuous spatial operators by finite-dimensional discrete operators."
 MethodOfLines = "Discretise space first and integrate the resulting ODE system in time."
 FiniteDifferenceMethod = "Approximation of differential operators using finite-difference stencils."
 FiniteVolumeMethod = "Conservative discretisation based on flux balances over control volumes."
 FiniteElementMethod = "Variational discretisation using finite-dimensional trial and test spaces."
 SpectralMethod = "High-order discretisation using global or high-degree basis functions."
 AdaptiveMeshRefinement = "Dynamic local mesh refinement based on error indicators or solution features."
}

RELATIONS {
 PartialDifferentialEquationSolver --is_child_of--> DifferentialEquationSolver
 PartialDifferentialEquationSolver --solves--> PDE
 PDE --is_classified_as--> EllipticParabolicHyperbolicOrMixed
 FiniteDifferenceMethod --approximates--> DifferentialOperator
 FiniteVolumeMethod --preserves_discretely--> ConservationLaw
 FiniteElementMethod --uses--> WeakForm
 MethodOfLines --transforms--> PDEIntoODESystem
 ImplicitTimeIntegrator --often_requires--> NonlinearSolver
 NonlinearSolver --often_uses--> LinearSolver
 LinearSolver --often_uses--> Preconditioner
 CFLCondition --constrains--> ExplicitTimeStep
 AdaptiveMeshRefinement --uses--> ErrorEstimator
 Multigrid --accelerates--> EllipticSolve
 Verification --checks--> NumericalPDESolution
}

OPERATORS {
 PDE_PROBLEM(L,u,f) := L(u)=f
 METHOD_OF_LINES(PDE,L_h) := du_h/dt=N_h(u_h)
 FINITE_DIFFERENCE(D,u,h) := discrete_stencil_approximation(D,u,h)
 FINITE_VOLUME(cell) := d/dt integral_cell(u)+sum_faces(numerical_flux)=source
 FINITE_ELEMENT(weak_form,V_h) := find_u_h_in_V_h_satisfying_discrete_variational_equations
 DISCRETE_RESIDUAL(A_h,u_h,b_h) := b_h-A_h*u_h
 CFL(speed,dt,dx) := speed*dt/dx
}

AXIOMS {
 A1 = "A PDE solver replaces continuous differential operators by finite-dimensional approximations."
 A2 = "Boundary conditions must be represented consistently in the discretisation."
 A3 = "Time-dependent PDEs require both spatial and temporal approximation semantics."
 A4 = "Consistency, stability and convergence are distinct."
 A5 = "For suitable linear well-posed problems, consistency plus stability supports convergence."
 A6 = "Conservative PDEs benefit from discretisations preserving flux balances."
 A7 = "Mesh resolution and approximation order jointly determine spatial accuracy."
 A8 = "PDE results require residual, refinement, stability, conservation and reproducibility validation."
}

REASONING {
 R1_CONTEXT = identify(PDE_operator,classification,dimension,domain,initial_conditions,boundary_conditions,nonlinearity,accuracy_goal)
 R2_DISCRETISATION = select(finite_difference,finite_volume,finite_element,spectral,DG_or_other_method)
 R3_MESH = choose(structured_or_unstructured_mesh,resolution,element_order,and_adaptivity)
 R4_TIME = if_time_dependent select(explicit,implicit,IMEX,RungeKutta,multistep_or_splitting_method)
 R5_STABILITY = assess(CFL,Von_Neumann,stiffness,dispersion,diffusion_and_stabilisation)
 R6_ASSEMBLY = construct_discrete_operator_flux_or_variational_system
 R7_SUBSOLVERS = configure(linear_solver,nonlinear_solver,Jacobian,preconditioner_or_multigrid)
 R8_EXECUTION = solve_steady_system_or_advance_semi_discrete_system
 R9_ERROR = estimate(spatial_error,temporal_error,residual_error,roundoff_and_conservation_defect)
 R10_VALIDATE = perform(mesh_refinement,reference_solution,manufactured_solution,invariant_and_reproducibility_checks)
}

CONSTRAINTS {
 C1 = "PDE classification and boundary conditions strongly influence suitable methods."
 C2 = "Explicit time integration can be restricted by CFL or related stability limits."
 C3 = "Central schemes can oscillate in advection-dominated problems without stabilisation."
 C4 = "Shock solutions require conservative and often nonlinear shock-capturing treatment."
 C5 = "High-order methods can lose accuracy near discontinuities."
 C6 = "Poor-quality meshes can degrade accuracy and conditioning."
 C7 = "Implicit nonlinear PDE solvers depend on robust nonlinear and linear subsolvers."
 C8 = "Adaptive refinement requires reliable local error indicators and solution transfer."
 C9 = "A small algebraic residual does not alone guarantee small discretisation error."
 C10 = "Parallel scalability can be limited by communication and load imbalance."
}

SEMANTIC_EQUIVALENCE {
 "PartialDifferentialEquationSolver" <=> "PDESolver"
 "FiniteDifferenceMethod" <=> "FDM"
 "FiniteVolumeMethod" <=> "FVM"
 "FiniteElementMethod" <=> "FEM"
 "DiscontinuousGalerkinMethod" <=> "DGMethod"
 "AdaptiveMeshRefinement" <=> "AMR"
 "MethodOfLines" <=> "MOL"
}

VALIDATION {
 V1 = "PDE operator, variables and domain are explicit."
 V2 = "PDE classification is documented where relevant."
 V3 = "Initial and boundary conditions are documented."
 V4 = "Spatial discretisation, mesh and approximation order are documented."
 V5 = "Temporal method and time-step controls are documented where relevant."
 V6 = "Linear and nonlinear subsolver tolerances are documented."
 V7 = "Mesh or order refinement studies are performed where feasible."
 V8 = "Conservation, positivity or invariant properties are checked where relevant."
 V9 = "Manufactured, analytic or benchmark solutions are used where feasible."
 V10 = "Results are reproducible under documented arithmetic, mesh and solver settings."
}

CONFIDENCE {
 BASE_CONFIDENCE = 0.99
 PDE_SOLVER_DEFINITION = 0.99
 FINITE_DIFFERENCE_REASONING = 0.99
 FINITE_VOLUME_REASONING = 0.99
 FINITE_ELEMENT_REASONING = 0.99
 SPECTRAL_METHOD_REASONING = 0.98
 STABILITY_REASONING = 0.99
 AMR_REASONING = 0.98
 POLICY = "Reduce confidence when PDE classification, boundary conditions, mesh quality, discretisation order, CFL restrictions or refinement evidence are underspecified."
}

AI_CONSUMPTION {
 PURPOSES = [SemanticSearch,OntologyGrounding,PDESolverReasoning,PDEClassificationReasoning,SpatialDiscretisationReasoning,FiniteDifferenceReasoning,FiniteVolumeReasoning,FiniteElementReasoning,SpectralMethodReasoning,MethodOfLinesReasoning,BoundaryConditionReasoning,CFLReasoning,StabilityReasoning,ShockCapturingReasoning,ConservationReasoning,LinearSubsolverReasoning,NonlinearSubsolverReasoning,MultigridReasoning,AdaptiveMeshReasoning,ErrorEstimationReasoning,ParallelPDEReasoning,VerificationReasoning,KnowledgeGraphConstruction,RetrievalAugmentation,RecursiveInference]
 NORMALISE = ["PDE solver -> PartialDifferentialEquationSolver","FDM -> FiniteDifferenceMethod","FVM -> FiniteVolumeMethod","FEM -> FiniteElementMethod","DG -> DiscontinuousGalerkinMethod","AMR -> AdaptiveMeshRefinement","MOL -> MethodOfLines"]
}

EXECUTION_RULES {
 E1 = "If a PDE is approximated through spatial or space-time discretisation, activate PartialDifferentialEquationSolverOntology."
 E2 = "Classify elliptic, parabolic, hyperbolic or mixed behaviour where relevant."
 E3 = "Represent initial and boundary conditions consistently."
 E4 = "Choose discretisation according to PDE structure and geometry."
 E5 = "For time-dependent PDEs, choose a compatible time integrator and respect stability constraints."
 E6 = "For conservation laws, prefer explicit conservative flux semantics."
 E7 = "For nonlinear implicit systems, configure nonlinear and linear subsolvers with preconditioning."
 E8 = "Use mesh refinement or higher-order approximation to assess spatial convergence."
 E9 = "Validate residuals, conservation, refinement behaviour and reference solutions."
}

RECURSION {
 ENTRY = PartialDifferentialEquationSolver
 EXPAND(PartialDifferentialEquationSolver) -> [PDESolver,PDE,PDEOperator,SpatialDomain,BoundaryCondition,EllipticPDE,ParabolicPDE,HyperbolicPDE,PoissonEquation,HeatEquation,WaveEquation,AdvectionEquation,ConservationLaw,FiniteDifferenceMethod,FiniteVolumeMethod,FiniteElementMethod,SpectralMethod,DiscontinuousGalerkinMethod,MethodOfLines,SpatialDiscretisation,TemporalDiscretisation,Mesh,StructuredGrid,UnstructuredMesh,WeakForm,Flux,NumericalFlux,RiemannSolver,UpwindScheme,ShockCapturing,TimeIntegrator,IMEXMethod,CFLCondition,Stability,Convergence,SpatialError,TemporalError,DiscretisationError,NumericalDiffusion,NumericalDispersion,Conservation,LinearSolver,NonlinearSolver,Jacobian,Preconditioner,KrylovMethod,Multigrid,AdaptiveMeshRefinement,HRefinement,PRefinement,HPRefinement,ErrorEstimator,ParallelPDESolver,Verification,ManufacturedSolution,ReferenceSolution,GridConvergenceStudy,Reproducibility]
 STOP_CONDITION = "Stop when PDE class, conditions, discretisation, mesh, time integration, stability, subsolvers, error and validation are sufficiently resolved."
}

ROUTING {
 PARENT_ONTOLOGY = "Differential Equation Solver Ontology"
 RELATED_ONTOLOGIES = ["Differential Equation Solver Ontology","Differential Equation Solvers","Ordinary Differential Equation Solver Ontology","Numerical Calculus","Numerical Differentiation Ontology 2","Quadrature Ontology","Linear Solver Ontology","Nonlinear Solver Ontology","Numerical Linear Algebra Ontology 2","Numerical Analysis Ontology 2","Numerical Error Ontology","Numerical Stability Ontology 2","Numerical Convergence Ontology","Scientific Computing Ontology 2"]
 ROUTE_RULES = ["PDE Solver -> Differential Equation Solver for parent semantics","PDE Solver -> ODE Solver for method-of-lines time integration","PDE Solver -> Numerical Differentiation for finite-difference operators","PDE Solver -> Quadrature for finite-element integration","PDE Solver -> Linear Solver for discrete linear systems","PDE Solver -> Nonlinear Solver for nonlinear discrete systems","PDE Solver -> Numerical Analysis for consistency, stability and convergence","PDE Solver -> Scientific Computing for scalable implementation"]
}

UPDATE_MODEL {
 MODE = "append-compatible semantic versioning"
 MAJOR = "ontology-breaking conceptual change"
 MINOR = "new compatible PDE discretisations, solvers or reasoning pathways"
 PATCH = "clarification, metadata or formatting correction"
 RULES = ["Preserve PDE-versus-ODE distinction.","Preserve elliptic-versus-parabolic-versus-hyperbolic distinction.","Preserve spatial-versus-temporal discretisation distinction.","Preserve continuous-problem-versus-discrete-system distinction.","Preserve residual-versus-discretisation-error distinction.","Preserve conservative-versus-nonconservative distinction.","Preserve fixed-mesh-versus-adaptive-mesh distinction.","Preserve machine-readable PDE-solver semantics."]
}

OUTPUT {
 CANONICAL_DEFINITION = "A partial differential equation solver numerically approximates a field governed by a PDE over a spatial or space-time domain."
 CLASSIFICATION_SUMMARY = "Elliptic, parabolic, hyperbolic and mixed PDE structure guides method choice."
 DISCRETISATION_SUMMARY = "Finite difference, finite volume, finite element, spectral and DG methods convert PDEs into finite-dimensional systems."
 TIME_SUMMARY = "Time-dependent PDEs combine spatial discretisation with explicit, implicit, IMEX or splitting time integration."
 CONSERVATION_SUMMARY = "Conservative methods represent flux balances explicitly."
 ADAPTIVITY_SUMMARY = "Adaptive mesh refinement concentrates resolution where error indicators or solution features demand it."
 VALIDATION_SUMMARY = "PDE results should be checked through residuals, mesh refinement, conservation, stability, reference solutions and reproducibility."
}

FLOW {
 INPUT
 -> detect_PDE_solver_context
 -> identify_PDE_operator_classification_domain_conditions_nonlinearity_and_accuracy_goal
 -> select_spatial_discretisation
 -> choose_mesh_resolution_order_and_adaptivity
 -> if_time_dependent_select_time_integrator
 -> assess_CFL_stability_dispersion_diffusion_and_stabilisation
 -> assemble_discrete_operator_flux_or_variational_system
 -> configure_linear_nonlinear_and_preconditioning_subsolvers
 -> solve_steady_system_or_advance_time_dependent_system
 -> estimate_spatial_temporal_residual_roundoff_and_conservation_error
 -> refine_mesh_order_time_step_or_solver_configuration_if_required
 -> validate_with_manufactured_reference_or_benchmark_solution
 -> route_to_related_differential_equation_linear_algebra_numerical_analysis_and_scientific_computing_ontologies
 -> recursively_expand_required_dependencies
 -> verify_result
 -> assign_confidence
 -> produce_semantic_output
 -> END
}

SEMANTIC_SUMMARY {
 "The Partial Differential Equation Solver Ontology defines numerical methods for elliptic, parabolic, hyperbolic and mixed PDEs. It supports finite difference, finite volume, finite element, spectral and discontinuous Galerkin discretisations, method of lines, structured and unstructured meshes, weak forms, conservative fluxes, Riemann solvers, upwinding and shock capturing, explicit, implicit and IMEX time integration, CFL and stability analysis, numerical diffusion and dispersion, linear and nonlinear subsolvers, sparse matrices, preconditioning and multigrid, adaptive mesh refinement, parallel and GPU solution, manufactured solutions, grid convergence, verification and reproducibility."
}

FLOW_HASH {
 METHOD = "semantic-content-identity"
 ID = "KIRETH-MATH-COMPUTATIONAL-MATHEMATICS-PARTIAL-DIFFERENTIAL-EQUATION-SOLVER-ONTOLOGY-V1"
}

}

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