﻿

Overview

The toolkit is an extendable, integrated and coherent collection of basic functions, code modules, documentation, example templates, unit tests and resources, that can be applied towards diverse calculations in the electro-optics domain. The toolkit covers:

Models of physical radiators (e.g., Planck’s Law) and conversion between values expressed in different units.

Spectral variables are expressed in Numpy arrays to ease spectral operations and integrals.

The individual scripts in the toolkit is supported by examples, test cases and documentation. These examples are included at the end of each script in the __main__ section. If you just run the script, the code will be executed and results will be available in graphs or text files.

Prerequisites

This toolkit requires (current versions in brackets)
Python (2.7),
Numpy (1.7 or later),
SciPy (0.13 or later),
Matplotlib (1.2 or later).
Mayavi (4.1) is required only for one file to do three-dimensional rendering.

Status

This project is stable beta. Current content is tested, stable and usable. With time and active use the scope of the pyradi offering will grow and expand. The current version is already quite useful in our labs and lectures.

The development is ongoing as and when new needs arise. We are open for feature requests as well.

Documentation

API documentation in html and pdf format is available along the paths doc/_build/html/index.html and doc/_build/latex/pyradi.pdf. See also SPIE8543Pyradi. For a detailed theoretical background and many more examples see the book by CJ Willers.

Example application

A typical radiometry toolkit requirement (very much simplified) is the calculation
of the detector current of an electro-optical sensor viewing a target object through the atmosphere.
The system can be conceptually modelled as
comprising a radiating source with
spectral radiance, an intervening medium (e.g. the atmosphere), a spectral filter,
optics, a detector and an amplifier. The pyradi toolkit provides several classes and
functions to implement this model with minimal code.
An example solution is given in this script and is further explained with results in SPIE8543Pyradi.