1. Introduction
Numerous physical phenomena exhibit the characteristics of memory retention and nonlocal effects [
1]. The formulation of mathematical frameworks to describe these phenomena often involves the utilization of fractional calculus [
2]. Various fractional derivative operators possess distinct definitions and inherent properties. The fractional differential equation may be applied to a wide range of fields such as anomalous diffusion [
3,
4,
5], viscoelasticity [
6], ferroelectric media [
7], fractional multi-pole and neuron modelling [
8], and fractional Lèvy motion [
9]. The review paper [
10] presents a comprehensive survey on real-world applications of fractional calculus in various fields, namely, physics; control, signal and image processing; mechanics and dynamic systems; biology; environmental science; material studies; economics; and engineering.
The solution to direct and inverse problems for differential equations with fractional derivatives typically incurs substantial computational costs due to their nonlocal characteristics. Different numerical techniques are available for solving approximate initial-boundary problems for fractional differential equations [
11,
12,
13,
14], for example, the finite difference method. An established approach to enhance computational efficiency involves the utilization of parallel computing [
15,
16,
17]. The problems for fractional differential equations may be solved using various original parallel algorithms [
18,
19].
Additionally, while forward problems are usually well developed, the inverse problems may present significant challenges to achieve the stable solutions [
20]. Here, by direct problems, we mean the classical initial boundary problem of finding the unknown function from equation and additional boundary and initial conditions. Inverse problems include identifying unknown coefficients of an equation or unknown boundary or initial conditions [
21]. In this case, a priori information is used to ensure the uniqueness of the solution. Such tasks are often incorrect. Regularization methods are used to achieve correctness. Hence, the development and implementation of parallel algorithms aimed at solving inverse problems emerging from fractional differential equations is of great importance.
In [
22], an algorithm for solving the inverse problem of identifying the space-dependent source is constructed on the base of regularized Landweber iterative method. An iterative algorithm on the basis of the conjugate gradient method is constructed in [
23]. For smoothing the values, the authors used the Savitzky–Golay filter.
In [
24], existence, uniqueness, and stability estimates are established for the inverse source problem of the recovery of a space-dependent source term for a generalized subdiffusion equation. The Tikhonov regularization method was proposed for solving the problem of reconstruction of a time-dependent source term in a time-fractional diffusion-wave equation [
25]. Convergence estimates and parameted choice rules for Tikhonov regularization for the inverse source problem for a time fractional diffusion equation were proposed in [
26].
In our previous works [
27,
28] parallel algorithms for solving direct and inverse problems for one-dimensional time-fractional diffusion equation are constructed on the basis of the parallel sweep method for solving the systems of linear algebraic equations with tridiagonal matrices.
The goal of our work is to construct and implement an efficient algorithm for solving the inverse problem of identifying the stationary source term for the two-dimensional time-fractional diffusion equation. To solve the inverse problem, we apply the regularized iterative conjugate gradient method. It requires solving the auxilliary direct subproblem at each iteration. By using the finite difference scheme, we reduce the direct problem to solving a series of systems of linear algebraic equations (SLAE) with block tridiagonal matrices. Note that solving these SLAEs for the two-dimensional fractional diffusion problem takes most of the computation time (up to 99% of the total computational time). We construct and establish the stability and correctness of the direct parallel matrix sweep method for solving such systems. We have developed a parallel algorithm and a parallel code for solving the inverse problem. The code is intended for multicore processors and is implemented using C++17 and OpenMP 4.0 extension. In order to evaluate the validity of developed numerical methods and the performance of parallel algorithms, numerical experiments are conducted. In the future, we plan to use our algorithm and code for solving applied problems.
Below is a breakdown of the article’s structure. In
Section 2, we formulate the direct and inverse problems and introduce the discretization and difference scheme for solving the direct initial-boundary value problem. We demonstrate the block-tridiagonal structure of the coefficient matrix of the SLAE. In
Section 3, we describe the direct methods for solving SLAEs with the block-tridiagonal matrix. We establish the stability and correctness of the parallel matrix sweep algorithm. In
Section 4, we describe the conjugate gradient algorithm for solving the inverse problem.
Section 5 describes the development of the parallel code that implements the numerical algorithms described above.
Section 6 presents the results of the performed numerical experiments. In
Section 7, we discuss these results.
Section 8 concludes our work.
2. Problem
2.1. Statement of the Problem
Consider the basis time-fractional elliptic partial differential equation in the following form:
Here,
and
is an elliptic operator
The boundary condition is
The initial condition is
where
is the given functions.
For simplicity, we have formulated our fractional diffusion equation with homogeneous Dirichlet boundary conditions. Note that the problem with inhomogeneous boundary conditions may be reduced to a problem with homogeneous conditions. To do this, we need to represent function U as the sum of a some function that satisfies the inhomogeneous boundary conditions (for example, found by solving the Dirichlet problem for the Laplace’s equation) plus a remainder function V that will satisfy the homogeneous conditions . The algorithms and approaches presented below may be utilized for more general formulations with the Neumann or mixed boundary conditions.
For this study, we consider the Caputo fractional derivative with order
in the form [
29]
with
,
.
Assuming that the solution
exists and satisfies the Dirichlet boundary conditions, for the case of
(
) we can consider the following formula for the Caputo fractional partial derivative:
The direct initial boundary problem consists in finding the unknown function
when all other components of Equation (
1) are known.
In the present work, we study the inverse problem of restoring the space-dependent right-hand part
. Thus, the problem consists in finding the pair of unknown functions
. Additional information for the inverse problem is given in the form of final overdetermination
Conditions for the uniqueness of the solution of this inverse problem for a general multi-dimensional equation are formulated in [
30].
2.2. Discretization of Equation and Difference Scheme
In this paper, for simplicity, we will consider the case of and . For an arbitrary elliptic operator, the general structure of the coefficient matrix of the SLAE remains the same, and the methods and algorithms presented below will be applicable.
Equation (
1) will take the following form:
where
and
are the sought functions;
,
are the given functions; and
is the the order of the fractional derivative.
The problem is considered for the area and time interval .
To discretize Equation (
6), we construct the partitioning on the solution domain. On intervals
, we introduce the grid with
n and
N points. The steps are
and
. For the time interval
, we use the uniform grid of
points. The step is
. We denote the nodes as
, and
. The values of discretized functions
U and others are denoted as
.
In this work, the Grunwald–Letnikov formula [
2] is used for approximating the Caputo fractional derivative in Equation (
6)
The implicit two-step finite difference scheme is used for approximating Equation (
6). For the grid point
at time layer
, the difference equation has the form
2.3. Constructing the SLAE
Let us apply the following transformations:
where
The difference equation will take the form
Note that the values
and
,
at the boundaries are given. Then, for all inner points
,
,
, difference Equation (
10) constitutes an SLAE
where
A is the block-tridiagonal matrix of dimension
Blocks
of dimension
are defined as
The sought vector consists of values
collapsed in a row-major order
Right-hand vector is constructed similarly, taking into account the boundary points
To numerically solve the initial boundary problem, we need to solve system (
11) at each subsequent time level
.
3. Numerical Methods for Solving the SLAE
To solve the SLAEs with various matrix structures, different numerical methods may be used. In this work, for solving the block-tridiagonal SLAE (
11) we will use the block-elimination method [
31] and parallel matrix sweep method [
32].
3.1. Block-Elimination Method
Let us consider an SLAE with a block tridiagonal matrix in the following form:
where
are the sought vectors of the
n dimension;
are the given right-hand vectors of the
n dimension; and
are the square matrices of the
dimension.
The direct block elimination (or matrix sweep) method is intended for solving the SLAE with block tridiagonal matrix. The auxilliary coefficients
(matrices of
dimension) and
(vectors of
n dimension) are found by the reccurent formulae (the forward elimination phase)
Solution vectors
are found by formulae (the backward substitution phase)
Remark 1. The algorithms (13) and (14) are correct if matrices and are nonsingular for . The algorithm is stable
if for . The stability condition for this algorithm is the following.
Lemma 1. If matrices are nonsingular, matrices are non-null, and conditionsare satisfied where at least one of the inequalities is strict; then, the algorithms (13) and (14) are stable and correct. Remark 2. The coefficients are dependent on the previous ones . Thus, we cannot distribute these calculations to independent workers. Thus, the parallelization is limited to operations of matrix inversion and multiplication.
3.2. Parallel Matrix Sweep Method
To construct a direct parallel algorithm, let us split the interval into L subintervals of length M such as . Consider the unknown values as parameters.
Now, let us construct the reduced SLAE for
. To do this, consider the following problems for the interval
where
.
Theorem 1. If are solutions of auxilliary problem (16); are solutions of problem (17); are solutions of problem (18); and are solutions of the basic problem (12) for interval , then Proof. Consider system (
12) for the inner subinterval
:
This system contains the parameters and .
Let us rewrite (
20) in the form
In this system (
21),
and
have the following form:
Here, the line over the symbol denotes the vector column of corresponding matrix.
Taking into account the formulae (
22), SLAEs (
21) have the following form:
System (
23) is equivalent to the following one:
where
is the submatrix of the basic block tridiagonal matrix of system (
12) that corresponds to the interval
.
If matrix
is inversible, then
From this, it follows that
where
Let us rewrite
in a more detailed manner.
Taking into account (
23) and (
27), problems (
26) are equivalent to following:
Systems (
28) for intervals
are equivalent to problems (
16)–(
18).
Thus, the original solution (
25) on interval
has the form
□
Remark 3. Matrices and vector can be obtained by the block elimination methods (13) and (14). For arbitrary L block elimination formulae for intervals , have the following form. The forward phase for Equations (16)–(18) is as follows: The backward phase for Equations (16)–(18) is as follows: When we substitute expression (
19) for indices
into the basic system (
12), we will obtain a reduced SLAE for the parametric unknown values (vectors
). This system has a similar structure to (
12) but has a smaller size.
where
and
are matrices of dimension
.
Problem (
31) is solved by the block-elimination method (
13) and (
14) in the single-threaded mode or on a single node of a cluster. Auxilliary problems (
16)–(
18) are solved independently for each of the
L intervals. Thus, this workload can be distributed between
L threads or processes. After obtaining
, the rest of the unknown values are found by formula (
19). This work also can be performed independently for each of the
L intervals.
The parallel matrix sweep algorithm for solving system (
12) is presented in Listing 1.
Listing 1. Parallel matrix sweep algorithm for solving SLAE. |
- 1.
Find values from problems ( 16)–( 18) for inner points of each subinterval . Methods ( 29) and ( 30) are used to solve the subproblems independently on each of the subintervals. - 2.
Calculate the coefficients for reduced system ( 31). The coefficients may be calculated independently for each K, but to solve the resulting reduced system, we need to transfer these coefficients to a single process. This requires synchronization or gather-type communication. - 3.
Find values from the reduced system ( 31). Compared to the basic system ( 12), its dimension is much smaller. It is solved by the block elimination algorithms ( 13) and ( 14) in serial mode. The computed values must be transmitted to processors. This step requires synchronization or communication. - 4.
Use formula ( 19) to calculate the sought values . These computations may be performed independently for each subinterval K.
|
Thus, steps 1, 2, and 4 of this algorithm may be parallelized, while step 3 must be performed in serial mode.
To establish the stability (see Remark 1) of the parallel matrix sweep algorithm, let us prove the following theorems.
Theorem 2. If original system (12) satisfies the conditionthen reduced system (31) also satisfies this condition in the form Proof.
since
. □
Theorem 3. If basic system (12) satisfies the stability conditions of the matrix sweep method (Lemma 1), then these conditions are sufficient for the stability of the matrix sweep method for reduced system (31) for . Proof. Let us construct a proof by the mathematical induction method.
We will utilize the following statement [
31]. If square matrix
S satisfies
, then matrices
and
must exist.
Let
be the elimination coefficients for the matrix sweep method for system (
31).
1. Let us demonstrate that
therefore, there are
and
2. Assume
Let us demonstrate that
3. Let us demonstrate that
therefore, there are
Consider
since
□
4. Numerical Method for Solving the Inverse Problems
To solve the inverse problems (
1)–(
3) and (
5), we use the iterative conjugate gradient method [
23,
33]. Consider that additional information
may contain a random perturbation
. To overcome this, we will regularize the inverse problems using the Lavrentyev scheme [
34].
The resulting algorithm for solving the inverse problems is presented in Listing 2, where is the regularization parameter.
Listing 2. Regularized conjugate gradient algorithm for solving the inverse problems. |
Initialization:- 1.
Set as the iterative step. - 2.
Set the initial approximation , for example, . - 3.
Solve the initial boundary problems ( 1)–( 3) by substituting the right-hand part with ; obtain . - 4.
Calculate the initial residual and initial estimation , where is the regularization parameter.
Iterations:- 5.
Set . - 6.
Solve the initial boundary problems by substituting the right-hand part with ; obtain . - 7.
Calculate the coefficient . - 8.
Calculate the estimation and residual for next step . - 9.
Calculate the coefficient . - 10.
Calculate - 11.
Check the stopping rule , . If not met, go to step 5.
|
5. Parallel Implementation of Algorithms for Solving the Inverse Problem
The numerical solution to the problems related to the fractional differential equation is an expensive task that requires a lot of computing time.
The most time-consuming subroutine of the regularized conjugate gradient algorithm (see Listing 2) is solving the auxiliary initial boundary problem at each iteration. In turn, this procedure consists in forming and solving SLAEs (
11) at each subsequent time step.
5.1. Efficient Computation of the Right-Hand Parts
Forming SLAE requires the calculation of the right-hand parts using formula (
9). In our earlier work [
27], when solving one-dimensional problems, the fraction of time spent to calculate the right-hand part was up to 70% of the total time. To optimize this procedure, we implemented the logarithmic memory approach. It consists of using the non-uniform time grid when computing the approximation of the fractional derivative. The fine time step is used for the latest history part. For the more distant history, successively larger time steps are used. This approach allowed us to reduce the computing time for the one-dimensional case by up to 1.5 times.
This approach may also be utilized for the ctwo-dimensional problem. For solving system (
11), a modified variant of formula (
9) takes the form
where
is the stretching coefficient and
is the floor function (integer part). Note that approach has complexity
in contrast of
of the uniform time grid.
In the next section, we will explore the usefulness of this approach for the case of a two-dimensional problem.
5.2. Parallel Implementation of the SLAE Solver
To speed up SLAE solving, we implement the parallel matrix sweep Algorithm (see Listing 1). For comparison, we also implemented the serial block-elimination methods (
13) and (
14).
The parallel algorithm for solving the inverse problem of finding the source term of the time-fractional diffusion equation was implemented for the multicore processor using OpenMP technology [
35] and the Intel MKL library [
36]. The parallelization is performed as follows.
The workload of calculating the right-hand parts (
9) and (
32) is distributed to OpenMP threads utilizing to the same subinterval decomposition that is used for parallel matrix sweep algorithm.
The matrix operations and the inversion of the matrix blocks are performed with MKL routines (gemv, gemm, getrf, and getri).
In the parallel matrix sweep algorithm (Listing 1), steps 1, 2, and 4 are performed by the individual OpenMP threads on their corresponding subintervals. To perform step 3, thread synchronization is required. This is performed by the ‘#pragma omp barrier’ directive. Note that this synchronization requires additional time.
6. Numerical Experiments
In this section, we present the numerical experiments of solving the direct and inverse problems for the two-dimensional fractional diffusion equation. The experiments were performed using the developed code on the Intel i9-12900k CPU, which has 8 P-cores. The goal is to study the validity of the proposed numerical methods, as well as the efficiency of the parallel code.
6.1. Problem 1
Consider the two-dimensional equation
with initial and boundary conditions
and area
for order
Paper [
37] presents the exact solution for this equation
6.1.1. Experiment 1
Experiment 1 consists of solving the forward (initial boundary) problem for Equation (
33) on the various grids
,
and various parameters
. It was solved using the difference scheme described in
Section 2.2. For solving the SLAE, two methods were applied, namely, the classical serial block-elimination method (
13) and (
14) and parallel matrix sweep method (see Listing 1).
Figure 1 shows the exact solution
and approximate solution
for Problem 1 obtained by the parallel matrix sweep algorithm for grid size
,
, and the order of fractional derivative
. The approximate solutions obtained by the matrix sweep and parallel matrix sweep methods coincide with each other up to the machine precision (
, as we used the double precision format).
Table 1 contains the relative error of the solutions
for various grid sizes and parameters
. The experiments show that taking a finer grid either for space or time reduces the relative error of the resulting solution. For the time grid, the rate of convergence is close to linear (increasing the number of grid points twofold reduces the error approximately by two times). As parameter
approaches 1, the error of the solution increases. To achieve higher accuracy, we need to use a finer grid.
Table 2 presents the total computing time
of solving the direct problem. For the parallel matrix sweep method, the computing time for various numbers
L of OpenMP threads are presented. Total time
consists of time
spent on solving the SLAEs plus time
spent on computing the right-hand part for these SLAEs using formula (
9). The table shows that for the case of two-dimensional problem solving SLAE with a more complex matrix structure (block-tridiagonal), the time spent on solving the SLAE is up to 600 times larger than the time spent on computing the right-hand part. Thus, utilizing the optimized approach for computing the fractional derivative is less relevant as it would bring a miniscule speedup.
6.1.2. Experiment 2
Experiment 2 consists of solving the inverse problem for Equation (
33). We assume that
and
. Thus, we need to solve the inverse problem of finding unknown
. For this experiment, we introduce the varying level
of random perturbation to the
a priori data
.
Remark 4. Note that this level corresponds to an error in the infinity norm, i.e., . In the rest of the paper, the norm is implied to be -norm. In tables, we provide the corresponding .
The inverse problem was solved by the regularized conjugate gradient method Algorithm (see Listing 2). For solving the SLAEs, the parallel matrix sweep method was used. The grid size was , .
Figure 2 shows the exact solution
and the approximate solution
for Problem 1 for the noise level
.
Table 3 presents the results of Experiment 2 for varying levels of noise
. It contains the values of regularization parameter
, the threshold
for the stopping criterion (we used
for experiments), number of iterations
S, and the relative error of the resulting solution.
6.2. Problem 2
Consider the two-dimensional equation [
22]
with initial and boundary conditions
and area
for order
The numerical experiment consists of solving the inverse problem for Equation (
34). We assume that
. Additional data
are obtained by solving the direct problem substituting exact
. They are shown in
Figure 3.
Table 4 presents the results of experiments for Problem 2 for varying levels of noise
. It contains the values of the regularization parameter
, the threshold
for the stopping criterion (we used
for experiments), the number of iterations
S, and the relative error of the resulting solution. The grid size was
,
, and order
.
Figure 4 shows the approximate solutions
for Problem 2 for various noise levels.
7. Discussion
According to the experiments, the relative error of the direct problem solution decreases with finer grid size. This indicates the experimental confirmation of convergence of the finite difference scheme.
In the case of two-dimensional problem solving, SLAE takes a significantly larger time (up to 600) than computing the right-hands part for SLAE. This makes the parallel implementation of the SLAE solver more important than the optimization of the procedures for computing the fractional derivative.
Experiments show that the parallel matrix sweep method for solving the SLAE has good parallel efficiency. The minimal computing time is achieved by using eight OpenMP threads on an eight-core processor.
The parallel code performance is mainly limited by memory bandwidth. Adding more than eight threads does not reduce the computing time. The largest speed up is only three-fold for
spatial grid.
Figure 5 presents the roofline analysis performed by the Intel Advisor tool. Most subroutines of the parallel code lie primarily below and near the slanted line that represents DRAM bandwidth. This indicates that the code is memory-bound.
Several approaches can be used to overcome this limitation. Computing hardware with large memory bandwidth, such as graphics processors (GPU), can be used. Central processors with DDR4 or DDR5 RAM can achieve up to 100 GB/s, while modern GPUs have a bandwidth of 1000 GB/s or higher. Another option is to use massive distributed memory systems. Since each node works independently, the memory speed of individual node is effectively summed. Moreover, it enables larger problems to be solved with data that cannot be accommodated in the memory of a single computing node.
The experiments in
Table 3 and
Table 4 show that for the model problems, the regularized conjugate gradient method allows us to solve the inverse problem even with noised data. The results are comparable with other works in terms of accuracy (for example, see [
23],
Table 3).
We also note that while this work is devoted to the case of the two-dimensional equation, the results may be extended to three-dimensional elliptic equations. The structure of matrix
A in Equation (
11) will remain block tridiagonal, but the inner structure of the blocks will be more complex.
8. Conclusions
In this work, we construct the parallel algorithm for solving the inverse problem of finding the space-dependent component of a source term in a two-dimensional fractional diffusion equation. The considered inverse problem is solved by the iterative conjugate gradient method. At each iteration, it is necessary to solve an auxiliary direct initial-boundary value problem. Applying the finite difference scheme, we reduce the initial-boundary value problem to solving an SLAE with block tridiagonal matrices at each subsequent time level. For the efficient solution of such SLAEs, we construct and implement the direct parallel matrix sweep method. Stability and correctness for the parallel matrix sweep method are established. In the two-dimensional case, computing the fractional derivative (the right-hand part of the SLAE) takes little time in comparison with solving the SLAE.
The algorithm is implemented for the multicore processors using the OpenMP technology. In the numerical experiments, we investigated the validity of numerical methods and the efficiency and speedup of the parallel algorithm. The utilization of the parallel sweep algorithm reduces the computing time by up to three times on a eight-core processor. Using Lavrentyev regularization method allows us to solve the inverse problem with a disturbed data.
In future, the authors plan to implement a similar approach to solving the retrospective inverse problem (identifying the initial value) for a fractional differential equation. The developed algorithms may be utilized for real applications. The parallel algorithms will be implemented on graphics processors.
Author Contributions
Conceptualization, E.N.A., M.A.S. and V.E.M.; methodology, E.N.A., M.A.S. and V.E.M.; validation, E.N.A., M.A.S., V.E.M. and Y.N.; formal analysis, E.N.A., M.A.S., V.E.M. and Y.N.; investigation, E.N.A., V.E.M. and Y.N.; resources, E.N.A., M.A.S. and V.E.M.; writing—original draft preparation, E.N.A., M.A.S. and V.E.M.; writing—review and editing, E.N.A., M.A.S., V.E.M. and Y.N.; supervision, E.N.A. and M.A.S.; project administration, V.E.M.; and funding acquisition, M.A.S. All authors have read and agreed to the published version of the manuscript.
Funding
The second author (M.A.S.) and fourth author (Y.N.) were financially supported by the Ministry of Science and Higher Education of the Republic of Kazakhstan (project AP09258836). The first author (E.N.A.) and third author (V.E.M.) received no external funding.
Data Availability Statement
The data presented in this study are the model data. Data sharing is not applicable to this article.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Machado, J.T.; Galhano, A.; Trujillo, J. Science metrics on fractional calculus development since 1966. Fract. Calc. Appl. Anal. 2013, 16, 479–500. [Google Scholar] [CrossRef]
- Podlubny, I. Fractional differential equations. Math. Sci. Eng. 1999, 198, 41–119. [Google Scholar]
- Metzler, R.; Jeon, J.H.; Cherstvy, A.G.; Barkai, E. Anomalous diffusion models and their properties: Non-stationarity, non-ergodicity, and ageing at the centenary of single particle tracking. Phys. Chem. Chem. Phys. 2014, 16, 24128–24164. [Google Scholar] [CrossRef] [PubMed]
- Tateishi, A.A.; Ribeiro, H.V.; Lenzi, E.K. The Role of Fractional Time-Derivative Operators on Anomalous Diffusion. Front. Phys. 2017, 5, 52. [Google Scholar] [CrossRef]
- Yegenova, A.; Sultanov, M.; Brener, A. Nonlinear Wave Model for Transport Phenomena in Media with Non-local Effects. Chem. Eng. Trans. 2021, 86, 1201–1206. [Google Scholar] [CrossRef]
- Li, X.; Han, X.; Wang, X. Numerical modeling of viscoelastic flows using equal low-order finite elements. Comput. Methods Appl. Mech. Eng. 2010, 199, 570–581. [Google Scholar] [CrossRef]
- Maslovskaya, A.; Moroz, L. Time-fractional Landau–Khalatnikov model applied to numerical simulation of polarization switching in ferroelectrics. Nonlinear Dyn. 2023, 111, 4543–4557. [Google Scholar] [CrossRef]
- Benson, D.A.; Wheatcraft, S.W.; Meerschaert, M.M. Application of a fractional advection-dispersion equation. Water Resour. Res. 2000, 36, 1403–1412. [Google Scholar] [CrossRef]
- Laskin, N.; Lambadaris, I.; Harmantzis, F.; Devetsikiotis, M. Fractional Lévy motion and its application to network traffic modeling. Comput. Netw. 2002, 40, 363–375. [Google Scholar] [CrossRef]
- Sun, H.; Zhang, Y.; Baleanu, D.; Chen, W.; Chen, Y. A new collection of real world applications of fractional calculus in science and engineering. Commun. Nonlinear Sci. Numer. Simul. 2018, 64, 213–231. [Google Scholar] [CrossRef]
- Diethelm, K.; Ford, N.; Freed, A.; Luchko, Y. Algorithms for the fractional calculus: A selection of numerical methods. Comput. Methods Appl. Mech. Eng. 2005, 194, 743–773. [Google Scholar] [CrossRef]
- Baleanu, D.; Diethelm, K.; Scalas, E.; Trujillo, J.J. Fractional Calculus: Models and Numerical Methods; World Scientific: Singapore, 2012; Volume 3. [Google Scholar]
- Li, C.; Zeng, F. Numerical Methods for Fractional Calculus; Chapman and Hall/CRC: Boca Raton, FL, USA, 2019. [Google Scholar]
- Sultanov, M.A.; Durdiev, D.K.; Rahmonov, A.A. Construction of an Explicit Solution of a Time-Fractional Multidimensional Differential Equation. Mathematics 2021, 9, 2052. [Google Scholar] [CrossRef]
- Gong, C.; Bao, W.; Tang, G.; Jiang, Y.; Liu, J. A parallel algorithm for the two-dimensional time fractional diffusion equation with implicit difference method. Sci. World J. 2014, 2014, 219580. [Google Scholar] [CrossRef] [PubMed]
- Akimova, E.N.; Misilov, V.E.; Sultanov, M.A. Regularized gradient algorithms for solving the nonlinear gravimetry problem for the multilayered medium. Math. Methods Appl. Sci. 2022, 45, 8760–8768. [Google Scholar] [CrossRef]
- Li, X.; Su, Y. A parallel in time/spectral collocation combined with finite difference method for the time fractional differential equations. J. Algorithms Comput. Technol. 2021, 15, 17483026211008409. [Google Scholar] [CrossRef]
- De Luca, P.; Galletti, A.; Ghehsareh, H.; Marcellino, L.; Raei, M. A GPU-CUDA framework for solving a two-dimensional inverse anomalous diffusion problem. Parallel Comput. Technol. Trends 2020, 36, 311. [Google Scholar]
- Yang, X.; Wu, L. A New Kind of Parallel Natural Difference Method for Multi-Term Time Fractional Diffusion Model. Mathematics 2020, 8, 596. [Google Scholar] [CrossRef]
- Berdyshev, A.S.; Sultanov, M.A. On Stability of the Solution of Multidimensional Inverse Problem for the Schrödinger Equation. Math. Model. Nat. Phenom. 2017, 12, 119–133. [Google Scholar] [CrossRef]
- Samarskii, A.A.; Vabishchevich, P.N. Numerical Methods for Solving Inverse Problems of Mathematical Physics; Walter de Gruyter: Berlin, Germany, 2007; Volume 52. [Google Scholar]
- Yang, F.; Ren, Y.P.; Li, X.X.; Li, D.G. Landweber iterative method for identifying a space-dependent source for the time-fractional diffusion equation. Bound. Value Probl. 2017, 2017, 163. [Google Scholar] [CrossRef]
- Su, L.D.; Vasil’ev, V.I.; Jiang, T.S.; Wang, G. Identification of stationary source in the anomalous diffusion equation. Inverse Probl. Sci. Eng. 2021, 29, 3406–3422. [Google Scholar] [CrossRef]
- Bazhlekova, E. An Inverse Source Problem for the Generalized Subdiffusion Equation with Nonclassical Boundary Conditions. Fractal Fract. 2021, 5, 63. [Google Scholar] [CrossRef]
- Gong, X.; Wei, T. Reconstruction of a time-dependent source term in a time-fractional diffusion-wave equation. Inverse Probl. Sci. Eng. 2019, 27, 1577–1594. [Google Scholar] [CrossRef]
- Nguyen, H.T.; Le, D.L.; Nguyen, V.T. Regularized solution of an inverse source problem for a time fractional diffusion equation. Appl. Math. Model. 2016, 40, 8244–8264. [Google Scholar] [CrossRef]
- Sultanov, M.A.; Akimova, E.N.; Misilov, V.E.; Nurlanuly, Y. Parallel Direct and Iterative Methods for Solving the Time-Fractional Diffusion Equation on Multicore Processors. Mathematics 2022, 10, 323. [Google Scholar] [CrossRef]
- Akimova, E.N.; Sultanov, M.A.; Misilov, V.E.; Nurlanuly, Y. Parallel sweep algorithm for solving direct and inverse problems for time-fractional diffusion equation. Numer. Methods Program. 2022, 23, 275–287. (In Russian) [Google Scholar] [CrossRef]
- Zhang, Y. A finite difference method for fractional partial differential equation. Appl. Math. Comput. 2009, 215, 524–529. [Google Scholar] [CrossRef]
- Slodička, M.; Šišková, K.; Bockstal, K.V. Uniqueness for an inverse source problem of determining a space dependent source in a time-fractional diffusion equation. Appl. Math. Lett. 2019, 91, 15–21. [Google Scholar] [CrossRef]
- Samarskii, A.; Nikolaev, E. Numerical Methods for Grid Equations, Volume I: Direct Methods; Birkhäuser: Basel, Switzerland, 1989. [Google Scholar]
- Akimova, E.N. Parallel Algorithms for Solving the Gravimetry, Magnetometry, and Elastisity Problems on Multiprocessor Systems with Distributed Memory. Doctor of Physical and Mathematical Sciences, Institute of Mathematics and Mechanics, Ural Branch of Russian Academy of Sciences, Ekaterinburg, Russia, 2009. (In Russian). [Google Scholar]
- Saad, Y. Iterative Methods for Sparse Linear Systems; SIAM: Philadelphia, PA, USA, 2003. [Google Scholar]
- Vasin, V.V.; Eremin, I.I. Operators and Iterative Processes of Fejér Type: Theory and Applications; De Gruyter: Berlin, Germany; New York, NY, USA, 2009. [Google Scholar] [CrossRef]
- OpenMP Community. OpenMP Application Programming Interface Specification. Available online: https://www.openmp.org (accessed on 1 August 2023).
- Intel Corporation. Accelerate Fast Math with Intel oneAPI Math Kernel Library. Available online: https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl.html (accessed on 1 August 2023).
- Zhang, Y.N.; Sun, Z.Z. Alternating direction implicit schemes for the two-dimensional fractional sub-diffusion equation. J. Comput. Phys. 2011, 230, 8713–8728. [Google Scholar] [CrossRef]
| Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).