“Know how to solve every problem that has been solved.” “What I cannot create, I do not understand.” — Richard Feynman

Picard Iteration

Differential Equations

The Picard iteration is an iterative procedure for solving differential equations. It's mostly used in proofs of existence and uniqueness for ODEs rather than as a numerical method — it's not particularly fast, and the integrals get unwieldy in a hurry. But the construction itself is striking on simple examples, and worth seeing once.

Introduction

Given a differential equation of the following form

We may write this in integral form

Rearranging the formula:

We can conveniently change this into a fixed point iteration.

An Application

Let's apply this to the simplest nontrivial linear ODE:

The same example shows up on the Adomian Decomposition page, but I don't mind repeating it here. Starting from and feeding each iterate back through the integral:

That's the Taylor series for . The Picard iteration is literally constructing the exponential function one term at a time out of polynomial integrations — which, on reflection, is a rather nice thing to watch happen. In the limit:

That's clean for a trivial linear ODE. Make the right-hand side a little more complicated and the method starts to fight you: the iterates take many more steps to match what a first-order Euler scheme gives you for free, and for some perfectly innocent-looking linear problems the integrals stop being expressible in elementary functions, at which point you're back to numerical integration anyway.

Symbolic

A computer algebra system handles the iteration symbolically and gives you exact polynomial answers as long as the right-hand side is well-behaved. Nonlinearities are where the wheels come off — many of the resulting integrals stop being expressible in elementary functions. You can Taylor expand the nonlinearity and keep going, but the radius of convergence may be finite, and what you get back is a local series rather than a global solution.