NPRE 498 – Numerical Methods for Plasma Physics

Course Description

The course covers the main numerical methods used to describe the matter in the state of plasma. The first part of the course focuses on particle methods as initial value problems, privileging Finite-Difference schemes in time (Euler, Mid-Point, Runge-Kutta, Cash-Karp, symplectic integrators) and including error quantification for each scheme, and the Von Neumann stability analysis. The second part of the course covers kinetic methods, mainly focusing on Boltzmann and Fokker-Planck models, and their most important discretization techniques. The last part covers fluid plasma methods, comprising diffusion-advection-reaction problems, MHD, and Braginskii models. Discretization for each model will be analyzed and discussed in detail, with exercises and examples at each step. Recommended prerequisite: NPRE 421 or instructor approval.


Dr. Davide Curreli,
Office Phone Number: (217) 300-1787
104 South Wright Street, Urbana IL 61801

Office Hours

Immediately after class or by appointment by email to the instructor.

NEW *** Rinat Khaziev is available for office hours every Tuesday, from 2-3 pm, in his office room 106B – NRL, Nuclear Radiation Laboratory. ***



  • Suggested: NPRE 421 (and CS 101)


  • [50%] Homework (link)
  • [50%] Computational Project (link)


  1. Lecture Notes
  2. R.W. Hockney, J.W. Eastwood, Computer Simulation Using Particles, CRC Press, 1989 C.K.
  3. Toshiki Tajima, Computational Plasma Physics, Westview Press, FIP 12, 2004
  4. Birdsall, A.B. Langdon, Plasma Physics via Computer Simulation, CRC Press, 2004
  5. Stephen Jardin, Computational Methods in Plasma Physics, Chapman & Hall/CRC Computational Science, CRC Press; 1 edition, June 2, 2010

Other Resources

  • DOE 2009 Scientific Grand Challenges – Fusion Energy Sciences and The Role of Computing at the Extreme Scale (Report PDF 9.7 Mb)
  • DOE 2015 Workshop on Integrated Simulations for Magnetic Fusion Energy Sciences (Report PDF 23.3 Mb; USBPO page; Whitepapers)
  • Whitehouse Executive Order July 29, 2015 — Creating a National Strategic Computing Initiative (link)
  • DOE 2016 DOE Office of Science Exascale Requirements Reviews: Target 2020-2025 (link)
  • USBPO Website (link)

Course Material (Repository)


Introduction (Week 1)

  • Introduction to the course, overview, instructions
  • Number representation in a computer: the floating point arithmetic. Rounding and truncation errors, machine epsilon, numerical cancellation, stability and well-posed problems, IEEE 754 standard, arbitrary-precision floating point arithmetic, history
  • Why computers are needed: the case of solving non-linear equations. Many ideas for a “simple” problem: the methods of bisection, fixed tangent, false position method (regula falsi), secant method, Newton-Raphson, and fixed point, with illustrative examples.
  • Homework

Particle Methods  (Weeks 2, 3, 4)

  • Spring 2015
    • Single-particle motion and guiding-center theory
    • Plasma problems leading to Ordinary Differential Equations or a system of Ordinary Differential Equations: particle motion, B-field lines, n-body problems, plasma chemistry problems
    • Finite difference schemes 1: Cauchy initial value problem, Euler forward, Euler backward, mid-point, Crank-Nicholson
    • Finite difference schemes 2: Simpson, Milne, multi-steps, Runge-Kutta, Cash-Karp
    • Homework
    • Exercises: ODE plasma problems, examples of implementation
    • Overview of available numerical routines for ODE integration; examples of usage
    • Leapfrog scheme for charged particle motion in electromagnetic fields; consistency, accuracy, stability, efficiency
    • Exercises: ODE plasma problems
    • Homework
    • Preliminary discussion and directions on the Computational Projects
  • Fall 2016
    • Plasma problems leading to Ordinary Differential Equations (ODE) or a system of Ordinary Differential Equations: particle motion, B-field lines, n-body problems, plasma chemistry
    • Numerical Methods for Systems of ODE
      • Initial Value Problems vs. Boundary Value Problems
      • FD approximations of the first derivative
      • Numerical schemes: Euler-Forward, Explicit Mid-Point, Runge-Kutta-4
      • Absolute error, relative error
      • Examples of implementation of ODE schemes; numerical examples
      • Generalization of Explicit Runge-Kutta Methods; Butcher table
      • Adaptive Runge-Kutta Methods
      • Overview of the sequence of in-class exercises with step-by-step implementation
    • Plasma Particle Drifts
      • Particle drifts in uniform fields (ExB drifts, gravitational drifts)
      • Particle drifts in non-uniform fields (grad-B drift, curvature drift, magnetic mirrors)
      • Particle drifts in oscillating fields (B-dot drifts, E-dot drifts, adiabatic heating)
    • Magnetic field-line tracing
      • Field-line equation
      • B-field of a current loop
      • Magnetic mirror
    • The N-body problem in electrostatics
      • Problem formulation and implementation
      • The classical Bohr hydrogen atom (2-body)
      • Ionization of the Bohr hydrogen atom (3-body)
      • Study of transition from weakly-coupled to strongly-coupled plasmas (20-body)
    • Symplectic schemes

