Heat equation
DefinitionHeat-kernel solution#✓fully proved
For \(f\colon \mathbb{R} \to \mathbb{R}\), the heat solution \(u(t, x)\) of \(f\) is given for \(t > 0\) by
and by \(u(t, x) = f(x)\) for \(t \le 0\).
The integral is the Lebesgue integral, taken to be \(0\) when the integrand is not integrable. The value for \(t \le 0\) only makes \(u\) defined for all real \(t\) and \(x\); the heat equation statement constrains \(u\) only for \(t > 0\).
noncomputable def heatSolution (f : ℝ → ℝ) (t x : ℝ) : ℝ :=
if 0 < t then
(4 * Real.pi * t)⁻¹ ^ ((1 : ℝ) / 2) *
∫ y : ℝ, Real.exp (-((x - y) ^ 2) / (4 * t)) * f y
else
f x
Used by 1
TheoremThe Gaussian heat kernel solves the heat equation#●ready to prove
Let \(f\colon \mathbb{R} \to \mathbb{R}\) be continuous and bounded, and let \(u(t, x)\) be the heat solution of \(f\). Then for every \(t > 0\) and every \(x \in \mathbb{R}\) there are a function \(u_x\colon \mathbb{R} \to \mathbb{R}\) and a real number \(u_{xx}\) such that \(u(t, \cdot)\) has derivative \(u_x(y)\) at every \(y \in \mathbb{R}\), \(u_x\) has derivative \(u_{xx}\) at \(x\), and \(u(\cdot, x)\) has derivative \(u_{xx}\) at \(t\); that is, \(\partial_t u = \partial_x^2 u\) on \((0, \infty) \times \mathbb{R}\). Moreover, for every \(x \in \mathbb{R}\), \(u(t, x) \to f(x)\) as \(t \to 0\) from above.
public theorem_wanted heat_kernel_solves_heat_equation
(f : ℝ → ℝ) (hf_cont : Continuous f) (hf_bdd : ∃ M : ℝ, ∀ x, |f x| ≤ M) :
-- The PDE on (0, ∞) × ℝ.
(∀ t : ℝ, 0 < t → ∀ x : ℝ, ∃ ux : ℝ → ℝ, ∃ uxx : ℝ,
(∀ y : ℝ, HasDerivAt (fun z => heatSolution f t z) (ux y) y) ∧
HasDerivAt ux uxx x ∧
HasDerivAt (fun s => heatSolution f s x) uxx t) ∧
-- Initial condition recovered as a one-sided limit at t = 0.
(∀ x : ℝ,
Filter.Tendsto (fun t : ℝ => heatSolution f t x)
(nhdsWithin (0 : ℝ) (Set.Ioi 0)) (nhds (f x)))
noncomputable def heatSolution (f : ℝ → ℝ) (t x : ℝ) : ℝ :=
if 0 < t then
(4 * Real.pi * t)⁻¹ ^ ((1 : ℝ) / 2) *
∫ y : ℝ, Real.exp (-((x - y) ^ 2) / (4 * t)) * f y
else
f x
WantedExt/Analysis/HeatKernelWanted.lean:72
Sources
- Classical heat-equation theory. Problem
heat_kernel_solves_heat_equationof the lean-eval benchmark.
Uses 1
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.