Explore the practical application of numerical methods in solving partial differential equations using Python with this comprehensive course. Delve into finite-difference, pseudospectral, and linear finite-element methods, and gain insights into the mathematical derivations, computational algorithms, and visualization of results. The course emphasizes the fundamental mathematical components of the various numerical methods, including Taylor series, Fourier series, differentiation, function interpolation, and numerical integration, and provides strategies for ensuring the correctness of solutions through benchmarking and convergence tests.
Throughout the course, you will be introduced to wave physics, discretization, meshes, parallel programming, and computing models, offering a broad understanding of the methodologies widely used in natural sciences, engineering, economics, and other fields.
Certificate Available ✔
Get Started / More InfoThis course spans nine modules, covering practical numerical methods using Python to solve partial differential equations. It includes detailed explorations of finite-difference, pseudospectral, and linear finite-element methods, as well as strategies for accurate simulations.
Week 01 of the course provides a general introduction to the discrete world, wave physics, and computers. You will gain insights into spatial scales, meshing, and the basics of waves in a discrete world. The module also covers parallel simulations and offers an overview of wave physics and Python usage in Jupyter notebooks.
Week 02 focuses on the finite-difference method and Taylor operators. You will delve into the definitions and applications of Taylor series, and explore Python implementation for first and high-order derivatives. The module emphasizes the use of Taylor series and finite differences in numerical methods.
Week 03 delves into the finite-difference method applied to the 1D wave equation, accompanied by von Neumann analysis. The module covers the algorithm, boundaries, sources, and initialization, along with analytical solutions and von Neumann analysis. It also includes practical exercises for acoustic waves in 1D.
Week 04 extends the finite-difference method to 2D, exploring numerical anisotropy and heterogeneous media. You will learn about finite-difference algorithms, von Neumann analysis, and the application of staggered grids for improving numerical accuracy in 2D acoustic wave equations.
Week 05 introduces the pseudospectral method and function interpolation. You will explore Fourier series, the discrete Fourier transform, and solving the 1D/2D wave equation with Python. The module also covers convolutional operators, Chebyshev polynomials, and their applications in numerical methods.
Week 06 focuses on the linear finite-element method and its application to static elasticity problems. You will delve into the weak form, Galerkin principle, solution schemes, boundary conditions, and relaxation methods for solving static elasticity using Python.
Week 07 extends the linear finite-element method to dynamic elasticity problems. The module covers solution algorithms, differentiation matrices, Python implementation for 1D elastic wave equations, h-adaptivity, and shape functions. It provides a comprehensive exploration of finite elements in dynamic elasticity.
Week 08 introduces the spectral-element method, focusing on Lagrange interpolation and numerical integration. You will gain insights into weak form, matrix formulation, element level operations, Lagrange interpolation, and numerical integration using Python. The module provides a deep understanding of the spectral-element method.
Week 09 concludes the course with an in-depth exploration of the spectral-element method, covering Lagrange derivative, legendre polynomials, system of equations, and global assembly. The module also includes practical exercises for 1D homogeneous and heterogeneous cases, and convergence testing for the spectral-element method.
This Lean Six Sigma course equips participants with the skills to tackle quality issues and process inefficiencies using a blend of statistical tools and Lean principles....
Introducing Cellular Automata: Explore the wonders of Cellular Automata through hands-on guided projects using Golly and NetLogo for modeling and simulations.
Plant Bioinformatics Capstone is a comprehensive course that delves into using online tools to hypothesize the biological role of genes in plants, culminating in...
Storytelling with Kumu allows you to create an interactive relationship map about physicist and philosopher David Bohm using Kumu's Advanced Editor and Presentation...