Software … leistungsfähige Tools für Ihre Forschung & Entwicklung!

RP Fiber Power: Simulations- und Design-Software für Faseroptik, Faserverstärker und Faserlaser

Versionsgeschichte von RP Fiber Power

Diese Software wurde im Laufe mehrerer Jahre sehr stark weiterentwickelt, wodurch ihre Fähigkeiten wie auch die Qualität der Benutzeroberfläche massiv ausgebaut wurden.

V1

Dies war die ursprüngliche Version. Sie konnte Berechnungen nur für Faserlaser und Faserverstärker mit konstanten Betriebsparametern (CW-Betrieb) durchführen und konnte nur mit Skripten gesteuert werden.


V2

Version 2 hat interaktive Formulare eingeführt. Zumindest für einfachere Simulationen kann man nun einfach die Eingabedaten in ein Formular eintragen. Beispielsweise sehen Sie unten das Formular für die Eingabe der Parameter eines Signals:

interactive form for describing optical channels in RP Fiber Power

Wichtig: Wenn Sie die Berechnungen ausführen lassen, erzeugt das Programm automatisch ein Skript basierend auf ihren Eingabedaten, um dann dieses Skript auszuführen. Sie können dann auch dieses Skript ansehen und erweitern, wenn Sie später mehr Flexibilität benötigen, als Formulare bieten können. Es ist ebenfalls möglich, zusätzlichen Skriptcode über die Formulare einfügen zu lassen, um beispielsweise spezielle zusätzliche Kurven in Diagrammen zeichnen zu lassen. Sie können also elegant die einfache Handhabung von Formularen mit der großen Flexibilität des Scripting verbinden.

Ebenso gibt es seit der V2 dynamische Simulationen. Dies bedeutet, dass Pump- und Signalleistungen sowie diverse andere Größen beliebige Zeitabhängigkeiten (z. B. definiert über mathematische Ausdrücke) haben können. Dies ist entscheidend z. B. für die Modellierung von gütegeschalteten Lasern und Pulsverstärkern.


V3

Seit Version 3 gibt es den mode solver, mit dem Sie die Fasermoden für ein gegebenes Brechungsindexprofil berechnen können. Es gibt unzählige Funktionen, um all die Eigenschaften der Moden abzurufen, einschließlich der Amplituden- und Intensitätsprofile, Propagationskonstanten, effektiven Modenradien und Modenflächen sowie der Dispersionseigenschaften. Die folgende bewegte Grafik wurde mit einem Skript erzeugt.

fiber modes

Falls wurden interaktive Formulare geschaffen, um Brechungsindexprofile zu definieren und diverse Arten von neuen Diagrammen bzgl. Fasermoden zu erzeugen.


V4

Seit Version 4 kann die Ausbreitung ultrakurzer Pulse simuliert werden – nicht nur in Fasern, sondern auch für diverse optische Komponenten wie optische Filter, Modulatoren und Pulskompressoren. Man kann einfach eine Funktion definieren, die beispielsweise einen Umlauf im Resonator eines modengekoppelten Lasers simuliert; diese Funktion enthält einfach die zugehörigen Funktionsaufrufe der Komponenten im Resonator.

Es ist nun also möglich, modengekoppelte Faserlaser (oder Bulk-Laser) wie auch Verstärker für ultrakurze Pulse zu untersuchen. Betrachten Sie beispielsweise unsere Fallstudien für einen modengekoppelten Faserlaser und ein CPA-Verstärkersystem.

Ein neues interaktives Fenster kann benutzt werden, um die erhaltenen Pulse zu inspizieren. Beispielsweise kann man damit untersuchen, wie sich ein Puls innerhalb einer langen Faser entwickelt, oder über viele Umläufe in einem Laser Resonator.

pulse display window

Die Skriptsprache stellt eine große Zahl von Funktionen zur Verfügung, mit denen man Pulse definieren, sie durch Komponenten schicken und viele ihrer Eigenschaften in der Zeit- und Frequenzdomäne erhalten kann. Durch die leistungsfähige Skriptsprache kann man selbst raffinierte Simulationsabläufe recht einfach implementieren.


V5

Version 5 Ermöglichte die numerische Simulation der Lichtausbreitung nicht nur in Fasern und anderen Wellenleitern, sondern auch in komplizierteren Komponenten wie beispielsweise Fasern mit mehreren Kernen und Faserkoppler, und natürlich auch im freien Raum. Beliebige Biegungen (auch mit variablem Biegeradius) können berücksichtigt werden.

