Skip to content

Latest commit

 

History

History
36 lines (26 loc) · 2.42 KB

README.md

File metadata and controls

36 lines (26 loc) · 2.42 KB

Simons Obervatory Small Aperture Telescope (sosat) Optical Simulation

Code style: black Imports: isort

Optical simulation of the Simons Observatory Small Aperture Telescope.
Author: Grace Chesmore

Installation

  • git clone [email protected]:McMahonCosmologyGroup/sosat_optics.git
  • cd sosat_optics
  • pip3 install .

Usage

Two notebooks are provided to demonstrate the use of the optical simulation.

Near Field

This notebook demonstrates the use of the optical simulation to create the near-fields in front of the SAT window.

Near Field Requirements

An additional notebook is provided to calculate the predicted near-field beam sizes across the mid-frequency band of the SAT. This can easily be adapted to change the source wavelength, source height from the window, and receiver position, though here we keep the receiver position at boresight in the focal plane.

Far Field

This notebook demonstrates the use of the optical simulation to propagate the near field simulated beam into the far field of the telescope. With the simulated near-fields $b(x,y)$ above the SAT window, the far-field $B(\theta_x,\theta_y)$ is calculated using the relation:

$$ B(\theta_x,\theta_y) = \int_{aperture} b(x,y)e^{i2\pi(x\theta_x + y\theta_y)} dx dy$$

where $\theta_x$ and $\theta_y$ are the polar coordinates of the far-field, $x$ and $y$ are the coordinates of the near-field, and $b(x,y)$ is the measured near-field. Here, we are integrating over the area of aperture, which is the Stop of the SAT.

It is important to note that in practice, one can only obtain the far-field beams from a near-field measurement if the near-field data includes phase information.

Contributions

If you have write access to this repository, please:

  • create a new branch
  • push your changes to that branch
  • merge or rebase to get in sync with main
  • submit a pull request on github
  • If you do not have write access, create a fork of this repository and proceed as described above. For more details, see Contributing.