Matlab-based Nonlinear Schrödinger Equation Solver

Download this ZIP file . It contains the Matlab code for solving the generalized nonlinear Schrödinger equation given in Eq. (2.3.36) of Agrawal’s book on Nonlinear Fiber Optics (page 41 of the 6th edition published in 2019). For better accuracy, this code uses the new form of the Raman response function given in Eq. (2.3.40) of this book.

This matlab code solves the normalized version of the generalized nonlinear Schrödinger equation using the split-step Fourier method discussed in Section 2.4.1 of Agrawal’s book on Nonlinear Fiber Optics . Its input is specified in terms of the soliton number N and the distance in units of the dispersion length. The code can be used to for superdcontinuum generation inside optical fibers when short optical pulses are launched inside an optical fiber. As an example, the figure shows the temporal and spectral evolution over one dispersion length when a fifth-order soliton is launched into the fiber (pulse shape: sech(t/T0) with T0 = 50 fs).

Matlab Program Output showing pulse evolution over one dispersion length