## Ed Bueler, Spring 2014

Overview:  One of the goals in Math 615 is to give students practical experience in numerical analysis by working on a project on a topic chosen by the student.  Obvious advice for graduate students is to pick a project in consultation with your advisor, but of course that is not a requirement.  Both mathematical analysis and actual numerical computation are required on this project.  See the subject suggestions and content requirements below.

Timing and Due Dates:
• You will submit a short Version 1.0 on Friday 4/11 at class time.  This part is worth 10% of the course grade.
• You will submit a final Version 2.0 on Thursday 5/8 at 5pm.  This part is worth 15% of the course grade.

Project categories:  You should pick a continuum mathematical model like

1. a (single or small system of) partial differential equation(s), or
2. a (single or small system of) delay differential equation(s), or
3. a single stochastic differential equation.

These are the only allowed possibilities.  On the version 1.0 submission, identify which one of these [1,2,3] it is!

Note that most ODE-only problems lead to numerical analysis rather unlike the content of the course, and thus are not allowed.

Your particular problem, namely the question you are trying to answer by numerical analysis, could be

1. an initial and boundary value problem, or
2. a (purely) boundary value problem, or
3. an "eigen" analysis (i.e. finding the modes of a system), or
4. an inverse problem.
On the version 1.0 submission, you must identify which one of these [a,b,c,d] you are doing!  In rare cases your problem may be in a fifth category "e".  You will want to clearly identify that and talk to me in advance of submitting version 1.0.

In summary I want to see a clear statement of the type of the problem type, such as "... an initial/boundary problem for a nonlinear evolution equation of parabolic type..." or "... an inverse problem for a linear, elliptic boundary value problem..." or "... an initial value problem for a delay differential equation ...".

For version 1.0 you must give several references, and these should include enough about the problem to identify the category, among other things.

Subject suggestions:  These suggestions appear alphabetically, thus in no particular order.  They are all basically in categories 1a, 1b, or 1c in the above taxonomy.  There is varying intrinsic difficulty to the standard instances of these suggested problems, but I know enough about each of these to be able to advise on how much you should include, so as to avoid becoming bogged down, and I also know enough to be able to "weight for difficulty" at the time of grading.  Please google the suggestion below if you find it interesting; look for a wikipedia page for sure.
• biharmonic equation
• Black-Scholes equations for security pricing
• drum heads
• earth deformation under load
• eigenmodes of electromagnetic wave guides
• eikonal equation
• Euler-Poisson system for incompressible inviscid fluids
• Korteweg–de Vries equation
• linear (Newtonian) Stokes problem for incompressible fluid
• minimal surface equation
• morphogenesis/pattern formation
• Poisson/Laplace equation on a fractal
• Schroedinger equation
• shallow water equations
• snowball earth
• Sturm-Liouville problems
• telegraph equation
Content requirements:  Once you choose a subject (i.e. the continuum problem) you will choose a numerical scheme or schemes.

There should be some explanation of your numerical scheme choice.  "Ease of implementation" is a totally-valid reason to choose a (consistent) scheme!  Other reasons might be stability or order of accuracy.  It might also be the case that you are interested in learning about that kind of scheme, so you might write "I want to learn about implicit schemes for nonlinear equations" or "I want to learn about high-quality transport schemes", for example.

For your chosen scheme or schemes applied to your chosen continuum mathematical model, you will do a numerical analysis, in addition to a computed example. In particular, two actions are required:
1. numerical analysis
2. practical computation
Note on requirement A: You must make some attempt to understand and explain the efficiency, stability, convergence, and accuracy of your numerical scheme(s).  In particular, for each of the following actions you should ask whether it is possible and meaningful to do so, and if so you should do it.  Concretely, I expect you to do at least two of these analyses:
1. compute truncation error and show consistency
2. do stability analysis
3. prove convergence [rarely possible]
4. assess the computational cost of the algorithm
5. manufacture (or otherwise find) an exact solution, and verify with it.
If you are unable to accomplish at least two of the above actions, talk to me.  It may be that your problem is too hard.

I do not expect you to derive the equations of the continuum model, though you may do so (e.g. briefly in an appendix).  That is a subject for other courses.  However, do briefly explain the physical/engineering/mathematical context as a way of introducing the problem.  Carefully state the equations of the model, giving precise references including a source of the derivation.  Explain the symbols you use; you must define new symbols that are not already used in Morton & Mayers.  Explain the role/meaning of your particular computation.

As stated above, you are required to do some practical computation in Matlab, though I do not expect you to produce a production-quality code.  Rather, your goal should be a functional and readable prototype.  (Build something you can build upon!)  Please use Matlab's built-in numerical linear algebra, and don't write your own.  In some cases it will be appropriate to use Matlab's built-in ODE or root solvers.  You don't need to use Matlab tricks, but generally learning to vectorize and avoid loops will help you understand.

You may try methods other than finite differences for your practical computation, for instance finite volume, finite element, or spectral methods.  But, because these methods differ both in implementation and analysis from what is addressed in class, working with them will be intrinsically harder because the required numerical analysis will be harder.  See me if you want your project to go in this direction.

In what follows I state what you will turn in at various stages.  Some of the work is mine, however.  I will be giving you feedback on version 1.0 which will be intended to improve your grade on v2.0.  And I will be happy to talk to you about your project at any stage.

Length and format of project Version 1.0 (due Friday 4/11 at class time):  The point here is to do a little bit of everything that will go into the final product.  Version 1.0 should be a useful skeleton on which to build v2.0.  It needs to be readable but it need not be polished.

The length should be between 5 and 10 pages total.  Please include the following 7 section headings, with this content:

1. Introduction  (including scientific/engineering context and sketch/gloss of the numerical analysis you do)
2. Continuum Model and Problem  (here should go the PDE itself, etc, and clear specification of the particular problem including boundary conditions and parameters; give meaning of symbols; include a not-completely-trivial exact solution, if you can, here or in an appendix)
3. Numerical Scheme  (state the method, discuss the reasons for this choice, discuss implementability and efficiency; small excerpts of the code may go here)
4. Analysis  (truncation error, stability, convergence, cost of algorithm, verification results)
5. Results  (show pictures and a few key numbers; note that a section called "Conclusion" is not necessary)
6. References  (at least three; quality matters)
7. Appendix(s)  (put the actual codes here, tangential analysis or computation, failed attempts if significant)
The Results/ part should be quite short, and may be empty, in v1.0.  That is, do not draw definitive conclusions yet.

I recommend having an an electronic form of v1.0 , so that it can be modified into v2.0 most easily, but when you turn in v1.0 and v2.0 they should be on paper.  Please use ordinary 8.5x11 letter paper and staple it in the upper left corner.  Please do not put it in a folder, etc.; I will have a stack of these things to grade and I don't need yours to take up extra space.  Please make it double-sided if possible.

Length and format of project Version 2.0 (due Thursday 5/8 at 5pm):  Now fill out the version 1.0 skeleton, of course, and think through your approach given the feedback you get on v1.0.  You will undoubtedly need to alter your earlier plans, so don't worry if v2.0 has different computational or analytical details than v1.0.  Version 2.0 is final, so I encourage you to make it reasonably clean and neat.  The length should be between 15 and 25 pages total (with 25 a firm maximum) and should include the same section headings and other format requirements as for v1.0 (see above).