Tracer is a package for ray-tracing in Python. Its main application area is solar energy, and the architecture focuses on extensibility and programmability, so it can be used as a part of other programs. For example, it could be used for optimization algorithms or annual performance simulations.
Finesse is a numeric simulation for laser interferometers using the frequency domain and Hermite-Gauss modes. It is easy to use for students. For basic use, including graphical output, no commercial software is required. The implemented physics are well documented in a 180-page manual. Simple examples are provided. Finesse can be used to compute a great variety of interferometer signals for control systems, including longitudinal control, alignment control, and thermal compensation.