(a graphical user interface for Finesse)

Jan Harms

since 2002

What is Luxor?

Luxor is a graphical user interface (GUI) for the interferometer simulation Finesse. With Luxor you can create the interferometer models simply by putting, moving and connecting optical components as icons on a canvas. This replaces the usually required manual editing of the text file describing the interferometer (the Finesse input file). Luxor can also load hand-made Finesse input files and automatically generate a graphical representation of these. If you are new to Finesse, Luxor will make the first steps a lot easier.

Download This version supports the new elements m1, m2, bs1 and bs2. The old elements m* and bs* are not supported any longer. Substitute these commands by m1 or bs1 before loading an old kat file. Also, the alternative names ("light", "mirror", "diode", ...) can be read. A bug (only existing in 2.0) which disturbed window resizing and some component-text conversion bugs are removed. Most significantly, a component activity mode (key 'A' or 'a' on selected components) was implemented which allows to remove components from the optical system without actually deleting them in Luxor. The respective components are commented out in the ".kat" file. By consequence, components which are commented out in ".kat" files can be read by Luxor and are displayed as deactivated.


Luxor is a Java application which works with Java v1.5 or higher. The file java.exe must be executable from any directory. If the system contains more than one Java-installation, make sure that by typing "java" in any directory, the version 1.5 or higher is addressed.
If a wrong java version is addressed, then add the \bin directory of your Java 5.0 installation to the PATH variable of your system. Alternatively, adjust the following command to your system and type it each time after starting a console:





This example works if the directory "bin" contains the file "java.exe". Be sure that after installing Luxor you find the following files in the Luxor directory: Luxor.jar, Luxor.ini, Luxor.txt (and kat.ini depending on Windows system). The file Luxor.ini has to be adjusted according to the settings of the system. Instructions therefore are given in Luxor.ini and also in Luxor.txt. In most cases, a Luxor directory name which contains signs "_" leads to problems. Also, the Finesse directory and names of directories which store kat files should not contain this sign.

Starting Luxor under Windows

Some Windows systems recognise Luxor.jar to be a Java-executable. Then, a double-click on the file in the Windows Explorer is sufficient to start Luxor, provided that the standard Java version of the system is 1.5 or higher. If a double-click does not directly start Luxor, one has to apply the following command in the Luxor directory: "java -jar Luxor.jar". It is also possible to change the command which is executed when double-clicking on a ".jar" file (folder settings of the Windows-Explorer).
Alternatively, one may create a "Luxor.bat" file with a text editor, which contains all the necessary commands and which starts Luxor by a double-click on that file in the Windows Explorer. The following lines serve as an example for its content:

cd c:\Luxor\
java -jar Luxor.jar

Thus, the required preparations do not have to be repeated each time Luxor is used.

Starting Luxor under Linux

Luxor is started with the command "java -jar Luxor.jar" which has to be executed in the Luxor directory. Make sure that an appropriate Java version (1.5 or higher) is addressed. If not, follow the instructions given above.

Using older Luxor versions, one may encounter problems with the Luxor.ini file. If the initialisation does not work (e.g. Luxor does not find the Finesse executable), delete all lines except for the two commandlines, which have to be written in the order:
In addition, do not use a very old (?) gnuplot version.

Older versions (history) This version of Luxor is the first to support the complete set of commands of the latest Finesse version (0.99). Consequently, the text editor which allowed to define unsupported commands in previous versions does not exist anymore. Also, all known bugs of the previous Luxor version are removed. Comments assigned to components are shown as tooltip. The copy-paste handling is improved. A zoom function is added to the tool bar and SHIFT keys activate a grab mode which allows to drag the draw area. The program is based on Java 5. So, running Luxor 2.0 requires to download the new Java runtime environment (5.0, also known as 1.5.0). Signals can be defined graphically. Luxor ignores all actions while Finesse is running. Gaussians can be defined in two dimensions. The optional usage of the axis commands is supported now. A grid mode for the alignment of the elements can be activated. Minor bugs of the former property column are eliminated. The cavity and gauss properties can be set graphically. They are assigned to a certain element, so that one does not have to care about the names given to elements and nodes. The helpfile gives detailed information. The attributes of mirrors and beamsplitters can be set. Attribute commands are read and its values are treated as ordinary properties in the property column of Luxor. A plot-layout mask is added to the tools.