Introduction to GW Physics & Astronomy

PhD elective course, Spring 2020 (co-taught with Bala Iyer)

Venue: Chern Lecture Hall, ICTS

Class Timings: 10:00 - 11:30 am on Wed & Fri

Prerequisites: General Relativity, exposure to Python and Mathematica


  1. Theory of GWs

  2. Detection of GWs

  3. GW data analysis

  4. GW source modeling

  5. Astrophysics of GW sources


  1. Bernard Schutz, A First Course in General Relativity (Cambridge)

  2. Michele Maggiore, Gravitational Waves: Volume 1: Theory and Experiments (Oxford)

  3. Jolien D. E. Creighton & Warren G. Anderson, Gravitational-Wave Physics and Astronomy: An Introduction to Theory, Experiment and Data Analysis (Wiley-VCH)

  4. Nils Andersson, Gravitational-Wave Astronomy: Exploring the Dark Side of the Universe (Oxford)

  5. Stuart L. Shapiro Saul A. Teukolsky, Black Holes, White Dwarfs, and Neutron Stars: The Physics of Compact Objects (Wiley-VCH)


50% assignments + 50% written test.

Mathematical methods for Physics

Int PhD course, Spring 2019

TA: Rahul Kashyap (ICTS)

Timings: Tuesdays 10:00 — 11:30 hrs, Thursdays 16:00 — 17:30 hrs

Location: Chern Lecture Hall, ICTS Campus, Bangalore


Vector analysis in general coordinates, tensor analysis. Matrices, operators, diagonalization, eigenvalues and eigenvectors. Infinite series, convergence, Taylor expansion. Complex analysis, Cauchy’s integral theorem, Laurent expansion, singularities, calculus of residues, evaluating integrals. Partial differential equations, separation of variables, series solutions, Green’s function. Sturm-Liouville theory. Fourier and Laplace transforms.


G. Arfken & H. Weber, Mathematical Methods for Physicists (Academic)

B. F. Schutz, A First Course in General Relativity (Cambridge)


Assignments: 40%

Mid term test: 30%

Final test: 30%

Numerical methods for Physics and Astrophysics

Graduate course, Spring 2014, 2015, 2018

Timings: 3:30-5:30 pm on Wednesdays and Fridays

Location: ICTS Campus, North Bangalore

The course aims for a “physics-first” approach. The plan is to discuss real problems in physics and astronomy and identify numerical methods that can be used to solve those problems, without dwelling too much on the details of the algorithms. The idea is to enable students to make use of computational methods for their research in physics and astronomy.

Topics to be covered

  1. Numerical differentiation and integration

    1. Finite differencing, convergence, error estimates, Richardson extrapolation.

  2. Numerical integration: trapezoidal rule, Romberg's  method, Simpsons rule.

  3. Ordinary differential equations (ODEs):

    1. Numerical solutions of ODEs: Euler methods, Runge-Kutta methods, Adaptive step size control using Runge-Kutta-Felhberg method.

    2. Systems of ODEs: post-Newtonian equations to compute gravitational waves from inspiralling black-hole binaries, Structure of a spherically symmetric star: Tolman–Oppenheimer–Volkoff equation.

    3. Stochastic and chaotic ODEs: Langevin equation, Lorenz equations.

  4. Partial differential equations (PDEs)

    1. Stability analysis, well-posedness

    2. Hyperbolic PDEs: Wave equation

    3. Elliptic PDEs: Poisson’s equation.

    4. Parabolic PDEs: Heat equation.

  5. Fourier methods and signal processing

    1. Fast Fourier transform, sampling theorem, windowing.

    2. Correlation, autocorrelation, power spectrum estimation.

    3. Matched filtering: Detection of signals of known shape in noisy data.

  6. Monte-Carlo methods and statistical techniques

    1. Random numbers, probability distributions.

    2. Markov-chain Monte Carlo methods, Metropolis–Hastings algorithm. Ising model.

    3. Bayesian inference, Hypothesis testing, Model selection.

Labs and assignments

  1. Download the PDF containing the lab exercises and assignments. This will be periodically updated: Lab.pdf

Structure and evaluation

This is NOT a course in computer programming! Students are expected to have some background in programming. The recommended programming language is Python, although students are free to use any high-level language that they are comfortable with. We will have one lecture and one computer lab per week, and one set of homework/assignment. Evaluation will be entirely based on assignments.

Preparation for the course:

  1. Bring your laptop that has some flavor of Unix (GNU/Linux, Mac OS X, BSD, etc.), with Python (http://www.python.org/) along with numpy (http://www.numpy.org/), scipy (http://scipy.org/) and matplotlib (http://matplotlib.org/) libraries installed.

  2. If you are beginner in Python, work on your Python beginners tutorials: http://www.python.org/about/gettingstarted/. Once you are familiar with the basics, go for an advanced tutorial, e.g., http://www.openbookproject.net/thinkcs/python/english2e/.

Suggested books:

  1. W. H. Press, S. A. Teukolsky, W. T. Vetterling and B. P. Flannery, Numerical Recipes: The Art of Scientific Computing, Cambridge (2007). 

  2. P. L. DeVries and J. E. Hasbun, A First Course in Computational Physics, Jones & Bartlett (2011).

  3. C. F. Gerald and P.O.Wheatley, Applied Numerical Analysis, Addison-Wesley (2004).

  4. D. S. Sivia and J. Skilling, Data Analysis: A Bayesian Tutorial, Oxford (2012).

  5. P. Gregory, Bayesian Logical Data Analysis for the Physical Sciences, Cambridge (2010).


ajith (at) icts (dot) res (dot) in