Skip to main content

Diffusion Equation Ontology

Mathematical Physics Analysis
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 24 September 2026
Audio Overview
flow "DiffusionEquationOntology" v1.0

# DIFFUSION EQUATION ONTOLOGY — FLOW ALGEBRA
SOURCE_URL := "https://kirethresearch.org/booksai-core/ontologies/calculus-analysis-ontologies/mathematical-physics-analysis/diffusion-equation-ontology.html"
DOMAIN := "Mathematical Ontologies"
CATEGORY := "Calculus and Analysis Ontologies"
SUBCATEGORY := "Mathematical Physics Analysis"
ENTITY := "Diffusion Equation"

DIFFUSION_EQUATION := {
 type: ParabolicTransportEquation,
 domain: MathematicalPhysicsAnalysis,
 purpose: "Represent the spreading of a conserved or transported quantity from regions of higher concentration toward lower concentration through diffusive transport."
}

CONCEPTS := {
 DIFFUSION_EQUATION,
 DIFFUSING_FIELD,
 DIFFUSION_COEFFICIENT,
 FLUX,
 FICKS_FIRST_LAW,
 FICKS_SECOND_LAW,
 CONSERVATION_LAW,
 LAPLACIAN,
 INITIAL_CONDITION,
 BOUNDARY_CONDITION,
 FUNDAMENTAL_SOLUTION,
 GAUSSIAN_KERNEL,
 MEAN_SQUARED_DISPLACEMENT,
 ADVECTION_DIFFUSION,
 REACTION_DIFFUSION
}

# ---------- STANDARD FORM ----------
partial_u/partial_t
 =
D
*
LAPLACIAN(u)

u
 -> DIFFUSING_FIELD

D
 -> DIFFUSION_COEFFICIENT

D>0

DIFFUSION_EQUATION
 -> PARABOLIC_PDE

# ---------- ONE DIMENSION ----------
u_t
 =
D*u_xx

ONE_DIMENSIONAL_DIFFUSION
 -> canonical_transport_model

# ---------- FICK'S FIRST LAW ----------
flux:

J
 =
-D*grad(u)

FICKS_FIRST_LAW
 -> flux_opposes(CONCENTRATION_GRADIENT)

negative_sign
 -> transport_from(HIGH_TO_LOW_CONCENTRATION)

# ---------- CONSERVATION LAW ----------
local conservation:

partial_u/partial_t
+
div(J)
 =
S

S
 -> SOURCE_OR_SINK

substitute

J
 =
-D*grad(u)

then

u_t
 =
div(
 D*grad(u)
)
+
S

# ---------- CONSTANT COEFFICIENT ----------
if
 D
 -> constant

then

u_t
 =
D*LAPLACIAN(u)
+
S

if
 S=0

-> STANDARD_LINEAR_DIFFUSION_EQUATION

# ---------- FICK'S SECOND LAW ----------
for constant D:

partial_u/partial_t
 =
D*LAPLACIAN(u)

FICKS_SECOND_LAW
 -> diffusion_evolution_equation

FICKS_FIRST_LAW
 + CONSERVATION
 -> FICKS_SECOND_LAW

# ---------- INITIAL CONDITION ----------
u(x,0)
 =
u_0(x)

INITIAL_DISTRIBUTION
 -> determines(DIFFUSIVE_EVOLUTION)

FIRST_ORDER_TIME_EQUATION
 -> typically_requires(ONE_INITIAL_FIELD)

# ---------- DIRICHLET BOUNDARY ----------
u
 =
g

on
 boundary(Omega)

DIRICHLET
 -> prescribed_field_value

# ---------- NEUMANN BOUNDARY ----------
-D*partial_u/partial_n
 =
j_n

NEUMANN
 -> prescribed_normal_diffusive_flux

zero flux:

partial_u/partial_n
 =
0

-> IMPERMEABLE_BOUNDARY

