Keywords

1 Introduction

The propagation of light in optical fiber is described by the nonlinear Schrödinger equation, where the nonlinearity arises due to the Kerr effect. In particular, this is the task of delivering an ultrashort optical pulse of high power [1,2,3,4]. Nonlinearity is also a problem when transmitting information over long distances with the currently used modulation formats in fiber optic communication. Directly proportional to a signal intensity increase, its nonlinear distortions due to crosstalk also increase, which limits the possibility of restoring the transmitted information at the receiver input [5,6,7]. Researchers are faced with the task of compensating for nonlinear effects in order to provide a high speed of information transfer. So far, two main approaches to solving this problem have been proposed: the first consists in mitigating nonlinear effects by special methods [8], the second in special coding of information in the eigenmodes of the nonlinear channel [9], which is based on the integration of the nonlinear Schrödinger equation.

The propagation of light, taking into account its polarization dynamics, is described by the Manakov equations, which are valid for modern fiber-optic communication lines under certain conditions. These equations are a special case of the Schrödinger equations [10,11,12].

The most common method for solving the system of nonlinear Schrödinger equations is the method of splitting into physical processes [13,14,15], which consists of a mixed numerical-analytical approach and is a numerical integration of the equation system. The method of splitting into physical processes is based on the assumption that when the optical field propagates over a short length, dispersive and nonlinear effects can act independently [15]. The method consists in the fact that with a small integration step, it is assumed that the propagation of a perturbation can be divided into two steps, wherein the first step only non-linear effects act, and in the second—only dispersion effects. The solution at each step of integration is found as the result of the inverse Fourier transform of the product of the analytical solution for the linear term multiplied by the Fourier transform of the nonlinear part, where the Fourier transform is calculated in the time domain in either case [16].

Thus, the splitting method into physical processes from the point of view at the numerical methods and finite-difference schemes can be characterized as a method having the first order of accuracy in the integration step and using data of the previous integration step to calculate the values at the current integration step. The latter gives grounds to classify the splitting method according to physical processes as an explicit finite-difference method with all its inherent shortcomings, such as the conditional stability of a method. The computational complexity of the splitting method into physical processes is determined mainly by the computational complexity of the algorithms of direct and inverse Fourier transforms, which must be carried out at each step of integration.

Replacing the splitting method into physical processes by the method of direct numerical integration using an implicit finite-difference scheme allows eliminating several shortcomings of the splitting method. As the two most important disadvantages, the following should be noted. Firstly, it is an ability to ensure the absolute stability of the integration method through the use of the implicit finite-difference scheme. Secondly, this is a reduction in the computational complexity of the method due to the replacement at each step of the integration of two (direct and inverse) Fourier transforms by solving a system of linear equations by the sweep method. The remaining, no less important, but less obvious benefits of the proposed method of direct numerical integration are presented in the conclusion to the chapter.

2 Formulation of the Problem

A model of a fiber optic channel with distributed nonlinearity and linear distortions due to chromatic dispersion can be represented using the Manakov system of nonlinear equations [10, 17,18,19]:

$$\begin{aligned} & \left\{ \begin{aligned} \frac{{\partial E_{1} }}{\partial \xi } = - i \cdot \frac{{\beta_{2} }}{2} \cdot \frac{{\partial^{2} E_{1} }}{{\partial \tau^{2} }} + i\gamma \cdot \frac{8}{9} \cdot \left( {\left| {E_{1} } \right|^{2} + \left| {E_{2} } \right|^{2} } \right) \cdot E_{1} + \frac{\alpha }{2} \cdot E_{1} \hfill \\ \frac{{\partial E_{2} }}{\partial \xi } = - i \cdot \frac{{\beta_{2} }}{2} \cdot \frac{{\partial^{2} E_{2} }}{{\partial \tau^{2} }} + i\gamma \cdot \frac{8}{9} \cdot \left( {\left| {E_{1} } \right|^{2} + \left| {E_{2} } \right|^{2} } \right) \cdot E_{2} + \frac{\alpha }{2} \cdot E_{2} \hfill \\ \end{aligned} \right. \\ & E_{1} = E_{1} (\xi ,\tau ),\;\;E_{2} = E_{2} (\xi ,\tau ) \\ \end{aligned}$$
(1)

where ξ—a spatial coordinate along a central axis of the optical fiber, τ—time, E1 and E2—polarizations, each of which is a complex function, i—the imaginary unit, α, β2, γ—given process constants. Under given boundary conditions in the form:

$$\begin{aligned} & E_{1} (L,\tau ) = E_{01} (\tau ),\;\;E_{1} (\xi ,0) = E_{1} (\xi ,{\rm T}_{0} ) = 0, \\ & E_{2} (L,\tau ) = E_{02} (\tau ),\;\;E_{2} (\xi ,0) = E_{2} (\xi ,{\rm T}_{0} ) = 0. \\ \end{aligned}$$
(2)

where L—the length of an optical fiber cable, Τ0—the propagation time. The boundary conditions at the end of L are specified as functions E01(τ) and E02(τ), specified in discrete-time samples as values of functions E01n) and E02n), with n = τ0 + Δτn, Δτ = T0/N, n = 0, N.

