RP Photonics logo
RP Photonics
Modeling & Design Software
Technical consulting services on lasers, nonlinear optics, fiber optics etc.
Profit from the knowledge and experience of a top expert!
Powerful simulation and design software.
Make computer models in order to get a comprehensive understanding of your devices!
Success comes from understanding – be it in science or in industrial development.
The famous Encyclopedia of Laser Physics and Technology – available online for free!
The ideal place for finding suppliers for many photonics products.
Advertisers: Make sure to have your products displayed here!
powerful tools for efficient laser development and laser science
This page gives you an overview on our software products.
RP Fiber Calculator is a convenient tool for calculations on optical fibers.
RP Fiber Power is an extremely flexible tool for designing and optimizing fiber devices.
RP Resonator is a particularly flexible tool for laser resonator design.
RP ProPulse can simulate the pulse evolution e.g. in mode-locked lasers and sync-pumped OPOs.
RP Coating is a particularly flexible design tool for dielectric multilayer systems.
RP Q-switch can simulate the power evolution in Q-switched lasers.
Most of our software products support a powerful script language, which gives you an extraordinary degree of flexibility.
Here you learn about software license conditions, updates and upgrades, etc.
Competent technical support is a key quality associated with software from RP Photonics.
RP Photonics has distributors in various countries.
The RP Photonics Software News keep you updated on our developments and give the users additional interesting hints.
Here you can make inquiries e.g. concerning technical details, prices and quotations.
en | de

RP Coating – Advanced Software for
Designing Optical Multilayer Structures

Version History of RP Coating

The software has been subject to an extensive development program over the years, which greatly expanded its capabilities as well as the quality of the user interface.


This was the original version.


Version 2 introduced substantial improvements of the user interface.


Version 3 allows one to create custom forms, defined in scripts, i.e., in text form. This means that interactive forms can be made which are tailored to specific applications. The screen shot below is just an example of a custom form containing tabs and graphical controls.

example for a custom form

Below you see part of the code used for defining the custom form. Simple but flexible commands define which variables are edited, with what units they are displayed, what are their minimum and maximum allowed values, etc.

Custom form:
$font: "Arial", bold, size = 24
Bragg Mirror
$font: "Courier New", size = 11, space = 2.1
$def pwidth := 505
$box "Inputs", size = (pwidth, 0):
Material 1:             ##################
$input (combobox: "SiO2", "TiO2", "HfO2", "ZrO2") material1$
Material 2:             ##################
$input (combobox: "SiO2", "TiO2", "HfO2", "ZrO2") material2$
Bragg wavelength:       #############
$input l_Bragg_m:d6:"(n)m", min = 100e-9, max = 10e-6
Number of layer payers: #############
$input N_Bragg:f0, min = 0, max = 1000

You can make such forms yourself, or get them made through the technical support, and then enjoy very convenient handling for your everyday work. When given such a form, anyone can very easily get certain calculations done without dealing himself or herself with the underlying script code. And if additional features are required later on, just get the form expanded accordingly.


Version 4 introduced various powerful and very useful tools for developing scripts:

  • There are much improved script editors with highly convenient features such as syntax highlighting: recognized names of commands or functions and keywords are highlighted with different colors. Also, the software displays some things such as comments and string constants differently.
  • In order to easily recall the required parameters of the many supported functions, we have introduced so-called parameter help. If you just type a function name followed by “(” into an editor, you will get the parameter help displayed; you can also later on click on a function parameter to get it.
  • You can quickly call a syntax check of a script without executing it.
  • You can get a script automatically reformatted according to standard rules. That way, you get consistently formatted and thus nicely readable scripts, even when you have been somewhat sloppy when writing them.
  • With the new debugger you can execute scripts command by command and check the state of the system at any time. Just click the left of a line in order to create a breakpoint (shown in green, see the screen shot below). Similarly, you can debug expressions. This can be extremely helpful when developing sophisticated simulation scripts.

In the version history of RP Fiber Power (for V7) you find some screen shots for the same kinds of features as you get in RP Coating V4.