Skip to content

maxecharles/dLuxToliman

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dLuxToliman

PyPI version License

Banner Image

Description

This repository/package contains pre-built ∂Lux models of the Toliman optical system, and pre-built parametrised ∂Lux source objects for Alpha Centauri.

∂Lux is an open-source differentiable optical modelling framework harnessing the structural isomorphism between optical systems and neural networks, giving forwards models of optical system as a parametric neural network. ∂Lux is built in Zodiax which is an open-source object-oriented Jax framework built as an extension of Equinox for scientific programming.

The primary goal of the Toliman mission is to discover Earth-sized exoplanets orbiting in Alpha Centauri, the closest star system to our own. To achieve this, the mission will employ a novel telescope design that will be able to detect subtle changes in the positions of the Alpha Centauri binary pair. These changes are caused by the gravitational reflex motion induced by an Earth-sized companion, and this cutting-edge technology will enable scientists to identify exoplanets too small to be detected by conventional telescopes. Toliman utilises a binary phase diffraction pupil to grasp the expected microarcsecond-scale astrometric signal.

Installation

dLuxToliman is pip-installable. To install the latest release, simply run:

pip install dLuxToliman

Usage

A very basic example of how to use this package is as follows:

# imports
import dLuxToliman as dlT
from matplotlib import pyplot as plt

osys = dlT.TolimanOpticalSystem(psf_npixels=128)  # creating Toliman optical system
source = dlT.AlphaCen(n_wavels=3, separation=8, position_angle=30)  # creating Alpha Centauri source
tel = dlT.Toliman(source=source, osys=osys)  # creating Toliman telescope

psf = tel.model()  # running optical simulation

# plotting
plt.imshow(psf ** .5, cmap='inferno')
plt.title(r'Toliman $\sqrt{PSF}$')
plt.show()

Example Image

Contributors

Max Charles, Louis Desdoigts, Benjamin Pope, and Peter Tuthill.

License

This package is released under the BSD 3-Clause License. See the LICENSE file for more information.

Support

If you encounter any problems or have any questions related to Toliman models, please raise an issue or contact me at max.charles@sydney.edu.au.