Skip to main content

PAOS, the Physical Optics Simulator, is a fast, modern, and reliable Python package for Physical Optics studies. It implements Physical Optics Propagation in Fresnel approximation and paraxial ray tracing to analyze complex waveform propagation through both generic and off-axes optical systems.

Project description

PAOS

License Documentation Status

Introduction

PAOS, the Physical Optics Simulator, is a fast, modern, and reliable Python package for Physical Optics studies.

It implements Physical Optics Propagation in Fresnel approximation and paraxial ray tracing to analyze complex waveform propagation through both generic and off-axes optical systems.

Table of contents

How to install

Instructions on how to install PAOS.

Install from PyPI

PAOS is available on PyPI and can be installed via pip as

pip install paos

Install from source code

PAOS is compatible (tested) with Python 3.8, 3.9 and 3.10

To install from source, clone the repository and move inside the directory.

Then use pip as

pip install .

Test your installation

Try importing PAOS as

python -c "import paos; print(paos.__version__)"

Or running PAOS itself with the help flag as

paos -h

Or the Graphical User Interface with the help flag as

paosgui -h

If there are no errors then the installation was successful!

Documentation

PAOS comes with an extensive documentation, which can be built using Sphinx. The documentation includes a tutorial, a user guide and a reference guide.

To build the documentation, install the needed packages first via:

pip install -e ".[docs]"

Build the html documentation

To build the html documentation, move into the docs directory and run

make html

The documentation will be produced into the build/html directory inside docs. Open index.html to read the documentation.

Build the pdf documentation

To build the pdf, move into the docs directory and run

make latexpdf

The documentation will be produced into the build/latex directory inside docs. Open paos.pdf to read the documentation.

The developers use pdflatex; if you have another compiler for LaTex, please refer to sphinx documentation.

How to contribute

You can contribute to PAOS by reporting bugs, suggesting new features, or contributing to the code itself. If you wish to contribute to the code, please follow the steps described in the documentation under Developer guide.

How to cite

A dedicated publication has been submitted and the relative information will be published soon. In the meanwhile, please, send an email to the developers.

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

paos-1.0.2a1.tar.gz (65.9 kB view details)

Uploaded Source

Built Distribution

paos-1.0.2a1-py3-none-any.whl (74.5 kB view details)

Uploaded Python 3

File details

Details for the file paos-1.0.2a1.tar.gz.

File metadata

  • Download URL: paos-1.0.2a1.tar.gz
  • Upload date:
  • Size: 65.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.12

File hashes

Hashes for paos-1.0.2a1.tar.gz
Algorithm Hash digest
SHA256 3fd1acbc48f31b65aa2fe80a58574a51ffe1ea56c8ed12c65f0034190b58de92
MD5 94cb4b5771602adbef0dcdfea7125298
BLAKE2b-256 c134590b3c29689a8b510cc7315d91af5556ccbaa424ed3ac941b2c29b649339

See more details on using hashes here.

File details

Details for the file paos-1.0.2a1-py3-none-any.whl.

File metadata

  • Download URL: paos-1.0.2a1-py3-none-any.whl
  • Upload date:
  • Size: 74.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.12

File hashes

Hashes for paos-1.0.2a1-py3-none-any.whl
Algorithm Hash digest
SHA256 f4fd9523f58419771cb06f7fc5dddc9e395aa4b0bab9e7d4eebdcd28bb713d86
MD5 b2e12d1e4885679102267a4fa7d65621
BLAKE2b-256 f87effa7b3c0caa6a8bbb9bf895a4e90191d883302ce39be75a762017bd48129

See more details on using hashes here.

Supported by

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