Intro to Finesse Workshop 18-22nd Dec 2019


In this workshop we will introduce Finesse, its python wrapper Pykat, and the underlying physics behind it. We’ll look at some simple examples of how to use Finesse to model the core components of gravitational-wave detectors like LIGO, Virgo or KAGRA, and explore how Finesse can be used in both detector design and characterisation.


In each session, we will work through a series of tasks in Jupyter notebooks. These are designed to both teach you Finesse and the underlying physics behind it. Some of the tasks listed in the notebooks will ask you to code something using Finesse and/or Python syntax; others might ask you to solve an equation on paper or draw an optical setup.

You should work through the notebooks with the members of your group and the other students around you. Feel free to ask questions to any of the mentors at any time! We’ll collect everyone together before lunch and at the end of each day to give feedback on what we’ve been learning and compare results. Each group should nominate a delegate to present your progress to the class.

Each day will follow the same general timetable:

TimeActivity18th Dec19th Dec20th Dec21st Dec
10:00-11:00Session 1Welcome and
Today’s Goal
Topic 3a
Today’s Goal
Topic 4a
Quick overview of aLIGO
Today’s Goal
Topic 5
11:00-11:30Tea Break
11:30-13:00Session 2Today’s Goal
Topic 1
Topic 3a cont.
Topic 4a cont.
Topic 5 cont.
14:30-16:00Session 3feedback
Topic 2
Topic 3bTopic 4bFinesse’s Capabilities
Topic 5 cont.
16:00-16:30Tea Break
16:30-18:00Session 4Topic 2 cont.
Topic 3b cont.
Topic 4b cont.
What’s next

The ‘Sandbox’

Each of you has been provided with a login to this website. This is to enable you to use the ‘sandbox’, where you can share questions with the rest of the group and the mentors. Clicking ‘login’ will take you to the website dashboard. At the top, click ‘new’ to create a new post. Whenever you have a Finesse/PyKat problem, you should create a post in the sandbox that:

  • describes what you were trying to do
  • describes the steps you took before the problem occurred
  • includes a snippet of code illustrating the issue

The Example Post shows how you can use the site. Posts will be viewable to all the mentors and other students, so that if others experience a similar issue they can visit the sandbox and learn how to resolve it. Once you have made a post, you may wish to contact your mentor telling them to look at it.

Task Notebooks

We will use 2 kinds of notebooks during the school: ones designed to teach you physics, and ones that will apply that physics in a series of Finesse examples. Because of this, you will find that most topics have pairs of notebooks, zipped together. You should roughly aim to complete one notebook per session – we will adjust to match your progress as the workshop progresses.

Solution notebooks will be available for every notebook – these will be added to this page as we progress through the workshop.

If you have not yet installed the software, please follow the instructions given in this file:

Then verify it works by running this notebook:

Topic 1: Background Physics

In this topic you will learn the foundational physics behind Finesse and the basic building blocks of a Finesse simulation. You will then use these to investigate a 2-mirror (‘Fabry-Perot’) cavity.


Topic 2: Introduction to Finesse

This will introduce you to constructing a Finesse model from scratch, as well as highlighting how Finesse, and optical simulations as a whole, can help us understand optical systems as the configuration gains complexity.


Topic 3: Modulation and Demodulation; Sensing and Control

Gravitational wave signals have a very small effect on gravitational wave detectors. In order to sense this effect, we must carefully control the optical system to minimise the effect of other things. In this topic, you will learn how to describe an optical field which has been modulated, and then use the beat notes generated between the different field components to sense and control an optical system at its optimal operating point. You will then simulate a control signal for a 2-mirror cavity.


Topic 4: Transfer Functions, Signals and Noise

Transfer functions describe how signals propagate through a system. In this topic we will take a look at the Michelson Interferometer, and use this to explore how different types of signal propagate through it, finishing by using these transfer functions to plot the sensitivity curve of the Michelson. We will also briefly consider feedback loops, and how various signals propagate through them.


Topic 5: Modelling Advanced LIGO

You can now apply all of the skills from the previous sessions to a model of a LIGO-like advanced gravitational wave detector. This notebook presents several independent examples putting together everything you’ve learnt so far. You should divide the work between you to find solutions to all of the tasks.


Presentation Slides

Answer Notebooks


Links to

Linked from


# Date User Information
262 4 years ago Anna Green (current)
258 4 years ago Philip Jones
247 4 years ago Anna Green
243 4 years ago Anna Green
235 4 years ago Gautam Venugopalan
1 2 3 7