# ---------- ROBIN BOUNDARY ----------
-D*partial_u/partial_n
 =
k_m*(u-u_external)

ROBIN
 -> exchange_with(EXTERNAL_ENVIRONMENT)

# ---------- FUNDAMENTAL SOLUTION ----------
on R^n:

G(x,t)
 =
1
/
(
 (4*pi*D*t)^(n/2)
)
*
exp(
 -|x|^2/(4*D*t)
)

for
 t>0

GAUSSIAN_KERNEL
 -> fundamental_solution_of(LINEAR_DIFFUSION_EQUATION)

# ---------- CONVOLUTION ----------
for initial field
 u_0:

u(x,t)
 =
integral_Rn(
 G(x-y,t)
 *
 u_0(y)
 dy
)

DIFFUSION
 -> smooths_and_spreads(INITIAL_DISTRIBUTION)

# ---------- MASS CONSERVATION ----------
total mass:

M(t)
 :=
integral_Omega(
 u(x,t)
 dx
)

if
 S=0

and
 boundary_flux=0

then

dM/dt
 =
0

MASS
 -> conserved_under(NO_SOURCE_NO_FLUX_CONDITIONS)

# ---------- SOURCE / SINK ----------
u_t
 =
D*LAPLACIAN(u)
+
S(x,t)

S>0
 -> SOURCE

S<0
 -> SINK

SOURCE_TERM
 -> changes(TOTAL_MASS)

# ---------- MEAN SQUARED DISPLACEMENT ----------
for isotropic Brownian diffusion in n dimensions:

<|X(t)-X(0)|^2>
 =
2*n*D*t

MEAN_SQUARED_DISPLACEMENT
 -> linear_in(TIME)

DIFFUSION_LENGTH
 approx
sqrt(D*t)

# ---------- RANDOM WALK RELATION ----------
microscopic random motion
 -> RANDOM_WALK

continuum limit
 -> DIFFUSION_EQUATION
    under appropriate scaling assumptions

DIFFUSION_COEFFICIENT
 -> links(MICROSCOPIC_RANDOMNESS_TO_MACROSCOPIC_SPREADING)

# ---------- PROBABILITY RELATION ----------
probability density
 p(x,t)

for Brownian motion:

p_t
 =
D*LAPLACIAN(p)

DIFFUSION_EQUATION
 -> FOKKER_PLANCK_WITH_ZERO_DRIFT_AND_CONSTANT_DIFFUSIVITY

GAUSSIAN_KERNEL
 -> transition_probability_density

# ---------- SMOOTHING ----------
irregular initial data
 -> becomes(SMOOTHER_FOR_POSITIVE_TIME)

LINEAR_DIFFUSION
 -> PARABOLIC_SMOOTHING

HIGH_FREQUENCY_COMPONENTS
 -> decay_faster

# ---------- FOURIER TRANSFORM ----------
spatial transform:

u_hat_t
 =
-D*|k|^2*u_hat

solution:

u_hat(k,t)
 =
exp(
 -D*|k|^2*t
)
*
u_hat(k,0)

DIFFUSION
 -> suppresses(HIGH_WAVENUMBER_MODES)

# ---------- EIGENFUNCTION EXPANSION ----------
on bounded domain:

-LAPLACIAN(phi_n)
 =
lambda_n*phi_n

solution:

u(x,t)
 =
sum_n(
 a_n
 *
 exp(-D*lambda_n*t)
 *
 phi_n(x)
)

BOUNDARY_CONDITIONS
 -> determine(EIGENFUNCTIONS_AND_EIGENVALUES)

# ---------- LONG-TIME BEHAVIOUR ----------
with no-flux boundary:

constant_mode
 -> lambda_0=0

higher modes
 -> decay

solution
 -> approaches(SPATIAL_AVERAGE)
    under connected-domain standard conditions

with homogeneous Dirichlet boundary:

all positive modes
 -> decay

solution
 -> approaches(ZERO)