Fields (Week 5, 6)

  • Spring 2015
    • Examples of elliptic and hyperbolic problems in plasma physics. Poisson, Maxwell, and Grad-Shafranov problems
    • Direct Methods for linear system: LU factorization; Crout method, Cholesky factorization, block tridiagonal method, QR factorization. Exercises
    • Iterative methods for linear systems: Jacobi, Gauss-Seidel, SOR.
    • Homework
    • Variational methods for linear systems (Krylov Space Methods): Steepest descent, Conjugate Gradient, Preconditioning, GMRES. Exercises
    • Variational methods for non-linear systems: steepest descent, Conjugate Gradient, Newton, Broyden, BFGS. Exercises
    • More Exercises on solution of non-linear PDEs: Boltzmann electrons, Grad-Shafranov problem of plasma equilibrium
  • Fall 2016
    • Examples of elliptic and hyperbolic problems in plasma physics. Poisson, Maxwell, and Grad-Shafranov problems
    • Numerical Methods for Systems of PDE
      • Classification of 2nd order PDE (elliptic, parabolic, hyperbolic)
      • Classification based on the spectrum of the operator
      • FD approximations of the operators
    • Finite Difference Methods for Elliptic problems
      • Direct Methods: LU, Cholesky
      • Indirect Methods: Jacobi, Gauss-Seidel, SOR
      • Variational Methods: Steepest Descent, Conjugate Gradient, Preconditioning, GMRES
    • Solution of plasma Poisson problems
      • Point charges in 1D and 2D
      • Charge distributions in 1D and 2D

Kinetic Methods (Week 7, 8, 9, 10)

  • Spring 2015
    • Examples of Kinetic Problems in Plasma Science. Discretizations of the Vlasov-Boltzmann equation: deterministic vs. probabilistic approach
    • Gridless Theory of a Finite Size Particle system: dispersion relation, collisional effects, fluctuations
    • Exercise: one-dimensional electrostatic particle-in-cell.
    • Homework
    • Particle-Mesh method. Forces in 1D with different schemes, charge assignment schemes, truncation errors, energy-conserving schemes, transform space analysis, self-force
    • Collisionless Particle Models: dispersion relation, conservation laws, symmetry breaking due to self-forces
    • Particle-Particle-Particle-Mesh method. The mesh force, short-range force, practical considerations
    • Examples of kinetic problems solved with Particle methods. Future trends
  • Fall 2016
    • Examples of Kinetic Problems in Plasma Science
    • Gridless Theory of a Finite Size Particle system: fundamental quantities, dispersion relation, theoretical limits, fluctuation-dissipation behavior
    • Particle-Mesh method (PIC). Description of the method, structure of the algorithm, weighting schemes
    • Properties of Particle-Mesh methods: collisional time, heating time, optimal choice of the discretized quantities

Transport Problems (Week 11, 12, 13, 14)

  • Spring 2015
    • Examples of transport problems in Plasma Physics and resulting PDEs
    • Classification of PDE problems. PDE problems in flux-conservative form. More details on the MHD model of plasmas and its advective-term difficulty
    • Grid-based schemes for flux-conservative problems: FS, FT, BT, CS, CT. Limitations of the FTCS scheme, Von-Neumann stability analysis
    • Courant number, meaning of the Courant condition, Lax scheme, Lax-Wendroff scheme
    • Staggered-Leapfrog scheme: derivation of the scheme, Von-Neumann stability analysis, Hirt analysis
    • Exercises on grid-based schemes for flux-conservative problems: advection equation in 1D, implementation of the Lax scheme, Lax-Wendroff and Staggered Leapfrog
    • Control-volume schemes for problems written in flux-conservative form: FT scheme and its limitations. Upwind scheme: derivation, Von-Neumann stability analysis, Hirt analysis. Implementations. Exercises
    • Homework
    • Riemann Problem and the debate on Riemann solvers; Godunov’s method; overview of other proposed modern Riemann solvers. Advanced MHD schemes: second-order Godunov scheme; famous implementations: Zeus and Athena-MHD. Examples of usage
    • Exercises on control-volume schemes
    • Diffusion problem: control-volume discretization, Crank-Nicholson
    • Diffusion-advection problem: operator splitting, stability conditions, implementation strategies. Diffusion-advection-reaction problems, additional requirements; the Braginskii problem, and famous implementations: SOLPS, EMC3
    • Exercises on diffusion-advection: magnetic diffusion in a moving conductive metal, diffusion- advection of temperature in a moving liquid, ablating surfaces
  • Fall 2016
    • Examples of transport problems in Plasma Physics and resulting PDEs;
    • Problems rewritten in Flux-Conservative Form
    • Parabolic Problems
      • Diffusion operator
      • Finite Volume Discretization
      • Crank-Nicholson
      • Implementation, exercises: plasma heat flux on a solid wall
    • Control-volume techniques for transport problems written in flux-conservative form
      • FT scheme: derivation, Von Neumann stability; Hirt analysis; scheme limitations
      • Lax scheme, Lax-Wendroff: derivation, Von Neumann stability
      • Staggered-Leapfrog scheme: derivation, Von-Neumann stability, Hirt analysis
      • Upwind scheme: derivation, Von-Neumann stability, Hirt analysis.
      • Implementation, exercises: transport of a plasma pulse
    • Diffusion-advection
      • Operator splitting, stability conditions,
      • implementation strategies.
      • Extension to DAR (diffusion-advection-reaction) problems, additional requirements
      • The Braginskii problem, and famous implementations: SOLPS, EMC3
      • Implementation, exercises: (1) diffusion-advection of temperature in a moving liquid, (2) magnetic diffusion in a moving conductive metal, (3) temperature profile in ablating surfaces
    • Operator Splitting
      • Strang splitting of the Vlasov-Boltzmann Equation
      • Implementation, exercises: Landau damping of an electron-ion plasma

Final Presentations

  • There will be no written final. The total score of this course will be based on homework and computational project. The computational project will have to be delivered with a written report due on December 7, 2016 plus an oral presentation on Wednesday, December 14, 2016, 1:30 PM – 4:30 PM