/tracepy

Ray Tracing and Optical Design in Python

Primary LanguagePythonMIT LicenseMIT

TracePy

Codacy Badge Build Status Documentation Status Coverage Status PyPI version

Ray Tracing and Optical Design in Python

Overview

TracePy is a sequential ray tracing package written in Python 3 for designing optical systems in the geometric optics regime. It features lens optimization from Scipy.

Installation

To use TracePy you can either clone the repository and use the command "pip3 install ." in the download directory, or you can download TracePy directly through pypi with the command below.

pip3 install tracepy

Examples

To get started using the software, you can look at the examples provided in the 'examples' folder. The UI for TracePy is most similar to BEAM4, and TracePy's ray tracing algorithm was recreated from Spencer and Murty's iconic paper, "General Ray-Tracing Procedure".

Contributing

I suggest reading Spencer and Murty's paper, "General Ray-Tracing Procedure" for an overview of TracePy's algorithm. There are also several open issues that we welcome collaborators on.