# Integral Equations and Fast Algorithms (CS 598AK @ UIUC)

What | Value |
---|---|

Class Time/Location |
Tuesday/Thursday 2:00pm-3:15pm / 1304 Siebel |

Instructor |
Andreas Kloeckner |

Email |
andreask@illinois.edu |

Office |
Rm. 4318 Siebel |

Office Hours |
by appointment |

Class Webpage |
http://bit.ly/inteq13 |

Email Listserv |
Info page |

## Lecture Material

Lecture # |
Date |
Topics |
Slides |
Primary Video |
UIUC Video |
Code |
Extra Info |
---|---|---|---|---|---|---|---|

1 | Aug 27 | Intro | Slides | Video | Echo360 (no sound) | Code | |

2 | Aug 29 | Why IEs? Intro Functional Analysis | Slides | Video | Echo360 | Code | |

3 | Sep 3 | Intro Functional Analysis, Intro IEs | Slides | Video | Echo 360 | ||

4 | Sep 5 | Intro IEs, Neumann series, Compact op. | Slides | Video | Echo 360 | ||

5 | Sep 10 | HW1 discussion, Compact op. | Slides | Video | Echo 360 | ||

6 | Sep 12 | Compactness of integral operators | Slides | Video | Echo 360 (sound dies half-way) | ||

7 | Sep 17 | Weakly singular i.op., Riesz theory | Slides | Video | Echo 360 | ||

8 | Sep 19 | Riesz theory, Hilbert spaces | Slides | Video | Echo 360 | Notes | |

9 | Sep 24 | Fredholm theory, spectral theory | Slides | Video | Echo 360 | ||

10 | Sep 26 | Spectral theory, potential theory | Slides | Video | Echo 360 | ||

11 | Oct 1 | PV integrals, Green's thm., formula | Slides | Video | Echo 360 | ||

12 | Oct 3 | Jump conditions, ext. domains | Slides | Video | Echo 360 | Notes | |

13 | Oct 8 | BVPs | Slides | Video | Echo 360 | ||

14 | Oct 10 | BVPs, Uniqueness | Slides | Video | Echo 360 | ||

15 | Oct 15 | Uniqueness, corners | Slides | Video | Echo 360 | ||

16 | Oct 16 | Intro Helmholtz | Slides | Video | Echo 360 | ||

17 | Oct 22 | Helmholtz BVP/IE uniqueness | Slides | Video | Echo 360 | Notes | |

18 | Oct 24 | Calderón, Intro numerics | Slides | Video | Echo 360 (no sound) | ||

19 | Oct 29 | HW5, high-order numerics | Slides | Video | Echo 360 | Code | |

20 | Oct 31 | High-order numerics, IE discretizations | Slides | Video | Echo 360 | Code | Notes |

21 | Nov 5 | Interior Neumann, Nyström | Slides | Video | Echo 360 | Notes | |

22 | Nov 7 | Collective compactness, Anselone's thm | Slides | Video | Echo 360 | ||

23 | Nov 12 | Anselone's thm, Céa's lemma | Slides | Video | Echo 360 | Notes | |

ECE590 | Nov 12 | QBX quadrature | Slides | Paper | |||

24 | Nov 14 | Projection error est., Intro quadrature | Slides | Video | Echo 360 | Code | |

25 | Nov 19 | Singular quadrature, Intro fast alg. | Slides | Video | Echo 360 | Code | |

26 | Nov 21 | Fast Multipole Methods | Slides | Video | Echo 360 | Code | |

Nov 26 | Thanksgiving break | ||||||

Nov 28 | |||||||

Dec 3 | Project presentations | ||||||

Dec 5 | |||||||

Dec 10 | No class |

You'll need an up-to-date version of Google Chrome to play the videos. You'll also need decent internet bandwidth to do streaming (2 MBit/s should be sufficient). If your internet accesss is too slow, you can always right click and download the video.

As far as the videos are concerned, Internet Explorer and Safari are not supported, because they do not understand the video format we're using.

And Chrome behaves *much* better than Firefox with the lecture video player, to
the point of Firefox not even starting up properly. We're currently
investigating. In the
meantime, please use Chrome.

If you would still like to use Firefox and the page hangs (keeps displaying the spinny thing), pressing the "seek to start" button will usually return things to working order.

## Description

This class will teach you how (and why!) integral equations let you solve many common types of partial differential equations robustly and quickly.

You will also see many fun numerical ideas and algorithms that bring these methods to life on a computer.

### What to expect

- A Gentle Intro: Linear Algebra/Numerics/Python warm-up
- Some Potential Theory
- The Laplace, Poisson, Helmholtz PDEs, and a few applications
- Integral Equations for these and more PDEs
- Ways to represent potentials
- Quadrature, or: easy ways to compute difficult integrals
- Tree codes and Fast Multipole Methods
- Fun with the FFT
- Linear algebra-based techniques ("Fast direct solvers"--if time)

## What you should already know

You should have taken some sort of numerical analysis/numerical methods course.

The following questions shouldn't be causing you too much grief:

