Nonlinear Schrödinger equation (NSE) is a fundamental equation in nonlinear optics that describes the propagation of a pulse through a dispersive and nonlinear medium. Nonlinear Pulse Propagation Solver (NPP) is a program, written in C/C++, that solves NSE in an arbitrary waveguide. It has a user friendly interface, which allows a user to enter the pulse and waveguide parameters and execute simulations. The program can be invoked within MATLAB and any other scripting language. It can export...