Diese Erweiterungen erlauben einem, eine Vielzahl von Effekten zu untersuchen – beispielsweise Biegeverluste und die Verzerrung von Moden in gebogenen Fasern, Kopplungsphänomene in Faserkoppler an, modenabhängige Absorption in Doppelkernfasern, sowie Gain-Guiding- Effekte in Fasern und konventionellen Laserkristallen. Es ist auch möglich, Verstärkung durch laseraktive Ionen sowie Nichtlinearität von Fasern zu simulieren.

mode-dependent absorption in a double-clad fiber

V6

Version 6 erlaubt die Erzeugung von maßgeschneiderten Formularen, die in Skripten definiert werden. Dies bedeutet, dass interaktive Formulare nun speziell für bestimmte Anwendungen maßgeschneidert werden können. Unten sehen Sie ein Beispiel für ein solches Formular, welches mehrere Tabs und grafische Elemente enthält.

example for a custom form

Unten sehen Sie den Code, mit dem eines der Tab-Controls im Formular definiert wurde, welches mehrere Eingabefelder enthält. Einfache, aber sehr flexible Kommandos definieren, welche Variablenwerte hier eingegeben werden, mit welchen Einheiten sie dargestellt werden, was ihre minimalen und maximalen Werte sind, etc.

$tabcontrol, size = (620, 0)
$tab "Fiber details"
Core material:       ##########################
$input (combobox: "Yb-germanosilicate", "Yb-phosphosilicate") fiber$
Yb concentration:    ############  Core diameter: ############
$input N_Yb:d6:" / m^3", min = 0, max = 1e30
$input d_co:d6:"m", min = 0, max = 1e-3
Pump mode radius:    ############  Fiber length:  ############
$input w_p:d6:"m", min = 0, max = 1e-3
$input L_f:d6:"m", min = 0, max = 1000
Signal mode radius:  ############
$input w_s:d6:"m", min = 0, max = 1e-3
$
$tab "Operation parameters"
Pump power:          ############ at ##########  #  backward
$input P_p_in:d6:"W", min = 0, max = 10, bgcolor = (if P_p_in > 10 then rgb(1, 0.8, 0.8) else white)
$input l_p:d6:"(n)m"
$input (checkbox) bw_pump
Signal input power:  ############ at ##########
$input P_s_in:d6:"W", min = 0, max = 10
$input l_s:d6:"(n)m"
$tabcontrol end

Sie können solche Formulare selbst erstellen oder auch im Rahmen des technischen Supports erhalten, und dann in ihrer täglichen Arbeit die sehr praktische Handhabung genießen. Versorgt mit einem solchen Formular, kann jeder gewisse Berechnungen ganz einfach durchführen, ohne sich selbst mit dem zugrunde liegenden Skriptcode beschäftigen zu müssen. Und wenn man später zusätzliche Features benötigt, erweitert man das Formular eben entsprechend.


V7

Version 7 hat diverse sehr leistungsfähige und nützliche Tools für die Entwicklung von Skripten eingeführt:

Syntax Highlighting

Es gibt stark verbesserte Skripteditoren mit extrem nützlichen Features wie Syntax Highlighting: Erkannte Namen von Kommandos, Funktionen und Schlüsselwörtern werden mit unterschiedlichen Farben dargestellt. Ähnliches gilt für Dinge wie Kommentare und String-Konstanten.

syntax highlighting in script editors

Parameter Help