# ---------- MAXIMUM PRINCIPLE ----------
under standard parabolic hypotheses:

solution extrema
 -> controlled_by(INITIAL_AND_BOUNDARY_DATA)

DIFFUSION
 -> smooths(CONCENTRATION_DIFFERENCES)

MAXIMUM_PRINCIPLE
 -> supports(UNIQUENESS_AND_BOUNDS)

# ---------- POSITIVITY ----------
if

u_0>=0

and boundary/source data preserve positivity

then

u(x,t)>=0

POSITIVITY_PRESERVATION
 -> required_for(CONCENTRATION_OR_PROBABILITY_INTERPRETATION)

# ---------- VARIABLE DIFFUSIVITY ----------
D
 =
D(x,u)

general form:

u_t
 =
div(
 D(x,u)
 *
 grad(u)
)
+
S

VARIABLE_DIFFUSIVITY
 -> heterogeneous_or_state_dependent_transport

# ---------- ANISOTROPIC DIFFUSION ----------
diffusion tensor:

D_tensor

flux:

J
 =
-D_tensor*grad(u)

equation:

u_t
 =
div(
 D_tensor*grad(u)
)

ANISOTROPIC_DIFFUSION
 -> direction_dependent_spreading

D_tensor
 -> typically_positive_definite_or_semidefinite
    for physical diffusion

# ---------- NONLINEAR DIFFUSION ----------
u_t
 =
div(
 D(u)*grad(u)
)

NONLINEAR_DIFFUSION
 -> diffusion_rate_depends_on(FIELD)

example:

u_t
 =
LAPLACIAN(u^m)

POROUS_MEDIUM_EQUATION
 -> nonlinear_diffusion

# ---------- ANOMALOUS DIFFUSION ----------
standard diffusion:

MSD
 proportional_to
t

anomalous diffusion:

MSD
 proportional_to
t^alpha

alpha<1
 -> SUBDIFFUSION

alpha>1
 -> SUPERDIFFUSION

ANOMALOUS_DIFFUSION
 -> may_require(FRACTIONAL_OR_NONLOCAL_MODELS)

# ---------- ADVECTION-DIFFUSION ----------
u_t
+
v dot grad(u)
 =
D*LAPLACIAN(u)
+
S

ADVECTION
 -> directed_transport

DIFFUSION
 -> random_spreading

PECLET_NUMBER
 -> compares(ADVECTION_TO_DIFFUSION)

# ---------- REACTION-DIFFUSION ----------
u_t
 =
D*LAPLACIAN(u)
+
R(u)

REACTION
 -> local_creation_or_consumption

DIFFUSION
 -> spatial_coupling

REACTION_DIFFUSION
 -> supports(PATTERN_FORMATION_AND_WAVEFRONTS)

# ---------- MULTISPECIES ----------
u_i,t
 =
D_i*LAPLACIAN(u_i)
+
R_i(u_1,...,u_m)

MULTISPECIES_REACTION_DIFFUSION
 -> coupled_transport_and_reaction

TURING_INSTABILITY
 -> diffusion_driven_pattern_formation
    under suitable kinetic_and_diffusion_conditions

# ---------- STEADY STATE ----------
set

u_t
 =
0

then

div(
 D*grad(u)
)
+
S
 =
0

STEADY_DIFFUSION
 -> elliptic_boundary_value_problem

# ---------- ENERGY / ENTROPY DISSIPATION ----------
for suitable diffusion problems:

functional
 -> decreases_over_time

example L2 energy:

E
 :=
1/2
*
integral(
 u^2
 dx
)

for homogeneous appropriate boundaries:

dE/dt
 =
-D
*
integral(
 |grad(u)|^2
 dx
)

<=0

DIFFUSION
 -> DISSIPATIVE_PROCESS

# ---------- DIMENSIONAL ANALYSIS ----------
[D]
 =
LENGTH^2/TIME

