Skip to main content

Raypier - A Non-sequential optical ray-tracing framework

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.

Metadata

Release files for raypier 0.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for raypier 0.2.3
File Size Uploaded
raypier-0.2.3.tar.gz 1.4 MB Details

Release files / raypier-0.2.3.tar.gz

Download URL raypier-0.2.3.tar.gz
Size 1.4 MB
Tags Source
SHA-256 checksum
How to use checksums
e7813e835f29cc4ffab4332785e1ccb49148c7433895a0fbd0f15dcaf2b4eb7a
BLAKE2b-256 checksum
How to use checksums
82ed36a83491e8d97f3f225897efcedbc2be2352dd786bed11d92b5a6f070800
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.6.0.post20201009 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

Release history Release notifications | RSS feed

This release

0.2.3 This release

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page