Skip to content

QJohn2017/pyNLSE

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

pyNLSE

A simple generalized nonlinear Schrodinger equation (GNLSE) propagator in Python

This script consists of a function to integrate the generalized nonlinear Schrodinger equation (GNLSE) propagator written in Python. It's based on Eqs. (3.13), (3.16) and (3.17) of the book "Supercontinuum Generation in Optical Fibers" Edited by J. M. Dudley and J. R. Taylor (Cambridge 2010).

The integration is performed with the scipy.integrat.complex_ode function, which provides access to some fast and robust differential equation integrators, as discussed in the scipy.integrate.ode documentation.

The GNLSE propagates an optical input field (often a laser pulse) through a nonlinear material and takes into account dispersion and Chi-3 nonlinearity. It is a "one dimensional" calculation and doesn't capture things like self focusing and other geometric effects. It's most appropriate for analyzing light propagating through optical fibers or waveguides and other situations where the mode of the light doesn't change as it propagates.

Enjoy!

About

A simple generalized nonlinear Schrodinger equation (GNLSE) propagator in Python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%