- What is the divergence theorem? Green's first and second theorem?
- What is Gaussian quadrature?
- Name a numerical method that solves Poisson's equation $\triangle u=f$. (your choice of geometry, boundary conditions and discretization)
- What is the singular value decomposition?
- Name at least three methods for solving a system of linear equations $Ax=b$.

## Updates

August 7, 2013 : Class starts on August 27, 2012, from 2-3:15pm. We've also been assigned a room. We will be meeting in 1304 Siebel. See you then!

## Grading/Evaluation

If you will be taking the class for credit, there will be

- Weekly homework for (a little more than) the first half of the class (60% of your grade)
- A more ambitious final project, which may be inspired by your own research needs (40% of your grade) If you're planning on auditing or just sitting in, you are more than welcome.

## Homework

- Homework 1 due: September 5, 2013 - out: August 27, 2013 (minor update to problem 1b on Sep 2, some notation fixes on Sep 3)
- Homework 2 due: September
~~17~~19, 2013 - out: September 6, 2013 - Homework 3 due: October
~~3~~4, 2013 - out: September 19, 2013 - Homework 4 due: October 17, 2013 - out: October 4, 2013
- Homework 5 due: October 31, 2013 - out: October 17, 2013 Homework is due at 11:59pm on the due date, i.e. at the end of the day.

## Material

### Books

These books cover some of our mathematical needs:

Book | UIUC | Ebook | |
---|---|---|---|

Linear Integral Equations by Kress |
Google Books | UIUC library | |

Integral equation methods in scattering theory by Colton and Kress |
Google Books | UIUC library | ebook |

Partial Differential Equations of Mathematical Physics and Integral Equations by Guenther and Lee |
Google Books | UIUC library | |

Partial Differential Equations: An Introduction by Colton |
Google Books | UIUC library (not available) | |

Integral Equations by Hackbusch |
Google Books | UIUC library | |

Foundations of Potential Theory by Kellogg |
Google Books | UIUC library | ebook (public) |

Acoustic and Electromagnetic Equations: Integral Representations for Harmonic Problems by Nédélec |
Google Books | UIUC library | |

Integral Equations by Tricomi |
Google Books | UIUC library | ebook (public) |

Linear Operator Theory in Engineering and Science by Naylor and Sell |
Google Books | UIUC library |

(FA=functional analysis)

There really *aren't* any books to cover our numerical and algorithmic needs.

So, unfortunately, there isn't *one* book that covers the entire class, or even a reasonable subset. It will *occasionally* be useful to refer to these books, but I would not recommend you go out and buy them just for this course. I will make sure they are available in the library for you to refer to.

#### UIUC ebooks

[[!table header="no" class="mointable" data="""
*The fast solution of boundary integral equations* by Rjasanow | ebook
*Linear Integral Equations* by Kanwal | ebook
*Linear and Nonlinear Integral Equations* by Wazwaz | ebook
"""]]

### Source articles

Because of the (no-)book situation (see above), I will post links to the research articles underlying the class here.

#### Some possible articles for a final project

- The fast Gauss Transform by Greengard and Strain
- High-frequency FMMs: 1 2
- Distributed-memory parallelization of FMMs: (still looking for a good intro article, possibly A tuned and scalable fast multipole method as a preeminent algorithm for exascale systems by Yokota and Barba and references therein)
- Accelerating the Nonuniform Fast Fourier Transform by Greengard and Lee
- An algorithm for the rapid evaluation of special function transforms by O'Neil et al.
- Solving integral equations on piecewise smooth boundaries using the RCIP method: a tutorial by Johan Helsing
- A fast solver for the Stokes equations with distributed forces in complex geometries by Biros, Ying, and Zorin
- A fast direct solver for boundary integral equations in two dimensions by Martinsson and Rokhlin (or one of the many variants thereof) I'll probably be adding more things to this list over time. Also note that this list is not intended to be exhaustive. If you've got an article that you like or want to read, let's talk.

Some of these require quite a bit of machinery in order to do meaningful implementation work. We'll have to do some negotiating on existing software you can use as a starting point.

### Related classes elsewhere

- Shidong Jiang (NJIT)
- Alex Barnett (Dartmouth)
- Shravan Veerapaneni (Michigan)
- Leslie Greengard (NYU)
- Gunnar Martinsson (UC Boulder)
- Jianlin Xia (Purdue)
- Francesco Andriulli (ENS TELECOM Bretagne)
- Mark Tygert (NYU, now Yale)

### Online resources

#### Math

- The Digital Library of Mathematical Functions
- Abramowitz and Stegun: Handbook of Mathematical Functions

#### Python

- The SciPy lectures
- The Numpy MedKit by Stéfan van der Walt
- The Numpy User Guide by Travis Oliphant
- Numpy/Scipy documentation
- More in this reddit thread
- Spyder (a Python IDE, like Matlab) is installed in the virtual machine. (Applications Menu > Development > Spyder)

### Virtual Machine Image

This information has moved to ComputeVirtualMachineImages.