Name | Last modified | Size | Description | |
---|---|---|---|---|
Parent Directory | - | |||
233px-Messier_53_HST.jpg | 2022-03-28 11:25 | 30K | ||
DoublePendulum/ | 2022-04-04 21:32 | - | ||
TwoStep.png | 2022-03-23 13:57 | 117K | ||
fft_greens_function/ | 2011-03-30 12:59 | - | ||
hierarchy.fig | 2020-02-14 13:18 | 4.1K | ||
hierarchy.fig.bak | 2020-02-14 13:18 | 4.0K | ||
hierarchy.pdf | 2014-02-24 09:36 | 20K | ||
lorenz/ | 2011-02-17 21:30 | - | ||
plots/ | 2009-03-09 16:26 | - | ||
programs/ | 2018-03-10 02:46 | - | ||
shuffling/ | 2020-02-14 13:18 | - | ||
Outline:
Along the way, as an example, I will be developing my own toolkit for solving ODEs. This is not intended to replace the high quality ODE solvers available in Octave or Matlab. Instead, my purpose is to demonstrate principles of modular code design and good documentation. I will also demonstrate the use of recursion.
We will begin with techniques using a fixed step size. Before looking at the examples in this section, read the lecture notes.
Question: In physics, an ansatz (German 'answer') is an inspired guess that is verified afterward. What motivation can you find for the ansatz proposed on page 4?
Source code:
Plots:
Source code:
Plots:
First, visit the lecture notes.
Source code:
Plots:
Having demonstrated that the step double works, we now build a fully functional adjustable spanner adjustable step size solver.
Source code:
Plots:
The N-body problem is notoriously difficult. Let's try it! But first, read the lecture notes.
Source code:
Plots:
My solver works surprisingly well, but it's not a professional grade tool. It is inefficient for many reasons (can you name a few?). LSODE is more efficient and more robust, but even LSODE quickly reaches its limits. For this problem, the best tools are symplectic integrators. Ask Neil!
It might be wortwhile now to review the hierarchy of modules developed thus far.
Chaos is mainly about sensitivity to initial conditions. That is, very slightly different initial conditions can give rise to qualitatively different solutions. See the lecture notes.
Source code:
Plots:
Conceptually, we can view a chaotic system as 'shuffling' in phase space. Here we will explore this analogy with a simple iterative map. The shuffling idea can help us to place a lower bound on the phase space dimensionality required to accommodate chaotic behavior.
What happens when you add a quantum-scale perturbation to a classical, Hamiltonian, macroscopic chaotic system?
While we are on the topic quantum chaos, we may optionally investigate dynamical billiards. The quantum version of this system can be solved using the PWDM technique. Unfortunately, this has nothing to do with ODEs.
If the equations of motion turn out to be stiff, your ODE solver might be DOA! To solve this problem, you'll need a time machine.
Here again is my hierarchy of modules. You now know when & why to use the stiff solvers.