Next Article in Journal
Tailoring the Chemistry of Plasma-Activated Water Using a DC-Pulse-Driven Non-Thermal Atmospheric-Pressure Helium Plasma Jet
Next Article in Special Issue
Amplitude Modulation And Nonlinear Self-Interactions of the Geodesic Acoustic Mode at the Edge of MAST
Previous Article in Journal
Acinetobacter baumannii Deactivation by Means of DBD-Based Helium Plasma Jet
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Computing the Double-Gyroaverage Term Incorporating Short-Scale Perturbation and Steep Equilibrium Profile by the Interpolation Algorithm

by
Shuangxi Zhang
1,*,
Michel Mehrenberger
2 and
Christophe Steiner
1
1
Institut de Recherche Mathématique Avancée, 7 rue René Descartes, 67084 Strasbourg CEDEX & Inria TONUS Team, France
2
Aix Marseille Univ, CNRS, Centrale Marseille, I2M, Marseille, France
*
Author to whom correspondence should be addressed.
Plasma 2019, 2(2), 91-126; https://doi.org/10.3390/plasma2020009
Submission received: 6 February 2019 / Revised: 3 April 2019 / Accepted: 3 April 2019 / Published: 9 April 2019
(This article belongs to the Special Issue Magnetic Confinement Fusion)

Abstract

:
In the gyrokinetic model and simulations, when the double-gyroaverage term incorporates the combining effect contributed by the finite Larmor radius, short scales of the perturbation, and steep gradient of the equilibrium profile, the low-order approximation of this term could generate unignorable error. This paper implements an interpolation algorithm to compute the double-gyroaverage term without low-order approximation to avoid this error. For a steep equilibrium density, the obvious difference between the density on the gyrocenter coordinate frame and the one on the particle coordinate frame should be accounted for in the quasi-neutrality equation. A Euler–Maclaurin-based quadrature integrating algorithm is developed to compute the quadrature integral for the distribution of the magnetic moment. The application of the interpolation algorithm to computing the double-gyroaverage term and to solving the quasi-neutrality equation is benchmarked by comparing the numerical results with the known analytical solutions. Finally, to take advantage of the interpolation solver clearer, the numerical comparison between the interpolation solver and a classical second order solver is carried out in a constant theta-pinch magnetic field configuration using SELALIB code. When the equilibrium profile is not steep and the perturbation only has the non-zero mode number along the parallel spatial dimension, the results computed by the two solvers match each other well. When the gradient of the equilibrium profile is steep, the interpolation solver provides a bigger driving effect for the ion-temperature-gradient modes, which possess large polar mode numbers.

1. Introduction

Micro-scale turbulence plays a significant role in the confinement capability of magnetized fusion plasma through its interaction with low-frequency zonal flow [1,2,3,4,5,6,7], equilibrium profile at the pedestal region, and edge localized modes [8,9,10,11,12], etc. The importance of the pedestal region is reflected by the fact that the pressure of the plasma core is proportional to the pressure at the pedestal top [13,14,15]. The gradient of the equilibrium temperature and density at the pedestal region could be very sharp; alternatively, the truncation of exp ( ρ 0 · ) acting over n 0 or T 0 at the first order, which is used by the standard gyrokinetic model [16,17,18], is not a good approximation, where ρ 0 is the Larmor radius vector defined as
ρ 0 ( x , μ , θ ) = 1 q s 2 μ m s B e 1 cos θ + e 2 sin θ .
Here, q s , m s , μ are the particles’ charge, mass, and the magnetic moment on the guiding-center coordinate frame; e 1 , e 2 are the unit vectors perpendicular to unit vector b of the equilibrium magnetic field, and e 1 , e 2 , b obey the right-hand rule; B is the magnitude of the magnetic field; θ is the gyrophase angle; n 0 , T 0 are the equilibrium density and temperature profile. In gyrokinetic theory, the first gyroaverage term could incorporate the effect contributed by the finite Larmor radius and short scales of the perturbation at the core and edge tokamak plasma, while the double-gyroaverage term (DGT) incorporates the combining effect contributed by the finite Larmor radius, the short-scale perturbation and the steep-gradient equilibrium profile within the edge transport barrier of tokamak plasma [18,19,20,21]. However, in the standard electrostatic gyrokinetic model and simulations, the approximation of DGT consists of up to the first order truncation of the Taylor expansion of the equilibrium profile and the second order truncation of the expansion of the perturbative potential [16,17,22,23,24,25,26,27,28]. The details of this method can be found in Appendix A. These kinds of low-order approximation are not sufficient concerning the short-scale perturbations and the equilibrium profile possessing the steep gradient.
To overcome the mentioned drawbacks of the low-order approximation of DGT, this paper develops an interpolation algorithm to compute DGT for the purpose of the resolving of the short-scale perturbation and the steep equilibrium profile together. The interpolation algorithm can approach DGT with arbitrary accuracy by choosing enough sampling points on the Larmor circle, with only the constraint from the length scale of the mesh. Meanwhile, contrary to the traditional way, the steep equilibrium density profile should not keep the same before and after the gyroaverage operation, which is denoted by the symbol J in this paper. And the obvious difference between the density on gyrocenter coordinate and the one on the particle coordinates should be accounted for in the quasi-neutrality equation(QNE). The obvious difference is revealed by Figure 1, for which the normalization scheme can be found in Section 3.3 and the parameters to obtain this figure are provided in Section 7.3.3. In Figure 1, the purple line denotes the equilibrium density profile on the gyrocenter coordinates, which is given as the initial condition, while the density profiles on the particle coordinate derived by the gyroaverage operation computed with different number of μ are shown by other curves. The numerical integration of μ is done by the Euler–Maclaurin-based quadrature integration algorithm.
As a comparison to the interpolation solver, a classical 2nd order truncation of DGT is carried out in this paper to obtain QNE with the 2nd-order accuracy. It consists of the truncation of the exponential operator exp ( ρ 0 · ) over the potential up to the second order and the truncation of the operator exp ( ρ 0 · ) acting on the density up to the first order. The numerical simulations are carried out to compare the two solvers. Since this paper is to compare the two solvers in general purpose, the deduction of flux-surface average of the potential from the total potential is not carried out to obtain the electrons’ adiabatic distribution. For the equilibrium profile without steep gradient, both algorithms have almost the same performance in terms of the perturbation only possessing the mode number along the parallel spatial dimension. For the steep equilibrium profile, the interpolation algorithm could provide a stronger driving effect for the perturbation of high polar mode numbers, and the saturation time of these modes computed by the interpolation algorithm is earlier.
The remaining parts of this paper are arranged as follows. Section 2 introduces the orders used in deriving the gyrokinetic model. The DGT and QNE incorporating the short-scale perturbation and steep equilibrium profile on the gyrocenter coordinate frame are derived in Section 3. In Section 4, the interpolation solver is introduced. The benchmark of the interpolation algorithm is done in Section 5 and Section 6 for the case of the single μ and μ obeying the distribution, respectively. The Euler–Maclaurin-based quadrature integrating algorithm is developed in Section 6 to compute the numerical quadrature integral of μ . The application of the interpolation algorithm and the Euler–Maclaurin-based quadrature integrating algorithm to the gyrokinetic simulations is provided by Section 7, where the parallel scheme of the whole simulations is presented.

2. The Basic Orders

There are several basic orders or scales contained by the perturbation. The first one is the length scale O ( ε ) of the nondimensionalized Larmor radius being ε . The second one is the amplitude of the normalized electrostatic potential, whose ε -based order is denoted as O ε σ with the power σ a positive real number. In the magnetically confined fusion plasmas, because the charged particle can nearly migrate freely in the environment with collective interactions, the magnitude of the potential the particles feel must be much smaller than that of its kinetic energy.
The third one is the length scale of the gradient of the electrostatic potential. Define K | ϕ ϕ | and K | ϕ ϕ | , where the subscript ⊥ and ∥ denotes the directions perpendicular and parallel the direction of equilibrium magnetic field, respectively. The gyrokinetic model of this paper adopts the scales for the perturbation
O ε K = O ( 1 ) , O ( ε K ) = O ( ε ) ,
where the short scales of the perturbation are accounted for. For any equilibrium quantity E { n 0 , T 0 } , this paper considers the scale
O ε E E = O ( 1 ) ,
due to the steep gradient of the equilibrium profiles, as well as the following scales
O ε E E = O ( ε ) , O ε U E E = O ( ε ) ,
where U is the parallel velocity and will be given later.

3. QNE Incorporating the Short-Scale Perturbation and Steep Equilibrium Profile

3.1. The Particle Coordinate Density Associated with the Short-Scale Perturbation and Steep Equilibrium Profile

The procedure to derive the gyrokinetic model is composited by two parts. The first one is to derive the coordinate transform by decoupling the gyroangle from the dynamics of the remaining variables, while the second one is to obtain the gyrokinetic quasi-neutrality equation by inducing the transformation of the distribution through the derived coordinate transforms [16,19,29,30]. The first step is accomplished by implementing Lie transform perturbation method on the fundamental Lagrangian one-form. Generally, four kinds of coordinate frameworks are involved in the procedure. The first one is the full-orbit coordinate with the velocity part in Cartesian coordinates. it is denoted as z ¯ ( x , v ) here. The second one is obtained by transforming v into the cylindrical coordinates, and it is written as z ( x , μ 1 , u 1 , θ 1 ) where μ 1 m v 2 2 B ( x ) , u 1 is the velocity along the parallel direction, and θ 1 is the angle between ρ and e 1 . The x component in z is still in full-orbit frame. The third one is the guiding-center coordinates Z ¯ = ( X ¯ , μ ¯ , U ¯ , θ ¯ ) , which is derived by decoupling θ ¯ from the dynamics of the other coordinate components without the presence of the perturbation. The fourth one is the gyrocenter coordinate Z = ( X , μ , U , θ ) which is derived by decoupling θ ¯ from the dynamics of the other coordinate components with the presence of the perturbation. The coordinate transforms between z ¯ , z , Z ¯ and Z are denoted as ψ f : z ¯ z , ψ g c : z Z ¯ and ψ g y : Z ¯ Z , respectively, while the distributions on the four kinds of coordinates are respectively written as f ¯ ( z ¯ ) , f ( z ) , F ¯ ( Z ¯ ) and F ( Z ) .
The coordinate transform ψ g c : z Z ¯ is given by
X ¯ = x ρ 0 ( x , μ 1 , θ 1 ) ,
μ ¯ = μ 1 ,
U ¯ = u 1 ,
θ ¯ = θ 1 .
while the coordinate transform ψ g y : Z ¯ Z is provided by the following equations
X = X ¯ ,
μ = μ ¯ + g 2 μ X ¯ , μ ¯ , θ ¯ ,
U = U ¯ ,
θ = θ ¯ + g 2 θ X ¯ , μ ¯ , θ ¯ .
where
g 2 μ X ¯ , μ ¯ , θ ¯ = q s Ψ X ¯ , μ ¯ , θ ¯ B X ¯ ,
g 2 θ X ¯ , μ ¯ , θ ¯ = q s μ ¯ 0 θ ¯ Ψ X ¯ , μ ¯ , θ ¯ d θ ¯ B X ¯ ,
and
Ψ X ¯ , μ ¯ ϕ X ¯ + ρ 0 Φ ( X ¯ , μ ¯ ) ,
Φ ( X ¯ , μ ¯ ) 1 2 π 0 2 π ϕ X ¯ + ρ 0 d θ ,
ρ 0 ( X ¯ , μ ¯ , θ ¯ ) = 1 q s 2 μ ¯ m s B e 1 cos θ ¯ + e 2 sin θ ¯ .
And through the Lie transform perturbative method, we could derive the following Lagrangian on the gyrocenter coordinate frame
L = q s A X + m s U b · X ˙ + m s q s μ θ ˙ μ B X + m s U 2 2 + Φ ( X , μ ) ,
where μ is a constant. The Euler-Lagrangian equations based on L in Equation (7) provides the equations of motion as follows:
X . = q s U B b × μ B + q s Φ ( X , μ ) q s B ,
U ˙ = B · μ B + q s Φ ( X , μ ) m s B ,
where B = B + m s q s U × b . If the denominate in Equation (8a) is expanded by the order of the small factor m s q s U × b , we could obtain the curvature drift part m U 2 κ e B where κ = B B .
For the Vlasov gyrokinetic simulation, we need to transform the distribution function from the gyrocenter coordinate to the full-orbit coordinate [16]. After obtaining the coordinate transform composited by Equations (3a)–(3d) and (4a)–(4d), given a distribution function on the gyrocenter coordinate F s X , μ , U , t , the distribution function on the full orbit can be derived following the transform chain
F s X , μ , U ψ g y F ¯ s Z ¯ ψ g c f s z .
First, the total distribution function is separated into the sum of an equilibrium one plus a perturbative one as
F s X , μ , U = F s 0 X , μ , U + F s 1 X , μ , U .
Then, the approximation of the distribution on the guiding-center coordinate can be derived based on the coordinate transform given by Equations (4a)–(4d)
F ¯ s Z ¯ = F s X ¯ , μ ¯ + g 2 μ X ¯ , μ ¯ , θ ¯ , U ¯ F s X ¯ , μ ¯ , U ¯ + q s Ψ ( Z ¯ ) B ( Z ¯ ) μ ¯ F s 0 X ¯ , μ ¯ , U ¯ = F s X ¯ , μ ¯ , U ¯ q s Ψ ( Z ¯ ) T s ( Z ¯ ) F s 0 X ¯ , μ ¯ , U ¯ ,
where the equilibrium distribution involving μ is assumed as
F s 0 = m s 2 π T s exp ( μ B T s ) .
The approximation of f s z is derived with Equation (11) as the base
f s z = F s x ρ 0 x , μ 1 , θ 1 , μ 1 , u 1 q s ϕ x F s 0 ( x ρ 0 x , μ 1 , θ 1 , μ 1 , u 1 ) T s ( x ) + q s Φ F s 0 T s x ρ 0 x , μ 1 , θ 1 , μ 1 , u 1 .
where Φ F s 0 T s x ρ 0 x , μ 1 , θ 1 , μ 1 , u 1 is the origin of DGT and comprises the effect combining together the finite Larmor radius, short-scale perturbation, and steep equilibrium profile.
We assume that the equilibrium distribution F s 0 can be decomposed as the product between the parallel part and the perpendicular part
F s 0 ( x , μ 1 , u 1 ) = n 0 ( x ) F s 0 x , u 1 F s 0 x , μ 1 ,
with probability conservation satisfied by
F s 0 d u 1 = 1 ,
F s 0 B ( x ) m s d μ 1 d θ 1 = 1 ,
where under the equilibrium condition, the metric B ( x ) / m s is used.
Then, through the integral n s x , t = f s z B ( x ) m s d μ 1 d u 1 d θ 1 , the density can be assembled as
n s x = n s g 0 ( x ) q s n s g 0 ϕ T s + q s ϕ ˜ x + n s g 1 x , t ,
with
n s g 0 x = F s 0 x ρ 0 z , μ 1 , u 1 B x m s d μ 1 d u 1 d θ 1 ,
n s g 1 x , t = F s 1 x ρ 0 z , μ 1 , u 1 B x m s d μ 1 d u 1 d θ 1 ,
ϕ ˜ x = Φ F s 0 T s x ρ 0 , μ 1 , u 1 B x m s d μ 1 d u 1 d θ 1 .
Here, the metric B ( x ) / m s of the phase space is used.

