Skip to main content

A optical ray-tracing package, for design, optimisation and visualisation of mirror/lens systems.

Project description

Raypier is a non-sequential ray-tracing framework for modelling optical systems. Its main features are:

  1. It’s pretty fast. The tracing algorithms are written in Cython (i.e. C) and use efficient data-structures for handling many thousands of rays.

  2. Correctly handles polarisation

  3. Support for dispersion including a comprehensive library of glass-types (taken from refractive-index.info) and diffraction-gratings

  4. Point Spread Function (PSF) and E-Field evaluation by summation of of Gaussian modes.

  5. Paraxial Gaussian mode evaluation covers generally astigmatic modes.

  6. Tracing support for conics section and general aspherics (conic + polnomial)

  7. An interactive user-interface with 3D model/ray rendering through VTK. Tracing is performed “live”.

  8. A modest selection of optic-types including singlet and achromatic doublet lenses (with AR coating), plane-mirrors, ellipsoidal mirrors, prisms

  9. STEP model/trace export for integration with external CAD systems

There are still a few “big” features missing:

  1. The documentation is not comprehensive (yet).

Requirements

Raypier requires:

  • python-3.6 (older versions work on 2.7)

  • numpy

  • scipy

  • traits / traitsui

  • Cython

  • Mayavi (for TVTK) / VTK

  • (Optionally) PythonOCC - for STEP export

  • (Optionally) Chaco / Enable - for integrating line-plots into the UI

Installation

The best way to install and run Raypier is using a Conda environment.

  1. Install miniconda (or the full Anaconda distribution)

  2. Create a fresh conda-environment using the environment.yml file included in this raypier repo.

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

raypier-0.2.3.tar.gz (1.4 MB view hashes)

Uploaded Source

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