The task is to find a solution for backscattering, [5] in the form of dependencies:

$$E_{1} (0,\uptau)\;\;u\;\;E_{2} (0,\uptau),$$
(3)

which can also be determined at discrete points in time.

3 Equation System

To change from the formulation of the problem (1) in dimensional quantities to dimensionless quantities, the variables were changed:

$$x = \frac{{E_{1} }}{\sqrt P },\;y = \frac{{E_{2} }}{\sqrt P },\;t = \frac{\tau }{{T_{0} }},\;z = - \frac{\xi }{L},\;P = \frac{{\left| {\beta_{2} } \right|}}{{\frac{8}{9}\gamma T_{0}^{2} }},\;L = \frac{{2T_{0}^{2} }}{{\left| {\beta_{2} } \right|}}\;.$$
(4)

where L and T02 are related by L = 2T02/|β2|.

The system of equations in dimensionless quantities will be written as (5):

$$\left\{ \begin{aligned} i\frac{\partial x}{\partial z} = \frac{{\partial^{2} x}}{{\partial t^{2} }} + 2\varPhi (x,y)x \hfill \\ i\frac{\partial y}{\partial z} = \frac{{\partial^{2} y}}{{\partial t^{2} }} + 2\varPhi (x,y)y \hfill \\ \end{aligned} \right.,$$
(5)

where the nonlinear term is written in the form of the product of the desired function to the nonlinear part, for which the notation is introduced (6):

$$\varPhi (x,y) = i\alpha + \left| x \right|^{2} + \left| y \right|^{2} .$$
(6)

The boundary conditions, in this case, will take the form:

$$\begin{aligned} x( - 1,\;t) = x0(t),\;\;\;x(z,\;0) = x(z,\;1) = 0,\; \hfill \\ y( - 1,\;t) = y0(t),\;\;\;y(z,\;0) = y(z,\;1) = 0\;. \hfill \\ \end{aligned}$$
(7)

The formulation of the problem in terms of the initial conditions is initially given on a discrete set of points, it is logical and the solution would be to look numerically, writing the initial relations in a finite-difference form.

4 Difference Scheme

The classical implicit difference scheme Crank-Nicolson (Fig. 1) was used to write Eq. (5) in the finite-difference form. The choice of the difference scheme is due to the fact that it is implicit, which makes it absolutely stable. Another advantage of the Crank-Nicolson scheme is that when integrating the equations of mathematical physics with the first derivative with respect to one and the second derivative with respect to another variable, it leads to the need to solve a system of linear equations with three diagonal matrices at each integration step, which is performed by a simple tridiagonal matrix algorithm [6].

Fig. 1
figure 1

The finite-difference scheme used to solve the system of equations: the rhombus in the figure indicates the point for which the equality of the system of equations is written; circles—nodes of a finite-difference scheme

In the Crank-Nicolson scheme, the coordinate grid is used in space and time, in the scheme in Fig. 1, the variable n is used to designate the layers in time and the variable k in space. The parameters on the k + 1 layer of the coordinate grid are considered known, at the same time, the known values should be the initial and boundary values for k = K (z = −1), n = 0 (t = 0), n = N (t = 1). In Fig. 1, the known values are indicated by gray circles, the values that need to be determined are the unfilled circles.

For the system of Eqs. (5), the integration scheme, written in a completely implicit form, not only does not lead to the three-diagonal system of linear equations but does not even lead to a linear system of equations. Let us write the system of Eq. (5) in the finite-difference form, using the six-point Crank-Nicolson scheme, having entered two parameters σ and θ, changing in the range [0, 1], the defining position of a shift for writing the finite-difference relations between the two (known and unknown) layers of integration.

The parameter σ is responsible for the implicit record of the linear part of Eqs. (5), and the parameter θ is separately allocated for the implicit record of a nonlinear multiplier Φ(xy). The first derivative in space is written by first-order precision relations for a node (k + 1/2, n). The first derivative with respect to the variable z for the node (k + 1/2, n) is approximated by the central difference, which has a second approximation order.

$$\left\{ {\begin{array}{*{20}l} {\frac{{i \cdot \left( {x_{{k + 1}}^{n} - x_{k}^{n} } \right)}}{{\Delta z}} - \frac{{\sigma \cdot \left( {x_{k}^{{n - 1}} - 2x_{k}^{n} + x_{k}^{{n + 1}} } \right) + (1 - \sigma ) \cdot \left( {x_{{k + 1}}^{{n - 1}} - 2x_{{k + 1}}^{n} + x_{{k + 1}}^{{n + 1}} } \right)}}{{\Delta t^{2} }}} \hfill \\ { = 2 \cdot \left( {\theta \Phi _{k}^{n} + (1 - \theta )\Phi _{{k + 1}}^{n} } \right) \cdot \left( {\sigma x_{k}^{n} + (1 - \sigma )x_{{k + 1}}^{n} } \right)} \hfill \\ {\frac{{i \cdot \left( {y_{{k + 1}}^{n} - y_{k}^{n} } \right)}}{{\Delta z}} - \frac{{\sigma \cdot \left( {y_{k}^{{n - 1}} - 2y_{k}^{n} + y_{k}^{{n + 1}} } \right) + (1 - \sigma ) \cdot \left( {y_{{k + 1}}^{{n - 1}} - 2y_{{k + 1}}^{n} + y_{{k + 1}}^{{n + 1}} } \right)}}{{\Delta t^{2} }}} \hfill \\ { = 2 \cdot \left( {\theta \Phi _{k}^{n} + (1 - \theta )\Phi _{{k + 1}}^{n} } \right) \cdot \left( {\sigma y_{k}^{n} + (1 - \sigma )y_{{k + 1}}^{n} } \right)} \hfill \\ \end{array} } \right.$$
(8)

To record the finite-difference relations of the second time derivative on each spatial layer, the first-order accuracy relations are used, which are written in the grid nodes as (k, n) and (k + 1, n). By setting the σ (8) parameter to a value of 1/2, the second time derivative and the linear multiplier on the right-hand side of the nonlinear term can be agreed, also for the node (k + 1/2, n). The combined explicitly-implicit difference Crank-Nicolson integration scheme (8) at each node of the finite-difference grid can be rewritten as (9), for the tridiagonal matrix algorithm:

$$\begin{array}{*{20}c} \begin{aligned} a_{n} \cdot x_{k}^{n - 1} + b_{n} \cdot x_{k}^{n} + c_{n} \cdot x_{k}^{n + 1} = d_{n}^{x} , \hfill \\ a_{n} \cdot y_{k}^{n - 1} + b_{n} \cdot y_{k}^{n} + c_{n} \cdot y_{k}^{n + 1} = d_{n}^{y} , \hfill \\ \end{aligned} & {k = \overline{1,K} ,\;\;n = \overline{1,N} } \\ \end{array} .$$
(9)

where:

$$\begin{aligned} & a_{n} = - \sigma , \\ & b_{n} = 2 \cdot \sigma - \frac{{i \cdot \Delta t^{2} }}{{\Delta z}} - 2 \cdot \sigma \cdot (\theta \cdot \Phi _{k}^{n} + (1 - \theta ) \cdot \Phi _{{k + 1}}^{n} ), \\ & c_{n} = - \sigma , \\ & d_{n}^{x} = (1 - \sigma )\left( {x_{{k + 1}}^{{n - 1}} - 2x_{{k + 1}}^{n} + x_{{k + 1}}^{{n + 1}} } \right) - \frac{{i\Delta t^{2} }}{{\Delta z}}x_{{k + 1}}^{n} \\ & \quad + (1 - \sigma )\left( {\theta \Phi _{k}^{n} + (1 - \theta )\Phi _{{k + 1}}^{n} } \right)x_{{k + 1}}^{n} , \\ & d_{n}^{y} = (1 - \sigma )\left( {y_{{k + 1}}^{{n - 1}} - 2y_{{k + 1}}^{n} + y_{{k + 1}}^{{n + 1}} } \right) - \frac{{i\Delta t^{2} }}{{\Delta z}}y_{{k + 1}}^{n} \\ & \quad + (1 - \sigma )\left( {\theta \Phi _{k}^{n} + (1 - \theta )\Phi _{{k + 1}}^{n} } \right)y_{{k + 1}}^{n} \\ \end{aligned}$$
(10)

In order to match the recording of the nonlinear multiplier in (8) for the same node of the difference grid (k + 1/2, n), it is also necessary to give the parameter θ in (8) the value equal to 1/2, which leads to the fact that system of Eq. (9) with respect to unknown quantities becomes nonlinear. To avoid such a problem helps the choice of the parameter θ equal to zero. The simultaneous choice of parameters σ = 1/2 and θ = 0 provides practical stability of the finite-difference scheme with the simultaneous possibility of reducing the system of equations at each integration step to a system of linear equations solved by the tridiagonal matrix algorithm [6].

The final system of equations takes the form (9) with the values of the tridiagonal matrix coefficients in the form (11):

$$\begin{aligned} & a_{n} = - \sigma ,\;\;b_{n} = 2 \cdot \sigma - \frac{{i \cdot \Delta t^{2} }}{\Delta z} - 2 \cdot \sigma \cdot \varPhi_{k + 1}^{n} ,\;\;c_{n} = - \sigma , \hfill \\ & d_{n}^{x} = (1 - \sigma )\left( {x_{k + 1}^{n - 1} - 2x_{k + 1}^{n} + x_{k + 1}^{n + 1} } \right) - \frac{{i\Delta t^{2} }}{\Delta z} \cdot x_{k + 1}^{n} + (1 - \sigma ) \cdot \varPhi_{k + 1}^{n} \cdot x_{k + 1}^{n} , \hfill \\ & d_{n}^{y} = (1 - \sigma )\left( {y_{k + 1}^{n - 1} - 2y_{k + 1}^{n} + y_{k + 1}^{n + 1} } \right) - \frac{{i\Delta t^{2} }}{\Delta z} \cdot y_{k + 1}^{n} + (1 - \sigma ) \cdot \varPhi_{k + 1}^{n} \cdot y_{k + 1}^{n} \hfill \\ \end{aligned}$$
(11)

For the coefficients at the edges, it is necessary to take into account the boundary conditions (7), and correct the coefficients b, which in general terms can be written as:

$$\begin{aligned} db_{1}^{x} = d_{1}^{x} - a_{1} \cdot x_{k}^{0} ,\;\;db_{N - 1}^{x} = d_{N - 1}^{x} - c_{N - 1} \cdot x_{k}^{N} , \hfill \\ db_{1}^{y} = d_{1}^{y} - a_{1} \cdot y_{k}^{0} ,\;\;db_{N - 1}^{y} = d_{N - 1}^{y} - c_{N - 1} \cdot y_{k}^{N} . \hfill \\ \end{aligned}$$
(12)

For (9) and (11), the integration is carried out along the spatial coordinate, and the system of equations is solved on each spatial layer.

Thus, the obtained difference scheme is a generalization of a special case of the Crank-Nicolson difference scheme, in which all linear terms of the equations are written according to an implicit finite-difference scheme, and the nonlinear term is taken from the previous computational layer. The integration is carried out in layers, from k + 1 to the k-th layer along the z coordinate.

5 Initial and Boundary Conditions

The initial conditions for solving the system of Eqs. (9) with (11), (12) are the given values of the x and y arrays at k = K (z = –1) for all values of n = 1, N. In terms of the problem statement, the initial conditions (given values of the distribution of x and y as a function of time at the remote end of the optical fiber at z = 1) determine the shape of the optical signal received at the remote end [20]. Let’s set, for example, at the remote end of reception of the ideal signal in the form of 16QAM with switching the information signal for x and for y. The system of Eq. (1), even if written in the discrete-difference form (9) with (11), (12), requires that the desired functions x and y be continuous, along with their second derivatives with respect to time and first derivatives with respect to space. Switching the information signal to 16QAM implies a discontinuity of both the function itself and its derivative. The use of a knowingly discontinuous function as initial conditions for solving the system of equations formulated for continuous functions immediately leads to unreliable results. In order to avoid the problem of breaking the initial data curves, the smooth joining technique of two discontinuous curves was used. The classical function that is conveniently used for these purposes is the hyperbolic tangent [21]:

$$S(t,p,q) = \frac{{1 - \tanh \left( {q\left( {t - p} \right)} \right)}}{2},$$
(13)

where t—an abscissa, along which it is necessary to sew two functions on the interval [t0, tN]; p—a point from the interval [t0, tN], determines the location of the joining; q—parameter responsible for the degree of smoothness of the joining.

For single switching information signal, the initial distribution and for the x and y represents the joining four functions in the interval [t0, tN]. The first interval is x(t) = 0, y(t) = 0 for t0 < t ≤ tB; the second segment is x(t) = 16QAMi1(t), y(t) = 16QAMj1(t) for tB < t ≤ tM; the third segment is x(t) = 16QAMi2(t), y(t) = 16QAMj2(t)), y(t) = 16QAMj2(t) for tM < t ≤ tE; the fourth segment is x(t) = 0, y(t) = 0 for tE < t ≤ tN. The initial and final parts specified by zero values of x and y are determined by the requirements of the boundary conditions (7).

The initial distribution is given by discrete samples:

$$\begin{aligned} x_{n} & = A_{{\max }} e^{{ - j\omega t_{n} }} \\ & \quad \times \left( {S(t_{n} ,p_{M} ,q_{M} )QAM_{{16}} (i_{B} ) + (1 - S(t_{n} ,p_{M} ,q_{M} ))QAM_{{16}} (i_{E} )} \right) \\ & \quad \times \left( {1 - S(t_{n} ,p_{B} ,q_{B} )} \right)S(t_{n} ,p_{E} ,q_{E} ) \\ n & = \overline{{1,N}} \\ \end{aligned}$$
(14)

In (14), the first multiplier forms the unmodulated carrier frequency, the second multiplier describes the switching at the pM point of the 16QAM signal from the value determined by the iB index to the value determined by the iE index, with the smoothing parameter qM. The third factor in (14) determines the switching of signals with zero boundary values at the points pB and pE with the corresponding smoothing parameters qB and qE.

Figure 2 shows the dependence of signal intensity x on time for its real part at the remote end of the fiber. The imaginary part of x, as well as the distribution for the real and imaginary parts of y, are not shown in Fig. 2, since the imaginary and real parts of the signal are shifted relative to each other by a quarter of the period, and the distribution for y is similar to the distribution for x.

Fig. 2
figure 2

The initial conditions for the real part x at the remote end of the optical fiber: the initial distribution and switching of the information signal from “0000” to “1001”

A fragment of the graph illustrating ensuring continuity when switching the 16QAM information signal is shown in the inset of Fig. 2. This shows that the smoothing technique provides both the continuity of the function itself and its derivative. In the places where switching from the information signal to the zero value, similar requirements of the continuity of the sought functions are provided together with their derivatives.

6 Ensuring the Necessary Accuracy of the Integration

Two layers along the spatial coordinate are the values of the sought functions on the k and k + 1 layers for all values of n = 1, N over which integration is performed at each computational moment. Despite the absolute stability of the implicit Crank-Nicolson scheme, it is necessary to be sure that during the transition from layer to layer there is no loss of calculation accuracy and accumulation of error, which can become significant with a sufficiently large number of integration steps along the spatial coordinate. In addition, it is necessary not to lose sight of the fact that the scheme proposed above does not use a purely implicit, but a mixed Crank-Nicolson scheme. There is an approach that helps to minimize the disadvantage that the nonlinear addend is used in the scheme in an explicit form.

The transition at each integration step from k to k + 1 layers in space is carried out according to the following algorithm. The first step of the algorithm is to calculate the values of the sought functions x and y on the k-th unknown layer, using the values for the implicit multiplier (6) with k + 1 of the calculated layer from the explicit scheme. Denote the calculated values of the functions on the k-th layer:

$$(x_{k}^{n} )_{i} \;\;{\text{and}}\;\;(y_{k}^{n} )_{i} \;\;{\text{for}}\;\;n = \overline{1,N} ,$$
(15)

where i—an iteration number taken after the first iteration step is a value equal to one.

Further, an iterative process is organized to find the desired functions x and y on the k-th unknown layer at the i + 1 iteration. In this case, the implicit multiplier (6) in the computational scheme is corrected each time as if its value on the k-th layer is already known. The value on the k-th layer itself is taken as the half-sum of the values on the k-th and k + 1 layers, but calculated at the previous iteration:

$$(\varPhi_{k}^{n} )_{i + 1} = \frac{{(\varPhi_{k}^{n} )_{i} + (\varPhi_{k + 1}^{n} )_{i} }}{2},\;\;{\text{for}}\;\;n = \overline{1,N}$$
(16)

The iteration process is carried out until the maximum difference between the values calculated on the i and i + 1 iterations is less than the predetermined error:

$$\hbox{max} \left( {\hbox{max} \left| {(x_{k}^{n} )_{i + 1} - (x_{k}^{n} )_{i} } \right|,\hbox{max} \left| {(y_{k}^{n} )_{i + 1} - (y_{k}^{n} )_{i} } \right|} \right) < \varepsilon ,\;\;{\text{for}}\;\;n = \overline{1,N}$$
(17)

The proposed iterative process is rapidly converging and requires 3–7 iterations, depending on the specified error value.

7 Integration with a Variable Step

Another factor that allows increasing the accuracy of calculations is the mechanism for automatic selection of the integration step. In this case, it is the automatic choice of the integration step by the spatial coordinate—Δz. The use of a variable integration step allows us to take into account the behavior of the solution and reduce the total number of steps while maintaining the required accuracy of the approximate solution. Thus, the amount of work and machine time can be reduced and the growth of computational error is slowed down [22].

The algorithm for automatic selection of the integration step is traditional, where two sets of values of the sought functions are compared in the norm—the calculated two integration steps with a step Δzj, and the calculated one integration step with a double step 2Δzj. In case the norm is lower than the specified error, the integration step is increased 1.1–1.3 times, and the current values are recorded. At the norm above the specified error, the integration step decreases by 0.7–0.9 times, and the integration steps are recalculated.

Combining integration with variable steps and an iterative process that levels the use of the explicit-implicit scheme gives quite good results.

8 Numerical Results

To implement the proposed numerical method, a computer program was written in the C++ programming language. Figure 3 shows screenshots of the working area of the program, at all time points at different distances from the remote end of the optical fiber. In the left part of the program working area, the dependencies of the sought functions x and y on time are displayed at different distances. On the upper right graph, the distribution of the perturbation of the function x (real—blue and imaginary—red parts) along with the fiber from the time at point 0.45 sr. units from the beginning of the fiber counted from the beginning of one. Service messages are displayed in the lower right part of the program, control buttons are located and calculation parameters are set.

Fig. 3
figure 3figure 3

The working screen of the numerical integration program of the equation system (5) for different values of the fiber length: a at the fiber end (initial distribution); and at a distance: b 50 × ∆z, c 674 × ∆z, d 881 × ∆z from the remote end. The task parameters are: ∆t = 10−4, ∆z = 2.5−7, N = 10,000, σ = 0.5

Despite the fact that the discussion of the results of calculations is beyond the scope of the objectives of this chapter, below are some analysis results of this work. First, there is a noticeable influence of nonlinear distortions, which consist of a blurring of wavefront and the distortion of the switching front of the information signal for 16QAM. Figure 3 shows a noticeable shift of the signal to the beginning of the time axis, with increasing distance from the far end of the optical fiber, which agrees well with the physical conditions for the propagation of optical disturbance in the fiber. The boundary conditions in the form of (2) or (7) determine that there was no disturbance in the entire fiber at the initial and final moments of time, in other words, there was a complete absence of a signal. However, the initial perturbation indicates that all perturbation is inside the fiber section. Therefore, the numerical calculation is possible only up to the moment when the signal was introduced into the optical fiber. Figure 3b) shows that with continued integration beyond the fiber section in which the perturbation is introduced, the perturbation is reflected from the beginning of time t = 0, which leads to results explained from a physical point of view.