3.2. QNE Associated with the Adiabatic Distribution of Electron and the Steep Equilibrium Profile on Gyrocenter Coordinate Frame

As shown in Figure 1, the equilibrium density profile possessing the steep gradient on the gyrocenter coordinate frame is obviously different from the one on the particle coordinate frame after the gyroaverage operation. Therefore, contrary to the traditional way, the implementation of the equilibrium density on the particle coordinate frame should be different from the one on the gyrocenter coordinate frame if its profile is steep in the radial dimension.
We consider a plasma only including protons and electrons. The electrons obey the adiabatic distribution on the particle coordinate space
n e ( x ) = n g 0 ( x ) + e n g 0 ( x ) T e ϕ ( x ) ,
where the flux-surface average of the potential is not deducted from the total potential, because our purpose is to compare the two solvers. n g 0 ( x ) is the equilibrium density in the particle coordinate space and needs to be solved. The initial equilibrium distribution of ion is given on the guiding-center coordinate system by
F i 0 ( x , μ , U ) = n 0 ( x ) ( 2 π T i ( x ) ) 3 / 2 exp ( U 2 2 T i ( x ) μ B ( x ) T i ( x ) ) ,
from which the equilibrium density on the guiding-enter coordinate is easily derived as n 0 ( x ) . For the scales given by Equation (2), the equilibrium density on the particle coordinate space should be derived as
n 0 = F i 0 ( x ρ 0 , μ , U ) B m i d μ 1 d U d θ
Taking into account of the quasi-neutrality equilibrium, it is derived that
n g 0 ( x ) = n 0 ( x ) .
Then, QNE of this plasma is
e ϕ T i e ϕ ˜ n g 0 + e ϕ T e = n i 1 n g 0 .

3.3. Normalization

In this paper, the quantities t , v , B , l , μ , T , ϕ are normalized by t 0 m B 0 q i , v 0 T e 0 m i , B 0 , l 0 m v 0 e B 0 , μ 0 T e 0 B 0 , T e 0 and ϕ 0 T e 0 q i , respectively, where T e 0 T e ( r p ) and r p [ r m i n , r m a x ] is the radial position of the peak of the initial distribution function. Then, by choosing the equilibrium perpendicular distribution given by Equation (12), the normalized QNE is
ϕ ( x ) T i ( x ) Φ ˜ ( x ) n g 0 ( x ) + ϕ ( x ) T e ( x ) = n i 1 x n g 0 ( x ) ,
with the normalized DGT
Φ ˜ x = Φ F i 0 T i x ρ 0 , μ 1 , u 1 B x d μ 1 d u 1 d θ 1 ,
and F 0 = n 0 r exp U 2 2 T i ( r ) μ B T i ( r ) ( 2 π T i ( r ) ) 3 / 2 .

4. QNE Solver Comprising the Interpolation Algorithm to Compute DGT

4.1. The Algorithm to Compute the Interpolation Matrixes A s p l and A l , ρ j c o n t r in Finite Element Method

In this paper, we sometimes use the symbols J 1 ( μ ) and J 2 ( μ ) to denote the first and the second gyroaverage associated with the magnetic moment μ , specifically,
J 1 ( μ ) ϕ ( x ) = 1 2 π ϕ ( x + ρ 0 ( μ ) ) d θ ,
J 2 ( μ ) ϕ ( x ) = 1 2 π ϕ ( x ρ 0 ( μ ) ) d θ .
In our interpolation scheme of the finite element method(FEM), the following cubic spline function is used as the basis function
B α ( x ) = 1 6 h 3 ( x x α 2 ) 3 if x α 2 x x α 1 h 3 + 3 h 2 ( x x α 1 ) + 3 h ( x x α 1 ) 2 3 ( x x α 1 ) 3 if x α 1 x x α h 3 + 3 h 2 ( x α + 1 x ) + 3 h ( x α + 1 x ) 2 3 ( x α + 1 x ) 3 if x α x x α + 1 ( x α + 2 x ) 3 if x α + 1 x x α + 2 0 otherwise
The spatial domains ( x , y , z ) , where z is the coordinate parallel to the equilibrium magnetic unit vector, the parallel velocity U and the magnetic moment μ are equally discretized.
To obtain the matrix form, the physical quantities on the grid mesh are written in the vectors as follows:
ψ h , p : = ψ ( x h , y p ) , h { 0 , , N x } ; p { 0 , , N y 1 } ψ h , p , j : = ψ ( x h , y p , μ j ) , j { 1 , , N μ } ψ h , p , j k : = ψ ( x h , y p , μ j , U k ) , k { 1 , , N U } ϕ : = ( ϕ 0 , 0 , , ϕ N x , 0 , ϕ 0 , 1 , , ϕ N x , 1 , , ϕ 0 , N y 1 , , ϕ N x , N y 1 ) t , Φ j : = ( Φ 0 , 0 , j , , Φ N x , 0 , j , Φ 0 , 1 , j , , Φ N x , 1 , j , , Φ 0 , N y 1 , j , , Φ N r , N y 1 , j ) t , F s j k : = ( F 0 , 0 , j k , , F N x , 0 , j k , F 0 , 1 , j k , , F N x , 1 , j k , , F 0 , N y 1 , j k , , F N x , N y 1 , j ) t , Φ ¯ j k : = ( Φ ¯ 0 , 0 , j k , , Φ ¯ N x , 0 , j k , Φ ¯ 0 , 1 , j k , , Φ ¯ N x , 1 , j k , , Φ ¯ 0 , N y 1 , j k , , Φ ¯ N x , N y 1 , j k ) t , Φ ˜ j k : = ( Φ ˜ 0 , 0 , j k , , Φ ˜ N x , 0 , j k , Φ ˜ 0 , 1 , j k , , Φ ˜ N x , 1 , j k , , Φ ˜ 0 , N y 1 , j k , , Φ ˜ N x , N y 1 , j k ) t .
Here, ϕ and Φ are the electrostatic potential and the first gyroaverage of the potential, respectively. In addition, the definition of F s , Φ ¯ and Φ ˜ will be given in the subsequent context.
In the finite element method with the cubic spline basis, the potential on the grid point ( h , p ) is
ϕ h , p = a , b = 1 2 C h + a , p + b B h + a ( x h ) B p + b ( y p ) ,
where x and y can be the coordinates in the Cartesian frame or in the polar frame. C h + a , p + b is the weight of the two-dimensional basis B h + a B p + b . B h + a ( x h ) / B p + b ( y p ) is the value of the one dimensional basis B h + a / B p + b at the node x h / y p . By assembling ϕ h , p into the vector ϕ as explained before, Equation (24) can be rewritten as the tensor product of two matrixes multiplying the vector C comprising the weight coefficients of all the bases
ϕ = B b B p C ,
where
C ( C 0 , 0 , , C N x , 0 , C 0 , 1 , , C N x , 1 , , C 0 , N y 1 , , C N x , N y 1 ) t ,
and the subscript P denotes the periodic boundary condition used in the y dimension, while b denotes the periodic or natural boundary condition used in x dimension. B b and B P are the matrixes representing the value of B h ( x ) , h { 0 , 1 , 2 , , N x } and B p ( y ) , p { 0 , 1 , , N y 1 } on the nodes of the x and y domains, respectively. Here, B P is of the structure proportional to
4 1 0 1 1 4 1 0 0 0 1 0 1 4 .
Because the rows of B P ( y ) have the circulant property, the matrix B P B b is of the circulant block structure, too. Its inverse is defined as
A s p l ( B P B b ) 1 = B P 1 B b 1 .
which is still a circulant block matrix and can be written as
A s p l = A 0 s p l A 1 s p l A N y 1 s p l A N y 1 s p l A 1 s p l A 1 s p l A N y 1 s p l A 0 s p l M ( N x + 1 ) × N y , ( N x + 1 ) × N y ( R ) ,
where A p s p l is defined as
A p s p l = B P 1 ( 1 , p ) B b 1 ,
and B P 1 ( 1 , p ) is the ( 1 , p ) th element of B P 1 .
The gyroaverage operations J l j with l = 1 , 2 on the potential ϕ ( x , y ) at the node ( x h , y p ) can be rewritten in the following form
J l j ϕ ( x h , y p ) = 1 N θ m = 0 N θ 1 ϕ C l j , h p m , 1 , C l j , h p m , 2 = 1 N θ m = 0 N θ 1 a , b = 1 2 C l j , D l h p m a , D l h p m b v a l ( a , b ) .
Here, the subscript j means this gyroaverage is associated with the particles of the magnetic moment μ j , and N θ is the number of the points interpolated on the Larmor circle which surrounds the grid point ( x h , y p ) and is of the radius ρ j equaling 2 μ j . The global coordinates of the mth sampling point on the Larmor circle surrounding the grid point ( h , p ) are computed as
C l j , h p m , 1 = C min , 1 + ( d l h p m , 1 1 ) δ 1 + c l m 1 ,
C l j , h p m , 2 = C min , 2 + ( d l h p m , 2 1 ) δ 2 + c l m 2 .
In Equations (28a) and (28b), C min , 1 and C min , 2 are respectively the minimal value of the x and y domain; δ 1 and δ 2 are the uniform step length in the respective dimension; 0 c l m 1 < δ 1 and 0 c l m 2 < δ 2 hold. d l h p m , 1 and d l h p m , 2 are the global node numbers associated with the sampling point on the Larmor circle denoted by the indexes h , p , m . C l j , h p m , 1 and C l j , h p m , 2 can be the global coordinates in the Cartesian or polar coordinate frames. In the 2nd equality of Equation (32), the potential at the sampling point C l j , h p m , 1 , C l j , h p m , 2 is written by the sum of the contribution of the cubic spline basis. We use D l h p m a and D l h p m b to denote the global node number of the grid point associated with the indexes ( a , b ) . This grid point is where the basis function locates. Then, v a l ( a , b ) as the spline function value at C l j , h p m , 1 , C l j , h p m , 2 is given by
v a l ( a , b ) B D l h p m a ( c m 1 ) B D l h p m b ( c l m 2 ) .
C l j , D l h p m a , D l h p m b in Equation (32) is the weight coefficient of the cubic spline function locating at ( D l h p m a , D l h p m b ) . Eventually, by summing the repeated contribution nodes together, the gyroaverage of ϕ could be written into a matrix form
J l j ϕ = A l , ρ j c o n t r C l j .
Here, we want to mention that due to the finite value of μ j , some sampling points on the Larmor circle of the grid point close to the boundary could locate out of the chosen domain. At the outer boundary, for a realistic plasma, the amplitude of the fluctuation of the potential is close to zero. So we approximate the contribution of such points by the contribution of their projection points on the boundary.
The elements of A l , ρ j c o n t r can be denoted as A l , ρ j c o n t r ( p 1 + h 1 , p 2 + h 2 ) with p 1 , p 2 { 0 , , N y 1 } and h 1 , h 2 { 0 , , N x } . To compute A l , ρ j c o n t r , due to its circulant block structure, we only need to compute the block matrixes associated with p 1 = 0 . The other rows of block matrixes associated with p 1 0 can be obtained by permuting the indexes p 2 s for p 1 times. Specifically, A l , ρ j c o n t r is of the following structure
A l , ρ j c o n t r = A l , ρ j , 0 c o n t r A l , ρ j , 1 c o n t r A l , ρ j , N y 1 c o n t r A l , ρ j , N y 1 c o n t r A l , ρ j , 1 c o n t r A l , ρ j , 1 c o n t r A l , ρ j , N y 1 c o n t r A l , ρ j , 0 c o n t r M ( N x + 1 ) × N y , ( N x + 1 ) × N y ( R )
And the algorithm to compute A l , ρ j c o n t r ( h 1 , p 2 + h 2 ) is given by Algorithm 1.
Algorithm 1 Compute A l , ρ j c o n t r ( h 1 , p 2 + h 2 )
Input: μ j , l , δ 1 , δ 2 , N x , N y , N θ , boundary condition
  1: for h 1 = 0 , N x do
  2:         for m = 1 , N y do
  3:                 get d l h 1 0 m , 1 , d l h 1 0 m , 2
  4:                 get c 1 , c 2
  5:                 get v a l ( 4 , 4 )
  6:                 for a = 1 , 2 do
  7:                         for b = 1 , 2 do
  8:                                 get D l h 1 0 m a , D l h 1 0 m b
  9:                                        A l , ρ j c o n t r ( h 1 , D l h 1 0 m a + D l h 1 0 m b ) = A l , ρ j c o n t r ( h 1 , D l h 1 0 m a + D l h 1 0 m b ) + v a l ( a , b )

