Tool for designing homebuilt telescopes, and an experimental testbed for students to learn how light propagates through an optical system.
This piece of OSS requires several external packages in order to compile and/or run.
-
DS9 -- For display of FITS images created by the program.
-
CFITSIO -- A library of C functions for reading and writing FITS files to disk.
-
GSL -- Contains scientific and other routines required by the application.
There are a couple "data" files used as examples in the code that are part of the distribution tarball but not included in the GitHub repository.
/************ CODE OUTLINE ************/
/*
0a. Open and/or canibalize a DS9 window for displaying FITS images.
0b. Let the user know what the heck you are doing to their computer.
1. Set up the geometry of the telescope (optic location, shape, etc.)
2. Set up the illumination environment (point source, flat, image, etc.)
3. Initialize the rays based on illumination environment.
4. Propagate the rays through the system.
4a. Check if rays hit obstructing elements and/or connect with next element
4b. Reflect / Refract ray off / through element.
4c. Propagate ray to next element, repeating 4a-4c.
5. At each element / pupil, record illumination pattern, if requested.
6. Allow for adustment of #1 or #2 and re-run of program.
7. Other?
*/