
Krylov subspace methods for the Dirac equation Randolf Beerwerth∗ and Heiko Baukey Max-Planck-Institut für Kernphysik, Saupfercheckweg 1, 69117 Heidelberg, Germany The Lanczos algorithm is evaluated for solving the time-independent as well as the time-dependent Dirac equation with arbitrary electromagnetic fields. We demonstrate that the Lanczos algorithm can yield very precise eigenenergies and allows very precise time propagation of relativistic wave packets. The unboundedness of the Dirac Hamiltonian does not hinder the applicability of the Lanczos algorithm. As the Lanczos algorithm requires only matrix-vector products and inner products, which both can be efficiently parallelized, it is an ideal method for large-scale calculations. The excellent parallelization capabilities are demonstrated by a parallel implementation of the Dirac Lanczos propagator utilizing the Message Passing Interface standard. PACS numbers: 02.70.-c, 03.65.Pm, 02.70.Bf PROGRAM SUMMARY particle in a Lorentz invariant manner. It predicts the existence Program title: Dirac_Laczos of antimatter and finds its application not only in the growing Catalogue identifier: AEUY_v1_0 field of light-matter interactions at relativistic intensities [1–3] Program summary URL: but also in condensed matter theory of graphene [4] and in http://cpc.cs.qub.ac.uk/summaries/AEUY_v1_0.html relativistic quantum information [5–7]. Deducing analytical Program obtainable from: CPC Program Library, Queen’s University, solutions of this equation, however, poses a major problem. Belfast, N. Ireland Analytical methods for determining solutions of the Dirac Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/ equation usually require physical setups with a high degree of licence/licence.html symmetry [8–12]. Thus, approximations or numerical methods No. of lines in distributed program, including test data, etc.: 526 428 have to be applied. In the past, various numerical schemes have No. of bytes in distributed program, including test data, etc.: been developed to solve the time-dependent Dirac equation 2 181 729 numerically, including Fourier split operator approaches [13– Distribution format: tar.gz 16], real space split operator methods based on the method of Programming language: C++11 characteristics [17, 18], finite differences [19], finite elements Computer: multi-core systems or cluster computers [20], or employing either spherical harmonics or plane waves as basis functions and integrating the resulting ordinary differ- Operating system: any ential equations [21, 22]. Complementary to the mentioned Has the code been vectorized or parallelized?: parallelized using MPI numerical methods quantum simulations of the Dirac equation RAM: typically 10 megabyte to 1 gigabyte depending on the chosen [23] are also an active field of current research. probelem size State of the art large scale calculations of the time-dependent Classification: 2.7 Schrödinger equation [24, 25], which is the nonrelativistic limit External routines/libraries: Boost [1], LAPACK [2] of the Dirac equation, often utilize Krylov subspace methods Nature of problem: solving the time-dependent Dirac equation in two and in particular the Lanczos algorithm [26–28]. Although the spatial dimensions Lanczos algorithm was known since the 1950s, this approach Solution method: Lanczos propagator gained popularity not until the 1980s when it was applied to Running time: depending on the problem size and computer hardware time-independent [29] and time-dependent [30, 31] problems typically several minutes to several days of nonrelativistic quantum mechanics. Krylov subspace meth- ods have the virtue that their applicability does not depend on References: the manner how time and space are discretized. Furthermore, [1] Boost C++ Libraries, http://www.boost.org they are rather easy to parallelize and therefore suitable for [2] LAPACK–Linear Algebra PACKage, http://www.netlib.org/ today’s prevalent parallel hardware architectures like compute lapack/ clusters [32] or high-performance graphics cards [33]. As the arXiv:1407.7370v2 [physics.comp-ph] 30 Dec 2014 Dirac equation and the Schrödinger equation share the same Hermitian structure, it appears natural to apply Krylov sub- 1. Introduction space methods also to relativistic quantum mechanical prob- lems. Thus, it is the purpose of this article to evaluate the performance of the Lanczos algorithm when it is applied to the The Dirac equation is the fundamental equation of motion for relativistic Dirac equation. describing the quantum evolution of a charged spin one-half This paper is organized as follows. In order to make the paper self-contained and to introduce some notations we char- acterize the Lanczos algorithm in Section 2 and show how it ∗ [email protected] can help to solve Hermitian eigenvalue problems. In Section 3 y [email protected] we will briefly cover the Dirac equation. Furthermore, we will 2 explain in Section 4 how the time evolution operator can be q = b= b 1 k k2 approximated using the Lanczos algorithm. Numerical results z = Aq1 are presented in Section 5 for the relativistic eigenproblem and for i = 1 to k 1 do − in Section 6 for the time-dependent Dirac equation. Finally, we αi = qi z · will present our parallel implementation of the Lanczos Dirac z = z αi qi β = −z propagator and show some benchmark results in Section 7. i k k2 qi+1 = z/βi z = Aqi+1 βi qi end for − 2. The Lanczos algorithm αk = qk z · FIG. 1: The Lanczos algorithm calculates the orthonormal basis q1, Before we will briefly summarize the Lanczos algorithm and q ,...,q of the Krylov subspace (A; b) of the N N matrix A. its properties we have to introduce the notion of a Krylov 2 k Kk × For N = k the matrix Q = [q1;:::; qN ] and the tridiagonal matrix T subspace. A Krylov subspace of dimension k generated by are defined in (2) such that the matrix A factorizes as A = QTQy. an N N matrix A is spanned by the successive powers of A applied× to some given vector b 2 k 1 which is frequently called the Lanczos relation, holds, where (A; b) = span b; Ab; A b;:::; A − b ; 1 k N : k Q(k) is formed by the first k column vectors q and T(k) is the K ≤ ≤ (1) i n o symmetric tridiagonal matrix formed by α to αk and β to For every Hermitian matrix A there is a unitary transformation 1 1 βk 1. Because the Lanczos algorithm in Fig. 1 performs only that turns the matrix into tridiagonal form, that is, − matrix-vector products (and inner products) it is sufficient if α1 β1 the action of the matrix A on some vector can be computed. It β1 α2 β2 is not necessary to store the matrix elements of A explicitly, 0 :: :: :: 1 which is a major advantage of the Lanczos algorithm. QyAQ = T = B : : : C : (2) B C Since the transformation Q is unitary, the matrices A and T B βN 2 αN 1 βN 1C B − − − C are similar and therefore they have the same set of eigenvalues B βN 1 αN C B − C and the eigenvectors ai of A are related to the eigenvectors ti B C The unitary transformation@B matrix Q and the tridiagonalAC matrix of T via T can be determined via the Lanczos algorithm. The columns ai = Qti : (6) of the matrix Q are conveniently labeled qi and are called the Lanczos vectors. The vectors q to q form an orthonormal 1 k ffi basis of the Krylov subspace (A; b). The Lanczos algorithm In many applications it is su cient to know some eigenval- k A T(k) is an iterative procedure thatK is based on the two equations ues and eigenvectors of . Because the matrix is the representation of A in the Krylov subspace k(A; b) and as a α = q Aq ; (3a) consequence of the Lanczos relation (5) theK approximation i i · i βi qi+1 = Aqi αi qi βi 1 qi 1 : (3b) − − − − A Q(k)T(k)Q(k)y (7) These equations correspond to a classical Gram-Schmidt or- ≈ thogonalization. One can show that due to the Hermiticity of A, holds. Thus, some of the eigenvalues λi of A may be approxi- the newly constructed vector qi+1 is automatically orthogonal (k) (k) mated by the eigenvalues λi of T with k N, that is when to all previous Lanczos vectors, except the last two. There- the Lanczos iteration is stopped after k iterations. Approximate fore, the classical Gram-Schmidt orthogonalization reduces to eigenvectors of A can be obtained by the subtraction of the contributions from two previous vectors, shown in Eq. (3b). (k) (k) (k) ai a = Q t : (8) Due to the well-known stability issues of the classical Gram- ≈ i i Schmidt algorithm, Paige [34] suggested to replace (3) by a The error of the approximate eigenvalues is bounded by [35] modified Gram-Schmidt orthogonalization against the last two previous vectors. With the modified Gram-Schmidt orthogo- (k) (k) k ∆λ = min λ λ j βkti ; (9) nalization Eq. (3a) becomes i j i − ≤ k αi = qi (Aqi βi 1 qi 1) ; (4) where t denotes the kth (the last) component of the ith eigen- − − i · − (k) k vector of the matrix T . Furthermore, βkt equals the residual which is in exact arithmetic equivalent to (3a) because qi and i of the ith eigenvector, that is, qi 1 are orthogonal. This leads to the Lanczos algorithm as shown− in Fig. 1. Using an arbitrary nonzero starting vector b it Aa(k) λ(k) a(k) = β tk ; (10) calculates the columns of the matrix Q iteratively such that (2) i − i i 2 k i is fulfilled. After each iteration with 1 < k < N the relation where 2 denotes the Euclidean vector norm. The error es- (k) (k) (k) k·k AQ = Q T + [0;:::; 0; βk qk+1] ; (5) timate (9) allows one to monitor the error after each iteration k 1 times and to stop as soon as a sufficient accuracy has been reached.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages10 Page
-
File Size-