In this paper, we present a combinational efficient algorithm for solving second-order elliptic ordinary differential equation eigenvalue problems on four kinds of meshes. Firstly, a combinational scheme is proposed by leveraging the linear finite element scheme and the second-order finite difference scheme based on mass lumping method. An efficient algorithm is constructed by using the combinational scheme with a constant combined parameter. Then, we improve the efficient algorithm by computing the quasi-optimal combined parameters for different eigenvalues. Finally, numerical experiments tested on both uniform and nonuniform meshes are shown to illustrate the efficiency of our algorithms.
Studies on the eigenvalue problem have been a hot topic for many years. Problems of this kind have many applications in both applied mathematics and engineering, such as quantum mechanics, eigenfaces in image processing, vibration analysis, etc. There are many methods, such as the linear finite element method or the second-order finite difference method which always involve inevitably massive meshes and large-scale computation.1–3
To overcome the challenge of large-scale computation, one often exploits distributed or parallel algorithms. Although parallel algorithm is a good choice, it may not avoid expensive computational cost. Alternatively, one can design efficient algorithm with high accuracy for specific problem which can avoid large-scale computation. This is just our theme in this paper. At present, there are many researches on constructing high-accuracy algorithms for solving eigenvalue problems.4–11 In this paper, we will give an efficient algorithm for the ODE eigenvalue problems (1) with variable coefficient on four kinds of meshes by leveraging the linear finite element method and the second-order finite difference method. Especially, we design a second-order finite difference scheme with mass lumping method in the text and then compute the quasi-optimal combined parameters for different eigenvalues to improve our efficient algorithm. The second-order elliptic ODE eigenvalue problem can be described as follows
where , , and .
Throughout this paper, ( f, g) denotes .
As is well known, the Rayleigh quotient of ODE eigen-equation is defined as
where a(v, v) is a weak form of the original energy form. For , eigenvalues satisfy the following min–max principle
where H is called admissible space and Ek is a k-dimensional subspace of H.
For a given finite-dimensional approximation subspace Vh in H, the Petrov-Galerkin discrete Rayleigh quotient can be expressed as
The min–max principle also holds for the discrete form
Here, Vk ranges over all k-dimensional subspace in Vh.
For a given basis in Vh and , the discrete Rayleigh quotient becomes
where Kh and Mh are stiffness matrix and mass matrix, respectively. Kh is symmetric positive semidefinite and Mh is symmetric positive definite. Then, this discrete Rayleigh quotient form (8) is equivalent to the following generalized matrix eigenvalue problem
Sun4 presented two fourth-order accuracy schemes for solving the elliptic eigenvalue problems on the uniform mesh. Furthermore, Sun5 gave some sixth-order schemes by linear combination of the fourth-order accuracy schemes with proper combination coefficients. But all those high-order accuracy schemes are just applicable to uniform meshes. In Zhang et al.,7 they generalized Sun’s idea to nonuniform meshes, gave two fourth-order accuracy schemes and two sixth-order accuracy schemes. But all these high-order accuracy schemes only aim at eigenvalue problem (1) with constant coefficient in the eigen-equation, namely p and q are both constants.
In this paper, we aim at the case with variable coefficient in the eigen-equation (1). By using the techniques of combinational method and mass lumping method,2,12 we construct an efficient algorithm. It is applicable to general eigenvalue problem (1) with variable coefficient q or p or both in the eigen-equation. That is,
Case I
Case II
Case III
Here, stands for the boundary conditions of the following cases:
♦ Direchlet condition: ;
♦ Niemann condition: ;
♦ Mixed condition: or .
Although our efficient algorithm and its improved algorithm may not guarantee high-order accuracy, they both converge much faster for currently numerical experiments than the single linear finite element method or the corresponding finite difference method on the same mesh. Some numerical experiments tested on both uniform meshes and nonuniform meshes are given to illustrate the computational cost measured by the CPU time and grid size. For efficiency, all the matrices are assembled with sparse storage in the algorithm implementation. Typically, all the numerical experiments about the eigenvalue problems (10) to (12) are conducted when the boundary condition is . All the numerical experiments are tested on both the uniform and nonuniform meshes.
The rest of the paper is organised as follows. In An efficient algorithm for ODE eigenvalue problems, we propose an efficient algorithm by combining the linear finite element method and the corresponding second-order finite difference method with a constant combined parameter. In An improved efficient algorithm, we give an improved algorithm for the efficient algorithm given in the above section by computing the quasi-optimal combined parameters for different eigenvalues. In the following section, we give some numerical experiments to test our algorithms and in finally we give some conclusions.
An efficient algorithm for ODE eigenvalue problems
In this section, an efficient algorithm is constructed by taking a weighted mean combination of the linear finite element method and corresponding second-order finite difference method. Especially, we design the second-order finite difference scheme with mass lumping method.
Firstly, we suppose u is the eigenfunction of problem (1), s is the linear interpolation of u on the mesh
Henceforth, hi denotes denotes such a mesh where h is the average step length of the mesh, namely, . We define vector U as . Then, the eigenvalue expression with finite element method is as below
It is equivalent to
where , , and . We call equation (15) as finite element method (FEM) scheme.
Just like in literature,4,7 we can define the second-order finite difference scheme corresponding to the above linear finite element scheme as below.
However, we can not directly use the Rayleigh-quotient forms (14) and (17) to compute the numerical eigenvalues just like in literature4,7 because we do not know the genuine eigenfunctions. It is practically difficult to find some kind of meshes satisfying . In this case, we can only compute the numerical eigenvalues by solving a generalized matrix eigenvalue problem in the form of equation (9). So, we propose a modified second-order finite difference scheme corresponding to the above linear finite element scheme as below
where denote the approximate inner product of .
It is equivalent to
where , ; here, Eh is the mass lumping matrix obtained from Ch in the FEM scheme (15). , where Dh is the mass lumping matrix obtained from Mh in the FEM scheme (15). We call equation (18) as FDM scheme.
In the two schemes of equations (14) and (16), the discrete form for p(x) is .
From Strang and Fix,1 we know the numerical eigenvalues computed with the finite element scheme are not smaller than the genuine eigenvalues of (1). Conversely, according to George and Wolgang,13 we know the FDM scheme on the uniform mesh leads to a lower bound of genuine eigenvalues under some constraints. Based on these two facts, we know any combinational scheme in the form of
can obtain a better approximate solution for equation (1) than individual linear finite element scheme λF or the corresponding second-order finite difference scheme λD on the uniform mesh under some constraints.
How is it for the combinational scheme on the nonuniform mesh? Next, we choose proper combination coefficient α to construct efficient algorithm for solving the eigenproblems (10) to (12).
Theoretical analysis
We first take the arithmetic mean of equations (14) and (16) to construct our efficient algorithm.
We take a mean combination of the FEM scheme λF and our modified FDM scheme λD for the eigenvalue problems with variable coefficient q or p or both on the uniform and nonuniform meshes.
Next, we present our algorithm.
Algorithm structure
In our algorithm, we assemble Kh with two parts Ah and Ch, assemble with Ah and Eh, where Eh is the lumping matrix of Ch with proper boundary treatment. For the eigenproblem of equation (11) (Case I), the mass part Ch in Kh and Eh in is equal to zero. Specifically, , where is the basis of s. . , Dh is the lumping matrix of Mh with proper boundary treatment. For efficiency and memory limit, we assemble all the matrices with sparse storage. Then we use ARPACK software to solve the corresponding generalized eigenvalue problem.
n denotes grid size of the interval , m denotes the number of eigenvalues to compute, and sp denotes the boundary condition. Our algorithm structure is described as Algorithm 1.
Algorithm 1 MCM (n, m)
Require: Two integer , Real a, b, Bool sp.
Ensure: The numerical eigenvalues of .
1: compute and concurrently;
2: ;
Returnla.
MCM: method of computing eigenvalues by using combinational method.
For a given initial value n = n0, one can iterate the MCM algorithm to compute eigenvalues by updating n = 2n until converge. The complete iterative structure is described as Algorithm 2.
Algorithm 2 ITMCM(n, m, eps, )
Require: Two integers , Real number eps and Real vector .
Ensure: The numerical eigenvalues of , Meshes number n.
1:
2:
3: while (error > eps)
Returnla, n.
ITMCM: Iterate the MCM algorithm until converge.
An improved efficient algorithm
In this section, we give an improved algorithm for the algorithm given in the above section by computing the quasi-optimal combined parameters for every eigenvalue.
As we have known, eigenvalues obtained by the FEM scheme are not smaller than the exact ones while the FDM scheme are not bigger than those. The errors of the two schemes on and can be expressed as
Then we can compute the quasi-optimal combined parameters as below
Here, μ and α depend on both the eigenvalues and the mesh. In this way, we can improve the error
(higher than second order) theoretically. This improved scheme λC means higher accuracy approximation of the true eigenvalues.
For a given initial value n = n0, one can iterate this algorithm to compute eigenvalues by updating n = 2n until converge. Firstly, we compute concurrently. Then, define
Here, α and μ are both vectors, α is just the vector of quasi-optimal combined parameters for every eigenvalue of equation (19). Lastly, we iterate the above steps and update α until converge. The improved algorithm structure is described as Algorithm 3.
Algorithm 3 QOCM (n, m, eps, )
Require: Two integers , Real eps, Vector λ0.
Ensure: The numerical eigenvalues of , Meshes number n.
1: compute concurrently: , , ,
;
2:
3: For
4:
5: while ()
compute concurrently:
For
Returnn.
QOCM:Algorithm by using quai-optimal combinational method.
Algorithm 4 FEM (n,m,sp)
Require: Two integers , Real , Bool .
Ensure: The numerical eigenvalues of .
1: If
If
2: ;
3: Obtain the Interval subdivision of
4: Assign
Left boundary treatment;
5: For.
AssignCby computing,
AssignAby computing,
AssignBby computing,
6: Right boundary treatment;
7:
K = sparse
M = sparse
8: = eigs
= sort;
Return.
Algorithm to compute eigenvalues by using the FEM scheme.
Algorithm 5 FDM(n,m,sp)
Require: Two integers , Real , Bool .
Ensure: The numerical eigenvalues of .
1: Update
2: Initialize vectors
3: Obtain the Interval subdivision of.
4: Assign
Left boundary treatment;
5: For
AssignEby computing
AssignAby computing
AssignDby computing
6: Right boundary treatment;
7:
= sparse
= sparse
8: = eigs ‘sm’ );
= sort
Return.
Algorithm to compute eigenvalues by using the FDM scheme
Numerical experiments
In this section, we give some numerical experiments to test the efficient algorithm and its improved algorithm , respectively, for eigenvalue problems (10) to (12). Then, compare with the algorithms computed with finite element scheme and the corresponding finite difference scheme. Typically, we conduct all the numerical experiments about the eigenvalue problems (10) to (12) when the boundary condition is . Calling the algorithms , we respectively compute the smallest four eigenvalues for case I: , case II: , and case III: , on both uniform mesh and nonuniform mesh. We take . Give the symbol description as follows:
initial guess of the eigenvalues vector for the smallest four eigenvalues: ;
the iterative error vector: , specially, is eigenvalues vector of when the mesh size is n. In the following figures referred to iterative error, we express as the iterative error from as the iterative error when converge, so it is with ;
1-norm of the iterate error : of the smallest four eigenvalues, the iteration terminate when is less than . So, it is with .
In all the experiments, we set grid size starter and refine the mesh with grid size in the iteration.
With the same accuracy requirement as above, we test the gird sizes n and time cost of the four algorithms when converge. All the example are tested on four kinds of meshes as follows
No.1:
No.2:
No.3:
No.4:
Case I:
In this case, the eigen-equation is just the Mathieu equation. The smallest four numerical eigenvalues are .
Firstly, we compare the efficient algorithm to algorithms FEM and FDM by observing , namely, the iterative errors from to for the four algorithms tested on No.1–No.4 meshes as shown in Figure 1 and Table 1.
The iterative error vectors for from to , tested on No.1–No.4 meshes, x-axis denote the eigenvalues indices.
The iterative error vectors for from to , tested on No.1–No.4 meshes, denote the component of vector .
Mesh no.
No.1
No.2
No.3
No.4
−0.0032
−0.0017
−0.0031
−0.0017
−0.430
−0.0282
−0.0494
−0.0254
−0.2107
−0.1435
−0.2497
−0.1267
−0.6593
−0.4543
−0.7885
−0.3991
0.0007
0.0032
0.0044
0.0022
0.0298
0.0318
0.0504
0.0252
0.1816
0.1501
0.2507
0.1251
0.6066
0.4642
0.7905
0.3937
−0.0013
0.0008
0.0006
0.0003
−0.0066
0.0020
0.0005
0.0002
−0.0145
0.0037
0.0005
−0.0000
−0.0263
0.0056
0.0010
−0.0014
Figure 1 and Table 1 show that when the mesh is refined to , the algorithm has much higher accuracy than algorithms and on all the four kinds of meshes.
When all the four algorithms converge within tolerance , the error vectors are shown in Figure 2, time cost is shown in Figure 3, and the final refined grid sizes n are shown in Table 2. All experiments are tested on No.1–No.4 meshes.
The iterative errors when the four algorithms converge within tolerance for , tested on No.1–No.4 meshes, x-axis denote the eigenvalues indices.
The time cost when the four algorithms converge within tolerance for , x-axis denote the algorithms: 1 denotes , 2 denotes , 3 denotes , and 4 denotes .
The final refined grid sizes of when the four algorithms converge within tolerance for tested on No.1–No.4 meshes.
Mesh no.
QOCM
MCM
FEM
FDM
1
320
2560
10,240
10,240
2
320
1280
10,240
10,240
3
160
640
10,240
10,240
4
320
320
10,240
10,240
Case II:
In this case, the smallest four numerical eigenvalues are . We still firstly compare the efficient algorithm to algorithms and by observing , namely, the iterative errors from to for the four algorithms tested on No.1–No.4 meshes as shown in Figure 4 and Table 3.
The iterative error vectors for from to , tested on NO.1–NO.4 meshes, x-axis denote the eigenvalues indices.
The iterative error vectors for from to , tested on No.1–No.4 meshes, denote the component of vector .
Mesh no.
No.1
No.2
No.3
No.4
−0.0110
−0.0043
−0.0071
−0.0055
−0.1458
−0.0763
−0.1229
−0.0852
−0.7078
−0.3957
−0.6315
−0.4290
−2.2039
−1.2631
−2.0079
−1.3545
0.0014
0.0069
0.0087
0.0055
0.1067
0.0880
0.1297
0.0849
0.6187
0.4212
0.6459
0.4271
2.0409
1.3019
2.0275
1.3454
−0.0048
0.0004
0.0018
0.0001
−0.0196
−0.0201
0.0034
−0.0524
−0.0448
−0.1139
0.0072
−0.2506
−0.0823
−0.3643
0.0098
−0.7411
Figure 4 and Table 3 show that when mesh is refined to , the algorithm has much higher accuracy than algorithms and on all the four kinds of meshes. Moreover, the uniform mesh does not always have advantage over nonuniform mesh. Case II with variable coefficient of in the eigen-equation is just a counter-example.
When all the four algorithms iteration terminate within tolerance , the error vectors are as shown in Figure 5, time cost is shown in Figure 6, and the final refined grid sizes n are shown in Table 4. All the experiments are tested on No.1–No.4 meshes.
The iterative errors when the four algorithms converge within tolerance for , tested on No.1–No.4 meshes, x-axis denote the eigenvalues indices.
The time cost when the four algorithms converge within tolerance for , x-axis denote the algorithms: 1 denotes , 2 denotes , 3 denotes , and 4 denotes .
The final refined grid sizes when the four algorithms converge within tolerance for .
Mesh no.
QOCM
MCM
FEM
FDM
1
320
5120
20,480
20,480
2
2560
1280
20,480
20,480
3
320
2560
20,480
20,480
4
2560
2560
20,480
20,480
Case III: and
In this case, The smallest four numerical eigenvalues are .
We firstly compare the efficient algorithm to algorithms and by observing , namely, the iterative errors from to for the four algorithms tested on No.1–No.4 meshes as shown in Figure 7 and Table 5.
The iterative error vectors for and from to , tested on No.1–No.4 meshes, x-axis denote the eigenvalues indices.
The iterative error vectors , for and from to , tested on No.1–No.4 meshes, denote the component of vector .
Mesh no.
No.1
No.2
No. 3
No.4
−0.0106
−0.0042
−0.0072
−0.0052
−0.1449
−0.0764
−0.1245
−0.0841
−0.7060
−0.3963
−0.6355
−0.4267
−2.2008
−1.2643
−2.0152
−1.3506
0.0018
0.0077
0.0108
0.0054
0.1062
0.0888
0.1326
0.0841
0.6172
0.4224
0.6513
0.4251
2.0381
1.3038
2.0364
1.3415
−0.0044
0.0018
0.0018
0.0001
−0.0194
0.0062
0.0041
−0.0000
−0.0444
0.0131
0.0079
−0.0008
−0.0814
0.0198
0.0106
−0.0046
Figure 7 and Table 5 show that when mesh is refined to , the algorithm has much higher accuracy than algorithms and on all the four kinds of meshes.
When all the four algorithms converge within tolerance , the error vectors are as shown in Figure 8, time cost is shown in Figure 9, and the final refined grid sizes n are shown in Table 6. All of experiments are tested on No.1–No.4 meshes.
The iterative errors when the four algorithms converge within tolerance for and , tested on No.1–No.4 meshes, x-axis denote the eigenvalues indices.
The time cost when the four algorithms converge within tolerance for and , x-axis denote the algorithms: 1 denotes , 2 denotes , 3 denotes , and 4 denotes .
The final refined grid sizes when the four algorithms converge within tolerance for and .
Mesh no.
QOCM
MCM
FEM
FDM
1
320
5120
20,480
20,480
2
320
2560
20,480
20,480
3
320
2560
20,480
20,480
4
320
320
20,480
20,480
From Figures 1, 4, and 7 and Table 1, 3, and 5, we can know that the iterative errors of the algorithms have similar variation trend for different variable coefficients on all the four kinds of meshes. So, it is with and . As and still change in opposite trends (just as the case in are constant), the combinational scheme of (19) can obtain a better approximate solution for the variable coefficients eigenproblems of cases (10) to (12) than individual linear finite element scheme or the corresponding second finite difference scheme . As the iterative error of the varies almost as a horizontal line comparing to , we know is a good combined parameter for (19), particular for case I. As Figures 2, 3, 5, 6, 9, and 8 and Tables 2, 4, and 6 show, with the same accuracy requirement, for different variable coefficient and different kinds of meshes, the efficient algorithm is always much better than the algorithms and , especially for case I. Algorithm costs much less (CPU) time and much less mesh refinement than and algorithms under the same accuracy requirement. Moreover, the grid size that algorithms and need are nearly 30 times of for case I and even 60 times for case III. Although the algorithm is no better than the , it is also more efficient than the algorithms and . Particularly, on the uniform mesh, has the same efficiency with . While for case I and case III the eigenvalues obtained with uniform mesh have better accuracy, the uniform mesh does not always have advantage over nonuniform mesh. Case II with variable coefficient of in the eigen-equation is just a counter-example.
Conclusions
By leveraging the linear finite element method and second-order finite difference method, the combinational scheme we propose for solving eigenvalue problems with variable coefficient is effective and quite efficient. Although our efficient algorithm and its improved algorithm may not guarantee high-order accuracy, they both converge much faster than the single linear finite element method or the corresponding finite difference method on the same mesh. The numerical experiments in section IV show that, with the same accuracy requirement, for different variable coefficient , the algorithm and take less time and need much smaller grid size than the algorithms and on all the four kinds of meshes. The efficient algorithm may be more applicable for eigenproblem (11), while its improved algorithm for eigenproblems (10) and (12). The grid size that Algorithms and need are nearly 30 times of for case I and even 60 times for case III. Namely, our two algorithms are really more efficient than algorithms and and are applicable to compute several eigenvalues at the same time. Moreover, both our efficient algorithm and its improved algorithm are easy to parallelize.
Footnotes
Acknowledgment
We would like to thank Professor Sun Jiachang from Institute of Software Chinese Academy of Sciences for helpful guidance.
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This research is supported by Chinese NSF grant (no. 91230109).
References
1.
StrangGFixG. An analysis of the finite element method, 2nd ed. Englewood Cliffs, NJ: Wellesley-Cambridge, 2008.
2.
HintonERockTZienkiewiczOC. A note on mass lumping and related processes in the finite element method. Earthquake Eng Struct Dyn1976; 4: 245–249.
3.
ZienkiewiczOCTaylorRL. Finite element method, 5th ed. Oxford: Butterworth-Heinemann, 2000.
4.
SunJC. New schemes with fractal error compensation for PDE eigen-value computations. Sci China Math2014; 57: 221–244.
5.
SunJC. Multi-neighboring grids schemes for solving PDE eigen-problems. Sci China Math2013; 56: 2677–2700.
6.
LinQXieHH. Extrapolation of the linear elements on general meshes. Int J Numer Anal Model2013; 10: 139–153.
7.
ZhangHRCaoJWSunJC. Calculation and analysis of several high accuracy scheme for solving ODE eigenproblem on non-uniform grid. J Numer Methods Comput Appl2014; 35: 131–152.
8.
Barth TJ. Recent developments in high order k-exact reconstruction on unstructured meshes. In: AIAA 93, AIAA-93-0668, 1993, pp.1–15. Reno, Nevada: AIAA.
9.
DaiXXuJZhouA. Convergence and optimal complexity of adaptive finite element eigenvalue computations. Numer Math2008; 110: 313–355.
10.
Haider F, Brenner P, Courbet B, et al. Parallel implementation of k-exact finite volume reconstruction on unstructured grids. High Order Nonlinear Numerical Schemes for Evolutionary PDEs. Switzerland: Springer International Publishing, 2014, pp. 59–75.
11.
LinQXieHH. New expansions of numerical eigenvalue for by linear elements on different triangular meshes. Int J Inf Syst Sci2010; 6: 10–34.
12.
AndreevABKascievaVAVanmaeleM. Some results in lumped mass finite-element approximation of eigenvalue problems using numerical quadrature formulas. J Comput Appl Math1996; 43: 291–311.
13.
GeorgeEWolgangR. Finite difference methods for partial differential equations, New York: John Wiley & Sons, Inc, 1960.