4.2. Matrix Form of DGT

The polar coordinate system is used for the QNE solver in this paper. To obtain the QNE solver comprising the interpolation algorithm, QNE in Equation (22) is rewritten as
n g 0 ( x ) ϕ ( x ) T i ( x ) Φ ˜ ( x ) + n g 0 ( x ) ϕ ( x ) T e ( x ) = n i 1 x .
Φ ˜ x can be written as the discrete sum over μ and U as
Φ ˜ x = k j Φ ˜ x , μ j , U k B δ μ j δ U k ,
where δ μ j and δ U k are respectively the step length for μ and U. Here,
Φ ˜ x , μ j , U k 1 2 π Φ F s x ρ 0 j , μ j , U k d θ
and in cylindrical coordinate frame, F s is defined as
F s n 0 r exp U 2 2 T s ( r ) μ B T s ( r ) ( 2 π T s ( r ) ) 1 / 2 T s 2 ( r ) .
The first gyroaverage of ϕ with respect to the magnetic moment μ j is denoted as Φ ( x , μ j ) , whose value at polar mesh node ( r h , Θ p ) is written as Φ h , p , j . According to Equation (32), it is computed on the grid discretized by the following right Riemann sum:
Φ h , p , j = 1 N θ l = 0 N θ 1 ϕ r h cos Θ p + ρ j cos 2 π l N θ , r h sin Θ p + ρ j sin 2 π l N θ ,
where ρ j = 2 μ j . In the same way, Φ ˜ h , p , j k is used to denote the value of Φ ˜ ( x , μ j , U k ) at grid point ( r h , Θ p ) as the second gyroaverage with respect to the magnetic moment μ j . It is also approximated by the following right Riemann sum:
Φ ˜ h , p , j k = 1 N θ l = 0 N θ 1 Φ ¯ r h cos Θ p ρ j cos 2 π l N θ , r h sin Θ p ρ j sin 2 π l N θ , μ j , U k ,
where
Φ ¯ ( x , μ , U ) ( Φ F s ) ( x , μ , U ) .
We should pay attention to the respective symbols + and − in Equations (32) and (33). The cubic splines interpolation is used to calculate ϕ at the sampling point on the Larmor circle. The radial projection on the boundaries for the points outside the domain is used and we consider 2 π -periodic condition in Θ .
The specific procedures to obtain the matrix form of DGT is given by:
  • Construction of the matrix A s p l M ( N r + 1 ) × ( N Θ ) , ( N r + 1 ) × N Θ such that S = A s p l ϕ is the vector of splines coefficients. Alternatively, ϕ can be written as ϕ = ( A s p l ) 1 S . The matrix A s p l is independent of the Larmor radius or the magnetic moment μ j , while depending on the equilibrium quantities.
  • For a Larmor radius ρ j = 2 μ j contributed by the magnetic moment μ j , constructing the matrix A l , ρ j c o n t r M ( N r + 1 ) × N Θ , ( N r + 1 ) × N Θ which gives the contribution of the gyroaverage of the radius ρ j as the function of the splines coefficients. Here, l = 1 , 2 denoting the first and the second gyroaverage, respectively.
  • The first gyroaverage is given by Φ j = G 1 , ρ j ϕ , with G 1 , ρ j A 1 , ρ j c o n t r A s p l .
  • The second gyroaverage is written as the matrix form
    Φ ˜ j k = G 2 , ρ j Φ ¯ j k , G 2 , ρ j A 2 , ρ j c o n t r A s p l .
    To obtain the matrix form between Φ ˜ j k and ϕ , the vector product F s j k · Φ j is written as the product between a diagonal matrix denoted as F s j k and Φ j . Eventually, Φ ˜ j k can be written as the matrix form
    Φ ˜ j k = G 2 , ρ j F s j k G 1 , ρ j ϕ .
    where
    F s j k = F s 0 j k 0 0 0 F s 0 j k 0 0 0 F s 0 j k M ( N r + 1 ) × N Θ , ( N r + 1 ) × N Θ ( R )
    F s 0 j k = F 0 j k 0 0 0 F 1 j k 0 0 0 F N r j k M N r × N r ( R )
    Please note that the elements of matrix G 2 , ρ j F s j k G 1 , ρ j only depends on the equilibrium quantities. It can be computed once for all at the beginning of the simulation.
  • Then, the integral of μ contained by the DGT can be formulated as the discrete sum
    Φ ˜ = k = 1 N U j = 1 N μ Φ ˜ j k B δ μ j δ U k
Since F s j k is a diagonal matrix with only the main diagonal elements not equaling zero, the following arrangements of the product order in Equation (34) equal
( G 2 , ρ j F s j k ) G 1 , ρ j = G 2 , ρ j ( F s j k G 1 , ρ j ) .
The product order on the left is chosen in this paper. Then, the product A s p l F s j k is further denoted as A j k s p l in terms of the following expression
A j k s p l = A 0 j k s p l A 1 j k s p l A ( N Θ 1 ) j k s p l A ( N Θ 1 ) j k s p l A 1 j k s p l A 1 j k s p l A ( N Θ 1 ) j k s p l A 0 j k s p l ,
where
A h j k s p l = A h s p l F s 0 j k , h { 0 , 1 , , N Θ 1 } .
Then, Φ ˜ j k in Equation (34) can be written as
Φ ˜ j k = A 2 , ρ j c o n t r A j k s p l A 1 , ρ j c o n t r A s p l ϕ .

4.3. The Fast Algorithm to Solve QNE

Due to the circulant block structure of A s p l , A l , ρ j c o n t r and A j k s p l , they can be transformed as block diagonal matrixes in Fourier basis [31]. The three matrixes are diagonalizable in the Fourier basis as
A s p l = U n D s p l U n , A l , ρ j c o n t r = U n D l , ρ j c o n t r U n , A j k s p l = U n D j k s p l U n ,
where ∗ means the complex conjugate and the other matrixes are defined as follows
D s p l = D 0 s p l D N Θ 1 s p l ,
D l , ρ j c o n t r = D l , ρ j 0 c o n t r D l , ρ j , N Θ 1 c o n t r ,
D j k s p l = D j k , 0 s p l D j k , N Θ 1 s p l .
D m s p l = h = 0 N Θ 1 A h s p l e 2 i π h m N Θ ,
D l , ρ j , m c o n t r = h = 0 N Θ 1 A l , ρ j , h c o n t r e 2 i π h m N Θ ,
D j k , m s p l = h = 0 N Θ 1 A h j k s p l e 2 i π h m N Θ ,
U n = U n , 0 , 0 U n , 0 , N Θ 1 U n , N Θ 1 , 0 U n , N Θ 1 , N Θ 1 , U n , h , l = 1 N Θ e 2 i π h l N Θ I n ,
where I n is the identity matrix of size n × n . Then, Φ ˜ j k in Equation (37) can be written in Fourier basis as
Φ ˜ j k = U n D 2 , ρ j c o n t r D j k s p l D 1 , ρ j c o n t r D s p l U n ϕ F ,
where U n U n = I n × n is used and ϕ F is obtained by implementing Fourier transform on the polar elements of the vector ϕ and needs to be solved.
As explained before, the value of ϕ ( x ) and n 1 ( x ) on the grid points can be assembled to be the vectors ϕ and n 1 . Then, the first term and third term of Equation (30) can be written in a matrix form with only the main diagonal elements of the coefficient matrix unequal to zero.
By writing Φ ˜ j k through the products between the matrixes of diagonal block structure based on the Fourier transform, we can design the following fast algorithm to solve QNE regarding the periodic boundary condition in the polar dimension.
  • Fourier transformation of the vector n 1 on the right side of QNE to get the vector n 1 F on the Fourier basis.
  • Obtain D m s p l , D l , ρ j , m c o n t r and D j k , m s p l by implementing Equation (39) and get the product D 2 , ρ j c o n t r D j k s p l D 1 , ρ j c o n t r D s p l .
  • Use the subroutine of Lapack and Blas to obtain the inverse matrix [ ( n g 0 T i + n g 0 T e ) D 2 , ρ j c o n t r D j k s p l D 1 , ρ j c o n t r D s p l ] 1 , where ( n g 0 T i + n g 0 T e ) is of the same structure with F s j k in Equation (35a).
  • Compute the vector [ ( n g 0 T i + n g 0 T e ) D 2 , ρ j c o n t r D j k s p l D 1 , ρ j c o n t r D s p l ] 1 n 1 F .
  • Implementing the inverse Fourier transform on the polar elements of the vector [ ( n g 0 T i + n g 0 T e ) D 2 , ρ j c o n t r D j k s p l D 1 , ρ j c o n t r D s p l ] 1 n 1 F to obtain ϕ .
The application of polar mesh and FFT enables more quickly computations and provides a base for a future work in more complex geometry.

5. Benchmark of the Interpolation Algorithm for the Single μ Case

To benchmark the interpolation algorithm, we integrate the absolute value of the error of the interpolation solver deviating from the analytical solution over the simulated domain, specifically,
abs error = h , p ( interp ) h p ( anal ) h p δ x 1 δ x 2 ,
where ( interp ) h p and ( anal ) h p denote the value computed by the interpolation solver and by the analytical solution at the mesh node ( h , p ) , respectively. δ x 1 and δ x 2 are the uniform steps in x 1 and x 2 dimensions. For some cases, we also implement the same scheme to the 2nd-order solver.

