Computers, Waves, Simulations A Practical Introduction to Numerical Methods using Python
Interested in learning how to solve partial differential equations with numerical methods and how to turn them into python codes? This course provides you with a basic introduction how to apply methods like the finite-difference method, the pseudospectral method, the linear and spectral element method to the 1D (or 2D) scalar wave equation. The mathematical derivation of the computational algorithm is accompanied by python codes embedded in Jupyter notebooks. In a unique setup you can see how the mathematical equations are transformed to a computer code and the results visualized. The emphasis is on illustrating the fundamental mathematical ingredients of the various numerical methods (e.g., Taylor series, Fourier series, differentiation, function interpolation, numerical integration) and how they compare. You will be provided with strategies how to ensure your solutions are correct, for example benchmarking with analytical solutions or convergence tests. The mathematical aspects are complemented by a basic introduction to wave physics, discretization, meshes, parallel programming, computing models. The course targets anyone who aims at developing or using numerical methods applied to partial differential equations and is seeking a practical introduction at a basic level. The methodologies discussed are widely used in natural sciences, engineering, as well as economics and other fields.
How to solve a partial differential equation using the finite-difference, the pseudospectral, or the linear (spectral) finite-element method.
Understanding the limits of explicit space-time simulations due to the stability criterion and spatial and temporal sampling requirements.
Strategies how to plan and setup sophisticated simulation tasks.
Strategies how to avoid errors in simulation results.
Syllabus
Syllabus - What you will learn from this course
Week 1
Week 01 - Discrete World, Wave Physics, Computers
Week 2
Week 02 The Finite-Difference Method - Taylor Operators
Week 3
Week 03 The Finite-Difference Method - 1D Wave Equation - von Neumann Analysis
Week 4
Week 04 The Finite-Difference Method in 2D - Numerical Anisotropy, Heterogeneous Media
Week 5
Week 05 The Pseudospectral Method, Function Interpolation
Week 6
Week 06 The Linear Finite-Element Method - Static Elasticity
Week 7
Week 07 The Linear Finite-Element Method - Dynamic Elasticity
Week 8
Week 08 The Spectral-Element Method - Lagrange Interpolation, Numerical Integration
Week 9
Week 09 The Spectral Element Method - 1D Elastic Wave Equation, Convergence Test
FAQ
When will I have access to the lectures and assignments?
Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:
The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.
The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I purchase the Certificate?
When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.
Is financial aid available?
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
Reviews
This is a great course for intro to numerical course with additional bonus on python code, although a little bit too fast pace.
Although the mathematical formulation & codes are hard to grasp, I really enjoy and feel challenged by this course. Thank you!
Well thought out. The material is ordered logically and easy to follow. This online course compliments the book from which it is based on.
I already know that I will learn a lot even though I am an undergrad. ( FTD from Colorado School of Mines)