Official Information  

Course Number:  Math 5044.001 
CRN:  38528 
Course Title:  Introduction to Numerical Analysis II 
Times:  TR 5:106:30 
Places:  Wachman Hall 413 
Instructor:  Benjamin Seibold 
Instructor Email:  seibold(at)temple.edu 
Instructor Office:  Wachman Hall 518 
Instructor Office Hours:  T 4:005:10, R 2:003:00 
Course Textbook:  Randall J. LeVeque, Finite Difference Methods for Ordinary and Partial Differential Equations  Steady State and Time Dependent Problems, SIAM, 2007 
Further recommended reads: 

Official:  Course Syllabus 
Topics Covered:  This course provides a rigorous introduction to numerical methods for ordinary differential equations, establishing both knowledge and understanding of modern and efficient methods, as well as tools of analysis to understand when and why different methods work (or fail). Particular topics: RungeKutta, multistep, and Taylor series methods. Deferred correction. Convergence and stability. Error analysis. Stiff problems. Boundary value problems. Finite differences. Stochastic ODEs. 
Course Goals:  Provide a rigorous mathematical basis for numerical methods for ordinary differential equations, and lay the groundwork for more advanced courses on numerical differential equations. Provide insight and intuition to fundamental challenges inherent to many problems in computational science and engineering. 
Attendance Policy:  Students are expected to attend every class. If a student cannot attend a class for some justifiable reason, he or she is expected to contact the instructor before class. 
Course Grading:  Homework: 50%; exams: 50%. 
Final Exam Date:  05/05/2023. 
Course Schedule  
01/17/2023 Lec 1  Introduction: Ordinary differential equations, Linear ODE

01/19/2023 Lec 2  Predatorprey model, Lipschitz continuity, IVPs vs. BVPs

01/24/2023 Lec 3  Fundamental concepts in numerical methods for ODEs

01/26/2023 Lec 4  Taylor series methods: advantages and drawbacks

01/31/2023 Lec 5  RungeKutta methods: Butcher tableau

02/02/2023 Lec 6  General RungeKutta methods, ERKDIRKIRK

02/03/2023 Lec 7  Order conditions

02/09/2023 Lec 8  Embedded methods, adaptive timestepping, dense output, Richardson extrapolation

02/14/2023 Lec 9  Linear multistep methods: order conditions
Read:
Linear multistep methods

02/16/2023 Lec 10  Adams, BDF, and predictorcorrector methods
Read:
BDF,
Predictorcorrector

02/21/2023 Lec 11  Zerostability and convergence: failure of zerostability, difference equations
Read:
Truncation error

02/23/2023 Lec 12  Zerostability and convergence theorems

02/28/2023 Lec 13  Absolute stability: stability regions for different methods
Read:
Absolute Stability

03/02/2023 Lec 14  Boundary locus method, linear systems

03/14/2023 Lec 15  Stiff problems: Schemes for different stiffness types, Astability, Lstability

03/16/2023 Lec 16  Mildly stiff problems, RKChebyshev methods, stiffness in nonlinear problems

03/21/2023 Lec 17  Order reduction

03/23/2023 Lec 18  Implementation of implicit RK methods

03/24/2023 Lec 19  Semiimplicit methods: ImEx RungeKutta methods

03/28/2023 Lec 20  ImEx stability

03/30/2023 Lec 21  ImEx multistep methods

03/31/2023 Lec 22  Other methods and special problems: SSP schemes, Hamiltonian ODEs
Read:
Hamiltonian mechanics

04/04/2023 Lec 23  Symplectic methods

04/06/2023 Lec 24  Deferred correction

04/18/2023 Lec 25  Stochastic differential equations: examples
Read:
SDE,
Geometric Brownian motion

04/20/2023 Lec 26  EulerMaruyama and Milstein method, weak and strong convergence
Read:
EulerMaruyama,
Milstein method

04/25/2023 Lec 27  Boundary value problems: shooting methods
Read:
BVP,
Shooting method

04/27/2023 Lec 28  Finite difference discretizations, pathways to PDE

05/05/2023  Final Examination 
Matlab Programs  
Introduction:  
temple5044_linear_ode_2x2.m 
Vector field and phase flow for linear 2x2 ODE systems Visualizes the different cases that can arise with 2x2 systems of ODE, via quiver plot, eigendirections, and deformation of the unit circle. 
temple_abm_population_local.m 
Population dynamics models via 2x2 nonlinear ODE systems The dynamics of two species are demonstrated in various cases: predatorprey, logistic growth, competition, and mutalism. 
Runge Kutta methods:  
ode1.m ode2.m ode3.m ode4.m ode5.m 
RungeKutta methods of orders 1,2,3,4, and 5 Initial value problem ODE are solved approximated equidistant time steps. 
temple5044_rk_order_conditions.m 
Check RungeKutta order conditions This code verifies whether the order conditions (up to order 5) are satisfied or not for a generic RungeKutta scheme, provided via its Butcher tableau. Example file: temple5044_rk_order_conditions_example.m, applies the code to three example methods. 
temple5044_voyager.m 
Simulation of jupiter swingby of the Voyager 1 space probe A fourbody problem of celestial mechanics, involving the sun, earth, jupiter, and Voyager 1, is solved numerically with an RK4 discretization that is far too inaccurate. 
Absolute stability:  
temple5044_absolute_stability_region_rk.m 
Plot regions of absolute stability for RungeKutta methods Provided are 9 examples of RungeKutta schemes, defined via their Butcher tableaus. 
Semiimplicit methods:  
temple5044_stability_region_imex_rk.m 
Plot stability regions for ImEx RungeKutta methods Provided are 6 examples of ImEx RungeKutta schemes, applied to the test problem u'=αu+iβu. 
Stochastic differential equations:  
temple5044_euler_maruyama.m 
Error convergence study of EulerMaruyama method for the stochastic differential equation (geometric Brownian motion) dX = μ X dt + σ X dW. 
Boundary value problems:  
mit18336_poisson1d_error.m 
Numerical error analysis for the 1D Poisson equation A differentiable but oscillatory right hand side is considered. 
Homework Problem Sets  
