Preconditioned descent algorithm for rapid calculations of magnetohydrodynamic equilibria

Abstract Conjugate gradient descent algorithms have been used in several magnetohydrodynamic (MHD) equilibrium codes to find numerical minima of the MHD energy and thus to locate local stable equilibria. Numerical convergence studies with the spectral equilibrium code VMEC (variational moments equilibrium code) have shown that the number of descent iterations required to obtain a fixed level of convergence grows linearly with the number of radial mesh points. This undesirable mesh dependence is due to the quadratic dependence on the radial mesh spacing of the condition number for the linearized discrete MHD equations. By use of a preconditioning matrix to coalesce the eigenvalues of the linearized MHD forces around unity, it is possible to reduce the condition number substantially and thereby nearly eliminate the mesh size dependence of the convergence rate of the descent algorithm. An invertible, positive-definite tridiagonal preconditioning matrix is derived from the force equations used in VMEC, and the improvement in temporal convergence is demonstrated for several three-dimensional equilibria.