Partial Differential Equations (PDEs)
Comprehensive overview of partial differential equations in MathHook CAS. Covers mathematical foundations, classification, solution methods, and current capabilities.
ð
Mathematical Definition
A second-order linear PDE in two independent variables has the general form:
where: - is the unknown function - are coefficients (may depend on , , or ) - are independent variables (typically spatial coordinates or time)
Code Examples
Registry-Based Solver Dispatch
Automatic PDE classification and solver selection using O(1) registry lookup
use mathhook::prelude::*;
// Create registry (auto-registers all solvers)
let registry = PDESolverRegistry::new();
// Define PDE
let u = symbol!(u);
let x = symbol!(x);
let t = symbol!(t);
let equation = expr!(add: x, t); // Heat equation pattern
let pde = Pde::new(equation, u, vec![x, t]);
// Automatic classification and solving
let solution = registry.solve(&pde)?;
println!("Solution: {}", solution.solution);
println!("Eigenvalues: {:?}", solution.get_eigenvalues());