dimensionless diffusion time:

tau
 :=
D*t/L^2

CHARACTERISTIC_DIFFUSION_TIME:

t_D
 approx
L^2/D

DIFFUSION_TIME
 -> increases_with(DISTANCE_SQUARED)

# ---------- NUMERICAL METHODS ----------
FINITE_DIFFERENCE
 -> discretises(LAPLACIAN)

FINITE_ELEMENT
 -> weak_form_spatial_discretisation

FINITE_VOLUME
 -> preserves(LOCAL_CONSERVATION)

SPECTRAL_METHOD
 -> high_order_smooth_problem_discretisation

# ---------- EXPLICIT SCHEME ----------
1D FTCS:

u_i^(n+1)
 =
u_i^n
+
r
*
(
 u_(i+1)^n
 -
2*u_i^n
 +
u_(i-1)^n
)

r
 :=
D*Delta_t/Delta_x^2

standard stability:

r<=1/2

EXPLICIT_DIFFUSION_SCHEME
 -> time_step_restricted_by(SPACE_RESOLUTION)

# ---------- IMPLICIT SCHEME ----------
BACKWARD_EULER
 -> robust_for(DIFFUSION)

CRANK_NICOLSON
 -> second_order_time_accuracy

IMPLICIT_METHOD
 -> solves(ALGEBRAIC_SYSTEM_EACH_STEP)

# ---------- APPLICATIONS ----------
DIFFUSION_EQUATION
 -> applied_to(MASS_TRANSPORT)
 -> applied_to(HEAT_TRANSFER)
 -> applied_to(CHEMICAL_DIFFUSION)
 -> applied_to(BIOLOGICAL_TRANSPORT)
 -> applied_to(PROBABILITY)
 -> applied_to(MATERIALS_SCIENCE)
 -> applied_to(GEOPHYSICS)
 -> applied_to(SEMICONDUCTOR_PHYSICS)

# ---------- RELATION GRAPH ----------
CONCENTRATION_GRADIENT
 -> drives(DIFFUSIVE_FLUX)

FICKS_FIRST_LAW
 + CONSERVATION_LAW
 -> derive(DIFFUSION_EQUATION)

DIFFUSION_COEFFICIENT
 -> controls(SPREADING_RATE)

GAUSSIAN_KERNEL
 -> propagates(INITIAL_DATA)

FOURIER_MODES
 -> decay_by(WAVENUMBER)

BOUNDARY_CONDITIONS
 -> control(MASS_AND_LONG_TIME_STATE)

REACTION
 + DIFFUSION
 -> REACTION_DIFFUSION_SYSTEM

# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE := {
 "diffusion equation" ~= "parabolic PDE describing spreading driven by spatial gradients",
 "Fick's first law" ~= "constitutive relation making diffusive flux proportional to the negative concentration gradient",
 "Fick's second law" ~= "time-evolution equation for concentration under diffusion",
 "diffusion coefficient" ~= "parameter controlling the rate of diffusive spreading",
 "Gaussian diffusion kernel" ~= "fundamental solution of the constant-coefficient diffusion equation on Euclidean space",
 "diffusion time" ~= "characteristic time proportional to length squared divided by diffusivity"
}

# ---------- CONSTRAINTS ----------
CONSTRAINTS := {
 standard_linear_diffusion_requires_positive_diffusion_coefficient: true,
 Gaussian_kernel_formula_requires_constant_coefficient_whole_space_context: true,
 mass_conservation_depends_on_sources_and_boundary_flux: true,
 standard_diffusion_has_mean_squared_displacement_linear_in_time: true,
 anomalous_diffusion_requires_distinct_model_structure: true,
 variable_and_anisotropic_diffusion_require_divergence_form_coefficients: true,
 explicit_numerical_diffusion_schemes_require_stability_constraints: true
}

