Fast eigenvalue calculations in a massively parallel plasma turbulence code
Magnetic fusion aims at providing CO2 CO 2 free energy for the 21st century and well beyond. However, the success of the international fusion experiment ITER (currently under construction) will depend to a large degree on the value of the so-called energy confinement time. One of the most advanced tools describing the underlying physical processes is the highly scalable (up to at least 32,768 cores) plasma turbulence code GENE. GENE solves a set of nonlinear partial integro-differential equations in five-dimensional phase space by means of the method of lines, with a 4th order explicit RungeKutta scheme for time integration. To maximize its efficiency, the code computes the eigenspectrum of the linearized equation to determine the largest possible timestep which maintains the stability of the method. This requires the computation of the largest (in terms of its magnitude) eigenvalue of a complex, non-Hermitian matrix whose size may range from a few millions to even a billion. SLEPc, the Scalable Library for Eigenvalue Problem Computations, is used to effectively compute this part of the spectrum. Additionally, eigenvalue computations can provide new insight into the properties of plasma turbulence. The latter is driven by a number of different unstable modes, including dominant and subdominant ones, that can be determined employing SLEPc. This computation is more challenging from the numerical point of view, since these eigenvalues can be considered interior, and also because the linearized operator is available only in implicit form. We analyze the feasibility of different strategies for computing these modes, including matrix-free spectral transformation as well as harmonic projection methods.
plasma physics complex non-hermitian eigenproblem rightmost eigenvalues