5.1. 1st Example: Double-Periodic Boundary Condition in Cartesian Coordinate

In this example, the periodic boundary condition is used in both x 1 and x 2 dimensions. According to Equations (A12) and (A13), for the function f ( x ) = cos ( n x 1 + m x 2 ) , the exact solution of J 1 ( μ ) f ( x ) and J 2 ( μ ) J 1 ( μ ) f ( x ) are
J 1 ( μ ) cos ( n x 1 + m x 2 ) = J 0 ( ρ ( μ ) n 2 + m 2 ) cos ( n x 1 + m x 2 ) , J 2 ( μ ) J 1 ( μ ) cos ( n x 1 + m x 2 ) = J 0 2 ( ρ ( μ ) n 2 + m 2 ) cos ( n x 1 + m x 2 ) .
Two cases are computed. For the first one, n = 0 , m = 2 are used, and μ = 0.02 , N θ = 100 , while for the second one, n = 5 , m = 5 are chosen. For both cases, we compute the domain ( 0 , 2 π ) × ( 0 , 2 π ) which are divided into three meshes of ( 16 , 16 ) , ( 32 , 32 ) , ( 64 , 64 ) cells, respectively. The results are shown in Table 1 and Table 2. It is found that compared with the 2nd-order solver, the interpolation algorithm has better accuracy and its results present the converging rate of the fourth-order accuracy, which is provided by the cubic spline interpolation.
For this double-periodic boundary condition, we also check the convergence of the abs error along with the number of interpolating points on the Larmor circle. We use m = 2 , n = 2 , the mesh of the rectangular domain is of 32 × 32 cells, and the magnetic moment equals 0.5 . The results are presented in Figure 2, which shows that the convergence of the numerical abs error versus the number of the interpolating points on the Larmor circle.

5.2. 2nd Example: Natural + Periodic Boundary Condition in Cartesian Coordinate

For this case, the periodic boundary condition is used in x 2 dimension, while the natural boundary condition is used in x 1 dimension. The function under gyroaverage is f ( x ) = x 2 . Its first gyroaverage and double gyroaverage are
J 1 ( f ( x ) ) = x 2 , J 2 J 1 ( f ( x ) ) = x 2 .
For this case, μ = 0.05 . The simulated domain ( 0 , 4 ) × ( 0 , 2 π ) are divided into two meshes including 32 × 32 and 64 × 64 cells, respectively. The integrals of the absolute value of the error over the simulated domain for the first and double gyroaverage are presented in Table 3. To obtain this, we ignored the boundary rows in the x 1 dimension, for which the natural boundary condition is used. The fact that the abs error of the 2nd-order solver is zero is due to the fact that the first gyroaverage and the double one of f ( x ) depends on the gradient of f ( x ) only through 2 f ( x ) , as Equation (A3) shows. 2 f ( x ) in Cartesian coordinates is written as ( x 1 2 + x 2 2 ) f ( x ) . The second order derivative is approximated by the centered finite difference as x 1 2 f ( x ) = f j + 1 , k 2 f j , k + f j 1 , k δ x 1 2 with the 2nd-order precision, where f j + 1 , k f ( x 1 , j + 1 , x 2 , k ) . It is obvious that the finite difference of x 1 2 over f ( x ) being x 2 equals zero, so does x 2 2 over f ( x ) except at the boundary. The abs error of the 2nd-order solver equaling zero is obtained when the boundary row are ignored.

5.3. 3rd Example: Natural + Periodic Boundary Condition in the Polar Coordinate Frame

For this case, the periodic boundary condition is used in Θ dimension, while the natural boundary condition used in r dimension. We also use the test function f ( x ) = x 2 , and the domain is also chosen as ( 0 , 4 ) × ( 0 , 2 π ) . The integral of the absolute value of the error is presented in Table 4. The boundary rows in r dimension are ignored to get these results. The exact profile of the first and double gyroaverage of the test function at the radial position 7 / 4 along the polar dimension and the corresponding numerical solutions computed in the two meshes are plotted in the left figure of Figure 3. The exact profile of the first and double gyroaverage of the test function profile at the polar angle 7 π / 8 along the radial dimension and the corresponding numerical solutions computed in the two meshes are plotted in the right figure of Figure 3. Both figures show that the results computed by the interpolation algorithm fit the exact value very well. However, we can still notice a small error at the outer boundary of x 1 dimension, where the natural boundary condition is used.

5.4. Benchmark the QNE Solver in the Cartesian Coordinate Frame and in the Polar Coordinate Frame

The previous examples benchmark the interpolation algorithm to compute the gyroaverage operation. This subsection is dedicated to benchmark the QNE solver, which comprises solving the inverse matrix of A s p l and A l , ρ j c o n t r i by FFT based on the algorithm given in Section 4.2, and the interpolation algorithm to obtain the gyroaverage.
For the convenience to find the exact solution of QNE, we simplify QNE in Equation (22) by choosing T i = T e = 0.5 , n 0 = n g 0 = 1.0 . We also solve the single μ case first, so that QNE is simplified as
4 ϕ ( x ) J 2 ( μ ) J 1 ( μ ) ϕ ( x ) = n 1 ( x ) .
We first benchmark the QNE solver in Cartesian coordinate frame with double-periodic boundary condition. By choosing
n 1 ( x ) = cos ( n x 1 + m x 2 ) ,
the exact solution of Equation (43) is
ϕ ( x ) = cos ( n x 1 + m x 2 ) 4 J 0 2 ( ρ ( μ ) n 2 + m 2 ) .
We choose n = 3 , m = 3 , μ = 1.0 and μ = 0 . The simulated domain ( 0 , 4 ) × ( 0 , 2 π ) are divided into three meshes including 32 × 32 , 64 × 64 and 128 × 128 cells, respectively. The integrals of the absolute value of the error for the three kinds of mesh are presented in Table 5, which indicates that the QNE solver could provide a good solution. For the μ = 0.5 case, we also plot in Figure 4 the exact solution and the results computed by the QNE solver with node number in x 2 dimension equaling 20. The two solutions in Figure 4 fit each other well.
To benchmark the QNE solver in the polar coordinate frame, the function n 1 in Equation (43) is chosen as
n 1 ( x ) = x 2 ,
which leads to the exact solution of ϕ ( x ) through Equation (43)
ϕ ( x ) = x 2 .
The simulated domain ( 0 , 4 ) × ( 0 , 2 π ) is also divided into meshes of 32 × 32 and 64 × 64 cells, respectively. We computed two cases of μ = 0.02 and μ = 0 . The integral of the absolute error over the simulated domain for the two μ cases are given in Table 6. The fourth-order converging rate does not appear anymore, due to the error at the boundary area where the natural boundary condition is used. The error has two sources. One is that the natural boundary condition is used. The other is that around boundary, due to the finite value of the Larmor radius, there are sampling points located out of the simulated domain and we project these points to the corresponding points at the boundary.
We still plot the exact solution and the numerical solutions of the polar profile at the radial position 7 / 4 and the radial profile at the polar angle 7 π / 8 in Figure 5, which presents good match between the two solutions.

6. Benchmark of the Interpolation Algorithm for the Multiple μ Case

This benchmark is done in the polar coordinate frame. The test function is chosen as
f ( x ) = cos ( n x 1 + m x 2 ) .
We consider the gyroaverage associated with μ obeying the distribution e μ / a where a ( 0.5 , 2.2 ) is chosen.
The integral of the distribution over μ is written as
I 0 ( μ max , n , m ) = 0 μ max e μ / a d μ
and the exact solution of the gyroaverage of the test function f ( x ) are related to the following two functions
I 1 ( μ max , n , m ) = 0 μ max J 0 ( ρ ( μ ) n 2 + m 2 ) e μ / a d μ
and
I 2 ( μ max , n , m ) = 0 μ max J 0 2 ( ρ ( μ ) n 2 + m 2 ) e μ / a d μ .
The exact solution of the first gyroaverage is
0 μ max J 1 ( μ ) f ( x ) e μ / a d μ = I 1 ( μ max , n , m ) f ( x ) ,
and the exact solution of the double gyroaverage is
0 μ max J 2 ( μ ) J 1 ( μ ) f ( x ) e μ / a d μ = I 2 ( μ max , n , m ) f ( x ) ,
which can be written into a discretized formula
i = 1 N μ J 2 ( μ i ) J 1 ( μ i ) f ( x ) e μ i / a δ μ i .

6.1. The Euler–Maclaurin-Based Quadrature Integration Algorithm

Φ ˜ is given in Equation (23) and F is proportional to exp ( μ B T i ( r ) ) . To obtain the integral over μ , the conventional way is to redefine a new magnetic moment by μ n e w = μ / T i ( r ) . Then, the exponential factor exp ( μ B T i ( r ) ) becomes exp ( μ n e w ) and the Gauss-Laguerre quadrature is implemented to obtain the discretized sum to approximate the continuous integral. However, in the new term Φ ˜ , the denominate of T i ( r ) in exp ( μ B T i ( r ) ) together with n 0 ( r ) determines the radial density profile of the ions which possess the magnetic moment μ . As T i ( r ) could possess the steep gradient in the radial dimension, its gyroaverage J ( μ ) T i ( x ) cannot be ignored, resulting that T i ( r ) can not be eliminated from the denominate in the conventional way. Moreover, we cannot use Gauss-Laguerre quadrature method to provide the same group of μ nodes and the associated weights along the radial dimension for different T i ( r ) in the radial domain. Because the value of T i ( r ) is within a domain, which is chosen as ( 0.5 , 2.2 ) in this paper, and the gradient of T i ( r ) after the gyroaverage could also change, the roots and weights provided by Gauss-Laguerre quadrature for the integral 0 μ max e μ d μ can not fit the integral 0 μ max e μ / a d μ anymore for all as belonging to the domain ( 0.5 , 2.2 ) .
We therefore develop a quadrature integrating scheme based on the following Euler–Maclaurin quadrature formula
b c f ( x ) d x = h 2 ( f ( b ) + f ( c ) ) + k = 1 n 1 h f ( b + k h ) r = 1 M h 2 r B 2 r ( 2 r ) ! f 2 r 1 ( c ) f 2 r 1 ( b ) + R p .
where h = ( c b ) / n , n 1 is the number of the cells of the mesh, B 2 r is the 2 r -th Bernoulli number and R p is the residual quantity. The order of the precision of the right side is beyond O ( h 2 M ) . For the distribution function proportional to exp ( μ / a ) , R p and the term depending on f 2 r 1 ( c ) can be ignored for large enough c. B 2 r can be solved by the recurrence relation
B p = 1 p + 1 k = 0 p 1 p + 1 k B k .
The derivative f 2 r 1 ( b ) is replaced by the finite difference scheme. For a function F ( x ) , the finite difference scheme of the dth order derivative with the pth order precision can be formally written as the following summation of the function value on the grid points
h d d ! F ( d ) ( x ) = i = i m i n i m a x G d p i F ( x + i h ) + O ( h d + p ) ,
where G d p i is the coefficient of the finite difference with the pth order precision for the dth order derivative, and the step length of the finite difference is the same with that used in Equation (44). For the forward finite difference scheme of the dth order derivative with pth order precision, i min = 0 and i max = d + p 1 are derived, while for the centered finite difference scheme, we have i min = i max = ( d + p 1 ) / 2 . By truncating the Taylor expanding of F ( x + i h ) at the order O ( ( i h ) d + p 1 ) , Equation (45) can be rewritten as
F d ( x ) = d ! h d n = 0 d + p 1 i = i min i m a x i n G d p i h n n ! F n ( x ) + O ( h p ) d ! h d n = 0 d + p 1 i = i min i m a x i n G d p i h n n ! F n ( x ) .
The equaling of both sides of Equation (46) results in the following identities
i = i min i m a x i n G d p i = 0 , 0 n d + p 1 and n d 1 , n = d ,
through which the coefficient G d p i s can be solved. By substituting Equation (46) into the Euler–Maclaurin formula, we obtain its discretized version
b c f ( x ) d x = h 2 ( f ( b ) + f ( c ) ) + k = 1 n 1 h f ( b + k h ) + h r = 1 M B 2 r 2 r i = i min i max G ( 2 r 1 ) p i f ( b + i h ) .
For the forward finite difference scheme, Equation (47) can be rearranged into
b c f ( x ) d x = i = 1 2 M + p 2 h + h 1 r M , i 2 r + p 2 B 2 r 2 r G ( 2 r 1 ) p i f ( b + i h ) + h 2 + h r = 1 M B 2 r 2 r G ( 2 r 1 ) p 0 f ( b ) + i = 2 M + p 1 n 1 h f ( b + i h ) + h 2 f ( c ) ,
where we select the condition satisfying 2 M + p 1 n 1 . The weight coefficients of f ( b + i h ) in Equation (48) for all i { 0 , 1 , 2 , , n 1 } are computed and stored at the beginning of the simulation for the following quadrature integration.
For the central difference scheme, Equation (47) can be rearranged in the same way into
b c f ( x ) d x = i = 1 ( 2 M + p 2 ) / 2 h f ( b + i h ) + h 1 r M , i ( 2 r + p 2 ) / 2 B 2 r 2 r G ( 2 r 1 ) p i f ( b + i h ) + G ( 2 r 1 ) p ( i ) f ( b i h ) + h 2 + h r = 1 M B 2 r 2 r G ( 2 r 1 ) p 0 f ( b ) + i = ( 2 M + p ) / 2 n 1 h f ( b + i h ) + h 2 f ( c ) ,
The value of f ( b i h ) is obtained by considering the even or odd property of f ( x b ) relative to the point x = b . The value of b equals 0 for the situation we consider, while the integrand is an even function relative to the point b = 0 .
One more point to mention is that instead of μ , we implement v , which equals 2 μ , as the integration argument for the achievement of the high precision. So d μ = v d v and the minimal value of v equals 0. Based on this implementation, we developed the third one named derivative-reduction scheme. By replacing μ with v , the integral f ( 2 μ ) d μ becomes f ( v 2 ) v d v , with the new integrand being g ( v ) f ( v 2 ) v . At the point v = 0 , we use the following formula to reduce the order of the derivative
g 2 k 1 ( 0 ) = ( 2 k 1 ) f 2 k 2 ( 0 ) .
Then, the third discretized expression of Euler–Maclaurin formula is derived as
0 c g ( v ) d v h 2 ( g ( 0 ) + g ( c ) ) + k = 1 n 1 h g ( k h ) + r = 1 M h 2 r B 2 r ( 2 r ) ! g 2 r 1 ( 0 ) = h 2 ( g ( 0 ) + g ( c ) ) + k = 1 n 1 h g ( k h ) + r = 1 M h 2 r B 2 r ( 2 r ) ! ( 2 r 1 ) f 2 r 2 ( 0 ) = h 2 ( g ( 0 ) + g ( c ) ) + k = 1 n 1 h g ( k h ) + h 2 B 2 2 f ( 0 ) + h 2 r = 2 M B 2 r 2 r i = i min i max G ( 2 r 2 ) p i f ( 0 ) = h 2 c f ( c ) ) + k = 1 n 1 h ( k h ) f ( k h ) + h 2 B 2 2 f ( 0 ) + h 2 r = 1 M B 2 r + 2 2 r + 2 i = i min i max G ( 2 r ) p i f ( 0 ) = i = 1 ( 2 M + p 1 ) / 2 h ( i h ) f ( i h ) + h 2 1 r M , i ( 2 r + p 1 ) / 2 B 2 r + 2 2 r + 2 ( G ( 2 r ) p i + G ( 2 r ) p ( i ) ) f ( i h ) + h 2 B 2 2 f ( 0 ) + h 2 r = 1 M B 2 r + 2 2 r + 2 G ( 2 r ) p 0 f ( 0 ) + i = ( 2 M + p 1 ) / 2 + 1 n 1 h ( i h ) f ( i h ) + h 2 c f ( c ) ,
where we have used the even property of the function f ( v 2 ) at v = 0 , so that f ( i h ) = f ( i h ) .
To test the accuracy and the convergent rate of the three schemes based on the Euler–Maclaurin formula, we apply them to the computation of the exponential integral 0 30 e μ / a d μ and the associated double-gyroaverage integral 0 30 J 0 2 ( 2 μ ) e μ / a d μ . In addition, we choose M = 4 , p = 6 for the test purpose and for the following other numerical simulation examples. We also compare its results to those computed by the trapezoidal quadrature algorithm with uniform mesh. Through dividing the domain ( 0 , 30 ) into 10 7 equal cells, the two integrals are approximated by the Riemann sum. By treating the Riemann sums as the exact value, the absolute value of the numerical error computed by the two algorithms are plotted in Figure 6 for the three cases a = 0.5 , 1.0 , 2.2 . Figure 6 shows that compared with the trapezoidal quadrature algorithm, the three schemes of the Euler–Maclaurin-based algorithm provide a much higher precision order when the nodes number goes from 17 to 129.

6.2. Benchmark of DGT Computed by the Interpolation Algorithm in the Polar Coordinate Frame Assisted by the Forward Scheme of the Euler–Maclaurin-Based Algorithm

This benchmark is done in the polar coordinate frame and the forward scheme of the Euler–Maclaurin-based algorithm is implemented. In this benchmark, n = 0 , m = 1 is chosen. The simulated domain of ( r , Θ ) is ( 0 , 16 ) × ( 0 , 2 π ) , which is divided into 40 × 40 meshes. μ is in ( 0 , 20 ) which is divided into one mesh including 64 nodes. Only the case of a = 1 is computed here. The polar profile at r = 6 and the radial profile at Θ = 7 π 8 are shown in Figure 7.

6.3. Benchmark of the QNE Solver in the Polar Coordinate Frame Assisted by the Forward Scheme of the Euler–Maclaurin-Based Algorithm

We also benchmark the QNE solver in the polar coordinate frame with μ obeying the distribution e μ / a , with which the quasi-neutrality equation in this case is
4 ϕ ( x ) 0 μ max J 2 ( μ ) J 1 ( μ ) ϕ ( x ) e μ / a d μ = n 1 ( x ) ,
where the same parameters T i 0 , T e 0 , n 0 , n g 0 are used. We choose the test function of n 1 ( x ) = cos ( n x 1 + m x 2 ) . The exact solution of Equation (51) is
ϕ ( x ) = cos ( n x 1 + m x 2 ) 4 I 2 ( μ max , n , m ) .
In this benchmark, the radial domain is chosen as ( 0 , 20 ) . The domain of r × Θ is divided into a mesh of 64 × 64 cells. The weights of the μ mesh for a = 1 , 0.5 , 2.2 are computed by the Euler–Maclaurin-based quadrature algorithm. The magnitude of the numerical error of I 0 , I 2 and the abs error of the integration of the solution over the domain for the three a cases are given in Table 7. The computing formula of the abs error is presented by Equation (42). In Figure 8, the radial profile at Θ = 7 π 8 and the polar profile at r = 35 4 for a = 0.5 , a = 1 , a = 2.2 cases are plotted. The absolute value of the numerical error of the polar profile and the radial profile are plotted in the left and right figure of Figure 9.

7. Application of the QNE Solver in Gyrokinetic Simulation Concerning Short-Scale Perturbation and Steep Equilibrium Profile Assisted by the Forward Scheme of the Euler–Maclaurin-Based algorithm

7.1. The Gyrokinetic Model with Constant Cylindrical Magnetic Field Configuration

The cylindrical coordinates frame with the constant theta-pinch magnetic field configuration is used in our simulations. For this configuration adapted in this paper, the equilibrium magnetic field is along the z direction and its magnitude is constant in the cross surface. The periodic boundary condition is used in the parallel dimension and in the polar dimension, while the natural boundary condition in the radial dimension. The whole simulations are executed on the ATLAS HPC platform of IRMA by introducing our test modules into SeLaLiB code [32], which is a classic semi-Lagrangian library using cubic splines interpolation [33,34,35,36]. The predictor-corrector method, the Verlet algorithm for computing the characteristics, and the Strang splitting of the advection of Vlasov equation are also implemented [35,37,38,39,40].
The gyrokinetic Vlasov equation in cylindrical coordinate frame is
t + ( 1 r Θ Φ r 1 r r Φ Θ ) + U x + x Φ U F = 0 .
The characteristics are
r ˙ = 1 r Θ Φ ,
Θ ˙ = 1 r r Φ ,
x ˙ = U ,
U ˙ = x Φ
The quasi-neutrality equation is given by Equation (22).

7.2. The Parallelization

7.2.1. The Algorithm to Reduce the Distribution to the Density

In the discrete version of μ , the distribution of ions associated with each μ j with j { 1 , , N μ } is denoted as F j ( x , μ j , U ) . Due to the identity d μ j d t = 0 , F j ( x , μ j , U ) satisfies the Vlasov equation in the cylindrical coordinate system
t + ( 1 r Θ Φ ( x , μ j ) r 1 r r Φ ( x , μ j ) Θ ) + U x + x Φ ( x , μ j ) U F j ( x , μ j , U ) = 0 ,
where ( r , Θ , x ) denotes the cylindrical coordinate frame. F j ( x , μ j , U ) can be rewritten as the sum
F j ( x , μ j , U ) = F 0 j ( x , μ j , U ) + F 1 j ( x , μ j , U ) ,
with
F 0 j ( x , μ j , U ) = F 0 j ( x , U ) F 0 j ( x , μ j )
and F 0 j ( x , μ j ) = 1 2 π T i exp ( μ j B ( x ) T i ( x ) ) . In the numerical simulation, F 0 j ( x , μ j , U ) does not evolve. At each time step, F j ( x , μ j , U ) is obtained by solving Equation (54) and F 1 j ( C , μ j , U ) is derived by using F j ( x , μ j , U ) minus F 0 j ( x , μ j , U ) .
The normalized version of Equations (17a) and (17b) to obtain n s g 0 and n s g 1 can be discretized in the μ dimension by obtaining a mesh of μ with N μ nodes. The contribution of each μ j component to the density n s g and n s g 0 can be written as
n s g j x = B ( x ) δ μ j F s x ρ 0 ( x , μ j ) , μ j , U d U , n s g 0 j x , t = B ( x ) δ μ j F s 0 x ρ 0 ( x , μ j ) , μ j , U d U .
Then, the n s g 1 j can be derived as n s g j n s g 0 j . In addition, the summation of all μ j s leads to the total density. The specific procedures to compute the density on the particle coordinate frame are listed below:
  • The distribution F j ( x , μ j , U , t ) for each μ j at time moment t is computed by Equation (54).
  • The integration of the distribution of each F j ( x , μ j , U , t ) over U is first done by the sum S j ( x , t ) j F j ( x , μ j , U k , t ) δ U .
  • The gyroaverage of S j ( x , t ) denoted as J 2 ( μ j ) S j ( x , t ) for each μ j is done by using the coefficient matrix with the result being A 2 , ρ j c o n t r A s p l S j t , where S j t is a vector formed by S j ( x , t ) on the grids and is given as
    S j t : = ( S j , 0 , 0 , , S j , N r , 0 , S j , 0 , 1 , , S j , N r , 1 , , S j , 0 , N Θ 1 , , S j , N r , N Θ 1 ) T
    The total density on the particle coordinate mesh contributed by the μ j component is written as
    n g j , h p ( J 2 ( μ j ) S j ) h p , h { 0 , , N r } , p { 0 , , N Θ 1 } .
  • The equilibrium density in the particle coordinate frame obtained from the gyroaverage of the equilibrium distribution F 0 j ( x , μ j , U ) for the μ j component is done at the beginning following the procedure 2 , 3 and is stored for the subsequent invoking. By inheriting the symbol used in Equation (A6), the jth equilibrium density on particle coordinate spatial mesh is denoted as n g 0 j , h p . Then, the perturbative density on the particle coordinate spatial mesh contributed by the μ j component is
    n g 1 j , h p = n g j , h p n g 0 j , h p .
  • The total perturbative density on the particle coordinate space computed by all j { 1 , , N μ } is obtained by “MPI_ALLREDUCE” the n g 1 j , h p as j n g 1 j , h p B h p δ μ j , where B h p is the magnetic field magnitude at the node denoted by ( h , p ) .
For an initial equilibrium density profile on the gyrocenter coordinate frame shown by the purple line of Figure 1, assuming the equilibrium distribution of μ obeying Equation (58), the density on the particle coordinate space after the gyroaverage operation is obtained and shown in Figure 1.

7.2.2. The Parallelization

