14
$\begingroup$

Is there any good software for construction optical path's in geometrical optics. More specifically I want features like:

  • draw $k \in \mathbb{N}$ objects $K_1,\dots,K_n$ with indices of refraction $n_1,\dots,n_k$ and light sources $l \in \mathbb{N}$ light sources $L_1,\dots,L_l$

    • define some light sources (or just light rays) and the program constructs the optical path of those rays through $K_1,\dots,K_n$.

    • define a point and the program constructs the optical path between the light sources and the given point

  • draw some specific optical elements like lenses, (concave, convex) mirrors and do things like above

  • construct automatically virtual images

  • 3D drawings would be fine

I would prefer free software for linux.

$\endgroup$

Before answering, please see our policy on resource recommendation questions. Please write substantial answers that detail the style, content, and prerequisites of the book, paper or other resource. Explain the nature of the resource so that readers can decide which one is best suited for them rather than relying on the opinions of others. Answers containing only a reference to a book or paper will be removed!

  • $\begingroup$ I would download such a program if it were free, too. Sounds cool. ;-) $\endgroup$ – Luboš Motl Mar 11 '11 at 17:41
  • $\begingroup$ A free program to simulate mechanics with any shapes etc. is Phun, see phunland.com/wiki/Home - it's really phun. $\endgroup$ – Luboš Motl Mar 11 '11 at 17:42
  • $\begingroup$ Perhaps goptical (gnu.org/software/goptical) can be help you (if you can manage to use it). $\endgroup$ – Georg Sievelson Nov 14 '14 at 15:26
13
$\begingroup$

The industrial tool is zemax; however, it is very expensive.

If you just want to make diagrams, the TeX package pst-optics might do the trick.

In the gaussian beam regime, optocad (free) is a tool often used in the laser interferometer gravitational wave detector community.

$\endgroup$
7
$\begingroup$

I just discovered:

opticalraytracer

From the manual:

OpticalRayTracer is a free (GPL) cross-platform application that analyzes systems of lenses and mirrors. It uses optical principles and a virtual optical bench to predict the behavior of many kinds of ordinary and exotic lens types as well as flat and curved mirrors. OpticalRayTracer includes an advanced, easy-to-use interface that allows the user to rearrange the optical configuration by dragging objects around using the mouse.

OpticalRayTracer fully analyzes lens optical properties, incuding refraction and dispersion. The dispersion display uses color-coded light beams to simplify interpretation of the results.

Recent OpticalRayTracer versions allow the creation of mirrors, flat and curved. In modern optical designs, mirrors often produce better results than lenses, for example in astronomical instruments. Such instruments can be roughed out in OpticalRayTracer's virtual workbench.

optgeo

This is in french, but seems to fit some my requirements.

Both seem to be nice 2d tools, both are in the ubuntu repositories.

OpenRayTrace

From the manual:

OpenRayTrace is an optical lens design software that performs ray tracing. It is built using python, wxPython, and PyOpenGL. It should run on any platform that python, wxPython and PyOpenGL run on.

So it should in principle run on a linux box but I didn't manage to do so yet.

Here is a newer fork of the project: https://github.com/BenFrantzDale/OpenRayTrace

It also seems to support 3D ray tracing.

PyOptTools

pyOpTools is a set of packages that allow the simulation of optical systems by raytracing as well as some calculations involving wavefronts, currently under development. It is written in Python and Cython, and is being developed by the technological development group of Combustión Ingenieros S.A.S, and the applied optics group of the Universidad Nacional de Colombia.

A nice video of how it works can be found on youtube: https://www.youtube.com/watch?v=DB8sfm7pVPI

pyoptics

From the README:

Geometric optics raytracing in python for education and small-project design.

geoptics

From the documentation:

geoptics propagates light rays in 2D, in the geometrical optics approximation.

Modifying objects should be easy, with a live update of the rays propagation. The intent being to give a fun experience with optics.

That being said, physical precision is kept, so geoptics might interest engineers or physicists looking for a quick way to test ideas.

Still in alpha stage.

$\endgroup$
2
$\begingroup$

I am not aware of a simple program to do what you ask. What comes to mind are either raytracers or finite element methods (FEM).

For a list of raytracing software: http://en.wikipedia.org/wiki/List_of_ray_tracing_software

I am not aware of any free FEM software but for an overview of the principle go here: http://en.wikipedia.org/wiki/Finite_element

Edit: I didn't read carefully. You wanted geometrical optics. I was thinking of ray/wave optics.

$\endgroup$
  • $\begingroup$ What's the difference between ray optics and geometrical optics? $\endgroup$ – student Jun 7 '12 at 10:42
  • $\begingroup$ Geometrical optics is simpler in terms of descrbing the way a light beam travels. It completely ignores such effects as diffraction or interference. Ray or wave optics handles just that ... $\endgroup$ – BandGap Jun 14 '12 at 15:42
  • 2
    $\begingroup$ @BandGap: Your last comment is actually wrong. Geometrical optics is the same as ray optics (en.wikipedia.org/wiki/Geometrical_optics). It is called so because simple geometry formulae are used to calculate the path of each ray through an optical system. Diffraction effects indeed cannot be treated this way. A wave optics method (there are many of them) would not use the paradigm of a ray at all. $\endgroup$ – texnic Apr 26 '13 at 12:26
  • $\begingroup$ I thought of raytracers when I wrote my comment since they can calculate (some) aspects of wave optics but clearly you are right. $\endgroup$ – BandGap Apr 26 '13 at 14:07
1
$\begingroup$

Gradually, after one got familiar and professional in optics, free softwares are not that useful.

Besides Zemax, CODE V and OSLO are three industrial and very powerful geometrical-optics design softwares.

$\endgroup$
0
$\begingroup$

One of the software for simulating complex lens sets and other elements is Optical Table Simulator. It requires Silverlight though:

It's in short a 2D ray tracing engine, but it simulate many types of optical phenomena like refractions or absorption though different media types. It has defined most of CDGM and Shott glass types as well as other materials including metals, cristals and so on.

Cheers, Radek

$\endgroup$
0
$\begingroup$

http://www.onshape.com with Ray Tracer custom feature.

I had some success simulating geometrical light propagation via a set of lenses and prisms using www.Onshape.com, which is free, online 3D modelling environment (see attached screenshot). I used a custom feature, named Ray Tracer, created by one of OnShape users. You can define refractive indices of optical components, trace refracted and reflected rays by specifying their origin and initial direction and account for total internal reflection. Generally speaking a CAD program is a natural choice for geometrical ray tracing.enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.