Skip to main content

Helper package for handling Adaptive Optics Telemetry (AOT) standard files

Project description

aotpy

Helper Python package for handling Adaptive Optics Telemetry (AOT) standard files. Basic documentation available.

How to install

Support is offered for Python 3.10 or later.

From PyPi (recommended)

python -m pip install aotpy

From the repository

Clone the repository and then install with:

python -m pip install path/to/aotpy

where 'path/to/aotpy' is the path to the root of the cloned repository.

Code example

import numpy as np
import aotpy

system = aotpy.AOSystem(ao_mode='GLAO')
system.main_telescope = aotpy.MainTelescope("Example telescope")

dm = aotpy.DeformableMirror("Example DM", n_valid_actuators=32, telescope=system.main_telescope)
system.wavefront_correctors.append(dm)

ngs = aotpy.NaturalGuideStar("Example NGS")
lgs = aotpy.SodiumLaserGuideStar("Example LGS")
system.sources = [ngs, lgs]

ngs_wfs = aotpy.ShackHartmann("WFS1", source=ngs, n_valid_subapertures=4,
                              measurements=aotpy.Image("NGS slopes", data=np.ones((10000, 2, 4))))
lgs_wfs = aotpy.ShackHartmann("WFS2", source=lgs, n_valid_subapertures=8,
                              measurements=aotpy.Image("LGS slopes", data=np.ones((10000, 2, 8))))
system.wavefront_sensors = [ngs_wfs, lgs_wfs]

lo_loop = aotpy.ControlLoop("LO loop", input_sensor=ngs_wfs, commanded_corrector=dm,
                            commands=aotpy.Image("LO commands", data=np.ones((10000, 32))),
                            control_matrix=aotpy.Image('LO control matrix', data=np.ones((32, 2, 4))))
ho_loop = aotpy.ControlLoop("HO loop", input_sensor=lgs_wfs, commanded_corrector=dm,
                            commands=aotpy.Image("HO commands", data=np.ones((10000, 32))),
                            control_matrix=aotpy.Image('HO control matrix', data=np.ones((32, 2, 8))))
system.loops = [lo_loop, ho_loop]

system.write_to_file("example.fits", overwrite=True)

Acknowledgements

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 101004719 (OPTICON–RadioNet Pilot).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aotpy-0.7.0.tar.gz (3.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aotpy-0.7.0-py3-none-any.whl (3.2 MB view details)

Uploaded Python 3

File details

Details for the file aotpy-0.7.0.tar.gz.

File metadata

  • Download URL: aotpy-0.7.0.tar.gz
  • Upload date:
  • Size: 3.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for aotpy-0.7.0.tar.gz
Algorithm Hash digest
SHA256 9ac023f731d535cba9a4f0ba555ebba485f71b8c95b6fdc1e74f1daee26b0bb8
MD5 1d1c6bd3e1b77a8646ea33769f1c581b
BLAKE2b-256 a797687e7a34e4082f509df183de6991a70debacb8e4c9095275e4d4ac1ae571

See more details on using hashes here.

File details

Details for the file aotpy-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: aotpy-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for aotpy-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d3f6ba96d6b590e69ef9ba0860a1df6f92b4c41e6702931418692fcb8684c75d
MD5 381eb759656910fbaf562ded270ff69a
BLAKE2b-256 c0598d025a21d4e231ca57cf066cf1d983220bdae91455092222c27459b3e4cd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page