Parallel coupling: problems arising in the context of magnetic fusion
John R. CaryProfessor, University of Colorado
CEO, Tech-X Corporation
2
The nuclear fusion produces energy: D + T (He4 + 3.53 MeV) + (n + 14.06 MeV)
Neutron energy (14 MeV) collected at
walls
Courtesy of Don Batchelor, ORNL
Alpha energy (3.5 MeV) deposited in
plasma
3
Heat (to overcome repulsion) and hold particles in magnetic traps
• Heat the particles so that the average energy is ~ 100,000,000F (plasma)
• Contain plasma for many reactions to happen
• Not overheat, which can lead to instability or confinement reduction
+ +
-
-
B
Figures from Don Batchelor
4
MHD codes compute growth of harmful structures
• Particles move rapidly along field lines
• Topology change means hot particle near inside can reach outside
• Temperature flattens over width of island
5
ICRF fast waves and mode converted ion Bernstein and ion cyclotron waves in Alcator C-Mod and ASDEX Upgrade.
RF codes used to predict deposition of wave energy and momentum
http://psfcwww2.psfc.mit.edu/rf2005/
TORIC:•Solves both the ICRF and LHRF wave equation •Uses a mixed finite element - spectral basis representation. •Solves block tri-diagonal with Scalapack.
•Scalable solver allows millimeter resolution
Full-wave LHRF field solutions at millimeter wavelengths over the entire tokamak cross-section.
6
Coupling RF and MHD can eliminate the harmful
structures
• Localized momentum deposition differential on the particles
• Currents can be induced– Local: counteract current
spike near island– Global: counteract island
drive (′, q)
• Not much current required (IRF/Iplasma ~ 3%)
Center island current out of
plane
7
Prediction of process requires coupling of very different parallel codes
• TORIC: RF code computing– Toroidally fourier– Poloidally fourier– Finite element in minor radius– 1D decomposition
• NIMROD: MHD evolution– Toroidally fourier– Finite elements radially and poloidally– 2D decomposition
8
Spatial Domain TransformationsAll needed transformations are linear, and can be
implemented as matrix-vector multiplication
vgB(t) = FBCBvB(t)
vgA(t) = GTABvg
B(t)
vA(t) = CA(MA)-1FAvgA(t)
Code B representation
Transformation to cylindrical coordinate system
Possible Fourier synthesis
MxN coupler
Evaluation at Gauss quadrature points
Possible Fourier analysis
Mass matrix inversion to find representation for code B
Transformation from cylindrical coordinate system
Code A representation
9
Questions
• Should we be generic?– Is the performance hit of being generic
excessive?– Should we do a particular problem first?– How will we overlap communication and
computation?
• How do we get there?– Is retrofitting old codes the way to go– Do we need a new framework for component
management?