MPI is used to the parallelization of the computing of μ . The processors are divided into N μ sub-communicators. F j ( x , μ j , U ) with j { 1 , , N μ } is exclusively computed by the jth sub-communicator. In addition, the respective precomputing matrixes of Φ j are stored in the jth sub-communicator. Φ ˜ and n i 1 ( x ) in Equations (23) and (17b) are computed by “MPI_ALLREDUCE” the respective quantity stored in the processors of the same “color” with respect to the respective sub-communicator.
To calculate the advection of distribution function in the 4D domain ( r , Θ , x , U ) , two parallelization schemes are involved: the one for parallelizing x with r , Θ , U sequential is used to calculate the advection due to r ˙ , Θ ˙ , U ˙ ; the other one for parallelizing r , Θ , U with x sequential is used to compute the advection due to U. The 3D domain ( r , Θ , x ) with respect to the potential function and the density implements the scheme: the parallelization in x with r , Θ sequential is used to compute the characteristics r ˙ , Θ ˙ , U ˙ which are needed in computing the advection of the distribution in r , Θ , U dimensions, and to solve QNE in the poloidal cross-section.

7.3. The Simulation Results

In the cylindrical coordinates system, the initial distribution is of the structure in Equation (14). The distribution function is specifically given as
F ( 0 , r , Θ , x ) = F e q r , μ , U × 1 + η exp ( r r p ) 2 δ r n p , m p cos ( 2 π n p L x + m p Θ + 2 π p p L r r ) ,
where the equilibrium function F e q is
F e q r , μ , U = n 0 r exp U 2 2 T i r μ B T i ( r ) 2 π T i ( r ) 3 / 2 ,
where η is the parameter for the amplitude of the perturbation, and n p , m p , p p are the respective mode numbers. The profile T i ( r ) , T e ( r ) and n 0 ( r ) are given by:
P ( r ) = C P exp κ P δ r P tanh r r P δ r P
where P { T i , T e , n 0 } , C T i = C T e = 1 , and
C n 0 = r max r min r min r max exp κ n 0 δ r n 0 tanh r r p δ r n 0 d r .
In Equation (59), C P is the normalized factor; the magnitude of κ P mainly determines the wide between P max and P min ; the magnitude of δ r P determines mainly the steep of the gradient of the profile of P .
For all the following simulation cases, the time step Δ t = 8 is chosen and the data are stored every two time steps.

7.3.1. 1st Case: n p = 1 , m p = 0 , p p = 0

This case implements the perturbation not including the polar and radial modes. The used equilibrium profiles of ions’ density and temperature are not steep in the radial dimension and are given in Figure 10. We consider the parameters: η = 10 4 , κ n 0 = 13.0 , κ T i = κ T e = 20.0 , δ r n 0 = 2.0 , δ r T i = δ r T e = 1.0 , L = 1506.759067 , r p = 0.45 ( r m i n + r m a x ) , δ r = 4 δ r n 0 δ r T i .
The simulated domain of r × Θ × x × U × μ is chosen as ( 0.5 Δ r , 14.5 ) × [ 0 , 2 π ) × ( 0 , 1506.759067 ) × ( 7.32 , 7.32 ) × ( 0 , 20 ) , where Δ r is the length step in radial direction. This domain is divided into a mesh of 64 × 64 × 32 × 32 × 63 cells. The simulation is carried out by implementing 128 processes, which are executed by 4 nodes on ATLAS HPC of IRMA using hyperthreading. Each node has 24 CPUs and carries on 32 processes.
The evolution curves of the polar modes of the potential at the radial node 30 are shown in Figure 11. The radial spectrum evolution is shown in Figure 12. A good match of the results computed by the two solvers is revealed by these figures.

7.3.2. 2nd Case: n p = 1 , m p = 15 , p p = 0

For this case, we could obtain k Θ ρ 2 at r = 7 with ρ = 1 . We consider the parameters: η = 10 4 , κ n 0 = 13.0 , κ T i = κ T e = 66.0 , δ r T e = δ r T e = δ r n 0 = 0.2 , L = 1506.759067 , r p = 0.45 ( r m i n + r m a x ) , δ r = 4 δ r n 0 δ r T i . The equilibrium profile of ion’s density and temperature are given by Figure 13.
The simulated domain is the same with that of the 1st case and is divided into a mesh of 64 × 128 × 32 × 32 × 63 cells. For this case, the implementation of the processes and the partition of these processes on the nodes of ATLAS are the same with that of the 1st case.
The potential profile on the polar cross-section at time moment 16 , 2096 , 3680 computed by the two solvers are shown in Figure 14. The ion temperature modes are driven by the equilibrium gradient. The evolution curves of the polar modes of the potential at the radial node 35 are presented in Figure 15, which shows that the growth rate computed by the interpolation algorithm is larger and the saturation time is earlier. The radial spectrum evolution is shown in Figure 16.

7.3.3. 3rd Case: n p = 1 , m p = 5 , p p = 7

For this case, we could obtain k r ρ π with ρ = 1 . We consider the parameters: η = 10 4 , κ n 0 = 13.0 , κ T i = κ T e = 66.0 , δ r T e = δ r T e = δ r n 0 = 0.1 , L = 1506.759067 , r p = 0.45 ( r m i n + r m a x ) , δ r = 4 δ r n 0 δ r T i . The equilibrium profile of ion’s density and temperature are given by Figure 17.
The simulated domain is the same and is divided into a mesh of 128 × 64 × 32 × 32 × 63 cells. The implementation of the processes on the nodes of ATLAS does not change. The potential profile on the polar cross-section at time moment 16 , 3200 , 5236 computed by the two solvers are shown in Figure 18. The evolution curves of the polar modes of the potential at the radial node 35 are presented in Figure 19. The radial spectrum evolution is given in Figure 20.

7.3.4. 4th Case: n p = 1 , m p = 5 , p p = 0

The parameters of this case are the same with those used in the 3rd case except that p p = 0 is chosen. The results are plotted in Figure 21, Figure 22 and Figure 23. Compared with the simulation results of the 3rd case, it can be observed from both figures that the growth rate of the polar Fourier modes without the initial radial wavelength are much larger than that with the presence of the initial radial wavelength. Such a fact may contribute a new element to the turbulence induced transport theory, which states that the shear flow could reduce the radial coherent length of the turbulent vortex, mitigating the transport rate as a consequence. Our simulations in 3rd and 4th cases suggest that with the presence of the low toroidal mode number, the short radial wavelength causes much smaller growth rate of the poloidal modes.

8. Conclusions and Discussion

This paper points out that the traditional low-order approximation of DGT is not suitable concerning the short-scale perturbation and the steep equilibrium profile. To obtain the more precise mesh-grids value of the function which is under the first gyroaverage or double gyroaverage in the presence of these extreme cases, the interpolation algorithm is developed by uniformly laying out many points on the Larmor circle surrounding the grid point, the function value at which is obtained by using the cubic spline piecewise basis function for the interpolation. Due to the periodic boundary condition of the cubic spline interpolation on the polar dimension, the interpolation coefficient matrix has the periodic block structure. Then, FFT can be implemented to speed up the process of obtaining the inverse of the discretized coefficient matrix of QNE. Since the density of each μ j depends on a weight factor exp ( μ B ( x ) T e ( x ) ) and all quantities as the functions of x experience a transform x x ρ 0 ( x , μ j , θ ) , the Gaussian-Laguerre quadrature integrating method cannot be used and we developed an Euler–Maclaurin-based quadrature integrating method to obtain the quadrature integration for the distribution of μ .
The interpolation algorithm itself and the interpolation solver for the numerical computation of QNE are benchmarked under various boundary conditions based on various analytical solutions. it is found that numerical solutions computed by both cases match the analytical solutions very well. The interpolation solver is also applied to the gyrokinetic integrated simulation which comprises the other Vlasov solver and the characteristic solver. The perturbations possessing various model numbers and the equilibrium profiles possessing various radial gradient are implemented in the integrated simulations. To observe the advantage of the interpolation algorithm, its numerical results are compared with those computed by the 2nd-order solver. When the equilibrium profile is not steep and the perturbation only has the non-zero mode number along the parallel spatial dimension, the results computed by the interpolation solver and the 2nd-order solver match each other well. When the gradient of the equilibrium profile is steep, the interpolation solver provides a bigger driving effect for the ion-temperature-gradient modes which possesses large polar mode numbers.

Author Contributions

Conceptualization, S.Z. and M.M.; Formal analysis, S.Z.; Investigation, S.Z. and M.M.; Methodology, S.Z., M.M. and C.S.; Software: S.Z., M.M. and C.S.; Project administration, M.M.; Validation, S.Z.; Writing & original draft, S.Z.; Writing & Review & Editing, S.Z. and M.M.

Funding

The first author was supported by ANR EXAMAG. This work has been carried out within the framework of the EUROfusion Consortium and has received funding from the Euratom research and training programme 2014-2018 and 2019-2020 under grant agreement No 633053. The views and opinions expressed herein do not necessarily reflect those of the European Commission. This work was granted access to the HPC resources of Aix-Marseille Université financed by the project Equip@Meso (ANR-10-EQPX-29-01) of the program “Investissements d’ Avenir" supervised by the Agence Nationale de la Recherche

Acknowledgments

The first author appreciates the help of Sever Hirstoaga and Matthieu Boileau for the implementation of ATLAS HPC of IRMA.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. 2nd-Order Approximation of QNE

We first need to take Taylor expansion of DGT. According to Appendix B, the expansion rule of a general function A x + ρ 0 is
A x + ρ 0 = n 0 ρ 0 · n n ! A x .
The gyroaverage of the following terms are needed
ρ 0 · A x = 0 , ρ 0 · 2 A x = 1 2 ρ 0 2 2 A x ,
where
A x + ρ 0 1 2 π A x + ρ 0 d θ .
The following identity to reduce the perpendicular distribution to the density is also necessary
ρ 0 2 μ F i 0 B d μ = 1 B π ,
The first gyroaverage expanded up to the second order is
Φ ( x , μ ) ϕ x + ρ 0 1 + ρ 0 2 2 4 ϕ x .
The second gyroaverage expanded up to the second order is
Φ F i 0 T i x ρ 0 , μ 1 , u 1 1 + ρ 0 2 2 4 2 F i 0 T i ϕ F i 0 ϕ T i + ρ 0 2 2 2 ( F i 0 ϕ T i ) F i 0 ϕ T i + ρ 0 2 ϕ 2 · F i 0 T i + F i 0 T i ρ 0 2 2 2 ϕ
The density derived from Equation (A4) is
2 π Φ F i 0 T i x ρ 0 , μ , U B d μ d U n 0 ϕ T i + ϕ · n 0 B 2 + n 0 B 2 2 ϕ .
Then, QNE derived by the 2nd-order approximation is
ϕ T i n 0 ϕ n g 0 T i ϕ · n 0 n g 0 B 2 n 0 n g 0 B 2 2 ϕ + ϕ T e = n i 1 n g 0 .
With the assumption of B = 1 , Equation (A6) becomes
ϕ T i n 0 ϕ n g 0 T i ϕ · n 0 n g 0 n 0 n g 0 2 ϕ + ϕ T e = n i 1 n g 0 .

Appendix B. The Examples of the Exact Solution of the Gyroaverage and Double-Gyroaverage Operation

