ShiveshM / FiniteDifferenceComputing

Finite Difference Computing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Finite Difference Computing

Python Version

Notes from Langtangen's "Finite Difference Computing with Exponential Decay Models", published by Springer.

Chapters

  1. Algorithms and implementations
    • The Forward Euler scheme
    • The Backward Euler scheme
    • The Crank-Nicolson scheme
    • The unifying / theta-rule
    • Numerical Error
    • Differentiate
    • Integrate
  2. Analysis
    • Experimental investigations
    • Stability
    • Accuracy
    • Amplification error
    • Global error
    • Global integrated error
    • Truncation error
    • Consistency, stability, and convergence
    • Model errors
    • Data errors
    • Discretisation errors
    • Rounding errors
    • Exponential growth
  3. Generalisations
    • Include variable coefficient and source term
    • Verification
    • Convergence
    • Systems of ODEs
    • Generic first-order ODEs
    • Implicit 2-step backward scheme
    • Leapfrog schemes
    • 2nd-order Runge-Kutta method
    • 2nd-order Taylor-series method
    • The 2nd- and 3rd-order Adams-Bashforth schemes
    • 4th-order Runge-Kutta method
  4. Models
    • Scaling and dimensionless variables

Dependencies

Usage

Overview of chapters is given above. To run all code for a particular chapter, e.g. chapter 1, simply run

python chap1.py

To specify a particular method(s), then enter the name of the method after the filename, e.g. to run the methods forward_euler and backward_euler inside chap1.py, do

python chap1.py forward_euler backward_euler

About

Finite Difference Computing


Languages

Language:Python 100.0%