Koko is raytracing software for the design and analysis of optical imaging and illumination systems. Koko has evolved from the optics design program KDP-2 that was made open-source by its original developer James E. Klein (see KDP-LICENSE). The software provides the tools needed to design, analyze, and fabricate complex optical systems:
- Focal and afocal optical systems with decenters and tilts
- Paraxial raytracing
- Sequential and non-sequential raytracing
- Spherical, aspheric, diffractive, and user-defined surfaces
- Multi-configuration raytracing (zoom lenses, interferometers, etc.)
- Spot diagrams, wavefront, and aberration analysis
- Glass data from Ohara, Schott, Hoya, Corning, CDGM
- Test plate libraries
- Lens fabrication drawings
- Lens optimization
- Tolerance analysis
- Macro language
Koko has a command line interface. A table-based graphical user interface that will be familiar to users of commercial optics design programs is under development. A longer-term plan is to integrate Koko into a workbench for FreeCAD (https://freecadweb.org). This will enable a more object-oriented approach to optics design and will also provide an integrated optical and mechanical design capability.
Koko is distributed under the GNU Public License version 3. Manual and tutorials are distributed under the GNU Free Documentation License. Some source files have different GPL-compatible licenses; details can be found in the file LICENSE.