RP ProPulse – Simulation der Ausbreitung ultrakurzer Pulse
Überblick | Anwendung | Modell | Benutzung | Demos | Versionen |
Das Konzept der Benutzung
Die Software kann mit praktischen Formularen bedient werden; man man trägt einfach diverse Eingabeparameter in die Felder ein, startet die Berechnung und erhält diverse Ausgaben:
- Numerische Werte können in Ausgabefeldern im Formular angezeigt werden und/oder in der “Output area” auf der rechten Seite.
- Außerdem kann man mehrere grafische Diagramme erzeugen, etwa für die Anzeige der Eigenschaften von Pulse in der Zeit- oder Frequenzdomäne, oder von Pulseigenschaften in Abhängigkeit von Geräte- oder Betriebsparametern.
Als Beispiel zeigen wir hier ein Formular für das Design passiv modengekoppelter Laser – auch mit soliton mode locking. In diversen Tabs kann man alle Input-Parameter eingeben und auswählen, welche Diagramme erzeugt werden sollen:
Wichtig: Diese Formulare und die zugrundeliegenden Berechnungen sind nicht fest codiert. Sie erhalten Skripte, d. h. Textdateien, die alle benötigten Berechnungen und die Erzeugung der grafischen Diagramme enthalten sowie (optional) ein maßgeschneidertes Formular. Sie können solche Skripte nun Ihren spezifischen Anforderungen anpassen. Die Benutzeroberfläche der Software enthält leistungsfähige Editoren und eine Menge zusätzlicher nützlicher Features, um solche Skripte zu ändern oder neue Skripte zu entwickeln.
Das Scripting gibt Ihnen eine enorme Flexibilität. Damit können Sie selbst ausgefeilte Modelle erstellen; einige Beispiele:
- Sie können eine Schleife programmieren, die immer weitere Umläufe eines Pulses in einem Laserresonator simuliert, bis sich die wesentlichen Eigenschaften des Pulses (z. B. Energie, Dauer und spektrale Breite) nicht mehr wesentlich ändern. Auf diese Weise bestimmen Sie automatisch den stationären Zustand des Lasers.
- Sie können die Pulsausbreitung unter dem Einfluss von Quantenrauschen simulieren und aus den erhaltenen Daten Rauschspektren berechnen.
- Sie können alle möglichen zusätzliche Diagramme erzeugen – nicht einfach nur aus einer vorgegebenen Liste von Diagrammen auswählen.
- Natürlich können Sie innerhalb eines Skripts und zwischen verschiedenen Skripten mit copy & paste arbeiten, das weitaus angenehmer ist, als viele Formulare durchzugehen und Werte dort erneut einzugeben.
Die Skriptsprache
RP ProPulse kann mit einer sehr leistungsfähigen Skriptsprache gesteuert werden. Innerhalb eines Skripts kann man die folgenden Dinge definieren:
- die physikalischen Details des modellierten Geräts (beispielsweise eines modengekoppelten Lasers), wenn gewünscht in voll parametrisierter Form
- die Eigenschaften des Startpulses – beispielsweise eines Solitons oder eines Gauß-Pulses mit gegebenen Parametern, oder als eine Funktion in der Zeit- oder Frequenzdomäne inklusive Phaseninformation
- einige Parameter zur Festlegung der numerischen Auflösung
- Code für auszuführende Berechnungen – beispielsweise, um eine gewisse Anzahl von Resonatorumläufen zu simulieren und dann die resultierenden Pulsparameter anzuzeigen
- Code für die Erzeugung von Diagrammen
Als Beispiel zeigen wir, wie ein einfacher aktiver modengekoppelter Laser definiert wird:
resonator: linear * Crystal: gain(l) = g(l) [P_sat_av = P_sat_g, KK = 0] * Modulator: mod(t) = t_mod(t) * OC: T_out = T_oc resonator end
Jedes optische Element (hier z. B. der Laserkristall) kann einen oder mehrere “Operatoren” haben, die auf den Puls wirken. Es gibt eine breite Auswahl solcher Operatoren, beispielsweise für Laserkristalle, für sättigbare Absorber, Bandpassfilter und optische Fasern.
Wenn Sie solche Skripte schreiben, müssen Sie nicht von Null beginnen – normalerweise beginnt man mit der Kopie einer der Demo-Dateien.
Natürlich können Sie jederzeit den kompetenten technischen Support anfordern, um schnell zu Lösungen zu gelangen.
Editoren für Skriptcode
Für das Editieren von Skriptcode bietet die Software leistungsfähige Editoren und zusätzliche Tools. Hier sehen Sie einen Editor:
Einige sehr nützliche Features dieser Editoren:
- Multilevel undo/redo: Sie können mehrere Änderungen im Text schrittweise rückgängig machen oder doch wieder anwenden.
- Syntax highlighting: erkannte Namen von Befehlen oder Funktionen, Schlüsselworte und Kommentare werden mit unterschiedlichen Farben angezeigt. Dies erleichtert sehr die Erkennung der Struktur.
- Parameter-Hilfe: Wenn Sie einen Funktionsnamen gefolgt von einer öffnenden Klammer eintippen, zeigt der Editor Infomationen über die benötigte Parameterliste an. Damit wird es wesentlich einfacher, hunderte von Funktionen zu nutzen.
- Syntaxprüfung: Sie können die Syntax eines Skripts schnell überprüfen lassen, ohne es auszuführen.
- Code snippets library: Sie können ganz einfach häufig benötigte Code-Teile in Ihr Skript einfügen (siehe das Bild unten). Dies ist wesentlich praktischer, als beispielsweise Code-Teile in der Dokumentation oder den Demo-Dateien zu suchen. Nutzer können auch eigenen Code in die Library einfügen.
Graphik-Fenster
Ein Skript kann Diagramme erzeugen, um Resultate zu visualisieren. Etliche Beispiele sehen Sie unten und bei unseren Demo-Fällen.
Die Grafik-Fenster haben etliche sehr nützliche Features:
- Messung von Positionen und Distanzen mit zwei Cursorn
- Abspeicherung der Grafik im PNG- oder GIF-Format
- Export numerischer Daten
- Kopieren der Grafik in die Windows-Zwischenablage
- Zurückholen der Grafik der letzten Berechnung, um Unterschiede deutlich zu sehen
- Blättern in mehrfachen Versionen einer Grafik
Beispiele für grafische Ausgaben
Die folgenden Grafiken wurden alle mit RP ProPulse erstellt und demonstrieren einige seiner Möglichkeiten.
Das erste Diagramm zeigt die zeitliche Entwicklung eines Solitons dritter Ordnung. Ein animiertes GIF-File wurde direkt mit RP ProPulse (ohne Benutzung zusätzlicher Software) erstellt.
Eine andere Art, diese Entwicklung zu illustrieren, benutzt das folgende Diagramm, in dem die Farbe an jedem Punkt, entsprechend einer bestimmten Zeit (horizontale Achse) und Distanz (vertikale Achse), aus der entsprechenden optischen Intensität berechnet wurde. Die Solitonenperiode ist 50.4 m, d. h. der angezeigte Bereich entspricht etwa zwei Solitonenperioden.
Auf analoge Weise zeigt das folgende Diagramm die spektrale Entwicklung.
RP ProPulse hat auch eine interaktive Anzeige für die zeitliche und spektrale Domäne. Das folgende Beispiel zeigt ein Soliton 3. Ordnung an einem Punkt in der Faser.
RP ProPulse kann ebenfalls Spektrogramme verschiedener Art anzeigen. Im folgenden Beispiel propagieren intensive gechirpte Pikosekundenpulse bei 1064 nm (282 THz) in einer Faser, und hierbei wird ein Superkontinuum erzeugt. Bei niedrigen Frequenzen, wo die Faserdispersion anomal ist, lassen sich mehrere Solitonen erkennen, die mit hochfrequenten Komponenten wechselwirken, welche die gleiche Gruppengeschwindigkeit besitzen. Hohe und niedrige Frequenzen sind gegenüber mittleren Frequenzen verzögert wegen der Dispersion der Faser. Die zeitlichen Ausläufer der ursprünglichen Pulse haben für die gegebene Faserlänge noch nicht stark gewechselwirkt, deswegen die schmale Struktur bei 282 THz.
Es gibt ebenfalls ein interaktives Formular (hier nicht gezeigt), um Spektrogramme und Wigner-Plots zu erzeugen. Sie können auf einfache Weise den Puls an verschiedenen Stellen im Resonator anwählen oder nach einer variablen Anzahl von Resonatorumläufen.
Umfassende Dokumentation
RP ProPulse ist mit einer detailliert ausgearbeiteten Dokumentation versehen, die Ihnen einen schnellen Start und eine effiziente Arbeit auch beim Erstellen raffinierter Modelle ermöglicht. Das Manual erklärt detailliert (auf über 50 Seiten) die Grundlagen des physikalischen Modells, der Benutzeroberfläche, die Skriptsprache, etc. Die Qualität dieser Dokumentation ist essenziell sowohl für Arbeiten in der Industrie als auch in der wissenschaftlichen Foschung: Sie wissen damit genau, welche Annahmen gemacht werden, was berechnet wird etc.
Technischer Support
Falls es noch irgendwelche Schwierigkeiten gibt, können diese mit dem technischen Support effizient angegangen werden. Wir stellen sicher, dass Ihre Probleme schnell gelöst werden.
Wenn Sie noch Fragen haben oder ein Angebot benötigen: