# Solving the 3D MHD equilibrium equations in toroidal geometry by Newton's method

## Abstract

We describe a novel form of Newton's method for computing 3D MHD equilibria. The method has been implemented as an extension to the hybrid spectral/finite-difference Princeton Iterative Equilibrium Solver (PIES) which normally uses Picard iteration on the full nonlinear MHD equilibrium equations. Computing the Newton functional derivative numerically is not feasible in a code of this type but we are able to do the calculation analytically in magnetic coordinates by considering the response of the plasma's Pfirsch-Schlueter currents to small changes in the magnetic field. Results demonstrate a significant advantage over Picard iteration in many cases, including simple finite-{beta} stellarator equilibria. The method shows promise in cases that are difficult for Picard iteration, although it is sensitive to resolution and imperfections in the magnetic coordinates, and further work is required to adapt it to the presence of magnetic islands and stochastic regions.

- Authors:

- Princeton Plasma Physics Laboratory, Princeton University, NJ (United States). E-mail: h.oliver@niwa.co.nz
- Princeton Plasma Physics Laboratory, Princeton University, NJ (United States). E-mail: reiman@pppl.gov
- Princeton Plasma Physics Laboratory, Princeton University, NJ (United States). E-mail: monticello@pppl.gov

- Publication Date:

- OSTI Identifier:
- 20687269

- Resource Type:
- Journal Article

- Resource Relation:
- Journal Name: Journal of Computational Physics; Journal Volume: 211; Journal Issue: 1; Other Information: DOI: 10.1016/j.jcp.2005.05.007; PII: S0021-9991(05)00264-0; Copyright (c) 2005 Elsevier Science B.V., Amsterdam, The Netherlands, All rights reserved; Country of input: International Atomic Energy Agency (IAEA)

- Country of Publication:
- United States

- Language:
- English

- Subject:
- 71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSICS; COORDINATES; EQUATIONS; GEOMETRY; MAGNETIC FIELDS; MAGNETIC ISLANDS; MAGNETOHYDRODYNAMICS; MHD EQUILIBRIUM; NEWTON METHOD; NONLINEAR PROBLEMS; STOCHASTIC PROCESSES; THREE-DIMENSIONAL CALCULATIONS

### Citation Formats

```
Oliver, H.J., Reiman, A.H., and Monticello, D.A.
```*Solving the 3D MHD equilibrium equations in toroidal geometry by Newton's method*. United States: N. p., 2006.
Web. doi:10.1016/j.jcp.2005.05.007.

```
Oliver, H.J., Reiman, A.H., & Monticello, D.A.
```*Solving the 3D MHD equilibrium equations in toroidal geometry by Newton's method*. United States. doi:10.1016/j.jcp.2005.05.007.

```
Oliver, H.J., Reiman, A.H., and Monticello, D.A. Sun .
"Solving the 3D MHD equilibrium equations in toroidal geometry by Newton's method". United States.
doi:10.1016/j.jcp.2005.05.007.
```

```
@article{osti_20687269,
```

title = {Solving the 3D MHD equilibrium equations in toroidal geometry by Newton's method},

author = {Oliver, H.J. and Reiman, A.H. and Monticello, D.A.},

abstractNote = {We describe a novel form of Newton's method for computing 3D MHD equilibria. The method has been implemented as an extension to the hybrid spectral/finite-difference Princeton Iterative Equilibrium Solver (PIES) which normally uses Picard iteration on the full nonlinear MHD equilibrium equations. Computing the Newton functional derivative numerically is not feasible in a code of this type but we are able to do the calculation analytically in magnetic coordinates by considering the response of the plasma's Pfirsch-Schlueter currents to small changes in the magnetic field. Results demonstrate a significant advantage over Picard iteration in many cases, including simple finite-{beta} stellarator equilibria. The method shows promise in cases that are difficult for Picard iteration, although it is sensitive to resolution and imperfections in the magnetic coordinates, and further work is required to adapt it to the presence of magnetic islands and stochastic regions.},

doi = {10.1016/j.jcp.2005.05.007},

journal = {Journal of Computational Physics},

number = 1,

volume = 211,

place = {United States},

year = {Sun Jan 01 00:00:00 EST 2006},

month = {Sun Jan 01 00:00:00 EST 2006}

}