We develop and optimize a leading nonlinear propagation code for optical pulses in waveguides.
Our model has built in support for:
- Conventional optical fibres
- Solid-core photonic crystal fibres
- Hollow-core optical fibres including:
- Capillary fibres
- Photonic-band-gap fibres and hollow-core photonic crystal fibres
- Anti-resonant guiding hollow core fibre
- Gain fibres (e.g. Yb doping)
- Arbitrary fibre geometries and properties, externally defined
We model the full modal dispersion, including resonance structure of fibres where relevant.
Any of these fibre structures can be tapered with arbitrary profiles of the axial variation of the guidance properties.
For gas filled fibres the gas pressure can be varied arbitrarily along the axial position, and gas mixtures are precisely modelled. This includes modelling of the full density equations of state for the gas mixtures at all temperatures and pressures.
The input light-field can include:
- Arbitrary mode content (i.e. transverse structure)
- Arbitrary polarization
- Quantum noise modelling for incoherent and noise seeded processes (i.e. modulational instability)
The nonlinear part of the model includes the following effects
- The nonlinear Kerr effect (four-wave mixing, self and cross phase modulation, self-focusing, modulational instability etc.), including the full field: this therefore includes third harmonic generation and the interactions between positive and negative frequencies.
- The Raman effect (either through response functions for complex materials such as glasses, or first-principles quantum models for molecular gases).
- Ionization and plasma effects, including all of the important ionization rate models, and a full vector description of the plasma phase modulation. Our model can describe arbitrary levels of ionization, as experienced by intense laser pulses, along with avalanche ionization, tunnel ionization and multiphoton ionization. Plasma build-up effects are also included.
- THz generation from the electron current.
Our code is a fully parallelized and optimized simulation software. It can run on large-scale compute clusters and on compute accelerators such as GPUs. At the output we obtain a full description of the spatio-temporal and spectral evolution along the fibre. After propagation there is a full suite of analysis tools to obtain:
- Spectral and temporal evolution
- Evolution of the time-frequency structure of the light-field
- Conversion efficiencies and brightness calculations
- Mutual spectral coherence
- Polarization state evolution and polarization extinction
- Beam diameter (self-focusing, spatial decoherence)
- Shot to shot noise analysis
- Chirp and temporal-spectral analysis (spectrograms etc.)
It is currently mostly C++, but we are slowly moving to Julia.