We first consider a function of the form f ( x + ϵ g ( x ) ) depending on one scalar argument and a small parameter. What we are interested in is its expansion over ϵ . The derivative of f ( x + ϵ g ( x ) ) over ϵ at ϵ = 0 is derived as follows
d ϵ f ( z ) ϵ = 0 = d ϵ z z f ( z ) ϵ = 0 = g ( x ) x f x , z x + ϵ g ( x ) ,
where d ϵ d / d ϵ . The second order derivative of f ( z ) over ϵ at ϵ = 0 is
d ϵ ( d ϵ f ( z ) ) ϵ = 0 = d ϵ ( d ϵ z z f ( z ) ) ϵ = 0 = ( d ϵ ( d ϵ z ) ) z f ( z ) ϵ = 0 + d ϵ z ( d ϵ z f ( z ) ) ϵ = 0 = d ϵ g ( x ) ϵ = 0 + ( d ϵ z ) ( d ϵ z ) z z f ( z ) ϵ = 0 = g 2 ( x ) z 2 f ( z ) .
The second order derivative of f ( z ) over ϵ at ϵ = 0 is
d ϵ 2 f ( x + ϵ g ( x ) ) ϵ = 0 = g 2 ( x ) x 2 f ( x ) .
It is easy to derive that the n-th derivative of f ( x + ϵ g ( x ) ) over ϵ at ϵ = 0 is
d ϵ n f ( x + ϵ g ( x ) ) ϵ = 0 = g n ( x ) x n f ( x ) .
Then, the Taylor expansion of f ( x + ϵ g ( x ) ) over ϵ is
f ( x + ϵ g ( x ) ) = n 0 ϵ n n ! g n ( x ) x n f ( x ) .
Now we change g ( x ) to be the vector ρ 0 . In Cartesian coordinate frame, ρ 0 ( x ) · can be written as
ρ 0 ( x ) · = i ρ i ( x ) x i ,
Then, Equation (A10) is changed to be
f ( x + ρ 0 ( x ) ) = n 0 1 n ! i ρ i ( x ) x i n f ( x ) = exp ( i ρ i ( x ) x i ) f ( x ) ,
where means x i does not operate on any ρ i s.
In Cartesian coordinate frame, we have
ρ 0 · = ρ cos α 1 x 1 + ρ cos ( α 1 π / 2 ) x 2 ,
where α 1 is the angle between the Larmor radius vector and e 1 a unit vector. For
f ( x ) = exp ( i n x 1 + i m x 2 ) ,
we have
J 1 ( μ ) f ( x ) = exp ( i n ρ cos α 1 + i m ρ cos ( α 1 π / 2 ) ) exp ( i n x 1 + i m x 2 ) = exp ( i ρ n 2 + m 2 cos ( α 1 + β + π / 2 ) ) exp ( i n x 1 + i m x 2 ) = q = 0 i q J q ( ρ n 2 + m 2 ) exp ( i q ( α 1 + β + π / 2 ) ) exp ( i n x 1 + i m x 2 ) = J 0 ( ρ n 2 + m 2 ) exp ( i n x 1 + i m x 2 ) ,
where cos β = n / n 2 + m 2 . With the same reason, we can derive
J 2 ( μ ) J 1 ( μ ) f ( x ) = J 0 2 ( ρ n 2 + m 2 ) exp ( i n x 1 + i m x 2 )
For f 1 ( x ) = x 2 , it is easy to obtain the following results
J 1 ( μ ) x 2 = x 2 , J 2 ( μ ) J 1 ( μ ) x 2 = x 2

References

  1. Diamond, P.H.; Itoh, S.I.; Itoh, K.; Hahm, T.S. Zonal flows in plasma—A review. Plasma Phys. Control. Fusion 2005, 47, R35. [Google Scholar] [CrossRef]
  2. Lin, Z.; Hahm, T.S.; Lee, W.W.; Tang, W.M.; White, R.B. Turbulent Transport Reduction by Zonal Flows: Massively Parallel Simulations. Science 1998, 281, 1835–1837. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  3. Biglari, H.; Diamond, P.H.; Terry, P.W. Influence of sheared poloidal rotation on edge turbulence. Phys. Fluids B Plasma Phys. 1990, 2, 1. [Google Scholar] [CrossRef]
  4. Wesson, J. Tokamaks, 3rd ed.; CLARENDON Press: Oxford, UK, 2004. [Google Scholar]
  5. Chen, F. Introduction to Plasma Physics and Controlled Fusion; Springer: New York, NY, USA, 2010. [Google Scholar]
  6. Hazeltine, R.D.; Meiss, J.D. Plasma Confinement; Addison-Wesley, Advanced Book Program: Boston, MA, USA, 1992. [Google Scholar]
  7. White, R.B. Theory of Tokamak Plasmas, 1st ed.; Elsevier: Amsterdam, The Netherlands, 1989. [Google Scholar]
  8. Zohm, H. Edge localized modes (ELMs). Plasma Phys. Control. Fusion 1996, 38, 105. [Google Scholar] [CrossRef]
  9. Hayashi, N.; Takizuka, T.; Aiba, N.; Oyama, N.; Ozeki, T.; Wiesen, S.; Parail, V. Integrated simulation of ELM energy loss and cycle in improved H-mode plasmas. Nucl. Fusion 2009, 49, 95015. [Google Scholar] [CrossRef]
  10. Burrell, K.H.; West, W.P.; Doyle, E.J.; Austin, M.E.; Casper, T.A.; Gohil, P.; Greenfield, C.M.; Groebner, R.J.; Hyatt, A.W.; Jayakumar, R.J.; et al. Advances in understanding quiescent H-mode plasmas in DIII-D. Phys. Plasmas 2005, 12, 56121. [Google Scholar] [CrossRef]
  11. Hubbard, A.E. Physics and scaling of the H-mode pedestal. Plasma Phys. Control. Fusion 2000, 42, A15. [Google Scholar] [CrossRef]
  12. Lönnroth, J.S.; Parail, V.; Dnestrovskij, A.; Figarella, C.; Garbet, X.; Wilson, H.; Contributors, J.E. Predictive transport modelling of type I ELMy H-mode dynamics using a theory-motivated combined ballooning–peeling model. Plasma Phys. Control. Fusion 2004, 46, 1197. [Google Scholar] [CrossRef]
  13. Ryter, F.; Angioni, C.; Beurskens, M.; Cirant, S.; Hoang, G.T.; Hogeweij, G.M.D.; Imbeaux, F.; Jacchia, A.; Mantica, P.; et al. Experimental studies of electron transport. Plasma Phys. Control. Fusion 2001, 43, A323. [Google Scholar] [CrossRef]
  14. Suttrop, W. The physics of large and small edge localized modes. Plasma Phys. Control. Fusion 2000, 42, A1. [Google Scholar] [CrossRef]
  15. Dickinson, D.; Saarelma, S.; Scannell, R.; Kirk, A.; Roach, C.M.; Wilson, H.R. Towards the construction of a model to describe the inter-ELM evolution of the pedestal on MAST. Plasma Phys. Control. Fusion 2011, 53, 115010. [Google Scholar] [CrossRef]
  16. Garbet, X.; Idomura, Y.; Villard, L.; Watanabe, T.H. Gyrokinetic simulations of turbulent transport. Nucl. Fusion 2010, 50, 43002. [Google Scholar] [CrossRef]
  17. Lee, W.W. Gyrokinetic particle simulation model. J. Comput. Phys. 1987, 72, 243. [Google Scholar] [CrossRef]
  18. Lee, W.W. Gyrokinetic approach in particle simulation. Phys. Fluids 1983, 26, 556–562. [Google Scholar] [CrossRef]
  19. Dubin, D.H.E.; Krommes, J.A.; Oberman, C.; Lee, W.W. Nonlinear gyrokinetic equations. Phys. Fluids 1983, 26, 3524–3535. [Google Scholar] [CrossRef]
  20. Lin, Z.; Tang, W.M.; Lee, W.W. Gyrokinetic particle simulation of neoclassical transport. Phys. Plasmas 1995, 2, 2975–2988. [Google Scholar] [CrossRef]
  21. Wang, W.X.; Lin, Z.; Tang, W.M.; Lee, W.W.; Ethier, S.; Lewandowski, J.L.V.; Rewoldt, G.; Hahm, T.S.; Manickam, J. Gyro-kinetic simulation of global turbulent transport properties in tokamak experiments. Phys. Plasmas 2006, 13, 92505. [Google Scholar] [CrossRef] [Green Version]
  22. Jenko, F.; Dorland, W.; Kotschenreuther, M.; Rogers, B.N. Electron temperature gradient driven turbulence. Phys. Plasmas 2000, 7, 1904–1910. [Google Scholar] [CrossRef]
  23. Parker, S.E.; Kim, C.; Chen, Y. Large-scale gyrokinetic turbulence simulations: Effects of profile variation. Phys. Plasmas 1999, 6, 1709–1716. [Google Scholar] [CrossRef]
  24. Candy, J.; Waltz, R.E. An Eulerian gyrokinetic-Maxwell solver. J. Comput. Phys. 2003, 186, 545–581. [Google Scholar] [CrossRef]
  25. Chang, C.S.; Ku, S.; Diamond, P.; Adams, M.; Barreto, R.; Chen, Y.; Cummings, J.; D’Azevedo, E.; Dif-Pradalier, G.; Ethier, S.; et al. Whole-volume integrated gyrokinetic simulation of plasma turbulence in realistic diverted-tokamak geometry. J. Phys. Conf. Ser. 2009, 180, 12057. [Google Scholar] [CrossRef] [Green Version]
  26. Idomura, Y.; Ida, M.; Kano, T.; Aiba, N.; Tokuda, S. Conservative global gyrokinetic toroidal full-f five-dimensional Vlasov simulation. Comput. Phys. Commun. 2008, 179, 391–403. [Google Scholar] [CrossRef]
  27. Chen, Y.; Parker, S.E. A δf particle method for gyrokinetic simulations with kinetic electrons and electromagnetic perturbations. J. Comput. Phys. 2003, 189, 463–475. [Google Scholar] [CrossRef]
  28. Gorler, T.; Lapillonne, X.; Brunner, S.; Dannert, T.; Jenko, F.; Merz, F.; Told, D. The global version of the gyrokinetic turbulence code GENE. J. Comput. Phys. 2011, 230, 7053–7071. [Google Scholar] [CrossRef] [Green Version]
  29. Brizard, A.J. Nonlinear Gyrokinetic Tokamak Physics. Ph.D. Thesis, Princeton University, Princeton, NJ, USA, 1990. [Google Scholar]
  30. Brizard, A.J.; Hahm, T.S. Foundations of nonlinear gyrokinetic theory. Rev. Mod. Phys. 2007, 79, 421–468. [Google Scholar] [CrossRef]
  31. Robert, G.M. Toeplitz and Circulant Matrices: A Review. Found. Trends® Commun. Inf. Theory 2006, 2, 155–239. [Google Scholar]
  32. SELALIB. Available online: http://selalib.gforge.inria.fr/ (accessed on 4 December 2017).
  33. Crouseilles, N.; Glanc, P.; Hirstoaga, S.A.; Madaule, E.; Mehrenberger, M.; Pétri, J. A new fully two-dimensional conservative semi-Lagrangian method: Applications on polar grids, from diocotron instability to ITG turbulence. Eur. Phys. J. D 2014, 68, 252. [Google Scholar] [CrossRef]
  34. Sonnendrücker, E.; Roche, J.; Bertrand, P.; Ghizzo, A. The Semi-Lagrangian Method for the Numerical Resolution of the Vlasov Equation. J. Comput. Phys. 1999, 149, 201–220. [Google Scholar] [CrossRef] [Green Version]
  35. Grandgirard, V.; Brunetti, M.; Bertrand, P.; Besse, N.; Garbet, X.; Ghendrih, P.; Manfredi, G.; Sarazin, Y.; Sauter, O.; Sonnendrücker, E.; et al. A drift-kinetic Semi-Lagrangian 4D code for ion turbulence simulation. J. Comput. Phys. 2006, 217, 395–423. [Google Scholar] [CrossRef] [Green Version]
  36. Grandgirard, V.; Sarazin, Y.; Garbet, X.; Dif-Pradalier, G.; Ghendrih, P.; Crouseilles, N.; Latu, G.; Sonnendrücker, E.; Besse, N.; Bertrand, P. Computing ITG turbulence with a full-f semi-Lagrangian code. Commun. Nonlinear Sci. Numer. Simul. 2008, 13, 81–87. [Google Scholar] [CrossRef] [Green Version]
  37. Latu, G.; Mehrenberger, M.; Güçlü, Y.; Ottaviani, M.; Sonnendrücker, E. Field-Aligned Interpolation for Semi-Lagrangian Gyrokinetic Simulations. J. Sci. Comput. 2017. [Google Scholar] [CrossRef]
  38. Steiner, C.; Mehrenberger, M.; Crouseilles, N.; Grandgirard, V.; Latu, G.; Rozar, F. Gyroaverage operator for a polar mesh. Eur. Phys. J. D 2015, 69, 18. [Google Scholar] [CrossRef]
  39. Steiner, C.; Mehrenberger, M.; Crouseilles, N.; Philippe, H. Quasi-neutrality equation in a polar mesh. Available online: https://hal.archives-ouvertes.fr/hal-01248179/document (accessed on 4 November 2015).
  40. Coulette, D.; Besse, N. Numerical comparisons of gyrokinetic multi-water-bag models. J. Comput. Phys. 2013, 248, 1–32. [Google Scholar] [CrossRef]