Um sich an die benötigten Parameter der vielen unterstützten Funktionen erinnern zu lassen, können Sie Parameter Help verwenden: Wenn Sie einfach den Namen einer Funktion gefolgt von “(” eintippen, wird die entsprechende Hilfe angezeigt; Sie können dies auch erhalten, wenn Sie später auf einen Funktionsparameter klicken:

parameter help in a script editor

Syntax-Check

Sie können eine schnelle Syntaxüberprüfung eines Skripts aufrufen, ohne dieses ausführen zu lassen. Das kann nützlich sein, z. B. um zu vermeiden, dass Sie ein lange Zeit brauchendes Skript ausführen, welches dann aber am Ende am einem Syntaxfehler scheitert.

Automatische Code-Formatierung

Sie können ein Skript auf der Grundlage von Standard-Regeln neu formatieren lassen. Auf diese Weise erhalten Sie eine konsistente Formatierung für besser lesbare Skripte, wenn Sie beim Schreiben damit etwas nachlässig gewesen sind.

Als ein Beispiel betrachten wir das folgende ursprüngliche Skript:

R_min:=150 mm { minimum curvature radius }
L_bend:=R_min*(90 deg)
show "L_bend: ",L_bend:d3:"m"
z1_bend:=(L_f-L_bend)/2
z2_bend:=(L_f+L_bend)/2
R(z):=
  if z<z1_bend
  then 0
  else if z<z2_bend
  then R_min
  else 0
theta(z):=
  if z<z1_bend
  then 0
  else if z<z2_bend
  then -(z-z1_bend)/R_min
  else -pi/2

Drücken sie einfach Ctrl-R im Editor, und das Skript wird so aussehen:

R_min := 150 mm { minimum curvature radius }
L_bend := R_min * (90 deg)
show "L_bend: ", L_bend:d3:"m"
z1_bend := (L_f - L_bend) / 2
z2_bend := (L_f + L_bend) / 2
R(z) :=
  if z < z1_bend then
    0
  else if z < z2_bend then
    R_min
  else
    0
theta(z) :=
  if z < z1_bend then
    0
  else if z < z2_bend then
    -(z - z1_bend) / R_min
  else
    -pi / 2

Debugger

Mit dem neuen Debugger können Sie Skripte Kommando für Kommando ausführen und den Zustands des Systems an jeder Stelle inspizieren. Klicken Sie einfach links von einer Skriptzeile, um einen Haltepunkt (Breakpoint) zu erstellen (der grün angezeigt wird, siehe unten). Ähnlich können Sie sogar mit Ausdrücken verfahren. Dies kann extrem nützlich sein, wenn Sie raffinierte Simulationsskripte entwickeln.

the debugger in RP Fiber Power

Siehe auch die RP Photonics Software News of 2017-07-13.


V8

Version 8, eingeführt in 2023, bietet eine weitere wichtige Verbesserung der Benutzeroberfläche:

Power Forms

RP Fiber Power enthält nun eine Reihe sehr ausgefeilter Formulare für Simulationsmodelle, mit denen selbst recht komplexe Simulationen sehr schnell und einfach erledigt werden können: Öffnen Sie das geeignete Formular, fügen Sie Ihre Daten ein, wählen und konfigurieren Sie die erwünschten Diagramme, und lassen Sie das ausführen!

example for a Power Form
Abbildung 1: Der Anfang einer der Power Forms. Einfach die Details eingeben und die Simulation starten!

Die Power Forms decken die folgenden Bereiche ab:

  • Faserverstärker
    • für mehrere Signale, die kontinuierlich (auch breitbandig) sein oder auch die Form von kurzen oder ultrakurzen Pulsen haben können
    • bis zu 5 Verstärkerstufen, mit wellenlängenabhängigen Verlusten dazwischen
    • flexible Optionen für Pumpquellen, z. B. mehrere breitbandige Pumpquellen in Vorwärts- und Rückwärtsrichtung
    • Faserdaten aus einer Datenbank mit vielen kommerziellen verfügbaren aktiven Fasern, und die Möglichkeit, einzelne Daten davon zu überschreiben
  • kontinuierlich arbeitender Faserlaser mit mehrstufigem Verstärker
  • Fasermoden

Die Formulare sind schön und praktisch gestaltet. Beispielsweise werden Teile ausgeblendet, die im gegebenen Zusammenhang nicht relevant sind. So können Sie schnell starten, aber auch komplexe Fälle bearbeiten.

Das Resultat ist eine einzigartige Kombination von Leistungsfähigkeit und einfacher Bedienung:

  • Es sind sehr leistungsfähige Simulationsmodelle – oft vollkommen ausreichend, um Ihre Simulationsbedürfnisse abzudecken, ohne noch irgendetwas programmieren zu müssen.
  • Sie sind sehr einfach anzuwenden: Einfach Ihre Daten eingeben, die Diagramme konfigurieren und ausführen! Im Zweifelsfall lesen Sie noch eine klare Dokumentation dazu.
  • Volle Flexibilität: Sie können die Formulare nach Belieben erweitern – oder uns das für Sie tun lassen. Sie werden also selbst in komplexen Situationen nicht an Grenzen stoßen.

Für weitere Details siehe die Seite über die Benutzeroberfläche von RP Fiber Power.

Wenn Sie noch Fragen haben oder ein Angebot benötigen: