Solving Differential Equations in Julia II
SDEs, Sensitivities, and the Verified Solver Stack
| Publication year | 2026 |
|---|---|
| Number of pages | 378 |
| Paper trim | 6 × 9 inch |
| Paper color | White |
| ISBN — Paperback | Forthcoming |
| ISBN — Hardcover | N/A |
| ISBN — Dust Jacket | N/A |
About this book
Two complaints about a differential equation solver are constantly mistaken for one another, and the whole of this work turns on keeping them apart. The first is that a tool is slow: it computes the right answer at a price one would rather not pay, and the remedy is an argument about hardware. The second is that a tool cannot state the problem at all — the model one has does not fit through the interface, at any price. The first is an engineering inconvenience; the second is a structural fact, and only the second settles an argument. I have tried to earn the claim of impossibility everywhere I make it, and to refuse it wherever only slowness is true.
This is the second of two volumes, and it is written to stand on its own. Volume I took the axis of structure — the deterministic equation whose form the standard interface cannot state: the mass matrix that reweights a derivative and, when singular, becomes a constraint; the high-index differential-algebraic system that must be reduced before any solver can touch it; the symbolic-numeric layer that composes and reduces a model a closure throws away. This volume takes up what remains: the equation that is stochastic, delayed, discontinuous, or unknown, together with the engineering of performance and scale and the discipline required to trust an answer to any of them. A reader who has Volume I will recognise the framework in one brisk chapter; a reader who has only this book will find that chapter carries everything the ten ahead assume. Together the two volumes draw one boundary honestly on both sides: across structure, and across stochasticity, memory, discontinuity, scale, and differentiability, the Julia SciML stack states problems the reference Python interface cannot — not more slowly, but at all.
The rule of evidence is the one Volume I ran on, unchanged. Every comparison gives the competing tool its best available configuration — the right solver, an analytical Jacobian, exposed sparsity, a tuned tolerance — because a rigged benchmark is worth less than no benchmark, and the concession is what buys the reader’s trust where the verdict is close. This volume concedes a great deal: the differentiable challenger is a genuine rival for stochastic equations, for sensitivities, for ensembles and neural models, and it is scored as one wherever it competes. No timing appears without the tolerance it was run at; where a claim is quantitative there is a work-precision diagram carrying it; and no solution is reported that I have not verified against a manufactured one. A solution I have not verified is a plot, not a result.
The eleven chapters climb from the equations the interface cannot express to the discipline that certifies an answer. Chapter 1 restates the framework. Chapter 2 takes the stochastic differential equation, whose solution is a distribution rather than a trajectory and whose very notation hides a modelling choice between two processes. Chapter 3 takes the delay equation, whose initial condition is a function and whose hidden non-smoothness costs a solver its order in silence. Chapter 4 takes jumps and events, where a discontinuity is the root of a function on the integrator’s dense output and a reset must live inside the solve. Chapter 5 leaves trajectories for the shape of a solution family — continuation past the fold where the Newton corrector fails — a column the Python stack cannot enter at all. Chapter 6 awards Julia nothing: it shows the naive right-hand side is slower than a vectorised rival and earns each speedup back by measurement. Chapters 7 and 8 make the stiff solve scale — sparse Jacobian detection and matrix-free Krylov, then device-resident ensembles. Chapter 9 differentiates the solver and exhibits the backsolve adjoint destroying a gradient while the solver reports success. Chapter 10 embeds a learned term inside known physics, trains it through the stiff stack, and recovers it as a closed-form expression. Chapter 11 climbs the ladder of evidence to its last rung — a machine-checked enclosure that proves a bound rather than measuring an error.
Contents
- The Framework, Restated
- Stochastic Differential Equations
- Delay Differential Equations
- Jumps, Events, and Hybrid Dynamics
- Continuation and Bifurcation
- Performance Engineering
- Large Systems
- Ensembles and GPU Monte Carlo
- Differentiating the Solver
- Universal Differential Equations
- Verification and the Work-Precision Discipline
Covers