# ---------- CONFIDENCE ----------
CONFIDENCE := {
 core_definition: 0.99,
 Fick_conservation_relation: 0.99,
 kernel_relation: 0.99,
 stochastic_relation: 0.99,
 variable_diffusion_relation: 0.99,
 numerical_relation: 0.99,
 semantic_equivalence: 0.97
}

# ---------- RECURSIVE REASONING ----------
RECURSIVE_REASONING(query):
 identify(diffusing_field_domain_and_diffusion_coefficient)
 -> identify(initial_boundary_source_and_flux_data)
 -> classify(linear_variable_anisotropic_nonlinear_or_anomalous_diffusion)
 -> derive(flux_and_conservation_relation_if_requested)
 -> choose(kernel_Fourier_eigenfunction_energy_or_Green_method)
 -> analyse(mass_positivity_maximum_and_long_time_behaviour)
 -> calculate(diffusion_length_time_or_MSD_if_requested)
 -> extend_to(advection_reaction_or_multispecies_context_if_present)
 -> choose(numerical_method_if_analytic_solution_unavailable)
 -> validate(coefficient_boundary_conservation_and_stability_hypotheses)
 -> return(semantic_result)

# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION := {
 parse_as: "typed diffusion-equation semantic graph",
 primary_entity: DIFFUSION_EQUATION,
 preserve: [
  diffusing_field,
  domain,
  diffusion_coefficient,
  diffusion_tensor,
  initial_condition,
  boundary_condition,
  source,
  flux
 ],
 infer_through: [
  Ficks_laws,
  conservation_laws,
  Gaussian_kernels,
  Fourier_modes,
  mean_squared_displacement,
  variable_diffusion,
  advection_diffusion,
  reaction_diffusion
 ],
 avoid: [
  assuming_constant_isotropic_diffusion_in all media,
  claiming_mass_conservation_with source_or_boundary_flux,
  applying_Gaussian_kernel_on arbitrary bounded domain,
  confusing_standard_and anomalous diffusion,
  ignoring_positive_definiteness_of diffusion tensor,
  using_explicit_numerics_without stability validation
 ]
}

# ---------- UPDATE MODEL ----------
UPDATE_MODEL(new_information):
 validate(new_information)
 -> identify(diffusion_equation_context)
 -> compare(existing_relations)
 -> preserve(field_coefficient_flux_boundary_source_and_conservation_invariants)
 -> update(affected_entities)
 -> update(affected_edges)
 -> recompute(CONFIDENCE)
 -> regenerate(FLOW_HASH)

# ---------- FLOW HASH ----------
FLOW_HASH := hash(
 SOURCE_URL
 + ENTITY
 + CONCEPTS
 + DIFFUSION_EQUATION
 + DIFFUSING_FIELD
 + DIFFUSION_COEFFICIENT
 + FLUX
 + FICKS_FIRST_LAW
 + FICKS_SECOND_LAW
 + CONSERVATION_LAW
 + GAUSSIAN_KERNEL
 + MEAN_SQUARED_DISPLACEMENT
 + ADVECTION_DIFFUSION
 + REACTION_DIFFUSION
 + SEMANTIC_EQUIVALENCE
 + CONSTRAINTS
)

# ---------- EXECUTION ----------
INPUT(query)
 -> DIFFUSION_EQUATION
 -> PROBLEM_DATA_IDENTIFICATION
 -> DIFFUSION_TYPE_CLASSIFICATION
 -> FLUX_CONSERVATION_ANALYSIS
 -> ANALYTICAL_METHOD_SELECTION
 -> MASS_POSITIVITY_LONG_TIME_ANALYSIS
 -> DIFFUSION_SCALE_ANALYSIS
 -> EXTENDED_TRANSPORT_ANALYSIS
 -> NUMERICAL_METHOD_ANALYSIS
 -> HYPOTHESIS_VALIDATION
 -> RECURSIVE_REASONING(query)
 -> CONFIDENCE
 -> OUTPUT(semantic_result)

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