Raytracing for professional optical design
C++ Makefile Yacc Other
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
doc
src
test
.gitattributes
.gitignore
.travis.yml
LICENSE
Makefile
README.md

README.md

Skewray Logo

Build Status Code Coverage

Summary

Skewray is a standalone program for modeling and design of optical systems. The intent is to create a platform for trying out innovations in optical raytracing.

Target Users

The target users are scientists, optical engineers, and students who are comfortable using a high-level programming language (like MATLAB).

If you are looking for computer graphics rendering, this isn't it.

Capabilities

The following are some of the milestones, either implemented or planned:

Major Task Status
open source pre-existing code under GPL 3 done
create high-level language for describing physical models done
internationalization - native language variable names and comments done
overloaded derivatives done
arbitrary coordinate systems and transformations done
arbitrary polynomial surfaces done
sequential and non-sequential ray tracing in progress
tracing with guaranteed tolerance in progress
tracking of all apertures not started
requirement satisfaction, rather than optimization not started

A detailed description of the roadmap can be found in the roadmap.

Manual and Examples

The Skewray User Manual is informative but not necessarily up to date, since the language syntax is still changing. However, the .sky test files in Skewray Test Files are educational and always up to date.

Installation and Build

Skewray has so far only been built and tested on Ubuntu and Debian. Steps are:

  1. Unpack zip archive
  2. type 'make configure'
  3. type 'make'

The use of AutoTools is a work in progress.

Required external package list:

  • g++ - compiler
  • make - build system
  • flex - lexical analyzer
  • bison - syntax generator

Optional external package list:

  • openscad - CAD output

License

© GPLv3