In numerical analysis, the split-step (Fourier) method is a pseudo-spectral numerical method used to solve nonlinear partial differential equations like the nonlinear Schrödinger equation. The name arises for two reasons. First, the method relies on computing the solution in small steps, and treating the linear and the nonlinear steps separately (see below). Second, it is necessary to Fourier transform back and forth because the linear step is made in the frequency domain while the nonlinear step is made in the time domain.
An example of usage of this method is in the field of light pulse propagation in optical fibers, where the interaction of linear and nonlinear mechanisms makes it difficult to find general analytical solutions. However, the split-step method provides a numerical solution to the problem.
Description of the method
Consider, for example, the nonlinear Schrödinger equation
where
and a nonlinear part,
Both the linear and the nonlinear parts have analytical solutions, but the nonlinear Schrödinger equation containing both parts does not have a general analytical solution.
However, if only a 'small' step
using the analytical solution.
The dispersion step has an analytical solution in the frequency domain, so it is first necessary to Fourier transform
where
By taking the inverse Fourier transform of
The above shows how to use the method to propagate a solution forward in space; however, many physics applications, such as studying the evolution of a wave packet describing a particle, require one to propagate the solution forward in time rather than in space. The non-linear Schrödinger equation, when used to govern the time evolution of a wave function, takes the form
where
The formal solution to this equation is a complex exponential, so we have that
Since
The part of this equation involving
recover the associated wave number, compute the quantity
and use it to find the product of the complex exponentials involving
where
A variation on this method is the symmetrized split-step Fourier method, which takes half a time step using one operator, then takes a full-time step with only the other, and then takes a second half time step again with only the first. This method is an improvement upon the generic split-step Fourier method because its error is of order