Modules

  

Computational physics learning modules as IPython Notebooks.

Basics 4

  Basic Plotting

Plotting a function in Python.

  Discrete Fourier Transform

fft, dft

Brief introduction to Discrete Fourier Transform and the Fast Fourier Transform.

  Introduction to NumPy and and matplotlib

Introduction to vectors in NumPy, ans line plots, scatter plots and figure parameters in matplotlib.

  Linear Algebra in Python

Basic linear algebra in Python.

Numerical Integration 3

  Numerical Integration

simpson's, method

Numerical integration using the trapezoidal and Simpson's rules.

  Monte Carlo Integration in One Dimension

monte, carlo

Numerical integration in one dimension using the Monte Carlo method.

  Monte Carlo Integration in D Dimensions

monte, carlo

Numerical integration in D dimensions using the Monte Carlo method.

Root Finding 3

  Bisection Method

Determining a root using the bisection method.

  Newton-Raphson Method

newton

Determining a root with the Newton-Raphson algorithm.

  Fixed-Point Iteration

Newton-Rhapson, method

Solving fixed-point problems using the Fix-Point Iteration method.

Ordinary Differential Equations 5

  Euler's Method

ode, explicit euler method

Solving a first-order ordinary differential equation with Euler's method.

  Verlet Integration

ode

Solving a second-order ordinary differential equation (Newton's second law) using Verlet integration.

  Implicit Euler Method

euler, ode

Solving a first-order ordinary differential equation using the implicit Euler method (backward Euler method).

  Runge-Kutta Methods

4th order runge-kutta, ode, explicit euler method

Solving a first-order ordinary differential equation using the Runge-Kutta method.

  Adaptive Runge-Kutta Methods

4th order runge-kutta, trapezoidal method, ode, explicit euler method

Solving a first-order ordinary differential equation using Runge-Kutta methods with adaptive step sizes.

Partial Differential Equations 3

  Partial Differential Equations - Two Examples

differential equation, stability, implicit euler method, animation, laplace's equation, finite-differences, pde

This module shows two examples of how to discretize partial differential equations: the 2D Laplace equation and 1D heat equation.

  Relaxation Methods for Solving PDE's

poisson's equation, iterative, laplace's equation, uniqueness theorem

The Jacobi, Gauss-Seidel and Successive overrelaxation (SOR) methods are introduced and discussed with the Poisson equation as an example.

  Iterative Gauss-Seidel Method

differential equation, gauss, system of equations, iterative, laplace's equation, sparse matrix, pde

Solves a linear of system of equations using the iterative Gauss-Seidel method.

Curve Fitting 3

  Polynomial Interpolation

chebychev nodes, newton, interpolation, lagrange, runges phenomenon

Using polynomial interpolation to interpolate a set of points and to approximate a function or a curve.

  Cubic Splines

chebychev nodes, interpolation, curve fitting, system of equations, runge's phenomenon, sparse matrix

Uses cubic splines to interpolate a given set of data points

  Trigonometric Interpolation

interpolation, fft, discrete fourier transform, least squares

Using trigonometric interpolation and the discrete Fourier transform to fit a curve to equally spaced data points.

Python Packages 1

  Calling Fortran(95) Routines from a Python Script

electricity, fortran, trapezoidal method

Making use of the Fortran to Python package F2PY which enables creating and compiling a Fortran routine before converting it to a Python Module, which can be imported to any Python script.