← All projects

University Coursework

Optical Design Exercises

Two design exercises: a simple adaptive optics system for the Euler Telescope, and a pair of prisms that undoes the colour spread caused by the atmosphere.

Year
2026
Context
Optics and Detectors course exercises
Method
Lens layout, ray tracing, optimisation
Built with
Python

An adaptive optics system for the Euler Telescope

Turbulence in the atmosphere constantly distorts the light from a star, so a telescope sees a blurred, shimmering image. Adaptive optics (AO) corrects this as it happens: a sensor measures the distortion, and a deformable mirror changes shape to cancel it.

My task was to design a simple AO system behind the Euler Telescope: choose the lenses and where to place them, so that each part of the system receives the light in the form it needs.

Optical layout. Light from the telescope mirror passes lens L1 to a deformable mirror, then lens L2 to a dichroic mirror. One path goes to the science camera, the other through a pyramid and lens L3 to the wavefront sensor camera.
My layout. Light from the telescope reaches the deformable mirror, then a dichroic mirror splits it between the science camera and the wavefront sensor.

Each lens has one job:

Diagram, not to scale. The telescope's exit pupil on the left, its focal plane, lens L1, and the deformable mirror on the right. A green ray leaves L1 parallel to the axis; a red ray from the edge of the pupil lands on the edge of the deformable mirror.
How L1 works: the beam leaves it parallel (green), and the edge of the telescope's pupil is imaged onto the edge of the deformable mirror (red). Not to scale.

An atmospheric dispersion compensator

Air bends light slightly, and it bends blue light more than red. For a star low in the sky, this stretches its image into a tiny rainbow. An atmospheric dispersion compensator (ADC) is a set of prisms that spreads the colours by the same amount in the opposite direction, so they land back together.

I designed an ADC from two prisms made of different glasses. I worked out on paper how a ray bends at each surface, turned that into a Python ray trace, and used an optimiser to find the prism angles that best cancel the spread from the atmosphere.

Hand drawing on squared paper: a ray crossing two prisms placed together, with the angle at each surface labelled.
My hand-drawn ray trace through the two prisms, the starting point for the code.
Two line plots against wavelength. Left: the deviation caused by the atmosphere falls across the band, the ADC correction rises as its mirror image, and what is left after correction stays close to zero, inside a dashed target band. Right: the ADC correction in its active setting, and a minimum-correction setting that stays at zero.
Left: the colour spread from the atmosphere (blue), the ADC's correction (orange), and what is left after correction (green), which stays inside the target band (dashed lines). Right: the ADC set to correct, and set to its minimum correction.

Related projects