GNLStools.py

A generalized nonlinear Schrödinger Python module implementing different models of input pulse quantum noise

authored by
Oliver Melchert, Ayhan Demircan
Abstract

We provide Python tools enabling numerical simulation and analysis of the propagation dynamics of ultrashort laser pulses in nonlinear waveguides. The modeling approach is based on the widely used generalized nonlinear Schrödinger equation for the pulse envelope. The presented software implements the effects of linear dispersion, pulse self-steepening, and the Raman effect. The focus lies on the implementation of input pulse shot noise, i.e. classical background fields that mimic quantum noise, which are often not thoroughly presented in the scientific literature. We discuss and implement commonly adopted quantum noise models based on pure spectral phase noise, as well as Gaussian noise. Coherence properties of the resulting spectra can be calculated. We demonstrate the functionality of the software by reproducing results for a supercontinuum generation process in a photonic crystal fiber, documented in the scientific literature. The presented Python tools are open-source and released under the MIT license in a publicly available software repository.

Organisation(s)
PhoenixD: Photonics, Optics, and Engineering - Innovation Across Disciplines
Institute of Quantum Optics
Type
Article
Journal
SoftwareX
Volume
20
ISSN
2352-7110
Publication date
12.2022
Publication status
Published
Peer reviewed
Yes
ASJC Scopus subject areas
Software, Computer Science Applications
Electronic version(s)
https://doi.org/10.1016/j.softx.2022.101232 (Access: Open)