Figure 4 shows the calculations for the initial conditions, describing a single Gauss of a similar pulse in time, given only for the real part of the function x. The initial values of the imaginary part of the function x and the real and imaginary parts of the function y are set equal to zero.

Fig. 4
figure 4

The working screen of the program of numerical integration of the equation system (5) for the single Gauss of the similar pulse: a at the end of the fiber (initial distribution), b at a distance of 312 × ∆z from the remote end of the fiber

The shape of the deformation signal of the similar Gaussian, the nature and form of the appearance of its imaginary part, corresponds to the results outlined in the works of other authors [7], which further indicates the correctness of the assumptions made, the chosen integration methods and the correctness of the results obtained.

9 Calculations for a Long Section of Optical Fiber

Distribution of the disturbance along the time axis from its current position to the beginning of the time reference point imposes a restriction on the possibility of calculations for extended sections of optical fiber. Combating this restriction directly leads to the need to dramatically increase the length of the arrays used to store information of the time interval containing all the disturbances from the beginning to the end while ensuring that there isn’t the disturbance in the entire fiber at the initial and final points in time.

However, there is an approach that can provide continuous integration for long sections of optical fiber. For this purpose, it is necessary to consider a time segment with a sliding integration window [23]. Figure 5 shows a diagram-explanation, which makes it possible to implement calculation algorithms for long sections of optical fiber without the need to increase the size of arrays.

