
RP Fiber Power – Simulation and Design Software
for Optical Fibers, Amplifiers and Fiber Lasers
| Start | Purpose | Model | Fiber Data | Interface | Demos | Licenses |
Control via Script Language or Input Form
RP Fiber Power can be controlled with a powerful script language, but also by simply entering the model parameters into interactive forms. The latter provides a convenient way for a quick start. The software automatically generates a script based on the input to the interactive form, executes the script, and displays the results. It is also possible to save the generated script and manually develop it further.

The input script (a plain text file), which can be edited in the software's own editor, can contain various parts:
- definition of the fiber length, doping profiles, mode fields, input powers, etc., all done by calling certain predefined functions
- details for the graphical output of results, usually in the form of function plots
- commands for the flexible input or output in text form, e.g. in CSV format, for exchanging data with other software (e.g. your favorite plotting software)
- if required, various mathematical calculations, e.g. for automatically calculating mode profiles from fiber parameters
You will soon appreciate the manifold advantages of the scripting approach:
- You can simply copy and paste parts of the provided demo files, or of your earlier script files, in order to reuse code.
- In complicated cases, RP Photonics can send you some lines of code.
- The scripting approach is extremely flexible, allowing you e.g. to systematically vary certain parameters, import and export data in various formats, set up new types of graphs, or mathematically process and input or output data.
- A script file perfectly documents your work. When you read it later on, you easily see what you have done. You do not need to remember e.g. what settings you have done in some interactive windows.
The script language is pretty easy to understand. As an example, the following code defines a pump and a signal channel for an amplifier model:
; Pump:
l_p:=980 nm { pump wavelength }
P_p_in:=500 mW { pump power }
w_p:=5 um { mode radius }
I_p(r):=exp(-2*(r/w_p)^2) { Gaussian pump intensity profile }
; Signal:
P_s_in:=1 mW { signal input }
l_s:=1550 nm { signal wavelength }
w_s:=6 um { mode radius }
I_s(r):=exp(-2*(r/w_s)^2) { Gaussian signal intensity profile }
; Channel definitions:
pump:=addinputchannel(P_p_in, l_p, 'I_p', 0, backward)
signal:=addinputchannel(P_s_in, l_s, 'I_s', 0, forward)
As another example, the following code defines a graph, display the optical powers and the upper-state population as a function of the longitudinal position in the fiber:
graph 1: x: 0, L_f "position in the fiber (m)", @x y: 0, 2 frame f: P(pump,x), color=red, width=3, "pump power (W)" f: P(signal,x), color=blue, width=3, "signal power (W)" f: n(x,2), style=dotted, "upper-state population"
It is easy to display in well formatted form additional quantities of interest, e.g. in the handy “Output window” or in graphical diagrams. As an example, we may display the single-pass signal gain and the Raman gain (for checking whether stimulated Raman scattering becomes strong):
show "Signal gain: ", sp_gain(signal_fw):f1:"dB"
g_R:=1e-13 { peak Raman gain coefficient of silica in m/W }
A_eff:=pi*w_s^2 { effective mode area }
show "Raman gain: ", 4.34*(g_R/A_eff)*int(P(signal_fw,z), z:=0 to L_f step dL):f1:"dB"
Even quite sophisticated things may be done with a few lines of script code.
Graphical Output
Your script can define one or many different types of graphs for visualizing the results of the calculations. Examples are shown on the pages for various example cases. Each diagram is shown in a separate window, which also allows you to measure positions using one or two cursors, save the graphics in GIF or PNG format, and to copy the graphics to the Windows clipboard. Below you see an example of such a graph window, with two cursors set to measure the reduction of pump power in a certain section of the fiber.

The following example is a color graph, showing the spatial and spectral distribution of ASE and a weak amplified signal at 1030 nm in an ytterbium-doped amplifier, which is pumped at 920 nm.

Such graphics show in the most direct way phenomena which would be easily overlooked when not using a physical model and appropriate software.
A number of standard diagrams can be made with the interactive forms, simply by filling out some form fields. However, you may make basically any kind of diagram with the powerful script language – you are by no means limited to the kinds of diagrams envisaged by the developer of this software.
Interactive Pulse Display Window
In addition, the interactive pulse display window allows one to inspect the details of ultrashort pulse propagation. Simply select a position the fiber (or alternatively browse through previously saved pulses), and then you can display a wide range of pulse properties in the time and frequency domain – even before the simulation has been completed.

With this extremely handy feature you can quickly analyze even complicated pulse shaping processes.
Comprehensive Documentation
RP Fiber Power comes with very well worked out documentation, which allows you to have a quick start and work efficiently even when doing sophisticated modeling:
- There is a manual in PDF format, explaining in detail (on about 40 pages) the principles of the physical model, the user interface, the script language, etc.
- The context-sensitive online help function is even more comprehensive. See the screen shot below to get an impression.

Technical Support
Any remaining problems can be addressed with the technical support. The commercial license includes 8 hours of technical support, the non-commercial version 4 hours. This is usually more than sufficient, even if you use the software for sophisticated tasks.
You may, for example, send some portions of script code via e-mail and receive corrected code for doing certain things. RP Photonics also has very handy software for remote support, where you can give Dr. Paschotta access to your screen via the Internet and watch how he fixes problems on your PC.
It is good to know that support is always given by Dr. Paschotta himself, who has developed the software, is a distinguished expert in that technical area, and feels personally responsible to make sure that his customers can successfully use the software.