Figure 1. The equilibrium density profile on the gyrocenter coordinate before the gyroaverage operation is shown by the purple line, while the ones on the particle coordinate derived by the gyroaverage operation and with the quadrature integral of μ computed by the Euler–Maclaurin-based algorithm with the forward finite difference scheme for μ meshes of 8 and 64 nodes are presented by the other two curves. The radial distance is normalized by ρ 0 .
Figure 1. The equilibrium density profile on the gyrocenter coordinate before the gyroaverage operation is shown by the purple line, while the ones on the particle coordinate derived by the gyroaverage operation and with the quadrature integral of μ computed by the Euler–Maclaurin-based algorithm with the forward finite difference scheme for μ meshes of 8 and 64 nodes are presented by the other two curves. The radial distance is normalized by ρ 0 .
Plasma 02 00009 g001
Figure 2. The numerical abs error versus the number of sampling points on the Larmor circle.
Figure 2. The numerical abs error versus the number of sampling points on the Larmor circle.
Plasma 02 00009 g002
Figure 3. The left figure shows the exact value of the 1st and double gyroaverage of the test function and the value computed in the two meshes of the polar profile at radial position 7 / 4 . The right figure shows the radial profile at the polar angle 7 π / 8 .
Figure 3. The left figure shows the exact value of the 1st and double gyroaverage of the test function and the value computed in the two meshes of the polar profile at radial position 7 / 4 . The right figure shows the radial profile at the polar angle 7 π / 8 .
Plasma 02 00009 g003
Figure 4. The exact solution and the numerical solution solved by the QNE solver at node 20 in the x 2 dimension.
Figure 4. The exact solution and the numerical solution solved by the QNE solver at node 20 in the x 2 dimension.
Plasma 02 00009 g004
Figure 5. The left figure shows the exact solution and the numerical solutions of the polar profile at the radial position 7 / 4 . The right figure shows the radial profile at polar angle 7 π / 8 .
Figure 5. The left figure shows the exact solution and the numerical solutions of the polar profile at the radial position 7 / 4 . The right figure shows the radial profile at polar angle 7 π / 8 .
Plasma 02 00009 g005
Figure 6. The three figures show the magnitude of the numerical error of the quadrature integral of 0 30 e μ / a d μ and 0 30 J 0 2 ( 2 μ ) e μ / a d μ computed by the three schemes of Euler–Maclaurin-based quadrature integrating algorithm and the trapezoidal algorithm with uniform mesh. We choose M = 4 in the Euler–Maclaurin formula and p = 6 as the precision order of the finite difference. Here, “deri-red” denotes the derivative-reduction scheme, while “trap” denotes the trapezoidal algorithm.
Figure 6. The three figures show the magnitude of the numerical error of the quadrature integral of 0 30 e μ / a d μ and 0 30 J 0 2 ( 2 μ ) e μ / a d μ computed by the three schemes of Euler–Maclaurin-based quadrature integrating algorithm and the trapezoidal algorithm with uniform mesh. We choose M = 4 in the Euler–Maclaurin formula and p = 6 as the precision order of the finite difference. Here, “deri-red” denotes the derivative-reduction scheme, while “trap” denotes the trapezoidal algorithm.
Plasma 02 00009 g006
Figure 7. The left figure shows the exact and numerical polar profile at the radial position r = 6 , while the right figure shows the exact and numerical radial profile at Θ = 7 π 8 .
Figure 7. The left figure shows the exact and numerical polar profile at the radial position r = 6 , while the right figure shows the exact and numerical radial profile at Θ = 7 π 8 .
Plasma 02 00009 g007
Figure 8. The radial profile at Θ = 7 π 8 and the polar profile at r = 35 4 for a = 0.5 , a = 1 , a = 2.2 cases are plotted.
Figure 8. The radial profile at Θ = 7 π 8 and the polar profile at r = 35 4 for a = 0.5 , a = 1 , a = 2.2 cases are plotted.
Plasma 02 00009 g008
Figure 9. The left figure shows the abs error of the polar profile with r = 35 4 , while the right one presents the abs error of the radial profile with Θ = 7 π 8 .
Figure 9. The left figure shows the abs error of the polar profile with r = 35 4 , while the right one presents the abs error of the radial profile with Θ = 7 π 8 .
Plasma 02 00009 g009
Figure 10. These figures are for the 1st case. The purple curve of the left figure is ion’s equilibrium density profile on the gyrocenter coordinate frame, while the green curve is the ion’s equilibrium density profile on the particle coordinate frame transformed from the purple curve by the gyroaverage operation. Ion’s equilibrium temperature profile is given by the right figure.
Figure 10. These figures are for the 1st case. The purple curve of the left figure is ion’s equilibrium density profile on the gyrocenter coordinate frame, while the green curve is the ion’s equilibrium density profile on the particle coordinate frame transformed from the purple curve by the gyroaverage operation. Ion’s equilibrium temperature profile is given by the right figure.
Plasma 02 00009 g010
Figure 11. These figures are for the 1st case. The polar Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Figure 11. These figures are for the 1st case. The polar Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Plasma 02 00009 g011
Figure 12. These figures are for the 1st case. The radial Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Figure 12. These figures are for the 1st case. The radial Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Plasma 02 00009 g012
Figure 13. These figures are for the 2nd case. The purple curve of the left figure is ion’s equilibrium density profile on the gyrocenter coordinate frame, while the green curve is on the particle coordinate frame transformed from the purple curve by the gyroaverage operation. Ion’s equilibrium temperature profile is given by the right figure.
Figure 13. These figures are for the 2nd case. The purple curve of the left figure is ion’s equilibrium density profile on the gyrocenter coordinate frame, while the green curve is on the particle coordinate frame transformed from the purple curve by the gyroaverage operation. Ion’s equilibrium temperature profile is given by the right figure.
Plasma 02 00009 g013
Figure 14. These figures are for the 2nd case. The upper row is the evolution of the potential profile over the polar cross-section computed by the interpolation algorithm, while the lower row is computed by the 2nd-order solver.
Figure 14. These figures are for the 2nd case. The upper row is the evolution of the potential profile over the polar cross-section computed by the interpolation algorithm, while the lower row is computed by the 2nd-order solver.
Plasma 02 00009 g014
Figure 15. These figures are for the 2nd case. The polar Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Figure 15. These figures are for the 2nd case. The polar Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Plasma 02 00009 g015
Figure 16. These figures are for the 2nd case. The radial Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Figure 16. These figures are for the 2nd case. The radial Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Plasma 02 00009 g016
Figure 17. These figures are for the 3rd case. The purple curve of the left figure is ion’s equilibrium density profile on the gyrocenter coordinate frame, while the green curve is on the particle coordinate frame transformed from the purple curve by the gyroaverage operation. Ion’s equilibrium temperature profile is given by the right figure.
Figure 17. These figures are for the 3rd case. The purple curve of the left figure is ion’s equilibrium density profile on the gyrocenter coordinate frame, while the green curve is on the particle coordinate frame transformed from the purple curve by the gyroaverage operation. Ion’s equilibrium temperature profile is given by the right figure.
Plasma 02 00009 g017
Figure 18. These figures are for the 3rd case. The cross-section profile of the potential computed by the interpolation solver and the 2nd-order solver.
Figure 18. These figures are for the 3rd case. The cross-section profile of the potential computed by the interpolation solver and the 2nd-order solver.
Plasma 02 00009 g018
Figure 19. These figures are for the 3rd case. The polar Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Figure 19. These figures are for the 3rd case. The polar Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Plasma 02 00009 g019
Figure 20. These figures are for the 3rd case. The radial Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Figure 20. These figures are for the 3rd case. The radial Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Plasma 02 00009 g020
Figure 21. These figures are for the 4th case. The cross-section profile of the potential computed by the interpolation solver and the 2nd-order solver.
Figure 21. These figures are for the 4th case. The cross-section profile of the potential computed by the interpolation solver and the 2nd-order solver.
Plasma 02 00009 g021
Figure 22. These figures are for the 4th case. The polar Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Figure 22. These figures are for the 4th case. The polar Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Plasma 02 00009 g022
Figure 23. These figures are for the 4th case. The radial Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Figure 23. These figures are for the 4th case. The radial Fourier modes of the perturbative potential computed by the interpolation algorithm and the 2nd-order solver.
Plasma 02 00009 g023
Table 1. Double-periodic, Cartesian. m = 2 , n = 0 , μ = 0.02 , N θ = 100 .
Table 1. Double-periodic, Cartesian. m = 2 , n = 0 , μ = 0.02 , N θ = 100 .
Mesh(16,16)(32,32)(64,64)
interpo, J 1 1.7084 × 10 2 6.4524 × 10 4 4.1522 × 10 5
2nd, J 1 0.87380.96350.9872
interpo, J 2 3.2803 × 10 2 1.2393 × 10 3 7.9757 × 10 5
2nd, J 2 1.71021.88821.9352
Table 2. Double-periodic, Cartesian. m = 5 , n = 5 , μ = 0.02 , N θ = 100 .
Table 2. Double-periodic, Cartesian. m = 5 , n = 5 , μ = 0.02 , N θ = 100 .
Mesh(16,16)(32,32)(64,64)
interpo, J 1 1.3114 4.0744 × 10 2 2.08 × 10 3
2nd, J 1 10.251310.821811.0119
interpo, J 2 1.3972 4.5496 × 10 2 2.3258 × 10 3
2nd, J 2 115.680716.774517.1429
Table 3. Natural + periodic, Cartesian. f ( x ) = x 2 , μ = 0.05 , N θ = 100 .
Table 3. Natural + periodic, Cartesian. f ( x ) = x 2 , μ = 0.05 , N θ = 100 .
Mesh(32,32)(64,64)
interpo, J 1 1.0297 × 10 3 1.7507 × 10 2
2nd, J 1 0.00.0
interpo, J 2 2.3478 × 10 2 8.3417 × 10 2
2nd, J 2 0.00.0
Table 4. Natural + periodic, polar. f ( x ) = x 2 , μ = 0.02 , N θ = 100 .
Table 4. Natural + periodic, polar. f ( x ) = x 2 , μ = 0.02 , N θ = 100 .
Mesh(32,32)(64,64)
interpo, J 1 8.0966 × 10 4 1.0698 × 10 5
interpo, J 2 1.9712 × 10 2 2.9669 × 10 3
Table 5. Double-periodic, Cartesian. n = 3 , m = 3 , N θ = 100 .
Table 5. Double-periodic, Cartesian. n = 3 , m = 3 , N θ = 100 .
Mesh(32,32)(64,64)(128,128)
μ = 1.0 1.5204 × 10 4 6.5066 × 10 6 2.9072 × 10 7
μ = 0.0 1.2393 × 10 13 1.4944 × 10 13 1.3548 × 10 13
Table 6. Natural + periodic, polar. f ( x ) = x 2 , N θ = 100 .
Table 6. Natural + periodic, polar. f ( x ) = x 2 , N θ = 100 .
Mesh(32,32)(64,64)
μ = 0.02 0.11860.1339
μ = 0.0 2.6356 × 10 13 1.4944 × 10 13
Table 7. N μ = 64 , n = 1 , m = 1 , μ max = 20 , N θ = 100 .
Table 7. N μ = 64 , n = 1 , m = 1 , μ max = 20 , N θ = 100 .
a = 1.0 a = 0.5 a = 2.2
I 0 , num error 2.4991 × 10 5 2.4955 × 10 5 2.662 × 10 5
I 2 , num error 2.4908 × 10 5 2.4925 × 10 5 2.4915 × 10 5
solution abs error1.38170.6533.6886

Share and Cite

MDPI and ACS Style

Zhang, S.; Mehrenberger, M.; Steiner, C. Computing the Double-Gyroaverage Term Incorporating Short-Scale Perturbation and Steep Equilibrium Profile by the Interpolation Algorithm. Plasma 2019, 2, 91-126. https://doi.org/10.3390/plasma2020009

AMA Style

Zhang S, Mehrenberger M, Steiner C. Computing the Double-Gyroaverage Term Incorporating Short-Scale Perturbation and Steep Equilibrium Profile by the Interpolation Algorithm. Plasma. 2019; 2(2):91-126. https://doi.org/10.3390/plasma2020009

Chicago/Turabian Style

Zhang, Shuangxi, Michel Mehrenberger, and Christophe Steiner. 2019. "Computing the Double-Gyroaverage Term Incorporating Short-Scale Perturbation and Steep Equilibrium Profile by the Interpolation Algorithm" Plasma 2, no. 2: 91-126. https://doi.org/10.3390/plasma2020009

Article Metrics

Back to TopTop