Fig. 5
figure 5

Scheme explanation for the implementation of the calculation algorithms for long sections of optical fiber

The one-dimensional array that forms the sought functions on the k-th and k + 1 spatial layers contain discrete samples with the values of the sought functions along the time axis. The initial distribution of the disturbance at the remote end looks like a dependence shown in Fig. 5, bounded by a red frame (state A), and located in the array x from the first to the last (N) element. At the same time, with an increase in the distance traveled, the disturbances shift relative to the array indices and at some point, further integration will be difficult as the disturbance approaches the left border of the array—the blue frame in Fig. 5 (state B). As soon as such a moment has arrived, it is sufficient to shift the perturbation curve with respect to the array, returning it to state A. With such a re-indexing (displacement of the perturbation relative to the array indices), the values of the sought functions in the initial part of the array (in Fig. 5 indicated by a blue dot-and-dash line) will be undefined. However, this disadvantage is easily remedied by smoothly stitching a part of the values in the array region that falls into both states (A and B) with the zero function. The values on the right-hand side (falling into state B, but not falling into state A) may be considered unnecessary.

10 Conclusions

Finding an approximate solution to the Schrödinger equation system related to the modeling of optical communication lines based on multimode fibers can be carried out using the combined explicitly-implicit numerical integration scheme based on the Crank-Nicholson scheme with writing the nonlinear term in the finite-difference form, which was obtained in the previous integration step.

The direct numerical integration method according to the combined explicitly-implicit finite-difference scheme in comparison with the splitting method into physical processes has a number of advantages. Firstly, it is the ability to ensure the absolute stability of the integration method due to the implicit finite-difference scheme. Secondly, this is the reduction in the computational complexity of the method due to the replacement at each step of the integration of two (direct and inverse) Fourier transforms by solving the system of linear equations by the sweep method. Thirdly, the inclusion in the method of the refinement solution algorithm at each integration step, which makes it possible to level the lack of recording of the nonlinear term taken from the previous integration step. Fourth, the algorithm for automatic selection of the integration step provides a higher integration speed, which reduces the computational complexity of the method. Fifthly, the displacement algorithm allows one to calculate the propagation of disturbances for extended sections of fiber.

The results of test calculations and comparisons of the results of calculations with the data of other authors allow concluding that the development of this algorithm is expedient and promising in the future.