1. Introduction
The non-linear Schrödinger (NLS) equation describes how the behavior of quantum states of a physical system changes in time and space. The NLS equation can be used to describe the propagation of optical pulses and waves in water and plasmas, among other things. Due to the presence of nonlinearity and the complex nature of the problem, it is still a challenge for researchers to determine the most suitable method. Many theoretical and numerical studies have been carried out to overcome this difficulty. The B-spline Galerkin method is quite advanced and has been used by researchers to solve other complex problems.
Dag [
1] presented the quadratic and cubic B-spline Galerkin finite element method for solving the Burger’s equation. This method was found to give satisfactory results for the Burger’s equation, particularly when continuity of the solutions was essential. Dag et al. [
2] also proposed a cubic B-splines collocation method for solving the one-dimensional Burger’s equation. The proposed scheme was easy to implement and did not require any inner iteration to deal with the nonlinear term of the Burger’s equation. Gorgulu et al. [
3] presented exponential B-splines Galerkin finite element method for the numerical solution of the advection-diffusion equation. In this study, a new algorithm was developed for the numerical solution of differential equations. This algorithm was obtained by utilizing exponential B-spline functions for the Galerkin finite element method. It was reported that the proposed method gave satisfactory results. The exponential B-splines Galerkin method for the numerical solution of the Burger’s equation was also applied by Gorgulu et al. [
4].
Saka et al. [
5] proposed a quartic B-splines Galerkin finite element method for solving the regularized long wave equation. The performance and accuracy of the method were observed. The method has a weakness because of its large number of matrix operations. The quartic B-spline method was found to be very useful for finding the numerical solutions of the differential equation when higher continuity of solutions occurs. Aksan [
6] presented the quadratic B-spline finite element method for finding the approximate solution of the nonlinear Burger’s equation. The high accuracy of the proposed method was thoroughly examined. Gardner et al. [
7] also applied a cubic B-spline finite element method for the numerical solution of the Burger’s equation. They noticed that the proposed finite element method gave more accurate results than other approaches.
Sheng et al. [
8] solved the NLS equation using a finite difference method based on quartic spline approximation and semidiscretization. The NLS equation was approximated using a finite element method by Zlotnik and Zlotnik [
9]. Ersoy et al. [
10] studied the numerical solution of the NLS equation using an exponential B-spline with collocation method. In that paper, they used the Crank Nicolson formulation for time integration and exponential cubic B-spline functions for space integration. Mokhtari et al. [
11] solved the NLS equation using delta-shaped basis functions. Saka [
12] solved the NLS using the collocation method with quintic B-spline functions. The generating function of the Hermite polynomial and the orthogonal Hermite function were introduced with ordinary Hermite polynomials by Cesarano et al. [
13]. The nature of Hermite polynomials is described in the Schrödinger Equation. Analytical solutions of the NLS equation for certain initial and boundary conditions were presented by Zakharov and Shabat [
14]. The numerical solution of the NLS equation was obtained by Lin [
15] using a septic spline function method with the collocation method. The Galerkin finite element method for the NLS equation was applied by Dag, with quadratic B-spline functions as the weight and trial functions over finite elements [
16]. The numerical solution of the NLS equation was also obtained by using the collocation method based on cubic B-spline by Gardner et al. [
17]. Hu [
18] presented a conservative two-grid finite element method for the numerical solution of the NLS equation and applied one Newton iteration for the linearization of the problem by using the coarse-grid solution as the initial guess. The Galerkin B-spline method is not often used for the numerical solution of the NLS equation. A review of some numerical methods for solving the NLS equation indicates that most methods use the collocation finite element method.
In this paper, we study the use of the Galerkin method with cubic B-spline function as the weight and trial functions over finite elements to solve the NLS equation. This paper is organized as follows. In
Section 2, we discussed the governing equation and fundamentals of Cubic B-spline Galerkin method. In
Section 3, the stability analysis of the numerical scheme is analyzed using the Von Neumann method. The numerical results and test problems are discussed in
Section 4. In the last section, the conclusions are given.
2. Governing Equation and Cubic B-Spline Galerkin Method
The equation in (1) is called a self-focusing NLS equation when
and a defocusing NLS equation when
. The subscripts
and
denote the spatial variable and time variable respectively;
is a positive real parameter, and
=
.
is a complex-valued function and defined over the whole real line. The initial condition is
and the boundary conditions are as follows:
The solution
is decomposed into its real and imaginary parts as
Substituting Equation (4) into Equation (1), the following coupled partial differential equations are obtained:
The solution domain
is divided equally into N finite elements by the nodes
such that
and
. In this paper, we choose cubic B-spline function as the weight and trial function. The cubic B-splines
are defined over the interval
as follows [
1]:
The approximate solution
to the analytical solution
for Equation (1) is written in terms of the cubic B-spline function as
where
The coefficients
and
are unknown time-dependent parameters that will be determined from the boundary and weighted residual conditions. Since each cubic B-spline covers 4 elements, each element
is covered by 4 splines. Using the local coordinate’s transformation
for
, the cubic B-spline function over the element
can be written as
Here, all other cubic B-spline functions are zero over the finite element
. The approximation function (Equation (8)) over the finite element can be defined in terms of the basis functions (Equation (9)) as
Using the B-splines basis defined in Equation (6) and the trial function stated in Equation (8), the nodal values of
,
and
at the knots
are determined in terms of time-dependent element parameters
and
as:
where the prime denotes differentiation with respect to
.
Applying the Galerkin approach to Equation (5) with the weight function
, the weak form of Equation (5) over the finite element
is
where
Using the weight function
as the cubic B-spline and substituting Equations (10) into (12) with some manipulations, the following differential equations are obtained:
Equation (14) can be written in matrix form as
where
and
are the element parameters and dot
represents differentiation with respect to
. The element matrix
,
and
are given by
where
. The element matrix (16) is calculated as
values are calculated by writing
and
in Equation (13). Using the values of
and
at the points
we obtain
Assembling the contributions from all of the elements, Equation (15) becomes
where
and
are global element parameters and the matrices
, which are global matrices with a generalized kth row, have the following form:
where
Discretization by the Crank-Nicolson method gives us
and
. Similarly, the time discretization by finite difference scheme gives us
and
. Substituting these discretizations into Equation (18), we obtain the following system:
Using the boundary conditions in Equation (21) yields a septadiagonal matrix. This system is solved by an appropriate method in MATLAB.
First, the initial vectors of parameters
and
are calculated to solve System (21) with the use of the initial condition using the relations
where all parameters
and
are determined.
and
require the following relations to be satisfied at points
:
The initial vectors
and
can be calculated using the initial and boundary conditions from the following matrix equations:
and
This system is solved using a suitable method in MATLAB. The approximate numerical solution of and is obtained from the and using Equation (21).
3. Stability Analysis
Stability analysis of the numerical scheme is carried out using the von Neumann method. The coupled system of Equation (5) is written as
where
and
To perform linear stability analysis, we further linearize the nonlinear term in Equation (24) by taking
Here
Therefore, the linearized form of Equation (24) is as follows:
The discretization of linear Equation (24) by the proposed scheme is given by
where
We use the following Fourier modes analysis for Scheme (25)
Here
is the amplification matrix. Equation (26) is substituted into Equation (25) to obtain the value of the amplification
G. After tedious algebra, we obtain the value of
G as follows
Matrix is a skew symmetric matrix, and therefore both the matrices and have the same eigen values. Thus, the maximum value of . Hence, the linearized Scheme (25) is unconditionally stable.