arXiv is now an independent nonprofit! Learn more
License: arXiv.org perpetual non-exclusive license
arXiv:2607.09046v1 [physics.plasm-ph] 10 Jul 2026

Implicit discretization schemes for full-kinetic ion and drift-kinetic electron simulationsJournal: Journal of Computational Physics

Zilong Li Affiliation: Southwestern Institute of Physics, Chengdu, 610041, China Affiliation: Department of Engineering Physics,Tsinghua University, Beijing, 100084, China    Yang Chen Affiliation: Department of Physics, University of Colorado at Boulder, Boulder, 80309, USA    Haotian Chen Email: chenhaotian@swip.ac.cn Corresponding author: Corresponding author Affiliation: Southwestern Institute of Physics, Chengdu, 610041, China    Lei Ye Affiliation: Institute of Plasma Physics, Chinese Academy of Science, Hefei, 230031, China    Zhe Gao Affiliation: Department of Engineering Physics,Tsinghua University, Beijing, 100084, China    Wei Chen Affiliation: Southwestern Institute of Physics, Chengdu, 610041, China
Abstract

We present a new electromagnetic plasma simulation model with full-kinetic ions and drift-kinetic electrons. This model (termed as FIDES) solves the electric field using the implicit perpendicular Ohm’s law and a novel implicit parallel Ampere’s law, where the latter requires an implicit scheme for the parallel electric field in advancing the electron weights. To suppress unphysical high-frequency instabilities, ion weights are advanced using an implicit scheme for perpendicular electric fields. Simulations of perpendicular and parallel waves validate the model’s capability in handling high-frequency physics. Low-frequency wave simulations demonstrate that the implicit parallel Ampere’s law can mitigate the cancellation problem more effectively than the conventional schemes using the parallel Ohm’s law. To reduce the numerical damping from implicit time-stepping, we develop a second-order scheme for particle pushing. Meanwhile, an integrated strategy combining the first- and second-order schemes is employed to suppress odd-even decoupling while maintaining the accuracy of the second-order formulation.

Keywords: 
electromagnetic simulation , δf\delta f method , implicit scheme , high-frequency physics

1 Introduction

Despite its success in low-frequency physics, where the wave frequency ω\omega is much less than the ion cyclotron frequency Ωci\Omega_{ci}, the gyrokinetic simulation is limited by the so-called nonlinear gyrokinetic ordering assumptions [1, 2]. These ordering assumptions break down in regimes of growing practical importance. For example, high-frequency (ωΩci)(\omega\sim\Omega_{ci}) waves, which are essential for applications including wave heating and current drive, violate the condition ω/Ωci1\omega/\Omega_{ci}\ll 1 and thus lie beyond the scope of standard gyrokinetics [1]. In the plasma pedestal region where the equilibrium pressure gradient scale length LpL_{p} can be comparable to the ion Larmor radius ρi\rho_{i}, the scale separation assumption fails. More importantly, as a perturbative theory, gyrokinetics cannot self-consistently perform full-f non-perturbative simulations. As shown in [1], the gyrokinetic framework becomes invalid when the perturbative amplitude is beyond a quantitative threshold. Additionally, this perturbative nature constrains its formal accuracy. The widely employed gyrokinetic equation is accurate to O(λ2)O(\lambda^{2}) (λ=ρi/Lp\lambda=\rho_{i}/L_{p}) [3, 4, 5, 6]. An accuracy imbalance arises in the quasi-neutrality equations for kρiλk_{\perp}\rho_{i}\sim\lambda, where the ion polarization density is computed at k2ρi2ϕO(λ2ϕ)k^{2}_{\perp}\rho_{i}^{2}\phi\sim O(\lambda^{2}\phi) but the perturbed ion density remains accurate to O(λ)O(\lambda) [7].

A fully kinetic description of ions may overcome the limitations in gyrokinetic simulations and is now within reach for modern supercomputers. But resolving electron gyromotion remains prohibitively expensive. In this paper, we propose a novel full-kinetic ion and drift-kinetic electron simulation (FIDES) model. This scheme is promising since, in most scenarios of interest, the ordering assumptions (ω/Ωce1,kρe1)(\omega/\Omega_{ce}\ll 1,k_{\perp}\rho_{e}\ll 1) of the drift kinetic equation are well satisfied, enabling a balance between computational efficiency and the preservation of essential physics. More importantly, the drift kinetic equation is valid for fluctuations with amplitudes comparable to the equilibrium level [1]. Therefore, the resulting full-kinetic ion drift-kinetic electron simulation model is inherently suitable for full-f non-perturbative simulations. In practice, however, self-consistently performing non-perturbative simulations poses significant numerical challenges. As an initial step in the development of the FIDES model, the algorithm presented in this paper employs the δf\delta f method. This choice is motivated by its advantage in reducing particle noise and by the extensive experience accumulated within this framework. When the perturbation becomes sufficiently large that the marker distribution departs substantially from the background Maxwellian, however, the δf\delta f scheme not only loses its noise-reduction benefit but also induces severe convergence difficulties in the iterative field solver of FIDES. Consequently, the present algorithm is not designed to handle non-perturbative scenarios in which the perturbed distribution function becomes comparable to the equilibrium distribution. To demonstrate the core concepts, we implement the δf\delta f method in a slab geometry for the present study. The model adopts the implicit perpendicular Ohm’s law for perpendicular electric fields 𝐄\mathbf{E}_{\perp}, but, unlike existing models [8, 9, 10, 11], employs a novel implicit parallel Ampere’s law for the parallel electric field EE_{\|}, in which the lower-order electron velocity moment can mitigate the cancellation problem. This formulation requires an implicit EE_{\|} scheme for electron weight pushing. Ion weights are advanced by an implicit 𝐄\mathbf{E}_{\perp} scheme to suppress unphysical high-frequency instabilities. Numerical tests demonstrate that the FIDES model can correctly capture high-frequency wave physics and address the cancellation problem in low-frequency wave simulations. To improve the accuracy of wave dynamics, we further implement a second-order time-stepping scheme and employ an integrated strategy combining first- and second-order schemes to suppress associated odd-even decoupling while preserving numerical accuracy.

The rest of the paper is structured as follows. Section 2 presents the FIDES models and the simulation examples are discussed in section 3. Section 4 introduces the second-order scheme and the conclusions are given in section 5.

2 Numerical model

2.1 Notation and Normalization

In this subsection, we define the notation used throughout the paper for both field and particle quantities. A summary is provided in Table 1 for quick reference.

2.1.1 Field quantities

Field quantities are functions defined on the spatial grid. They may carry superscripts, subscripts, or both. For example, E1n(𝐱g)E_{1\parallel}^{n}(\mathbf{x}_{g}) denotes the perturbed electric field parallel to the background magnetic field, evaluated at the grid point 𝐱g\mathbf{x}_{g} and at time step tn=nΔtt^{n}=n\Delta t.

The superscripts and subscripts used for electromagnetic fields are defined as follows:

  • 1.

    Superscripts:

    • (a)

      nn: time step index, with tn=nΔtt^{n}=n\Delta t.

    • (b)

      kk: iteration index within a time step (e.g., the kk-th iteration of the field solver).

    • (c)

      *: intermediate quantity in the implicit discretization scheme.

    • (d)

      Imp: implicit quantity in the implicit discretization scheme.

  • 2.

    Subscripts:

    • (a)

      00: equilibrium (background) quantity.

    • (b)

      11: perturbed (fluctuating) quantity.

    • (c)

      \parallel or \perp: direction parallel or perpendicular to the background magnetic field.

    • (d)

      x,y,zx,y,z: Cartesian components when applicable.

When we refer to quantities in Fourier space, we denote them with ()~\tilde{\left(\cdot\right)} or F{}F\left\{\cdot\right\} for spatial Fourier transformation, and ()^\hat{\left(\cdot\right)} for time Fourier transformation, respectively. The wavenumber and frequency are indicated as arguments. For instance, E~1z(kz)\tilde{E}_{1z}(k_{z}) is the spatial Fourier amplitude of the perturbed electric field in the z direction at wavenumber kzk_{z}.

2.1.2 Particle quantities

Particle quantities are defined for each species and each marker particle. They carry additional subscripts to indicate the species and the particle index. For example, 𝐯ijn+1\mathbf{v}_{ij\perp}^{n+1} represents the perpendicular velocity of the jj-th ion at time step tn+1t^{n+1}.

The notation for particle quantities follows:

  • 1.

    Species subscripts:

    • (a)

      ii: ion.

    • (b)

      ee: electron.

  • 2.

    Particle index:

    • (a)

      jj: index of the marker particle.

  • 3.

    Other subscripts and superscripts: The same conventions for direction (\parallel, \perp) and time (nn, kk, *) as defined for field quantities apply consistently to particle quantities.

Table 1: Summary of notation used in this paper.
Symbol Meaning Example
Superscripts
nn Time step index, tn=nΔtt^{n}=n\Delta t E1nE_{1\parallel}^{n}
kk Iteration index within a time step E1kE_{1\parallel}^{k}
* Intermediate quantity in implicit scheme 𝐉i\mathbf{J}_{i\perp}^{*}
Imp Implicit quantity in implicit scheme 𝐉iImp\mathbf{J}_{i}^{\text{Imp}}
Subscripts
00 Equilibrium (background) quantity B0B_{0}
11 Perturbed (fluctuating) quantity E1E_{1\parallel}
\parallel Parallel to background magnetic field E1E_{1\parallel}
\perp Perpendicular to background magnetic field 𝐯ij\mathbf{v}_{ij\perp}
x,y,zx,y,z Cartesian components E1xE_{1x}
gg Physical quantity at the grid point 𝐱g\mathbf{x}_{g}
ii Ion vij{v}_{ij\|}
ee Electron vej{v}_{ej\|}
jj Marker particle index vij{v}_{ij\|}
Other symbols
()~,F{}\tilde{(\cdot)},F\left\{\cdot\right\} Space Fourier transformed quantity E~1zn(kz)\tilde{E}_{1z}^{n}(k_{z})
()^\hat{(\cdot)} Time Fourier transformed quantity E^1z(kz,ω)\hat{E}_{1z}(k_{z},\omega)

2.1.3 Normalization

We adopt the following normalization conventions in this paper. Velocities viv_{i} and vev_{e} are normalized to cs=Te/mic_{s}=\sqrt{T_{e}/m_{i}}. The magnetic moment μe\mu_{e} is normalized to Te/B0T_{e}/B_{0}. Time Δt\Delta t is scaled by the inverse ion cyclotron frequency Ωci1=mi/eB0\Omega_{ci}^{-1}=m_{i}/eB_{0}, and lengths by the Larmor radius ρs=cs/Ωci\rho_{s}=c_{s}/\Omega_{ci}. The magnetic field BB is normalized to the background field B0B_{0}, the electric field EE to Te/eρsT_{e}/e\rho_{s}, the current density JJ to enecsen_{e}c_{s}, and the pressure pp to neTen_{e}T_{e}.

For the sake of clarity and without loss of generality, in this paper, we present our formulations in a shearless slab geometry. In this configuration, a uniform background magnetic field aligns with the z direction, while all equilibrium non-uniformities (e.g., in density nen_{e}) are along the x direction. The core idea of the FIDES algorithm is independent of this specific choice and can be readily extended to more complex geometries.

In the following sections, we present both an implicit and an explicit discretization scheme for FIDES.

2.2 Implicit discretization scheme

The FIDES model employs a full-kinetic description for ions, governed by the Vlasov equation

fit+𝐯ifi+qimi(𝐄+𝐯i×𝐁)fi𝐯i=0,\frac{\partial f_{i}}{\partial t}+\mathbf{v}_{i}\cdot\nabla f_{i}+\frac{q_{i}}{m_{i}}\left(\mathbf{E}+\mathbf{v}_{i}\times\mathbf{B}\right)\cdot\frac{\partial f_{i}}{\partial\mathbf{v}_{i}}=0, (1)

while the electrons are described by the drift kinetic equation

fet+𝐯Gfe+ε˙efeεe=0.\frac{\partial f_{e}}{\partial t}+\mathbf{v}_{G}\cdot\nabla f_{e}+\dot{\varepsilon}_{e}\frac{\partial f_{e}}{\partial\varepsilon_{e}}=0. (2)

The guiding center velocity is

𝐯G=ve(𝐛+𝐁1B0)+𝐯D+𝐯E,\mathbf{v}_{G}=v_{e\|}\left({\mathbf{b}}+\frac{\mathbf{B}_{1\perp}}{B_{0}}\right)+\mathbf{v}_{D}+\mathbf{v}_{E}, (3)

with 𝐛=𝐁0/B0\mathbf{b}=\mathbf{B}_{0}/B_{0}. Here 𝐯D\mathbf{v}_{D} contains the grad-B and curvature drift, and 𝐯E\mathbf{v}_{E} is the 𝐄×𝐁\mathbf{E}\times\mathbf{B} drift,

𝐯D=meve2eB0𝐛×(𝐛)𝐛μeeB0𝐛×B0,\displaystyle\mathbf{v}_{D}=-\frac{m_{e}v_{e\|}^{2}}{eB_{0}}\mathbf{b}\times\left(\mathbf{b}\cdot\nabla\right)\mathbf{b}-\frac{\mu_{e}}{eB_{0}}\mathbf{b}\times\nabla B_{0}, (4)
𝐯E=𝐄1×𝐛B0,\displaystyle\mathbf{v}_{E}=\frac{\mathbf{E}_{1}\times\mathbf{b}}{B_{0}},

where the subscript 1 denotes perturbed quantities. The perturbed magnetic field is assumed to be much smaller than the equilibrium magnetic field. Therefore, the amplitude of the total magnetic field is |𝐁0+𝐁1|B0+B1|\mathbf{B}_{0}+\mathbf{B}_{1}|\approx B_{0}+B_{1\|} and the direction of the total magnetic field is (𝐁0+𝐁1)/|𝐁0+𝐁1|𝐛+𝐁1/B0\left(\mathbf{B}_{0}+\mathbf{B}_{1}\right)/|\mathbf{B}_{0}+\mathbf{B}_{1}|\approx\mathbf{b}+\mathbf{B}_{1\perp}/B_{0} in Eq. (3). The time derivative of the electron kinetic energy εe=mev2/2\varepsilon_{e}=m_{e}v^{2}/2 is

ε˙e=e𝐯G𝐄1μe𝐛×𝐄1,\dot{\varepsilon}_{e}=-e\mathbf{v}_{G}\cdot\mathbf{E}_{1}-\mu_{e}\mathbf{b}\cdot\nabla\times\mathbf{E}_{1}, (5)

where the magnetic moment μe=mev2/2B0\mu_{e}=m_{e}v_{\perp}^{2}/2B_{0} is an adiabatic invariant in the drift kinetic model.

To reduce the particle noise in simulations, we employ the δf\delta f method for both species in the present work [12]. However, δf\delta f scheme suffers from severe numerical problems when the perturbed distribution function is comparable to the equilibrium distribution function. Simulating large perturbation problems lies beyond the scope of the present work.

Regarding the field equations, the implicit discretization scheme is built upon a reduced form of the Maxwell equations

𝐁t=\displaystyle\frac{\partial\mathbf{B}}{\partial t}= ×𝐄,\displaystyle-\nabla\times\mathbf{E}, (6)
×𝐁=\displaystyle\nabla\times\mathbf{B}= μ0𝐉.\displaystyle\mu_{0}\mathbf{J}.

where the displacement current term in Ampere’s law is dropped. This omission is motivated by the need to numerically eliminate plasma oscillations at the plasma frequency ωpe=nee2/meε0\omega_{pe}=\sqrt{n_{e}e^{2}/m_{e}\varepsilon_{0}} (with ε0\varepsilon_{0} the vacuum permittivity), which can be comparable to the electron cyclotron frequency. The plasma oscillations are not relevant to the physics of interest and, if retained, would violate the ordering assumptions of the electron drift kinetic equation.

An important consequence of this reduced form of Ampere’s law is that it inherently ensures the quasi-neutrality condition. Taking the divergence of Ampere’s law and noting that the divergence of a curl is zero, we obtain 𝐉=0\nabla\cdot\mathbf{J}=0. Meanwhile, the charge conservation equation holds as (qiniene)/t+𝐉=0\partial(q_{i}n_{i}-en_{e})/\partial t+\nabla\cdot{\mathbf{J}}=0, which can be derived from the first-order moment of the ion Vlasov equation and electron drift kinetic equation. Combining 𝐉=0\nabla\cdot\mathbf{J}=0 with the charge conservation equation yields (qiniene)/t=0\partial(q_{i}n_{i}-en_{e})/\partial t=0. Thus, within this formulation, quasi-neutrality is consistently maintained.

The original Maxwell equations (6) are ill-posed for explicit particle-pushing schemes. This is attributed to the fact that particle noise breaks the 𝐉=0\nabla\cdot\mathbf{J}=0 condition required by Ampere’s law, resulting in inaccurate electromagnetic fields. A common solution is to transform the Ampere’s law into the generalized Ohm’s law [8, 9, 10, 11]. Here, in the context of particle-in-cell (PIC) magnetic confinement fusion (MCF) simulations, the generalized Ohm’s law is used to solve for the electric field using the current computed from particles. This usage differs from the classical Ohm’s law, which serves as a constitutive relation expressing the current in terms of the electric field. Depending on the direction relative to the magnetic field, the generalized Ohm’s law can be split into a parallel component and a perpendicular component. In previous work [8, 9, 10, 11], both components have been used as field equations. However, a numerical cancellation problem arises in the parallel Ohm’s law when electrons behave adiabatically for kvteωk_{\|}v_{te}\gg\omega [8, 10, 11]. In this regime, the leading-order terms E1E_{1\|} and p1,e-\nabla_{\|}p_{1,e\|} nearly cancel, and governing dynamics appears at the next order. Consequently, numerical noise in p1,ep_{1,e\|} can lead to a severe loss of accuracy.

To address the numerical cancellation problem inherent in the parallel Ohm’s law, we propose using the Ampere’s law directly to solve for the electric field. Since EE_{\|} does not appear explicitly in Ampere’s law but enters implicitly through the electron response, an implicit treatment of the EE_{\|} contribution to the electron response has to be used. This leads to the formulation of an implicit parallel Ampere’s law, which employs a lower-order electron velocity moment and, as shown in Section 3, effectively mitigates the cancellation problem. In our algorithm, we adopt this approach by replacing the parallel Ohm’s law with the implicit parallel Ampere’s law, while retaining the perpendicular Ohm’s law. The electric field is then obtained by solving these two equations simultaneously as a coupled system.

To develop an implicit scheme for the parallel Ampere’s law, we advance electrons using an implicit EE_{\|} scheme

wewenΔt\displaystyle\frac{w_{e}^{*}-w_{e}^{n}}{\Delta t} ={lnnex+[me(ven)22mi+μeB032]lnTex}(E1yn+venB1xn)μe𝐛×𝐄1n,\displaystyle=-\left\{\frac{\partial\ln n_{e}}{\partial x}+\left[\frac{m_{e}\left(v_{e\|}^{n}\right)^{2}}{2m_{i}}+\mu_{e}B_{0}-\frac{3}{2}\right]\frac{\partial\ln T_{e}}{\partial x}\right\}\left({E_{1y}^{n}}+v_{e\|}^{n}{B_{1x}^{n}}\right)-\mu_{e}\mathbf{b}\cdot\nabla\times\mathbf{E}_{1}^{n}, (7)
wen+1weΔt\displaystyle\frac{w_{e}^{n+1}-w_{e}^{*}}{\Delta t} =ven+1E1n+1,\displaystyle=-v_{e\|}^{n+1}E_{1\|}^{n+1},

which have been normalized according to the conventions in section 2.1.3. Here, the intermediate electron weight wew_{e}^{*} is first advanced from wenw_{e}^{n} via the first equation. Once the field equations are solved, the electron weight wen+1w_{e}^{n+1} at time step tn+1t^{n+1} is obtained by advancing wew_{e}^{*} using the updated parallel electric field E1n+1E_{1\|}^{n+1}. Since the magnetic moment μe\mu_{e} is a constant of motion, its superscript nn has been omitted in Eq. (7). Under the implicit EE_{\|} scheme, the electron parallel current Jen+1J_{e\|}^{n+1} contains two parts

Jen+1(𝐱g)=Je(𝐱g)+1NpjΔt(vejn+1)2E1n+1(𝐱ejn+1)S(𝐱g𝐱ejn+1),\displaystyle J_{e\|}^{n+1}\left(\mathbf{x}_{g}\right)=J_{e\|}^{*}\left(\mathbf{x}_{g}\right)+\frac{1}{N_{p}}\sum_{j}\Delta t\left(v_{ej\|}^{n+1}\right)^{2}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right), (8)
Je(𝐱g)=1Npjwejvejn+1S(𝐱g𝐱ejn+1),\displaystyle J_{e\|}^{*}\left(\mathbf{x}_{g}\right)=-\frac{1}{N_{p}}\sum_{j}w_{ej}^{*}v_{ej\|}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right),

where JeJ_{e\|}^{*} and the second term of Jen+1J_{e\|}^{n+1} are, respectively, the intermediate and implicit parts in the electron parallel current. In Eq. (8), S(𝐱g𝐱ejn+1)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right) is the shape function, where 𝐱g\mathbf{x}_{g} and 𝐱ejn+1\mathbf{x}_{ej}^{n+1} are the positions of the grid point and the electron, respectively. In the FIDES algorithm, the particle positions and velocities at tn+1t^{n+1} are computed before accumulating particle moments. In linear simulations, the particle trajectories are advanced along unperturbed orbits, independently of the perturbed fields. In nonlinear simulations, the particle positions and velocities are updated iteratively using the fields from previous iteration, so that vejn+1v_{ej\|}^{n+1} and 𝐱ejn+1\mathbf{x}_{ej}^{n+1} are available when the particle moments are computed.

Substituting the electron parallel current (8) into the parallel Ampere’s law of Eq. (6), we can get

𝐛×𝐁1n+1=βe(Je+Jin+1)+βeNpjΔt(vejn+1)2E1n+1(𝐱ejn+1)S(𝐱g𝐱ejn+1),\mathbf{b}\cdot\nabla\times\mathbf{B}^{n+1}_{1}=\beta_{e}\left(J_{e\|}^{*}+J_{i\|}^{n+1}\right)+\frac{\beta_{e}}{N_{p}}\sum_{j}\Delta t\left(v_{ej\|}^{n+1}\right)^{2}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right), (9)

where βe=μ0neTe/B02\beta_{e}=\mu_{0}n_{e}T_{e}/B_{0}^{2} and NpN_{p} is the particle number in one grid. Next, substituting 𝐁1n+1\mathbf{B}_{1}^{n+1} with 𝐁1nΔt×𝐄1n+1\mathbf{B}_{1}^{n}-\Delta t\nabla\times\mathbf{E}_{1}^{n+1} and collecting all terms that depend on the electric field at time step tn+1t^{n+1} on the left-hand side, we obtain the implicit parallel Ampere’s law, which serves as one of the equations for the electric field,

Δt𝐛××𝐄1n+1+βeNpjΔt(vejn+1)2E1n+1(𝐱ejn+1)S(𝐱g𝐱ejn+1)=𝐛×𝐁1nβe(Je+Jin+1).\displaystyle\Delta t\mathbf{b}\cdot\nabla\times\nabla\times\mathbf{E}_{1}^{n+1}+\frac{\beta_{e}}{N_{p}}\sum_{j}\Delta t\left(v_{ej\|}^{n+1}\right)^{2}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)=\mathbf{b}\cdot\nabla\times\mathbf{B}_{1}^{n}-\beta_{e}\left(J_{e\|}^{*}+J_{i\|}^{n+1}\right). (10)

After computing the ion and electron currents, and given 𝐁1n\mathbf{B}_{1}^{n}, this equation is solved together with the perpendicular Ohm’s law (introduced later) to obtain the electric field at time step tn+1t^{n+1}. Note that regardless of whether the field equations are solved using a finite difference method or a spectral method, the left-hand side of Eq. (10) contains a discrete summation term over electrons, (βe/Np)jΔt(vejn+1)2E1n+1(𝐱ejn+1)S(𝐱g𝐱ejn+1)\left(\beta_{e}/N_{p}\right)\sum_{j}\Delta t\left(v_{ej\|}^{n+1}\right)^{2}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right). This term renders the discretized coefficient matrix of field equations complex and time-step-dependent, precluding the use of cost-saving techniques such as performing a single LU decomposition and storing the matrix for use in later time steps. Therefore, in FIDES, we propose to solve the implicit parallel Ampere’s law and perpendicular Ohm’s law in an iterative manner. In particular, we first find an approximate expression for (βe/Np)jΔt(vejn+1)2E1n+1(𝐱ejn+1)S(𝐱g𝐱ejn+1)\left(\beta_{e}/N_{p}\right)\sum_{j}\Delta t\left(v_{ej\|}^{n+1}\right)^{2}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right),

βeNpjΔt(vejn+1)2E1n+1(𝐱ejn+1)S(𝐱g𝐱ejn+1)=βeΔtNp+dv[v2jE1n+1(𝐱ejn+1)S(𝐱g𝐱ejn+1)δ(vvejn+1)]\displaystyle\frac{\beta_{e}}{N_{p}}\sum_{j}\Delta t\left(v_{ej\|}^{n+1}\right)^{2}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)=\frac{\beta_{e}\Delta t}{N_{p}}\int_{-\infty}^{+\infty}dv_{\|}\left[v_{\|}^{2}\sum_{j}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\delta\left(v_{\|}-v_{ej\|}^{n+1}\right)\right] (11)
βeΔtΔVNp+dv[v2jE1n+1(𝐱ejn+1)δ(𝐱g𝐱ejn+1)δ(vvejn+1)]\displaystyle\approx\frac{\beta_{e}\Delta t\Delta V}{N_{p}}\int_{-\infty}^{+\infty}dv_{\|}\left[v_{\|}^{2}\sum_{j}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)\delta\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\delta\left(v_{\|}-v_{ej\|}^{n+1}\right)\right]
=βeΔtΔVNp+dv[v2E1n+1(𝐱g)jδ(𝐱g𝐱ejn+1)δ(vvejn+1)].\displaystyle=\frac{\beta_{e}\Delta t\Delta V}{N_{p}}\int_{-\infty}^{+\infty}dv_{\|}\left[v_{\|}^{2}E_{1\|}^{n+1}\left(\mathbf{x}_{g}\right)\sum_{j}\delta\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\delta\left(v_{\|}-v_{ej\|}^{n+1}\right)\right].

Here, we have approximated the shape function as S(𝐱g𝐱ejn+1)ΔVδ(𝐱g𝐱ejn+1)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\approx\Delta V\delta\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right), where ΔV\Delta V is the volume of a grid cell. This approximation becomes increasingly accurate as the grid size decreases. In the limit of a sufficiently large number of marker particles, we can approximate (ΔV/Np)jδ(𝐱g𝐱ejn+1)δ(vvejn+1)\left(\Delta V/N_{p}\right)\sum_{j}\delta\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\delta\left(v_{\|}-v_{ej\|}^{n+1}\right) as the normalized marker distribution exp[mev2/(2mi)]/(2πmi/me)0.5exp[-m_{e}v_{\|}^{2}/\left(2m_{i}\right)]/(2\pi m_{i}/m_{e})^{0.5} in Eq. (11),

βeΔtΔVNp+dv[v2E1n+1(𝐱g)jδ(𝐱g𝐱ejn+1)δ(vvejn+1)]βeΔtE1n+1(𝐱g)dv[v2(2πmi/me)0.5exp(mev22mi)]\displaystyle\frac{\beta_{e}\Delta t\Delta V}{N_{p}}\int_{-\infty}^{+\infty}dv_{\|}\left[v_{\|}^{2}E_{1\|}^{n+1}\left(\mathbf{x}_{g}\right)\sum_{j}\delta\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\delta\left(v_{\|}-v_{ej\|}^{n+1}\right)\right]\approx\beta_{e}\Delta tE_{1\|}^{n+1}\left(\mathbf{x}_{g}\right)\int_{-\infty}^{\infty}dv_{\|}\left[\frac{v_{\|}^{2}}{(2\pi m_{i}/m_{e})^{0.5}}exp\left(-\frac{m_{e}v_{\|}^{2}}{2m_{i}}\right)\right] (12)
=ΔtβemimeE1n+1(𝐱g).\displaystyle=\Delta t\beta_{e}\frac{m_{i}}{m_{e}}E_{1\|}^{n+1}\left(\mathbf{x}_{g}\right).

Substituting Eq. (12) into Eq. (10), treating the difference between (βe/Np)jΔt(vejn+1)2E1n+1(𝐱ejn+1)S(𝐱g𝐱ejn+1)\left(\beta_{e}/N_{p}\right)\sum_{j}\Delta t\left(v_{ej\|}^{n+1}\right)^{2}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right) and Δtβe(mi/me)E1n+1(𝐱g)\Delta t\beta_{e}\left({m_{i}}/{m_{e}}\right)E_{1\|}^{n+1}\left(\mathbf{x}_{g}\right) as a small perturbation and moving them to the right-hand side, we can get the iterative form of the implicit parallel Ampere’s law,

Δt𝐛××𝐄1k+1+ΔtβemimeE1k+1=\displaystyle\Delta t\mathbf{b}\cdot\nabla\times\nabla\times\mathbf{E}_{1}^{k+1}+\Delta t\beta_{e}\frac{m_{i}}{m_{e}}E_{1\|}^{k+1}= 𝐛×𝐁1nβe(Je+Jin+1)\displaystyle\mathbf{b}\cdot\nabla\times\mathbf{B}_{1}^{n}-\beta_{e}\left(J_{e\|}^{*}+J_{i\|}^{n+1}\right) (13)
+βeΔt[mimeE1k1Npj(vejn+1)2E1k(𝐱ejn+1)S(𝐱g𝐱ejn+1)],\displaystyle+\beta_{e}\Delta t\left[\frac{m_{i}}{m_{e}}E_{1\|}^{k}-\frac{1}{N_{p}}\sum_{j}\left(v_{ej\|}^{n+1}\right)^{2}E_{1\|}^{k}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\right],

where we have updated the superscript notation to distinguish between time step and iteration: the electric field at time step n+1n+1 is now denoted with iteration indices kk and k+1k+1 within the iterative loop. Specifically, for the initial guess (k=0)(k=0), we set 𝐄1k=𝐄1n\mathbf{E}_{1}^{k}=\mathbf{E}_{1}^{n}. In FIDES, the iteration loop terminates when the relative change between successive iterates falls below a prescribed threshold, 𝐄1dk+1𝐄1dk2/𝐄1dk2<tol\|\mathbf{E}_{1d}^{k+1}-\mathbf{E}_{1d}^{k}\|_{2}/\|\mathbf{E}_{1d}^{k}\|_{2}<\text{tol}, (d=x,y,z)(d=x,~y,~z), where ||||2||\cdot||_{2} denotes the global 2-norm (i.e., the Euclidean norm of the vector formed by collecting the electric field values at all grid points). The converged solution is then assigned as 𝐄1n+1=𝐄1k+1\mathbf{E}_{1}^{n+1}=\mathbf{E}_{1}^{k+1}. When the particle number and grid number are sufficient, convergence is typically achieved within a few steps; a convergence test can be seen in Fig. 3. It is important to note that for quantities which remain unchanged during the iteration loop, such as 𝐁1n\mathbf{B}_{1}^{n} in Eq. (13), the superscript continues to denote the time step n, not the iteration index.

Upon convergence, the iterative form of the implicit parallel Ampere’s law, Eq. (13), reverts to its original formulation, Eq. (10). Comparing the two equations reveals that the coefficient matrix in Eq. (13) is considerably simpler and, importantly, independent of the time step. This allows us to perform a single LU decomposition and store the matrix, significantly reducing the computational cost of solving the field equations.

For typical parameters in fusion plasmas, the presence of high-frequency waves with perpendicular electric fields (e.g., compressional Alfvén, ion Bernstein, and extraordinary waves) forces an extremely small timestep ΩciΔt<0.01\Omega_{ci}\Delta t<0.01. To eliminate this strict limitation, we push ions in an implicit 𝐄\mathbf{E}_{\perp} scheme [8, 9]

wiwinΔt=TeTivinE1n(E1yn+viznB1xnvixnB1zn){lnnix+[Te(vin)22Ti32]lnTix},\displaystyle\frac{w_{i}^{*}-w_{i}^{n}}{\Delta t}=\frac{T_{e}}{T_{i}}v_{i\|}^{n}E_{1\|}^{n}-\left(E_{1y}^{n}+v_{iz}^{n}B_{1x}^{n}-v_{ix}^{n}B_{1z}^{n}\right)\left\{\frac{\partial\ln n_{i}}{\partial x}+\left[\frac{T_{e}\left(v_{i}^{n}\right)^{2}}{2T_{i}}-\frac{3}{2}\right]\frac{\partial\ln T_{i}}{\partial x}\right\}, (14)
win+1wiΔt=TeTi𝐯in+1𝐄1n+1.\displaystyle\frac{w_{i}^{n+1}-w_{i}^{*}}{\Delta t}=\frac{T_{e}}{T_{i}}\mathbf{v}_{i\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{n+1}.

Here, the ion equilibrium distribution is assumed as a local Maxwellian distribution and we can get the ion perpendicular current

𝐉in+1(𝐱g)=𝐉i(𝐱g)+ΔtNpTeTij𝐯ijn+1𝐯ijn+1𝐄1n+1(𝐱ijn+1)S(𝐱g𝐱ijn+1),\displaystyle\mathbf{J}_{i\perp}^{n+1}\left(\mathbf{x}_{g}\right)=\mathbf{J}_{i\perp}^{*}\left(\mathbf{x}_{g}\right)+\frac{\Delta t}{N_{p}}\frac{T_{e}}{T_{i}}\sum_{j}\mathbf{v}_{ij\perp}^{n+1}\mathbf{v}_{ij\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{n+1}\left(\mathbf{x}_{ij}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right), (15)
𝐉i(𝐱g)=1Npjwij𝐯ijn+1S(𝐱g𝐱ijn+1).\displaystyle\mathbf{J}_{i\perp}^{*}\left(\mathbf{x}_{g}\right)=\frac{1}{N_{p}}\sum_{j}w_{ij}^{*}\mathbf{v}_{ij\perp}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right).

Given that the perturbed electron distribution is independent of gyrophase in the drift kinetic model, it follows that the perpendicular electron current is alternatively determined from the electron perpendicular momentum equation

𝐉en+1=𝐄1n+1×𝐛+𝐛×p1,en+1,\mathbf{J}_{e\perp}^{n+1}=-\mathbf{E}_{1}^{n+1}\times\mathbf{b}+\mathbf{b}\times\nabla p_{1,e\perp}^{n+1}, (16)

where p1,en+1p_{1,e\perp}^{n+1} is the perturbed electron perpendicular pressure.

Substituting Eq. (15) and (16) into the perpendicular Ampere’s law of Eq. (6), we can get

×𝐁1n+1𝐛×𝐁1n+1=βe𝐉i+βeΔtNpTeTij𝐯ijn+1𝐯ijn+1𝐄1n+1(𝐱ijn+1)S(𝐱g𝐱ijn+1)βe𝐄1n+1×𝐛+βe𝐛×p1,en+1.\displaystyle\nabla\times\mathbf{B}_{1}^{n+1}-\mathbf{b}\cdot\nabla\times\mathbf{B}_{1}^{n+1}=\beta_{e}\mathbf{J}_{i\perp}^{*}+\frac{\beta_{e}\Delta t}{N_{p}}\frac{T_{e}}{T_{i}}\sum_{j}\mathbf{v}_{ij\perp}^{n+1}\mathbf{v}_{ij\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{n+1}\left(\mathbf{x}_{ij}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)-\beta_{e}\mathbf{E}_{1}^{n+1}\times\mathbf{b}+\beta_{e}\mathbf{b}\times\nabla p_{1,e\perp}^{n+1}. (17)

Then, taking the cross product of this equation with 𝐛\mathbf{b}, substituting the magnetic field 𝐁1n+1\mathbf{B}_{1}^{n+1} using Faraday’s law, and moving all terms involving 𝐄1n+1\mathbf{E}_{1}^{n+1} to the left-hand side, we obtain the implicit perpendicular Ohm’s law.

βe𝐄1n+1+βeΔtNpTeTij(𝐯ijn+1×𝐛)[𝐯ijn+1𝐄1n+1(𝐱ijn+1)]S(𝐱g𝐱ijn+1)Δt𝐛×(××𝐄1n+1)\displaystyle\beta_{e}\mathbf{E}_{1\perp}^{n+1}+\frac{\beta_{e}\Delta t}{N_{p}}\frac{T_{e}}{T_{i}}\sum_{j}\left(\mathbf{v}_{ij\perp}^{n+1}\times\mathbf{b}\right)\left[\mathbf{v}_{ij\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{n+1}\left(\mathbf{x}_{ij}^{n+1}\right)\right]S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)-{\Delta t}\mathbf{b}\times\left(\nabla\times\nabla\times\mathbf{E}_{1}^{n+1}\right) (18)
=𝐛×(×𝐁1n)βep1,en+1βe𝐉i×𝐛.\displaystyle=-\mathbf{b}\times\left(\nabla\times\mathbf{B}_{1}^{n}\right)-\beta_{e}\nabla_{\perp}p_{1,e\perp}^{n+1}-\beta_{e}\mathbf{J}_{i\perp}^{*}\times\mathbf{b}.

For reasons similar to those discussed for the implicit parallel Ampere’s law, Eq. (18) is also solved iteratively in FIDES. Following the same approach of Eq. (11), we introduce the approximation S(𝐱g𝐱ijn+1)ΔVδ(𝐱g𝐱ijn+1)S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\approx\Delta V\delta\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right). Under the assumption of a sufficiently large number of marker particles, (ΔV/Np)jδ(𝐱g𝐱ijn+1)δ(𝐯𝐯ijn+1)\left(\Delta V/N_{p}\right)\sum_{j}\delta\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\delta\left(\mathbf{v}-\mathbf{v}_{ij}^{n+1}\right) is then approximated by the normalized ion marker distribution exp[(Tev2)/(2Ti)]/(2πTi/Te)1.5exp\left[-(T_{e}v^{2})/(2T_{i})\right]/(2\pi T_{i}/T_{e})^{1.5}, yielding

βeΔtNpTeTij(𝐯ijn+1×𝐛)[𝐯ijn+1𝐄1n+1(𝐱ijn+1)]S(𝐱g𝐱ijn+1)\displaystyle\frac{\beta_{e}\Delta t}{N_{p}}\frac{T_{e}}{T_{i}}\sum_{j}\left(\mathbf{v}_{ij\perp}^{n+1}\times\mathbf{b}\right)\left[\mathbf{v}_{ij\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{n+1}\left(\mathbf{x}_{ij}^{n+1}\right)\right]S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right) (19)
βeΔtΔVNpTeTid𝐯{(𝐯×𝐛)[𝐯𝐄1n+1(𝐱g)]jδ(𝐱g𝐱ijn+1)δ(𝐯𝐯ijn)}\displaystyle\approx\frac{\beta_{e}\Delta t\Delta V}{N_{p}}\frac{T_{e}}{T_{i}}\int d\mathbf{v}\left\{\left(\mathbf{v}\times\mathbf{b}\right)\left[\mathbf{v}_{\perp}\cdot\mathbf{E}_{1\perp}^{n+1}\left({\mathbf{x}_{g}}\right)\right]\sum_{j}\delta\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\delta\left(\mathbf{v}-\mathbf{v}_{ij}^{n}\right)\right\}
βeΔtTeTid𝐯{(𝐯×𝐛)[𝐯𝐄1n+1(𝐱g)]1(2πTi/Te)1.5exp(Tev22Ti)}\displaystyle\approx\beta_{e}\Delta t\frac{T_{e}}{T_{i}}\int d\mathbf{v}\left\{\left(\mathbf{v}\times\mathbf{b}\right)\left[\mathbf{v}_{\perp}\cdot\mathbf{E}_{1\perp}^{n+1}\left({\mathbf{x}_{g}}\right)\right]\frac{1}{\left(2\pi T_{i}/T_{e}\right)^{1.5}}exp\left(-\frac{T_{e}v^{2}}{2T_{i}}\right)\right\}
=βeΔt𝐄1n+1(𝐱g)×𝐛.\displaystyle=\beta_{e}\Delta t\mathbf{E}_{1\perp}^{n+1}\left(\mathbf{x}_{g}\right)\times\mathbf{b}.

It should be mentioned that the perturbed electron perpendicular pressure p1,en+1p_{1,e\perp}^{n+1} also contains an implicit contribution, arising from the implicit EE_{\|} scheme used to advance electron weights (see Eq. (7)),

p1,en+1(𝐱g)=1NpjwejμejB0S(𝐱g𝐱ejn+1)ΔtNpjμejB0vejn+1E1n+1(𝐱ejn+1)S(𝐱g𝐱ejn+1).\displaystyle p_{1,e\perp}^{n+1}\left(\mathbf{x}_{g}\right)=\frac{1}{N_{p}}\sum_{j}w_{ej}^{*}\mu_{ej}B_{0}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)-\frac{\Delta t}{N_{p}}\sum_{j}\mu_{ej}B_{0}v_{ej\|}^{n+1}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right). (20)

Following a derivation analogous to that of Eq. (19), the second term (the implicit part) on the right-hand side of Eq. (20) can be approximated by zero. This approximation does not affect the iterative form of Eq. (18). Therefore, we have not expanded the expression for p1,en+1p_{1,e\perp}^{n+1} in Eq. (18). However, in the actual FIDES implementation, the implicit part of p1,en+1p_{1,e\perp}^{n+1} is retained and computed iteratively. This is because the particle weights are updated after each field equation iteration, and the particle moments including p1,en+1p_{1,e\perp}^{n+1} are subsequently recalculated as a whole.

Substituting Eq. (19) into Eq. (18) and moving the difference between the discrete summation term and its approximation term to the right-hand side, we obtain the iterative form of the implicit perpendicular Ohm’s law,

βe𝐄1k+1+βeΔt𝐄1k+1×𝐛Δt𝐛×(××𝐄1k+1)\displaystyle\beta_{e}\mathbf{E}_{1\perp}^{k+1}+\beta_{e}\Delta t\mathbf{E}_{1\perp}^{k+1}\times\mathbf{b}-{\Delta t}\mathbf{b}\times\left(\nabla\times\nabla\times\mathbf{E}_{1}^{k+1}\right) (21)
=𝐛×(×𝐁1n)βep1,en+1βe𝐉i×𝐛βeΔt𝐛×{𝐄1k1NpTeTij𝐯ijn+1[𝐯ijn+1𝐄1k(𝐱ijn+1)]S(𝐱g𝐱ijn+1)},\displaystyle=-\mathbf{b}\times\left(\nabla\times\mathbf{B}_{1}^{n}\right)-\beta_{e}\nabla_{\perp}p_{1,e\perp}^{n+1}-\beta_{e}\mathbf{J}_{i\perp}^{*}\times\mathbf{b}-\beta_{e}\Delta t\mathbf{b}\times\left\{\mathbf{E}_{1\perp}^{k}-\frac{1}{N_{p}}\frac{T_{e}}{T_{i}}\sum_{j}\mathbf{v}_{ij\perp}^{n+1}\left[\mathbf{v}_{ij\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{k}\left(\mathbf{x}_{ij}^{n+1}\right)\right]S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\right\},

where the superscript of the the electric field has been changed from time step n+1n+1 to iteration indices kk and k+1k+1. The iteration process of Eq. (21) is similar to that of Eq. (13).

In FIDES, the implicit parallel Ampere’s law (13) and the implicit perpendicular Ohm’s law (21) are solved simultaneously as a coupled system to obtain the electric field. The numerical method employed depends on the complexity of the equilibrium profile. For problems with a uniform equilibrium, a spectral method is used. For cases where equilibrium non-uniformities are restricted to the x direction, we apply a hybrid approach that combines a finite difference discretization in x with a Fourier decomposition in the y and z directions. For more complex problems, the dimension of the coefficient matrix becomes large. In such cases, cost-efficient methods are required, such as precomputing and storing an LU decomposition or employing a Krylov subspace method. In this paper, for the purpose of demonstration, we present the spectral method for solving Eq. (13) and Eq. (21). After Fourier transformation in x, y and z directions, the field equations become

[DxxDxyDxzDyxDyyDyzDzxDzyDzz][E~1xk+1(𝐤)E~1yk+1(𝐤)E~1zk+1(𝐤)]=[r~x(𝐤)r~y(𝐤)r~z(𝐤)],\left[\begin{array}[]{lll}D_{xx}&D_{xy}&D_{xz}\\ D_{yx}&D_{yy}&D_{yz}\\ D_{zx}&D_{zy}&D_{zz}\end{array}\right]\left[\begin{array}[]{l}\tilde{E}_{1x}^{k+1}\left(\mathbf{k}\right)\\ \tilde{E}_{1y}^{k+1}\left(\mathbf{k}\right)\\ \tilde{E}_{1z}^{k+1}\left(\mathbf{k}\right)\end{array}\right]=\left[\begin{array}[]{l}\tilde{r}_{x}\left(\mathbf{k}\right)\\ \tilde{r}_{y}\left(\mathbf{k}\right)\\ \tilde{r}_{z}\left(\mathbf{k}\right)\end{array}\right], (22)

where elements of the coefficient matrix are

Dxx=βeΔtkxky,\displaystyle D_{xx}=\beta_{e}-\Delta tk_{x}k_{y}, (23)
Dxy=Δt(βe+kx2+kz2),\displaystyle D_{xy}=\Delta t\left(\beta_{e}+{k_{x}^{2}+k_{z}^{2}}\right),
Dxz=Δtkykz,\displaystyle D_{xz}=-\Delta tk_{y}k_{z},
Dyx=Δt(βe+ky2+kz2),\displaystyle D_{yx}=-\Delta t\left(\beta_{e}+{k_{y}^{2}+k_{z}^{2}}\right),
Dyy=βe+Δtkxky,\displaystyle D_{yy}=\beta_{e}+\Delta tk_{x}k_{y},
Dyz=Δtkxkz,\displaystyle D_{yz}=\Delta tk_{x}k_{z},
Dzx=Δtkxkz,\displaystyle D_{zx}=-\Delta tk_{x}k_{z},
Dzy=Δtkykz,\displaystyle D_{zy}=-\Delta tk_{y}k_{z},
Dzz=Δtβemime+Δt(kx2+ky2).\displaystyle D_{zz}=\Delta t\beta_{e}\frac{m_{i}}{m_{e}}+\Delta t\left(k_{x}^{2}+k_{y}^{2}\right).

On the right-hand side of Eq. (22), r~x(𝐤),r~y(𝐤)\tilde{r}_{x}\left(\mathbf{k}\right),\tilde{r}_{y}\left(\mathbf{k}\right) and r~z(𝐤)\tilde{r}_{z}\left(\mathbf{k}\right) can be expressed as

r~x(𝐤)=\displaystyle\tilde{r}_{x}\left(\mathbf{k}\right)= ikxB~1zn(𝐤)+ikzB~1xn(𝐤)ikxβep~1,en+1(𝐤)βeJ~iy(𝐤)+βeΔtE~1yk(𝐤)\displaystyle-ik_{x}\tilde{B}_{1z}^{n}\left(\mathbf{k}\right)+ik_{z}\tilde{B}_{1x}^{n}\left(\mathbf{k}\right)-ik_{x}\beta_{e}\tilde{p}_{1,e\perp}^{n+1}\left(\mathbf{k}\right)-\beta_{e}\tilde{J}_{iy}^{*}\left(\mathbf{k}\right)+\beta_{e}\Delta t\tilde{E}_{1y}^{k}\left(\mathbf{k}\right) (24)
F{βeΔtNpTeTijvijyn+1[𝐯ijn+1𝐄1k(𝐱ijn+1)]S(𝐱g𝐱ijn+1)},\displaystyle-F\left\{\frac{\beta_{e}\Delta t}{N_{p}}\frac{T_{e}}{T_{i}}\sum_{j}v_{ijy}^{n+1}\left[\mathbf{v}_{ij\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{k}\left(\mathbf{x}_{ij}^{n+1}\right)\right]S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\right\},
r~y(𝐤)=\displaystyle\tilde{r}_{y}\left(\mathbf{k}\right)= ikyB~1zn(𝐤)+ikzB~1yn(𝐤)ikyβep~1,en+1(𝐤)+βeJ~ix(𝐤)βeΔtE~1xn(𝐤)\displaystyle-ik_{y}\tilde{B}_{1z}^{n}\left(\mathbf{k}\right)+ik_{z}\tilde{B}_{1y}^{n}\left(\mathbf{k}\right)-ik_{y}\beta_{e}\tilde{p}_{1,e\perp}^{n+1}\left(\mathbf{k}\right)+\beta_{e}\tilde{J}_{ix}^{*}\left(\mathbf{k}\right)-\beta_{e}\Delta t\tilde{E}_{1x}^{n}\left(\mathbf{k}\right)
+F{βeΔtNpTeTijvijxn+1[𝐯ijn+1𝐄1k(𝐱ijn+1)]S(𝐱g𝐱ijn+1)},\displaystyle+F\left\{\frac{\beta_{e}\Delta t}{N_{p}}\frac{T_{e}}{T_{i}}\sum_{j}v_{ijx}^{n+1}\left[\mathbf{v}_{ij\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{k}\left(\mathbf{x}_{ij}^{n+1}\right)\right]S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\right\},
r~z(𝐤)=\displaystyle\tilde{r}_{z}\left(\mathbf{k}\right)= ikxB~1yn(𝐤)ikyB~1xn(𝐤)βeJ~e(𝐤)βeJ~in+1(𝐤)+βeΔtmimeE~1n(𝐤)\displaystyle ik_{x}\tilde{B}_{1y}^{n}\left(\mathbf{k}\right)-ik_{y}\tilde{B}_{1x}^{n}\left(\mathbf{k}\right)-\beta_{e}\tilde{J}_{e\|}^{*}\left(\mathbf{k}\right)-\beta_{e}\tilde{J}_{i\|}^{n+1}\left(\mathbf{k}\right)+\beta_{e}\Delta t\frac{m_{i}}{m_{e}}\tilde{E}_{1\|}^{n}\left(\mathbf{k}\right)
F{βeΔtNpj(vejn+1)2E1k(𝐱ejn+1)S(𝐱g𝐱ejn+1)},\displaystyle-F\left\{\frac{\beta_{e}\Delta t}{N_{p}}\sum_{j}\left(v_{ej\|}^{n+1}\right)^{2}E_{1\|}^{k}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\right\},

where ()~\tilde{\left(\cdot\right)} and F{}F\left\{\cdot\right\} denote Fourier transformed quantities and 𝐤=kx𝐱^+ky𝐲^+kz𝐳^\mathbf{k}=k_{x}\hat{\mathbf{x}}+k_{y}\hat{\mathbf{y}}+k_{z}\hat{\mathbf{z}} is the wavenumber. At each field iteration, the updated electric field 𝐄~1k+1(𝐤)\tilde{\mathbf{E}}_{1}^{k+1}\left(\mathbf{k}\right) is obtained by solving Eq. (22). This Fourier-space solution is then filtered and transformed back to real space via an inverse Fourier transform, yielding 𝐄1k+1(𝐱g)\mathbf{E}_{1}^{k+1}\left(\mathbf{x}_{g}\right) at the grid points.

After calculating the electric field, the Faraday’s law is used to update the magnetic field,

𝐁1n+1=𝐁1n(×𝐄1n+1)Δt.\mathbf{B}_{1}^{n+1}=\mathbf{B}_{1}^{n}-\left(\nabla\times\mathbf{E}_{1}^{n+1}\right)\Delta t. (25)

In summary, the field evolution in the implicit discretization scheme is governed by two sets of equations. The electric field is solved using the implicit parallel Ampere’s law (10) and the implicit perpendicular Ohm’s law (18), while the magnetic field is advanced via Faraday’s law (25). For particle advancement, the electron and ion weights are updated using the implicit EE_{\|} scheme (7) and the implicit 𝐄\mathbf{E}_{\perp} scheme (14), respectively.

With the governing equations established, we can now specify the numerical algorithm of FIDES. The main steps in one time step are summarized below, and a corresponding flowchart is provided in Fig. 1,

Refer to caption
Figure 1: The flowchart of FIDES algorithm.

1. Particle explicit advancing.

In this step, the explicit parts of particle positions, velocities, and weights are computed. For linear simulations, only the equilibrium field contributes to the particle equations of motion; the perturbed field does not enter at this stage. Since the equilibrium field is known from the initialization, particle positions and velocities at time step tn+1t^{n+1} can be obtained directly. The linear ion and electron motion equations in FIDES are given in Eqs. (26) and (27), respectively,

𝐱in+1𝐱inΔt=𝐯in+1+𝐯in2,\displaystyle\frac{\mathbf{x}^{n+1}_{i}-\mathbf{x}^{n}_{i}}{\Delta t}=\frac{\mathbf{v}_{i}^{n+1}+\mathbf{v}_{i}^{n}}{2}, (26)
𝐯in+1𝐯inΔt=(𝐯in+1+𝐯in2)×𝐁0.\displaystyle\frac{\mathbf{v}_{i}^{n+1}-\mathbf{v}_{i}^{n}}{\Delta t}=\left(\frac{\mathbf{v}_{i}^{n+1}+\mathbf{v}_{i}^{n}}{2}\right)\times\mathbf{B}_{0}.
𝐱en+1𝐱enΔt=ven+1+ven2𝐳^,\displaystyle\frac{\mathbf{x}^{n+1}_{e}-\mathbf{x}^{n}_{e}}{\Delta t}=\frac{v_{e\|}^{n+1}+v_{e\|}^{n}}{2}\hat{\mathbf{z}}, (27)
ven+1venΔt=0.\displaystyle\frac{v_{e\|}^{n+1}-v_{e\|}^{n}}{\Delta t}=0.

For nonlinear simulations, the perturbed field affects particle motion and is divided in one explicit and one implicit steps. In explicit advancing, the ion and electron motion equations are first pushed by the electromagnetic field at time step tnt^{n}, as shown by Eqs. (28) and (29),

𝐱i𝐱inΔt/2=𝐯in,\displaystyle\frac{\mathbf{x}^{*}_{i}-\mathbf{x}^{n}_{i}}{\Delta t/2}=\mathbf{v}_{i}^{n}, (28)
𝐯i𝐯inΔt/2=𝐄1n(𝐱in)+𝐯in×[𝐁0+𝐁1n(𝐱in)],\displaystyle\frac{\mathbf{v}_{i}^{*}-\mathbf{v}_{i}^{n}}{\Delta t/2}=\mathbf{E}_{1}^{n}\left(\mathbf{x}_{i}^{n}\right)+\mathbf{v}_{i}^{n}\times\left[{\mathbf{B}_{0}+\mathbf{B}_{1}^{n}\left(\mathbf{x}_{i}^{n}\right)}\right],
𝐱e𝐱enΔt/2=ven𝐳^+ven𝐁1n(𝐱en)B0+𝐄1n(𝐱en)×𝐛B0,\displaystyle\frac{\mathbf{x}^{*}_{e}-\mathbf{x}^{n}_{e}}{\Delta t/2}=v_{e\|}^{n}\hat{\mathbf{z}}+v_{e\|}^{n}\frac{\mathbf{B}_{1\perp}^{n}\left(\mathbf{x}_{e}^{n}\right)}{B_{0}}+\frac{\mathbf{E}_{1}^{n}\left(\mathbf{x}_{e}^{n}\right)\times\mathbf{b}}{B_{0}}, (29)
vevenΔt/2=mimeE1n(𝐱en),\displaystyle\frac{{v}_{e\|}^{*}-{v}_{e\|}^{n}}{\Delta t/2}=-\frac{m_{i}}{m_{e}}E_{1\|}^{n}\left(\mathbf{x}_{e}^{n}\right),

where 𝐱i\mathbf{x}^{*}_{i}, 𝐯i\mathbf{v}_{i}^{*}, 𝐱e\mathbf{x}_{e}^{*}, and vev_{e\|}^{*} are intermediate particle positions and velocities. The electron magnetic moment μe\mu_{e} is a constant of motion and its equation is not shown here.

In particle explicit pushing, the electron and ion weights are advanced by the explicit equations of Eqs. (7) and (14), which are rewritten here for clarity,

wiwinΔt\displaystyle\frac{w_{i}^{*}-w_{i}^{n}}{\Delta t} =TeTivinE1n(𝐱in)[E1yn(𝐱in)+viznB1xn(𝐱in)vixnB1zn(𝐱in)]{lnnix+[Te(vin)22Ti32]lnTix},\displaystyle=\frac{T_{e}}{T_{i}}v_{i\|}^{n}E_{1\|}^{n}\left(\mathbf{x}_{i}^{n}\right)-\left[E_{1y}^{n}\left(\mathbf{x}_{i}^{n}\right)+v_{iz}^{n}B_{1x}^{n}\left(\mathbf{x}_{i}^{n}\right)-v_{ix}^{n}B_{1z}^{n}\left(\mathbf{x}_{i}^{n}\right)\right]\left\{\frac{\partial\ln n_{i}}{\partial x}+\left[\frac{T_{e}\left(v_{i}^{n}\right)^{2}}{2T_{i}}-\frac{3}{2}\right]\frac{\partial\ln T_{i}}{\partial x}\right\}, (30)
wewenΔt\displaystyle\frac{w_{e}^{*}-w_{e}^{n}}{\Delta t} ={lnnex+[me(ven)22mi+μeB032]lnTex}[E1yn(𝐱en)+venB1xn(𝐱en)]μe𝐛×𝐄1n(𝐱en).\displaystyle=-\left\{\frac{\partial\ln n_{e}}{\partial x}+\left[\frac{m_{e}\left(v_{e\|}^{n}\right)^{2}}{2m_{i}}+\mu_{e}B_{0}-\frac{3}{2}\right]\frac{\partial\ln T_{e}}{\partial x}\right\}\left[{E_{1y}^{n}}\left(\mathbf{x}_{e}^{n}\right)+v_{e\|}^{n}{B_{1x}^{n}}\left(\mathbf{x}_{e}^{n}\right)\right]-\mu_{e}\mathbf{b}\cdot\nabla\times\mathbf{E}_{1}^{n}\left(\mathbf{x}_{e}^{n}\right).

2. Explicit pushing Faraday’s law

If Faraday’s law is advanced using the second-order scheme discussed in section 4, the magnetic field is first updated to an intermediate value 𝐁1\mathbf{B}_{1}^{*} via

𝐁1=𝐁1n(Δt/2)×𝐄1n,\displaystyle\mathbf{B}^{*}_{1}=\mathbf{B}_{1}^{n}-\left(\Delta t/2\right)\nabla\times\mathbf{E}_{1}^{n}, (31)

where 𝐁1\mathbf{B}_{1}^{*} denotes the intermediate perturbed magnetic field. If Faraday’s law is advanced with the first-order implicit scheme of Eq. (25), this step is omitted, and we simply set 𝐁1=𝐁1n\mathbf{B}_{1}^{*}=\mathbf{B}_{1}^{n}.

3. Iteration loop

In the actual FIDES implementation, particle weights, nonlinear particle motion, and the perturbed electromagnetic fields are all updated iteratively. The iterative perturbed electric field 𝐄1k\mathbf{E}_{1}^{k} plays a central role in the iteration loop, as all other iterative quantities depend on it. For the initial guess, we set 𝐄1k=𝐄1n\mathbf{E}_{1}^{k}=\mathbf{E}_{1}^{n} and 𝐁1k=𝐁1\mathbf{B}_{1}^{k}=\mathbf{B}_{1}^{*}. For nonlinear simulations, we additionally set 𝐱ik=𝐱i\mathbf{x}_{i}^{k}=\mathbf{x}_{i}^{*}, 𝐯ik=𝐯i\mathbf{v}_{i}^{k}=\mathbf{v}_{i}^{*}, 𝐱ek=𝐱e\mathbf{x}_{e}^{k}=\mathbf{x}_{e}^{*}, vek=vev_{e\|}^{k}=v_{e\|}^{*} for k=0k=0.

(1) Particle implicit advancing

For linear simulations, particle positions and velocities at time step tn+1t^{n+1} have already been obtained by Eq. (26) and Eq. (27). While for nonlinear simulations, 𝐱ik+1\mathbf{x}_{i}^{k+1}, 𝐯ik+1\mathbf{v}_{i}^{k+1}, 𝐱ek+1\mathbf{x}_{e}^{k+1} and vek+1v_{e\|}^{k+1} are modified by the perturbed electromagnetic fields 𝐄1k\mathbf{E}_{1}^{k} and 𝐁1k\mathbf{B}_{1}^{k},

𝐱ik+1𝐱iΔt/2=𝐯ik,\displaystyle\frac{\mathbf{x}^{k+1}_{i}-\mathbf{x}^{*}_{i}}{\Delta t/2}=\mathbf{v}_{i}^{k}, (32)
𝐯ik+1𝐯iΔt/2=𝐄1k(𝐱ik)+𝐯ik×[𝐁0+𝐁1k(𝐱ik)],\displaystyle\frac{\mathbf{v}_{i}^{k+1}-\mathbf{v}_{i}^{*}}{\Delta t/2}=\mathbf{E}_{1}^{k}\left(\mathbf{x}_{i}^{k}\right)+\mathbf{v}_{i}^{k}\times\left[{\mathbf{B}_{0}+\mathbf{B}_{1}^{k}\left(\mathbf{x}_{i}^{k}\right)}\right],
𝐱ek+1𝐱eΔt/2=vek𝐳^+vek𝐁1k(𝐱ek)B0+𝐄1k(𝐱ek)×𝐛B0,\displaystyle\frac{\mathbf{x}^{k+1}_{e}-\mathbf{x}^{*}_{e}}{\Delta t/2}=v_{e\|}^{k}\hat{\mathbf{z}}+v_{e\|}^{k}\frac{\mathbf{B}_{1\perp}^{k}\left(\mathbf{x}_{e}^{k}\right)}{B_{0}}+\frac{\mathbf{E}_{1}^{k}\left(\mathbf{x}_{e}^{k}\right)\times\mathbf{b}}{B_{0}}, (33)
vek+1veΔt/2=mimeE1k(𝐱ek).\displaystyle\frac{{v}_{e\|}^{k+1}-{v}_{e\|}^{*}}{\Delta t/2}=-\frac{m_{i}}{m_{e}}E_{1\|}^{k}\left(\mathbf{x}_{e}^{k}\right).

When the iteration converges, Eq. (28) and (32), Eq. (29) and (33) constitute the second-order semi-implicit pushing schemes for ion and electron motion, respectively.

More importantly, for both linear and nonlinear simulations, the electron and ion weights are updated by the implicit equations of Eqs. (7) and (14), which are rewritten here for clarity,

wik+1wiΔt=TeTi𝐯ik+1𝐄1k(𝐱ik+1),\displaystyle\frac{w_{i}^{k+1}-w_{i}^{*}}{\Delta t}=\frac{T_{e}}{T_{i}}\mathbf{v}_{i\perp}^{k+1}\cdot\mathbf{E}_{1\perp}^{k}\left(\mathbf{x}_{i}^{k+1}\right), (34)
wek+1weΔt=vek+1E1k(𝐱ek+1),\displaystyle\frac{w_{e}^{k+1}-w_{e}^{*}}{\Delta t}=-v_{e\|}^{k+1}E_{1\|}^{k}\left(\mathbf{x}_{e}^{k+1}\right),

with 𝐱ik+1=𝐱in+1\mathbf{x}_{i}^{k+1}=\mathbf{x}_{i}^{n+1}, 𝐯ik+1=𝐯in+1\mathbf{v}_{i}^{k+1}=\mathbf{v}_{i}^{n+1}, 𝐱ek+1=𝐱en+1\mathbf{x}_{e}^{k+1}=\mathbf{x}_{e}^{n+1} and vek+1=ven+1v_{e\|}^{k+1}=v_{e\|}^{n+1} for linear simulations.

(2) Calculate particle current and pressure

In the actual FIDES code, the particle moments are computed directly as a whole, rather than being split into explicit and implicit parts,

𝐉ik+1(𝐱g)=1Npj𝐯ijk+1wijk+1S(𝐱g𝐱ijk+1),\displaystyle\mathbf{J}_{i}^{k+1}\left(\mathbf{x}_{g}\right)=\frac{1}{N_{p}}\sum_{j}\mathbf{v}_{ij}^{k+1}w_{ij}^{k+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{k+1}\right), (35)
Jek+1(𝐱g)=1Npjvejk+1wejk+1S(𝐱g𝐱ejk+1),\displaystyle J_{e\|}^{k+1}\left(\mathbf{x}_{g}\right)=-\frac{1}{N_{p}}\sum_{j}v_{ej\|}^{k+1}w_{ej}^{k+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{k+1}\right),
p1,ek+1(𝐱g)=1NpjμejB0wejk+1S(𝐱g𝐱ejk+1),\displaystyle p_{1,e\perp}^{k+1}\left(\mathbf{x}_{g}\right)=\frac{1}{N_{p}}\sum_{j}\mu_{ej}B_{0}w_{ej}^{k+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{k+1}\right),

where the superscripts of particle moments have been changed from time step n+1n+1 to iteration index k+1k+1. At first glance, Eq. (35) may appear different from the earlier expressions in Eqs. (8), (15) and (20). In fact, they are equivalent for solving field equations (13) and (21). The earlier equations are introduced to theoretically illustrate the treatment of the implicit terms by separating them from the explicit parts. In the code, however, it is more convenient and structurally clearer to compute the particle moments as unified quantities without such a split. This distinction reflects the difference between the theoretical exposition and the numerical implementation.

(3) Solve implicit parallel Ampere’s law and perpendicular Ohm’s law

Given 𝐄1k\mathbf{E}_{1}^{k}, 𝐁1n\mathbf{B}_{1}^{n}, and particle moments 𝐉ik+1\mathbf{J}_{i}^{k+1}, Jek+1J_{e\|}^{k+1}, and p1,ek+1p_{1,e\perp}^{k+1} computed from Eq. (35), the updated electric field 𝐄1k+1\mathbf{E}_{1}^{k+1} is obtained by solving the coupled system consisting of the implicit parallel Ampere’s law and perpendicular Ohm’s law,

Δt𝐛××𝐄1k+1+ΔtβemimeE1k+1=\displaystyle\Delta t\mathbf{b}\cdot\nabla\times\nabla\times\mathbf{E}_{1}^{k+1}+\Delta t\beta_{e}\frac{m_{i}}{m_{e}}E_{1\|}^{k+1}= 𝐛×𝐁1nβe(Jek+1+Jik+1)+βeΔtmimeE1k,\displaystyle\mathbf{b}\cdot\nabla\times\mathbf{B}_{1}^{n}-\beta_{e}\left(J_{e\|}^{k+1}+J_{i\|}^{k+1}\right)+\beta_{e}\Delta t\frac{m_{i}}{m_{e}}E_{1\|}^{k}, (36)
βe𝐄1k+1+βeΔt𝐄1k+1×𝐛Δt𝐛×(××𝐄1k+1)\displaystyle\beta_{e}\mathbf{E}_{1\perp}^{k+1}+\beta_{e}\Delta t\mathbf{E}_{1\perp}^{k+1}\times\mathbf{b}-{\Delta t}\mathbf{b}\times\left(\nabla\times\nabla\times\mathbf{E}_{1}^{k+1}\right) (37)
=𝐛×(×𝐁1n)βep1,ek+1βe𝐉ik+1×𝐛+βeΔt𝐄1k×𝐛,\displaystyle=-\mathbf{b}\times\left(\nabla\times\mathbf{B}_{1}^{n}\right)-\beta_{e}\nabla_{\perp}p_{1,e\perp}^{k+1}-\beta_{e}\mathbf{J}_{i\perp}^{k+1}\times\mathbf{b}+\beta_{e}\Delta t\mathbf{E}_{1\perp}^{k}\times\mathbf{b},

which correspond to the numerical versions in FIDES of Eqs. (13) and (21), respectively. The iteration logic and solution procedure of above equations have been discussed in details by Eqs. (10)-(13) and (18)-(24).

(4) Implicit pushing Faraday’s law

For the first-order implicit scheme, the updated magnetic field 𝐁1k+1\mathbf{B}_{1}^{k+1} is obtained by

𝐁1k+1=𝐁1nΔt×𝐄1k+1.\mathbf{B}_{1}^{k+1}=\mathbf{B}_{1}^{n}-\Delta t\nabla\times\mathbf{E}_{1}^{k+1}. (38)

For the second-order semi-implicit scheme (see section 4), this step advances the magnetic field in Eq. (31),

𝐁1k+1=𝐁1(Δt/2)×𝐄1k+1.\mathbf{B}_{1}^{k+1}=\mathbf{B}_{1}^{*}-\left(\Delta t/2\right)\nabla\times\mathbf{E}_{1}^{k+1}. (39)

The iteration convergence criterion in FIDES is based on the relative change of the electric field between successive iterates. Specifically, convergence is declared when 𝐄1dk+1𝐄1dk2/𝐄1dk2<tol\|\mathbf{E}_{1d}^{k+1}-\mathbf{E}_{1d}^{k}\|_{2}/\|\mathbf{E}_{1d}^{k}\|_{2}<\text{tol}, (d=x,y,z)(d=x,~y,~z). The tolerance is typically set to tol=104\text{tol}=10^{-4}. Once the electric field 𝐄1k+1\mathbf{E}_{1}^{k+1} has converged, the perturbed magnetic field 𝐁1k+1\mathbf{B}_{1}^{k+1} is also converged, as can be seen in Eq. (38) or (39). Furthermore, the particle positions, velocities, and weights are driven to convergence accordingly, as they depend on the converged fields through Eqs. (32), (33), and (34).

2.3 Explicit discretization scheme

The conventional models cast Ampere’s law into the generalized Ohm’s law, which serves as the field equation for the electric field [8, 9, 10, 11]. While all of these works employ the generalized Ohm’s law, they differ in the underlying particle models and implementation details. Specifically, the simulation model established by Chen and Parker [8] combines Vlasov ions with drift kinetic electrons, advancing ion weights via an implicit 𝐄\mathbf{E}_{\perp} scheme and electron weights via an explicit scheme. Cheng et al. [9] adopt a full-kinetic ion model but use a fluid electron model (which oversimplifies electron kinetics) while employing a second-order semi-implicit scheme for ion pushing. The GK-E&\&B model [10, 11] is developed based on gyrokinetic models for both ions and electrons. Among these, the method presented in [8] is the baseline method that we aim to improve.

To establish a basis for comparison, we first summarize the main numerical procedure of the baseline method [8]. A key distinction between the baseline method and our new algorithm lies in the treatment of electron weights. In the baseline method, the electron weight is advanced using an explicit scheme,

wen+1wenΔt={lnnex+[me(ven)22mi+μeB032]lnTex}(E1yn+venB1xn)μe𝐛×𝐄1nvenE1n,\displaystyle\frac{w_{e}^{n+1}-w_{e}^{n}}{\Delta t}=-\left\{\frac{\partial\ln n_{e}}{\partial x}+\left[\frac{m_{e}\left(v_{e\|}^{n}\right)^{2}}{2m_{i}}+\mu_{e}B_{0}-\frac{3}{2}\right]\frac{\partial\ln T_{e}}{\partial x}\right\}\left({E_{1y}^{n}}+v_{e\|}^{n}{B_{1x}^{n}}\right)-\mu_{e}\mathbf{b}\cdot\nabla\times\mathbf{E}_{1}^{n}-v_{e\|}^{n}E_{1\|}^{n}, (40)

whereas our method employs an implicit EE_{\|} scheme Eq. (7). This seemingly minor difference has profound implications for the overall algorithm structure. In the baseline method, the electron weight is fully updated during particle explicit advancing, which makes the direct use of the parallel Ampere’s law as a field equation ill-posed. Instead, the parallel Ohm’s law is used to close the system. In the shearless slab geometry, the parallel Ohm’s law takes the form,

(1+memi)E1n+1+memi1βe𝐛××𝐄1n+1Δt(×𝐄1n+1)(p0,ememip0,i)\displaystyle\left(1+\frac{m_{e}}{m_{i}}\right)E_{1\|}^{n+1}+\frac{m_{e}}{m_{i}}\frac{1}{\beta_{e}}\mathbf{b}\cdot\nabla\times\nabla\times\mathbf{E}_{1}^{n+1}-\Delta t\left(\nabla\times\mathbf{E}_{1}^{n+1}\right)\cdot\left(\nabla p_{0,e\perp}-\frac{m_{e}}{m_{i}}\nabla p_{0,i\perp}\right) (41)
=p1,en+1+memip1,in+1𝐁1n(p0,ememip0,i),\displaystyle=-\nabla_{\|}p_{1,e\|}^{n+1}+\frac{m_{e}}{m_{i}}\nabla_{\|}p_{1,i\|}^{n+1}-\mathbf{B}_{1}^{n}\cdot\left(\nabla p_{0,e\perp}-\frac{m_{e}}{m_{i}}\nabla p_{0,i\perp}\right),

where p1,en+1p_{1,e\|}^{n+1} and p1,in+1p_{1,i\|}^{n+1} are perturbed electron and ion parallel pressure, respectively,

p1,en+1(𝐱g)=1Npjmemivej2wejn+1S(𝐱g𝐱ejn+1),\displaystyle p_{1,e\|}^{n+1}\left(\mathbf{x}_{g}\right)=\frac{1}{N_{p}}\sum_{j}\frac{m_{e}}{m_{i}}v_{ej\|}^{2}w_{ej}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right), (42)
p1,in+1(𝐱g)=1Npjvij2wijn+1S(𝐱g𝐱ijn+1).\displaystyle p_{1,i\|}^{n+1}\left(\mathbf{x}_{g}\right)=\frac{1}{N_{p}}\sum_{j}v_{ij\|}^{2}w_{ij}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right).

To clearly distinguish the two schemes, we refer to the baseline method as the explicit discretization scheme and our new algorithm as the implicit discretization scheme, reflecting the distinct way the electron response to EE_{\|} is handled. The treatment of ion pushing (14), the perpendicular Ohm’s law (18), and the magnetic field update equation (25) are all identical for the two schemes.

2.4 Origin of the cancellation problem

In the parallel Ohm’s law (41), the ion contribution is of order me/mim_{e}/m_{i} relative to the electron contribution. If ion terms are neglected entirely, the resulting simplified form is

E1n+1+memi1βe𝐛××𝐄1n+1Δt(×𝐄1n+1)p0,e=p1,en+1𝐁1np0,e,\displaystyle E_{1\|}^{n+1}+\frac{m_{e}}{m_{i}}\frac{1}{\beta_{e}}\mathbf{b}\cdot\nabla\times\nabla\times\mathbf{E}_{1}^{n+1}-\Delta t\left(\nabla\times\mathbf{E}_{1}^{n+1}\right)\cdot\nabla p_{0,e\perp}=-\nabla_{\|}p_{1,e\|}^{n+1}-\mathbf{B}_{1}^{n}\cdot\nabla p_{0,e\perp}, (43)

which fails to capture key physical processes such as the ion acoustic wave (IAW) and the ion temperature gradient instability (ITG), where ion parallel dynamics plays an essential role [8].

When the ion terms are retained, numerical simulations face a different difficulty: the perturbed electron pressure p1,ep_{1,e\|} contains numerical noise, which can overwhelm the small ion contribution, making it difficult to accurately compute the ion response. This problem becomes particularly severe in the regime kvteωk_{\|}v_{te}\gg\omega, where electrons behave adiabatically [8, 10, 11]. In this limit, the perturbed electron distribution can be written as fe1=eϕfe0/Te+(fe1)naf_{e1}=e\phi f_{e0}/T_{e}+(f_{e1})_{na}, where ϕ\phi is the electric potential, and (fe1)na(f_{e1})_{na} is the nonadiabatic part, which is much smaller than the adiabatic part eϕfe0/Tee\phi f_{e0}/T_{e}.

Theoretically, in the electrostatic limit, the adiabatic part of electron pressure (p1,en+1)a=ϕ-\nabla_{\|}\left(p_{1,e\|}^{n+1}\right)_{a}=-\nabla_{\|}\phi cancels with the term E1n+1E_{1\|}^{n+1} in Eq. (41). After this leading-order cancellation, the governing dynamics appear at the next order, i.e., terms of O(me/mi)O({m_{e}/m_{i}}) and O(k2ρs2me/(miβe))O(k_{\perp}^{2}\rho_{s}^{2}m_{e}/(m_{i}\beta_{e})), leading to the following reduced equation,

memiE1n+1+memi1βe𝐛××𝐄1n+1Δt(×𝐄1n+1)(p0,ememip0,i)\displaystyle\frac{m_{e}}{m_{i}}E_{1\|}^{n+1}+\frac{m_{e}}{m_{i}}\frac{1}{\beta_{e}}\mathbf{b}\cdot\nabla\times\nabla\times\mathbf{E}_{1}^{n+1}-\Delta t\left(\nabla\times\mathbf{E}_{1}^{n+1}\right)\cdot\left(\nabla p_{0,e\perp}-\frac{m_{e}}{m_{i}}\nabla p_{0,i\perp}\right) (44)
=(p1,en+1)na+memip1,in+1𝐁1n(p0,ememip0,i),\displaystyle=-\nabla_{\|}\left(p_{1,e\|}^{n+1}\right)_{na}+\frac{m_{e}}{m_{i}}\nabla_{\|}p_{1,i\|}^{n+1}-\mathbf{B}_{1}^{n}\cdot\left(\nabla p_{0,e\perp}-\frac{m_{e}}{m_{i}}\nabla p_{0,i\perp}\right),

where (p1,en+1)na\left(p_{1,e\|}^{n+1}\right)_{na} is the nonadiabatic part of the electron pressure. The accurate dispersion relation for kvteωk_{\|}v_{te}\gg\omega can be derived from Eq. (44).

In practice, however, the numerically computed p1,en+1-\nabla_{\|}p_{1,e\|}^{n+1} does not exactly cancel E1n+1E_{1\|}^{n+1} due to numerical noise. This noise originates from the second-order velocity moment of the electron weights and the spatial derivative. Furthermore, the adiabatic and nonadiabatic parts of the electron pressure cannot be distinguished in the simulation. Take the IAW simulation as an example, as shown in Fig. 2 (a), the two large terms in the parallel Ohm’s law, E1n+1E_{1\|}^{n+1} and p1,en+1-\nabla_{\|}p_{1,e\|}^{n+1}, closely follow each other but suffer from high-frequency numerical noise. Their difference, plotted in Fig. 2 (b), masks the physical ion contribution (me/mi)p1,in+1\left(m_{e}/m_{i}\right)\nabla_{\|}p_{1,i\|}^{n+1}. The residual imbalance between the two large terms can potentially produce spurious fields that dominate the true physical dynamics, leading to severe inaccuracies in the simulation results [8, 10, 11]. Overcoming the cancellation problem requires both small grid sizes and small timesteps.

Refer to caption
(a) E1E_{1\|} and p1,e-\nabla_{\|}p_{1,e\|}
Refer to caption
(b) E1+p1,eE_{1\|}+\nabla_{\|}p_{1,e\|} and (me/mi)p1,i\left({m_{e}}/{m_{i}}\right)\nabla_{\|}p_{1,i\|}
Figure 2: Diagnosis of the cancellation problem in the parallel Ohm’s law, using the ion acoustic wave (IAW) simulation. (a) Time evolution of the two large terms, 𝐄1\mathbf{E}_{1\|} and p1,e-\nabla_{\|}p_{1,e\|}, at a representative grid point. (b) Time evolution of the difference between 𝐄1\mathbf{E}_{1\|} and p1,e-\nabla_{\|}p_{1,e\|}, and the physical ion contribution (me/mi)p1,i\left({m_{e}}/{m_{i}}\right)\nabla_{\|}p_{1,i\|}. In Fig. (b), to avoid the ion signal being too weak, we amplify it by a factor of 10210^{2}, so the quantity actually plotted is 102(me/mi)p1,i10^{2}\left(m_{e}/m_{i}\right)\nabla_{\|}p_{1,i\|}. The simulation uses a grid of nx=ny=2,nz=32n_{x}=n_{y}=2,n_{z}=32 with Np=32N_{p}=32 particles per grid cell, a timestep ΩciΔt=0.01\Omega_{ci}\Delta t=0.01, mass ratio mi/me=1836m_{i}/m_{e}=1836, and the wave parameters βe=0.01,Ti/Te=0.25,kxρs=kyρs=0,kzρs=0.1\beta_{e}=0.01,T_{i}/T_{e}=0.25,k_{x}\rho_{s}=k_{y}\rho_{s}=0,k_{z}\rho_{s}=0.1.

To ensure a more accurate numerical cancellation of the leading-order terms in the parallel Ohm’s law, previous studies propose to introduce discrete particle and finite grid-size effects into the electric field term E1n+1E_{1\|}^{n+1} via the following approximation [13]

E1n+1(𝐱g)memiNpjE1n+1(𝐱ejn+1)(vejn+1)2S(𝐱g𝐱ejn+1),E_{1\|}^{n+1}\left(\mathbf{x}_{g}\right)\approx\frac{m_{e}}{m_{i}N_{p}}\sum_{j}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)\left(v_{ej\|}^{n+1}\right)^{2}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right), (45)

where E1n+1(𝐱g)E_{1\|}^{n+1}\left(\mathbf{x}_{g}\right) and E1n+1(𝐱ejn+1)E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right) denote the parallel electric field at the grid point and at the electron position, respectively. Substituting Eq. (45) into the parallel Ohm’s law (41), we obtain

memiNpjE1n+1(𝐱ejn+1)(vejn+1)2S(𝐱g𝐱ejn+1)+memiE1n+1+memi1βe𝐛××𝐄1n+1Δt(×𝐄1n+1)(p0,ememip0,i)\displaystyle\frac{m_{e}}{m_{i}N_{p}}\sum_{j}E_{1\|}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)\left(v_{ej\|}^{n+1}\right)^{2}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)+\frac{m_{e}}{m_{i}}E_{1\|}^{n+1}+\frac{m_{e}}{m_{i}}\frac{1}{\beta_{e}}\mathbf{b}\cdot\nabla\times\nabla\times\mathbf{E}_{1}^{n+1}-\Delta t\left(\nabla\times\mathbf{E}_{1}^{n+1}\right)\cdot\left(\nabla p_{0,e\perp}-\frac{m_{e}}{m_{i}}\nabla p_{0,i\perp}\right) (46)
=p1,en+1+memip1,in+1𝐁1n(p0,ememip0,i).\displaystyle=-\nabla_{\|}p_{1,e\|}^{n+1}+\frac{m_{e}}{m_{i}}\nabla_{\|}p_{1,i\|}^{n+1}-\mathbf{B}_{1}^{n}\cdot\left(\nabla p_{0,e\perp}-\frac{m_{e}}{m_{i}}\nabla p_{0,i\perp}\right).

In practice, Eq. (46) is solved by the iterative method,

(1+memi)E1k+1+memi1βe𝐛××𝐄1k+1Δt(×𝐄1k+1)(p0,ememip0,i)\displaystyle\left(1+\frac{m_{e}}{m_{i}}\right)E_{1\|}^{k+1}+\frac{m_{e}}{m_{i}}\frac{1}{\beta_{e}}\mathbf{b}\cdot\nabla\times\nabla\times\mathbf{E}_{1}^{k+1}-\Delta t\left(\nabla\times\mathbf{E}_{1}^{k+1}\right)\cdot\left(\nabla p_{0,e\perp}-\frac{m_{e}}{m_{i}}\nabla p_{0,i\perp}\right) (47)
=p1,en+1+memip1,in+1𝐁1n(p0,ememip0,i)+[E1kmemiNpjE1k(𝐱ejn+1)(vejn+1)2S(𝐱g𝐱ejn+1)],\displaystyle=-\nabla_{\|}p_{1,e\|}^{n+1}+\frac{m_{e}}{m_{i}}\nabla_{\|}p_{1,i\|}^{n+1}-\mathbf{B}_{1}^{n}\cdot\left(\nabla p_{0,e\perp}-\frac{m_{e}}{m_{i}}\nabla p_{0,i\perp}\right)+\left[E_{1\|}^{k}-\frac{m_{e}}{m_{i}N_{p}}\sum_{j}E_{1\|}^{k}\left(\mathbf{x}_{ej}^{n+1}\right)\left(v_{ej\|}^{n+1}\right)^{2}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\right],

where the iterative process is similar to Eqs. (13) and (21). In the following simulations, the explicit discretization scheme uses Eq. (47), instead of Eq. (41).

3 Simulation examples

Our testing of the two schemes encompasses both high- and low-frequency physics. Simulations of perpendicular and parallel waves evaluate their performance in high-frequency regimes, whereas simulations of low-frequency IAW and ITG are designed to compare their ability to overcome the cancellation problem. The mass ratio used in simulations is mi/me=1836m_{i}/m_{e}=1836.

3.1 Perpendicular and parallel waves

We first test the two schemes with perpendicular waves. Since the implicit parallel Ampere’s law (13) and perpendicular Ohm’s law (21) are solved iteratively, figure 3 presents a convergence test of the iterative solver. For the parameters used in Fig. 3 (Np=16N_{p}=16 particles per grid cell and nx=16n_{x}=16 grids in one wavelength), the relative iterative error falls below the tolerance (104)(10^{-4}) within a few iterations. The simulation results for perpendicular waves in uniform plasmas with β=0.05,𝐤=kx𝐱^\beta=0.05,\mathbf{k}=k_{x}\mathbf{\hat{x}} are summarized in Fig. 4 (a), where the theoretical results are calculated from the dispersion relation via the generalized argument principle code ZPL [14, 15, 16]. Both schemes recover the correct real frequencies and capture the characteristic mode conversion from compressional Alfvén waves to ion Bernstein waves. Imaginary frequency components are omitted, as the theoretical damping rates for these modes are zero.

Refer to caption
Figure 3: Convergence test for the iterative solver of the implicit parallel Ampere’s law (13) and perpendicular Ohm’s law (21). The relative error at iteration kk is defined as 𝐄1dk+1𝐄1dk2/𝐄1dk2\|\mathbf{E}_{1d}^{k+1}-\mathbf{E}_{1d}^{k}\|_{2}/\|\mathbf{E}_{1d}^{k}\|_{2}, (d=x,y,z)(d=x,~y,~z). The simulation uses a grid of nx=ny=nz=16n_{x}=n_{y}=n_{z}=16 with Np=16N_{p}=16 particles per grid cell, a timestep ΩciΔt=0.05\Omega_{ci}\Delta t=0.05, and the wave parameters βe=0.05,Ti/Te=1,kxρs=0.1,kyρs=kzρs=0\beta_{e}=0.05,T_{i}/T_{e}=1,k_{x}\rho_{s}=0.1,k_{y}\rho_{s}=k_{z}\rho_{s}=0.
Refer to caption
(a) Perpendicular wave
Refer to caption
(b) Parallel wave
Figure 4: Simulation results of perpendicular waves (a) and parallel waves (b). For perpendicular waves, the number of grids nx=ny=nz=32n_{x}=n_{y}=n_{z}=32, the particle number in one grid Np=64N_{p}=64, timestep ΩciΔt=0.05\Omega_{ci}\Delta t=0.05, and the wave parameters βe=0.05,Ti/Te=1,kyρs=kzρs=0\beta_{e}=0.05,T_{i}/T_{e}=1,k_{y}\rho_{s}=k_{z}\rho_{s}=0. For parallel waves, the simulation parameters are βe=0.01,Ti/Te=1,kxρs=kyρs=0,nx=ny=2,nz=64,Np=256,ΩciΔt=0.05\beta_{e}=0.01,T_{i}/T_{e}=1,k_{x}\rho_{s}=k_{y}\rho_{s}=0,n_{x}=n_{y}=2,n_{z}=64,N_{p}=256,\Omega_{ci}\Delta t=0.05.

We further evaluate the two schemes using left-handed (L) and right-handed (R) circularly polarized waves, which converge to shear Alfvén waves in the low-frequency regime (ωΩci)(\omega\ll\Omega_{ci}). As the frequency approaches the ion cyclotron frequency (ωΩci)(\omega\approx\Omega_{ci}), the L-wave undergoes strong cyclotron damping [16]. As summarized in Fig. 4 (b), both schemes correctly yield the real frequencies of the waves across these regimes. Nevertheless, accurately capturing the cyclotron damping rate of the L-wave via PIC simulation remains challenging. This is because the L- and R-waves are coupled in the simulation, and the damped L-wave signal is readily obscured by undamped R-wave signal. This difficulty represents an inherent limitation of the PIC methodology itself, rather than a shortcoming of either specific scheme.

3.2 Ion acoustic wave

The IAW, characterized by ωkvtikvte\omega\sim k_{\|}v_{ti}\ll k_{\|}v_{te}, serves as an ideal test case for comparing the ability of the two schemes to overcome the cancellation problem [8, 10, 11]. The theoretical IAW dispersion relation is given by [15]

s=i,e1Ts[1+ωkzvtsZ(ωkzvts)]=0,\displaystyle\sum_{s=i,~e}\frac{1}{T_{s}}\left[1+\frac{\omega}{k_{z}v_{ts}}Z\left(\frac{\omega}{k_{z}v_{ts}}\right)\right]=0, (48)

where the normalized thermal velocities are vte=2mi/me,vti=2Ti/Tev_{te}=\sqrt{2m_{i}/m_{e}},v_{ti}=\sqrt{2T_{i}/T_{e}}, and Z(x)Z\left(x\right) is the plasma dispersion function.

Before presenting the simulation results, we first provide an analytical argument to demonstrate why the implicit parallel Ampere’s law mitigates the cancellation problem. For simplicity and thereby clarity, we make the following assumptions.

(1) The perturbed field is electrostatic, where 𝐄1=E1z𝐳^\mathbf{E}_{1}=E_{1z}\hat{\mathbf{z}} aligns with the z direction (the equilibrium magnetic field direction) and spatial variation depends only on the z coordinate.

(2) Only the linear particle motion in the z direction is considered,

zsn+1zsnΔt=vszn,vszn+1vsznΔt=0,(s=i,e),\frac{z_{s}^{n+1}-z_{s}^{n}}{\Delta t}=v_{sz}^{n},~\frac{v_{sz}^{n+1}-v_{sz}^{n}}{\Delta t}=0,~(s=i,~e), (49)

where the parallel velocity vsznv_{sz}^{n} is constant and its superscript nn is dropped in the following derivation.

For the explicit discretization scheme, the particle weight equations are

win+1winΔt=TeTivizE1zn(zin),wen+1wenΔt=vezE1zn(zen),\frac{w_{i}^{n+1}-w_{i}^{n}}{\Delta t}=\frac{T_{e}}{T_{i}}v_{iz}E_{1z}^{n}\left(z_{i}^{n}\right),~\frac{w_{e}^{n+1}-w_{e}^{n}}{\Delta t}=-v_{ez}E_{1z}^{n}\left(z_{e}^{n}\right), (50)

thus the particle weights at time step tn+1t^{n+1} can be expressed as

win+1=wi0+ΔtTeTivizm=0nE1zm(zim),wen+1=we0Δtvezm=0nE1zm(zem).w_{i}^{n+1}=w_{i}^{0}+\Delta t\frac{T_{e}}{T_{i}}v_{iz}\sum_{m=0}^{n}E_{1z}^{m}\left(z_{i}^{m}\right),~w_{e}^{n+1}=w_{e}^{0}-\Delta tv_{ez}\sum_{m=0}^{n}E_{1z}^{m}\left(z_{e}^{m}\right). (51)

Substituting above equations into Eq. (46), we obtain the discretized form of the parallel Ohm’s law

1Npjmemivejz2E1zn+1(zejn+1)S(zgzejn+1)+memiE1zn+1(zg)\displaystyle\frac{1}{N_{p}}\sum_{j}\frac{m_{e}}{m_{i}}v_{ejz}^{2}E_{1z}^{n+1}\left(z_{ej}^{n+1}\right)S\left(z_{g}-z_{ej}^{n+1}\right)+\frac{m_{e}}{m_{i}}E_{1z}^{n+1}\left(z_{g}\right) (52)
=zg{1Npjmemivejz2[wej0Δtvejzm=0nE1zm(zejm)]S(zgzejn+1)}\displaystyle=-\frac{\partial}{\partial z_{g}}\left\{\frac{1}{N_{p}}\sum_{j}\frac{m_{e}}{m_{i}}v_{ejz}^{2}\left[w_{ej}^{0}-\Delta tv_{ejz}\sum_{m=0}^{n}E_{1z}^{m}\left(z_{ej}^{m}\right)\right]S\left(z_{g}-z_{ej}^{n+1}\right)\right\}
+memizg{1Npjvijz2[wij0+TeTiΔtvijzm=0nE1zm(zijm)]S(zgzijn+1)}.\displaystyle+\frac{m_{e}}{m_{i}}\frac{\partial}{\partial z_{g}}\left\{\frac{1}{N_{p}}\sum_{j}v_{ijz}^{2}\left[w_{ij}^{0}+\frac{T_{e}}{T_{i}}\Delta tv_{ijz}\sum_{m=0}^{n}E_{1z}^{m}\left(z_{ij}^{m}\right)\right]S\left(z_{g}-z_{ij}^{n+1}\right)\right\}.

For the implicit discretization scheme, the electron weight equation is

wewenΔt=0,wen+1weΔt=vezE1zn+1(zen+1),\displaystyle\frac{w_{e}^{*}-w_{e}^{n}}{\Delta t}=0,~\frac{w_{e}^{n+1}-w_{e}^{*}}{\Delta t}=-v_{ez}E_{1z}^{n+1}\left(z_{e}^{n+1}\right), (53)

so the intermediate electron weight wew_{e}^{*} advanced from wenw_{e}^{n} takes the form

we=we0Δtvezm=1nE1zm(zem).w_{e}^{*}=w_{e}^{0}-\Delta tv_{ez}\sum_{m=1}^{n}E_{1z}^{m}\left(z_{e}^{m}\right). (54)

The ion weight expression is the same as Eq. (51). Substituting the particle weight expressions into Eq. (10), we obtain the discretized form of the implicit parallel Ampere’s law

ΔtNpjvejz2E1zn+1(zejn+1)S(zgzejn+1)\displaystyle\frac{\Delta t}{N_{p}}\sum_{j}v_{ejz}^{2}E_{1z}^{n+1}\left(z_{ej}^{n+1}\right)S\left(z_{g}-z_{ej}^{n+1}\right) (55)
=1Npjvejz[wej0Δtvejzm=1nE1zm(zejm)]S(zgzejn+1)\displaystyle=\frac{1}{N_{p}}\sum_{j}v_{ejz}\left[w_{ej}^{0}-\Delta tv_{ejz}\sum_{m=1}^{n}E_{1z}^{m}\left(z_{ej}^{m}\right)\right]S\left(z_{g}-z_{ej}^{n+1}\right)
1Npjvijz[wij0+ΔtTeTivijzm=0nE1zm(zijm)]S(zgzijn+1).\displaystyle-\frac{1}{N_{p}}\sum_{j}v_{ijz}\left[w_{ij}^{0}+\Delta t\frac{T_{e}}{T_{i}}v_{ijz}\sum_{m=0}^{n}E_{1z}^{m}\left(z_{ij}^{m}\right)\right]S\left(z_{g}-z_{ij}^{n+1}\right).

In IAW cases, Eq. (55) does not suffer from the numerical cancellation problem. The only theoretical cancellation involved is that between the ion parallel current and the electron parallel current, which yields the IAW dispersion relation. In contrast, for Eq. (52), the leading-order terms E1zn+1E_{1z}^{n+1} and p1,ezn+1/zg-{\partial p_{1,ez}^{n+1}}/{\partial z_{g}} are expected to nearly cancel to recover the accurate IAW mode. Intuitively, the higher-order electron velocity moment and spatial gradient in p1,ezn+1/zg-{\partial p_{1,ez}^{n+1}}/{\partial z_{g}} make the cancellation problem in the parallel Ohm’s law more severe, which requires finer grids and more particles to resolve. Furthermore, we can next show that even in the limit of infinite particle number and grid number, the implicit parallel Ampere’s law yields a more accurate IAW frequency than the parallel Ohm’s law under the same timestep Δt\Delta t.

For further simplification, we use the following assumptions

(3) The electric field is filtered to a single kzk_{z} mode at each time step, i.e., E1zn(zg)=E~1znexp(ikzzg)+c.c.E_{1z}^{n}(z_{g})=\tilde{E}_{1z}^{n}exp\left(ik_{z}z_{g}\right)+c.c., where the wavenumber kzk_{z} is fixed and the complex amplitude E~1zn\tilde{E}_{1z}^{n} depends on the time step tnt^{n}.

(4) The initial electron and ion weights are loaded as wej0=w~e0exp(ikzzej0)+c.c.w_{ej}^{0}=\tilde{w}_{e}^{0}exp(ik_{z}z_{ej}^{0})+c.c. and wij0=w~i0exp(ikzzij0)+c.c.w_{ij}^{0}=\tilde{w}_{i}^{0}exp(ik_{z}z_{ij}^{0})+c.c., respectively.

By inserting δ(zzejn+1)δ(vzvejz)\delta\left(z-z_{ej}^{n+1}\right)\delta\left(v_{z}-v_{ejz}\right) and δ(zzijn+1)δ(vzvijz)\delta\left(z-z_{ij}^{n+1}\right)\delta\left(v_{z}-v_{ijz}\right) into Eq. (55), the discretized form of the implicit parallel Ampere’s law becomes

ΔtΔzE~1zn+1eikzzgp=+𝐑2vz2eikzpΔzS(zg+pΔzz)S(zgz)ΔzNpjδ(zzejn+1)δ(vzvejz)𝑑zdvz\displaystyle\frac{\Delta t}{\Delta z}\tilde{E}_{1z}^{n+1}e^{ik_{z}z_{g}}\sum_{p=-\infty}^{+\infty}\iint_{\mathbf{R}^{2}}v_{z}^{2}e^{ik_{z}p\Delta z}S\left(z_{g}+p\Delta z-z\right)S\left(z_{g}-z\right)\frac{\Delta z}{N_{p}}\sum_{j}\delta\left(z-z_{ej}^{n+1}\right)\delta\left(v_{z}-v_{ejz}\right)dzdv_{z} (56)
=1Δz𝐑2vz[w~e0eikz(z(n+1)vzΔt)Δtvzm=1np=+E~1zmeikz(zg+pΔz)S(zg+pΔzz+(n+1m)vzΔt)]\displaystyle=\frac{1}{\Delta z}\iint_{\mathbf{R}^{2}}v_{z}\left[\tilde{w}_{e}^{0}e^{ik_{z}\left(z-(n+1)v_{z}\Delta t\right)}-\Delta tv_{z}\sum_{m=1}^{n}\sum_{p=-\infty}^{+\infty}\tilde{E}_{1z}^{m}e^{ik_{z}\left(z_{g}+p\Delta z\right)}S\left(z_{g}+p\Delta z-z+(n+1-m)v_{z}\Delta t\right)\right]
S(zgz)ΔzNpjδ(zzejn+1)δ(vzvejz)dzdvz\displaystyle S\left(z_{g}-z\right)\frac{\Delta z}{N_{p}}\sum_{j}\delta(z-z_{ej}^{n+1})\delta\left(v_{z}-v_{ejz}\right)dzdv_{z}
1Δz𝐑2vz[w~i0eikz(z(n+1)vzΔt)+ΔtTeTivzm=0np=+E~1zmeikz(zg+pΔz)S(zg+pΔzz+(n+1m)vzΔt)]\displaystyle-\frac{1}{\Delta z}\iint_{\mathbf{R}^{2}}v_{z}\left[\tilde{w}_{i}^{0}e^{ik_{z}\left(z-(n+1)v_{z}\Delta t\right)}+\Delta t\frac{T_{e}}{T_{i}}v_{z}\sum_{m=0}^{n}\sum_{p=-\infty}^{+\infty}\tilde{E}_{1z}^{m}e^{ik_{z}\left(z_{g}+p\Delta z\right)}S\left(z_{g}+p\Delta z-z+(n+1-m)v_{z}\Delta t\right)\right]
S(zgz)ΔzNpjδ(zzijn+1)δ(vzvijz)dzdvz.\displaystyle S\left(z_{g}-z\right)\frac{\Delta z}{N_{p}}\sum_{j}\delta(z-z_{ij}^{n+1})\delta\left(v_{z}-v_{ijz}\right)dzdv_{z}.

Then, we replace the summation terms over jj with the normalized equilibrium distribution functions under the assumption:

(5) The particle number in each grid is large enough that the following equations hold

ΔzNpjδ(zgzejn+1)δ(vzvejz)fe0=exp[mevz2/(2mi)]2πmi/me,\displaystyle\frac{\Delta z}{N_{p}}\sum_{j}\delta\left(z_{g}-z_{ej}^{n+1}\right)\delta\left(v_{z}-v_{ejz}\right)\approx f_{e0}=\frac{exp\left[-m_{e}v_{z}^{2}/\left(2m_{i}\right)\right]}{\sqrt{2\pi m_{i}/m_{e}}}, (57)
ΔzNpjδ(zgzijn+1)δ(vzvijz)fi0=exp[Tevz2/(2Ti)]2πTi/Te.\displaystyle\frac{\Delta z}{N_{p}}\sum_{j}\delta\left(z_{g}-z_{ij}^{n+1}\right)\delta\left(v_{z}-v_{ijz}\right)\approx f_{i0}=\frac{exp\left[-T_{e}v_{z}^{2}/\left(2T_{i}\right)\right]}{\sqrt{2\pi T_{i}/T_{e}}}.

In Eq. (56), the integral of the shape functions over z can be defined as I(ξ)=+S(Z+ξ)S(Z)𝑑ZI(\xi)=\int_{-\infty}^{+\infty}S(Z+\xi)S(Z)dZ and we notice that

I~(k)=𝐑2S(Z+ξ)S(Z)eikξdξdZ=|S~(k)|2,\displaystyle\tilde{I}(k)=\iint_{\mathbf{R}^{2}}S\left(Z+\xi\right)S\left(Z\right)e^{-ik\xi}d\xi dZ=|\tilde{S}\left(k\right)|^{2}, (58)
I(ξ)=12π+|S~(k)|2eikξdk,\displaystyle I(\xi)=\frac{1}{2\pi}\int_{-\infty}^{+\infty}|\tilde{S}\left(k\right)|^{2}e^{ik\xi}dk,

with S~(k)=+S(Z)eikZ𝑑Z\tilde{S}\left(k\right)=\int_{-\infty}^{+\infty}S(Z)e^{-ikZ}dZ. Therefore, the double summation terms of E~1zm\tilde{E}_{1z}^{m} in Eq. (56) can be simplified as

ΔtΔzm=1nE~1zmeikzzg𝐑2vz2p=+eikzpΔzS(zg+pΔzz+(n+1m)vzΔt)S(zgz)fe0dzdvz\displaystyle-\frac{\Delta t}{\Delta z}\sum_{m=1}^{n}\tilde{E}_{1z}^{m}e^{ik_{z}z_{g}}\iint_{\mathbf{R}^{2}}v_{z}^{2}\sum_{p=-\infty}^{+\infty}e^{ik_{z}p\Delta z}S\left(z_{g}+p\Delta z-z+(n+1-m)v_{z}\Delta t\right)S\left(z_{g}-z\right)f_{e0}dzdv_{z} (59)
=ΔtΔzm=1nE~1zmeikzzg+dvz{vz2fe0[p=+eikzpΔz2π+|S~(k)|2eikpΔzeikvz(n+1m)Δtdk]}\displaystyle=-\frac{\Delta t}{\Delta z}\sum_{m=1}^{n}\tilde{E}_{1z}^{m}e^{ik_{z}z_{g}}\int_{-\infty}^{+\infty}dv_{z}\left\{v_{z}^{2}f_{e0}\left[\sum_{p=-\infty}^{+\infty}\frac{e^{ik_{z}p\Delta z}}{2\pi}\int_{-\infty}^{+\infty}|\tilde{S}\left(k\right)|^{2}e^{ikp\Delta z}e^{ikv_{z}\left(n+1-m\right)\Delta t}dk\right]\right\}
=ΔtΔzm=1nE~1zmeikzzg+dvz{vz2fe0[1Δz+|S~(k)|2eikvz(n+1m)Δtp=+δ(k+kz2πpΔz)dk]}\displaystyle=-\frac{\Delta t}{\Delta z}\sum_{m=1}^{n}\tilde{E}_{1z}^{m}e^{ik_{z}z_{g}}\int_{-\infty}^{+\infty}dv_{z}\left\{v_{z}^{2}f_{e0}\left[\frac{1}{\Delta z}\int_{-\infty}^{+\infty}|\tilde{S}\left(k\right)|^{2}e^{ikv_{z}\left(n+1-m\right)\Delta t}\sum_{p=-\infty}^{+\infty}\delta\left(k+k_{z}-\frac{2\pi p}{\Delta z}\right)dk\right]\right\}
=ΔtΔz2m=1np=+E~1zmeikzzg+vz2fe0eikpvz(n+1m)Δt|S~(kp)|2dvz,\displaystyle=-\frac{\Delta t}{\Delta z^{2}}\sum_{m=1}^{n}\sum_{p=-\infty}^{+\infty}\tilde{E}_{1z}^{m}e^{ik_{z}z_{g}}\int_{-\infty}^{+\infty}v_{z}^{2}f_{e0}e^{-ik_{p}v_{z}(n+1-m)\Delta t}|\tilde{S}(k_{p})|^{2}dv_{z},

with kp=kz2pπ/Δzk_{p}=k_{z}-2p\pi/\Delta z. Here the poisson summation formula is used

p=+ei(k+kz)pΔz=2πΔzp=+δ(k+kz2πpΔz).\sum_{p=-\infty}^{+\infty}e^{i\left(k+k_{z}\right)p\Delta z}=\frac{2\pi}{\Delta z}\sum_{p=-\infty}^{+\infty}\delta\left(k+k_{z}-\frac{2\pi p}{\Delta z}\right). (60)

After simplifying the integrals over zz, the discretized form of the implicit parallel Ampere’s law can be expressed as

Δt2+cos(kzΔz)3E~1zn+1eikzzg+vz2fe0dvz\displaystyle\Delta t\frac{2+cos(k_{z}\Delta z)}{3}\tilde{E}_{1z}^{n+1}e^{ik_{z}z_{g}}\int_{-\infty}^{+\infty}v_{z}^{2}f_{e0}dv_{z} (61)
=S~(kz)Δzw~e0eikzzg+vzeikzvz(n+1)Δtfe0dvzΔtm=1np=+|S~(kp)|2Δz2E~1zmeikzzg+vz2fe0eikpvz(n+1m)Δtdvz\displaystyle=\frac{\tilde{S}(k_{z})}{\Delta z}\tilde{w}_{e}^{0}e^{ik_{z}z_{g}}\int_{-\infty}^{+\infty}v_{z}e^{-ik_{z}v_{z}(n+1)\Delta t}f_{e0}dv_{z}-\Delta t\sum_{m=1}^{n}\sum_{p=-\infty}^{+\infty}\frac{|\tilde{S}(k_{p})|^{2}}{\Delta z^{2}}\tilde{E}_{1z}^{m}e^{ik_{z}z_{g}}\int_{-\infty}^{+\infty}v_{z}^{2}f_{e0}e^{-ik_{p}v_{z}(n+1-m)\Delta t}dv_{z}
S~(kz)Δzw~i0eikzzg+vzeikzvz(n+1)Δtfi0dvzΔtm=0np=+|S~(kp)|2Δz2TeTiE~1zmeikzzg+vz2fi0eikpvz(n+1m)Δtdvz.\displaystyle-\frac{\tilde{S}(k_{z})}{\Delta z}\tilde{w}_{i}^{0}e^{ik_{z}z_{g}}\int_{-\infty}^{+\infty}v_{z}e^{-ik_{z}v_{z}(n+1)\Delta t}f_{i0}dv_{z}-\Delta t\sum_{m=0}^{n}\sum_{p=-\infty}^{+\infty}\frac{|\tilde{S}(k_{p})|^{2}}{\Delta z^{2}}\frac{T_{e}}{T_{i}}\tilde{E}_{1z}^{m}e^{ik_{z}z_{g}}\int_{-\infty}^{+\infty}v_{z}^{2}f_{i0}e^{-ik_{p}v_{z}(n+1-m)\Delta t}dv_{z}.

We multiply n=0+eiω(n+1)Δt\sum_{n=0}^{+\infty}e^{i\omega\left(n+1\right)\Delta t} with the implicit parallel Ampere’s law and notice that

n=0+m=1nE~1zmei(ωkpvz)(n+1)ΔteikpvzmΔt=m=1+E~1zmeikpvzmΔtn=m+ei(ωkpvz)(n+1)Δt\displaystyle\sum_{n=0}^{+\infty}\sum_{m=1}^{n}\tilde{E}_{1z}^{m}e^{i(\omega-k_{p}v_{z})\left(n+1\right)\Delta t}e^{ik_{p}v_{z}m\Delta t}=\sum_{m=1}^{+\infty}\tilde{E}_{1z}^{m}e^{ik_{p}v_{z}m\Delta t}\sum_{n=m}^{+\infty}e^{i(\omega-k_{p}v_{z})\left(n+1\right)\Delta t} (62)
=m=1+E~1zmeikpvzmΔtei(ωkpvz)(m+1)Δt1ei(ωkpvz)Δt=[E^1z(kz,ω)E~1z0(kz)]ei(ωkpvz)Δt1ei(ωkpvz)Δt,\displaystyle=\sum_{m=1}^{+\infty}\tilde{E}_{1z}^{m}e^{ik_{p}v_{z}m\Delta t}\frac{e^{i(\omega-k_{p}v_{z})\left(m+1\right)\Delta t}}{1-e^{i(\omega-k_{p}v_{z})\Delta t}}=\left[\hat{E}_{1z}\left(k_{z},\omega\right)-\tilde{E}_{1z}^{0}\left(k_{z}\right)\right]\frac{e^{i(\omega-k_{p}v_{z})\Delta t}}{1-e^{i(\omega-k_{p}v_{z})\Delta t}},

where E^1z(kz,ω)\hat{E}_{1z}\left(k_{z},\omega\right) denotes the electric field after a discrete-time Fourier transformation, defined as E^1z(kz,ω)=m=0+E~1zmeiωmΔt\hat{E}_{1z}\left(k_{z},\omega\right)=\sum_{m=0}^{+\infty}\tilde{E}_{1z}^{m}e^{i\omega m\Delta t}.

Therefore, the discretized form of the implicit parallel Ampere’s law becomes

[Δt2+cos(kzΔz)3vz2fe0dvz+Δtp=+|S~(kp)|2Δz2+vz2(fe0+TeTifi0)ei(ωkpvz)Δt1ei(ωkpvz)Δtdvz]E^1z(kz,ω)\displaystyle\left[\Delta t\frac{2+cos(k_{z}\Delta z)}{3}\int v_{z}^{2}f_{e0}dv_{z}+\Delta t\sum_{p=-\infty}^{+\infty}\frac{|\tilde{S}(k_{p})|^{2}}{\Delta z^{2}}\int_{-\infty}^{+\infty}v_{z}^{2}\left(f_{e0}+\frac{T_{e}}{T_{i}}f_{i0}\right)\frac{e^{i\left(\omega-k_{p}v_{z}\right)\Delta t}}{1-e^{i\left(\omega-k_{p}v_{z}\right)\Delta t}}dv_{z}\right]\hat{E}_{1z}\left(k_{z},\omega\right) (63)
=ΔtE~1z0(kz)2+cos(kzΔz)3vz2fe0dvz+ΔtE~1z0(kz)p=+|S~(kp)|2Δz2+vz2fe0ei(ωkpvz)Δt1ei(ωkpvz)Δtdvz\displaystyle=\Delta t\tilde{E}_{1z}^{0}\left(k_{z}\right)\frac{2+cos(k_{z}\Delta z)}{3}\int v_{z}^{2}f_{e0}dv_{z}+\Delta t\tilde{E}_{1z}^{0}\left(k_{z}\right)\sum_{p=-\infty}^{+\infty}\frac{|\tilde{S}(k_{p})|^{2}}{\Delta z^{2}}\int_{-\infty}^{+\infty}v_{z}^{2}f_{e0}\frac{e^{i\left(\omega-k_{p}v_{z}\right)\Delta t}}{1-e^{i\left(\omega-k_{p}v_{z}\right)\Delta t}}dv_{z}
+S~(kz)Δzvz(w~e0fe0w~i0fi0)ei(ωkzvz)Δt1ei(ωkzvz)Δtdvz.\displaystyle+\frac{\tilde{S}\left(k_{z}\right)}{\Delta z}\int v_{z}\left(\tilde{w}_{e}^{0}f_{e0}-\tilde{w}_{i}^{0}f_{i0}\right)\frac{e^{i\left(\omega-k_{z}v_{z}\right)\Delta t}}{1-e^{i\left(\omega-k_{z}v_{z}\right)\Delta t}}dv_{z}.

The spectrum peak appears at the position where the coefficient of E^1z(kz,ω)\hat{E}_{1z}\left(k_{z},\omega\right) is zero, which gives the numerical dispersion relation of IAW modified by the finite grid size and the finite timestep

Δtmime2+cos(kzΔz)3Δts=i,ep=+mims|S~(kp)|2Δz2{12+2iΔtq=+ωqkp2vts2[1+ωq|kp|vtsZ(ωq|kp|vts)]}=0,\displaystyle\Delta t\frac{m_{i}}{m_{e}}\frac{2+cos(k_{z}\Delta z)}{3}-\Delta t\sum_{s=i,~e}\sum_{p=-\infty}^{+\infty}\frac{m_{i}}{m_{s}}\frac{|\tilde{S}(k_{p})|^{2}}{\Delta z^{2}}\left\{\frac{1}{2}+\frac{2i}{\Delta t}\sum_{q=-\infty}^{+\infty}\frac{\omega_{q}}{k_{p}^{2}v_{ts}^{2}}\left[1+\frac{\omega_{q}}{|k_{p}|v_{ts}}Z\left(\frac{\omega_{q}}{|k_{p}|v_{ts}}\right)\right]\right\}=0, (64)

with ωq=ω2qπ/Δt\omega_{q}=\omega-2q\pi/\Delta t and kp=kz2pπ/Δzk_{p}=k_{z}-2p\pi/\Delta z. Here we have used the expansion

11ei(ωkpvz)Δt=12+iΔtq=+1ωkpvz2qπ/Δt,\displaystyle\frac{1}{1-e^{i\left(\omega-k_{p}v_{z}\right)\Delta t}}=\frac{1}{2}+\frac{i}{\Delta t}\sum_{q=-\infty}^{+\infty}\frac{1}{\omega-k_{p}v_{z}-2q\pi/\Delta t}, (65)

which converges in the sense of the principal value under the symmetric limit on qq.

Following a similar derivation, we obtain the numerical dispersion relation of IAW from the parallel Ohm’s law

2+cos(kzΔz)3mime+12sin(kzΔz)Δzs=i,ep=+q=+|S~(kp)|2kpΔz2mims[ωq2kp2vts2+12+ωq3|kp3|vts3Z(ωq|kp|vts)]=0.\displaystyle\frac{2+cos(k_{z}\Delta z)}{3}\frac{m_{i}}{m_{e}}+1-\frac{2sin(k_{z}\Delta z)}{\Delta z}\sum_{s=i,~e}\sum_{p=-\infty}^{+\infty}\sum_{q=-\infty}^{+\infty}\frac{|\tilde{S}(k_{p})|^{2}}{k_{p}\Delta z^{2}}\frac{m_{i}}{m_{s}}\left[\frac{\omega_{q}^{2}}{k_{p}^{2}v_{ts}^{2}}+\frac{1}{2}+\frac{\omega_{q}^{3}}{|k_{p}^{3}|v_{ts}^{3}}Z\left(\frac{\omega_{q}}{|k_{p}|v_{ts}}\right)\right]=0. (66)

In the derivation of Eq. (66), /zg\partial/\partial z_{g} is discretized via central differencing. The shape function S(z)S(z) is

S(z)={1|z|/Δzfor |z|Δz,0for |z|>Δz,S(z)=\begin{cases}1-{|z|}/{\Delta z}&\text{for }|z|\leq\Delta z,\\ 0&\text{for }|z|>\Delta z,\end{cases} (67)

with S~(k)=Δz[sin(kΔz/2)/(kΔz/2)]2\tilde{S}(k)=\Delta z[sin(k\Delta z/2)/(k\Delta z/2)]^{2}.

Figure 5 demonstrates the eigenvalue results obtained from the theoretical and numerical dispersion relations, Eqs. (48), (64) and (66). For the implicit parallel Ampere’s law, Eq. (64), the eigenvalues converge when the number of grid points per wavelength exceeds 16. In contrast, the parallel Ohm’s law, Eq. (66), requires more than 256 grid points per wavelength to achieve convergence. This confirms that the cancellation problem in the parallel Ohm’s law requires substantially finer grid resolution.

Refer to caption
(a) Real frequency
Refer to caption
(b) Damping rate
Figure 5: Effect of the finite grid size on the numerical dispersion relations of the IAW. The dashed line shows the theoretical results from the IAW dispersion relation (48). The red circles and blue crosses represent the numerical dispersion relations Eqs. (64) and (66), obtained using the implicit parallel Ampere’s law and the parallel Ohm’s law, respectively. IAW parameters are Ti/Te=0.25,kzρs=0.1,ΩciΔt=0.01T_{i}/T_{e}=0.25,k_{z}\rho_{s}=0.1,\Omega_{ci}\Delta t=0.01.

More importantly, the cancellation problem in the parallel Ohm’s law demands not only finer spatial grids but also smaller timesteps. Taking the limit of infinite grid resolution (Δz0)(\Delta z\rightarrow 0) in Eq. (64) yields the numerical dispersion relation of the implicit parallel Ampere’s law, modified solely by the finite timestep effect,

Δt2mimeΔt22is=i,eq=+mimsω2qπ/Δtkz2vts2[1+ω2qπ/ΔtkzvtsZ(ω2qπ/Δtkzvts)]=0.\displaystyle\frac{\Delta t}{2}\frac{m_{i}}{m_{e}}-\frac{\Delta t}{2}-2i\sum_{s=i,~e}\sum_{q=-\infty}^{+\infty}\frac{m_{i}}{m_{s}}\frac{\omega-2q\pi/\Delta t}{k_{z}^{2}v_{ts}^{2}}\left[1+\frac{\omega-2q\pi/\Delta t}{k_{z}v_{ts}}Z\left(\frac{\omega-2q\pi/\Delta t}{k_{z}v_{ts}}\right)\right]=0. (68)

Similarly, under infinite grid resolution, the numerical dispersion relation of the parallel Ohm’s law reduces to

mime+12s=i,eq=+mims[(ω2qπ/Δtkzvts)2+12+(ω2qπ/Δtkzvts)3Z(ω2qπ/Δtkzvts)]=0.\displaystyle\frac{m_{i}}{m_{e}}+1-2\sum_{s=i,~e}\sum_{q=-\infty}^{+\infty}\frac{m_{i}}{m_{s}}\left[\left(\frac{\omega-2q\pi/\Delta t}{k_{z}v_{ts}}\right)^{2}+\frac{1}{2}+\left(\frac{\omega-2q\pi/\Delta t}{k_{z}v_{ts}}\right)^{3}Z\left(\frac{\omega-2q\pi/\Delta t}{k_{z}v_{ts}}\right)\right]=0. (69)

The eigenvalue results obtained from the theoretical and numerical dispersion relations, Eqs. (48), (68) and (69), are presented in Fig. 6. The real frequencies from the implicit parallel Ampere’s law, Eq. (68), remain in good agreement with the theoretical values across the entire range of ΩciΔt(0,0.05]\Omega_{ci}\Delta t\in(0,0.05]. In contrast, those from the parallel Ohm’s law, Eq. (69), exhibit significant deviations for ΩciΔt>0.01\Omega_{ci}\Delta t>0.01, even though ΩciΔt<0.05\Omega_{ci}\Delta t<0.05 is already sufficiently small to accurately resolve particle motions. Agreement with the theoretical result is recovered only when ΩciΔt\Omega_{ci}\Delta t is reduced to 0.0050.005 or smaller. Consequently, unless the timestep ΩciΔt\Omega_{ci}\Delta t is chosen sufficiently small, the parallel Ohm’s law fails to reproduce accurate IAW frequency results, even in the limit of infinite grid resolution and particle number. This strong sensitivity of the parallel Ohm’s law to Δt\Delta t highlights the greater difficulty in overcoming the cancellation problem compared with the implicit parallel Ampere’s law.

Regarding the damping rates, both numerical dispersion relations deviate from theoretical results unless ΩciΔt\Omega_{ci}\Delta t is smaller than 0.0020.002, as shown by Fig. 6 (b). The implicit parallel Ampere’s law tends to overestimate the damping rate due to the numerical stabilizing effect inherent to the implicit time-stepping scheme, which is a common phenomenon not limited to the IAW. As can be seen in section 4, this numerical damping can be effectively reduced by using a second-order pushing scheme.

Refer to caption
(a) Real frequency
Refer to caption
(b) Damping rate
Figure 6: Effect of the finite timestep on the numerical IAW dispersion relations in the limit of infinite grid resolution. The dashed line shows the theoretical dispersion relation (48). The red circles and blue crosses correspond to the numerical dispersion relations obtained from the implicit parallel Ampere’s law (68) and the parallel Ohm’s law (69), respectively. IAW parameters are Ti/Te=0.25,kzρs=0.1T_{i}/T_{e}=0.25,k_{z}\rho_{s}=0.1.

Building on the analytical IAW argument, we now turn to numerical simulations to evaluate how different schemes perform in practice. Figure 7 compares the IAW simulation results for three schemes: the implicit discretization scheme, the explicit discretization scheme, and the explicit discretization scheme using the numerical procedure that replaces p1,ep_{1,e\|} with p1,e+Te(n1,in1,e)p_{1,e\|}+T_{e}(n_{1,i}-n_{1,e}). This procedure, proposed in previous work [8, 9], is designed to enforce the IAW dispersion relation (quasi-neutrality condition) at leading order, thereby mitigating the cancellation problem. Although effective, this procedure introduces high-frequency oscillations into the simulation [8]. Consequently, it requires additional numerical operations—such as adjusting particle weight in the end of each timestep to enforce charge neutrality—to suppress the high-frequency noise [8].

As shown in Fig. 7 (a), the explicit discretization scheme with the numerical procedure yields the most accurate real frequencies, closely matching the theoretical dispersion relation. However, this technique lacks robustness, as it does not perform well when applied to other benchmark problems like the ITG case (see section 3.3). Without the numerical procedure, the explicit discretization scheme produces real frequencies that are noticeably less accurate than those obtained with the implicit discretization scheme. This result confirms our analytical argument that the implicit parallel Ampere’s law is more effective at mitigating the cancellation problem.

For the damping rates, Fig. 7 (b) shows that none of the three schemes accurately reproduces the theoretical results under the current simulation parameters (ΩciΔt=0.01,nz=128,Np=256)(\Omega_{ci}\Delta t=0.01,n_{z}=128,N_{p}=256). While this timestep is sufficient to resolve particle motions, the implicit discretization scheme overestimates the damping rates due to significant numerical damping introduced by its implicit weight-pushing scheme. Accurate damping rates for both the implicit and explicit discretization schemes are only achieved when the timestep is reduced to ΩciΔt=0.001\Omega_{ci}\Delta t=0.001. This strong dependence on timestep motivates the second-order time-stepping scheme for pushing electron and ion weights, which is presented in section 4.

Refer to caption
(a) Real frequency
Refer to caption
(b) Damping rate
Figure 7: Simulation results of IAW for different schemes. Simulation parameters are nx=ny=2,nz=128,Np=256,ΩciΔt=0.01n_{x}=n_{y}=2,n_{z}=128,N_{p}=256,\Omega_{ci}\Delta t=0.01. The wave parameters are βe=0.01,kxρs=kyρs=0,kzρs=0.1\beta_{e}=0.01,k_{x}\rho_{s}=k_{y}\rho_{s}=0,k_{z}\rho_{s}=0.1.

3.3 Ion temperature gradient driven instability

The ITG also suffers from the cancellation problem [17, 18]. To benchmark against simulation results, we first present our analytical model. We assume the equilibrium density and temperature are ni=ne=n0(1+κnx),Ti=T0(1+κtix),Te=T0(1+κtex)n_{i}=n_{e}=n_{0}(1+\kappa_{n}x),T_{i}=T_{0}(1+\kappa_{ti}x),T_{e}=T_{0}(1+\kappa_{te}x) where κn\kappa_{n}, κti\kappa_{ti} and κte\kappa_{te} are constant number. Under low β\beta assumption, the equilibrium magnetic field is uniform 𝐁0=B0𝐳^\mathbf{B}_{0}=B_{0}\mathbf{\hat{z}}. As a function of constant motion, the ion equilibrium distribution function is assumed as

fi0=n0(1+κnη)(2πT0/mi)32(1+κtiη)32emiv22T0(1+κtiη),f_{i0}=\frac{n_{0}\left(1+\kappa_{n}\eta\right)}{\left(2\pi T_{0}/m_{i}\right)^{\frac{3}{2}}\left(1+\kappa_{ti}\eta\right)^{\frac{3}{2}}}e^{-\frac{m_{i}v^{2}}{2T_{0}\left(1+\kappa_{ti}\eta\right)}}, (70)

where η=x+mivy/qB0\eta=x+m_{i}v_{y}/qB_{0}. The linearized Vlasov equation becomes

dfi1dt=n0qi(1+κnη)(2π/mi)32T052(1+κtiη)52emiv22T0(1+κtiη)(vxE1x+vyE1y+vzE1z)\displaystyle\frac{df_{i1}}{dt}=\frac{n_{0}q_{i}\left(1+\kappa_{n}\eta\right)}{\left(2\pi/m_{i}\right)^{\frac{3}{2}}T_{0}^{\frac{5}{2}}\left(1+\kappa_{ti}\eta\right)^{\frac{5}{2}}}e^{-\frac{m_{i}v^{2}}{2T_{0}\left(1+\kappa_{ti}\eta\right)}}\left(v_{x}E_{1x}+v_{y}E_{1y}+v_{z}E_{1z}\right) (71)
n0(1+κnη)B0(2πT0/mi)32(1+κtiη)32emiv22T0(1+κtiη)(E1y+vzB1xvxB1z){κn1+κnη+[miv22Ti(η)32]κti1+κtiη}.\displaystyle-\frac{n_{0}\left(1+\kappa_{n}\eta\right)}{B_{0}\left({2\pi T_{0}}/{m_{i}}\right)^{\frac{3}{2}}\left(1+\kappa_{ti}\eta\right)^{\frac{3}{2}}}e^{-\frac{m_{i}v^{2}}{2T_{0}\left(1+\kappa_{ti}\eta\right)}}\left(E_{1y}+v_{z}B_{1x}-v_{x}B_{1z}\right)\left\{\frac{\kappa_{n}}{1+\kappa_{n}\eta}+\left[\frac{m_{i}v^{2}}{2T_{i}(\eta)}-\frac{3}{2}\right]\frac{\kappa_{ti}}{1+\kappa_{ti}\eta}\right\}.

Then Eq. (71) is Fourier transformed with /xikx\partial/\partial x\rightarrow ik_{x} and xi/kxx\rightarrow i{\partial}/{\partial k_{x}}. Solving the linearized Vlasov equation and substituting fi1f_{i1} into the field equations, the final dispersion relation comprises a complex set of differential equations in kxk_{x}, which is difficult to solve.

Since the purpose of ITG simulations here is to compare the two schemes’ capability in addressing the cancellation problem, we employ a simplified theoretical treatment to derive an algebraic dispersion relation. Specifically, in Eq. (71), we make the local assumption which sets x=0x=0 and neglects O(κn2),O(κnκti),O(κti2)O(\kappa_{n}^{2}),O(\kappa_{n}\kappa_{ti}),O(\kappa_{ti}^{2}) terms

dfi1dt\displaystyle\frac{df_{i1}}{dt}\approx qiT0fM{1+[κn+(miv22T052)κti]mivyqB0}(vxE1x+vyE1y+vzE1z)\displaystyle\frac{q_{i}}{T_{0}}f_{M}\left\{1+\left[\kappa_{n}+\left(\frac{m_{i}v^{2}}{2T_{0}}-\frac{5}{2}\right)\kappa_{ti}\right]\frac{m_{i}v_{y}}{qB_{0}}\right\}\left(v_{x}E_{1x}+v_{y}E_{1y}+v_{z}E_{1z}\right) (72)
fMB0(E1y+vzB1xvxB1z)[κn+(miv22T032)κti].\displaystyle-\frac{f_{M}}{B_{0}}\left(E_{1y}+v_{z}B_{1x}-v_{x}B_{1z}\right)\left[\kappa_{n}+\left(\frac{m_{i}v^{2}}{2T_{0}}-\frac{3}{2}\right)\kappa_{ti}\right].

Here all fractional terms with mivy/qB0m_{i}v_{y}/qB_{0} in the denominator have been Taylor expanded and fMf_{M} denotes the uniform Maxwell distribution. However, both the dispersion relation and PIC simulation based on Eq. (72) show that there may exist high-frequency drift cyclotron instabilities, as can be seen in Fig. 8.

Refer to caption
(a) Theoretical eigenvalues
Refer to caption
(b) Simulation result
Figure 8: (a) The theoretical eigenvalues of the dispersion relation derived from Eq. (72). (b) The linear simulation results of implicit discretization scheme when Eq. (72) is used as the ion weight pushing equation. Simulation parameters are nx=ny=32,nz=64,Np=128,ΩciΔt=0.05n_{x}=n_{y}=32,n_{z}=64,N_{p}=128,\Omega_{ci}\Delta t=0.05. The plasma parameters are βe=0.001,κnρs=0,κtiρs=0.3,κteρs=0,kxρs=0.2,kyρs=0.4,kzρs=0.01\beta_{e}=0.001,\kappa_{n}\rho_{s}=0,\kappa_{ti}\rho_{s}=-0.3,\kappa_{te}\rho_{s}=0,k_{x}\rho_{s}=0.2,k_{y}\rho_{s}=0.4,k_{z}\rho_{s}=0.01. In Fig. 8 (b), Re(E~1x)Re(\tilde{E}_{1x}) denotes the real part of E1xE_{1x} after discrete spatial Fourier transformation, evaluated at the wavenumber kxρs=0.2,kyρs=0.4,kzρs=0.01k_{x}\rho_{s}=0.2,k_{y}\rho_{s}=0.4,k_{z}\rho_{s}=0.01. The simulated mode in Fig. 8 (b) exhibits a complex frequency ω/Ωci=1.936+0.0173i\omega/\Omega_{ci}=1.936+0.0173i, which corresponds to the eigenvalue ω/Ωci=1.936+0.0199i\omega/\Omega_{ci}=1.936+0.0199i highlighted by the red star symbol in Fig. 8 (a).

To suppress drift cyclotron instabilities, we introduce a further simplification by setting η=0\eta=0 in Eq. (71), leading to the following form

dfi1dt\displaystyle\frac{df_{i1}}{dt}\approx qiT0fM(vxE1x+vyE1y+vzE1z)fMB0(E1y+vzB1xvxB1z)[κn+(miv22T032)κti].\displaystyle\frac{q_{i}}{T_{0}}f_{M}\left(v_{x}E_{1x}+v_{y}E_{1y}+v_{z}E_{1z}\right)-\frac{f_{M}}{B_{0}}\left(E_{1y}+v_{z}B_{1x}-v_{x}B_{1z}\right)\left[\kappa_{n}+\left(\frac{m_{i}v^{2}}{2T_{0}}-\frac{3}{2}\right)\kappa_{ti}\right]. (73)

This simplification, referred to as the Boussinesq assumption [19, 20], has been incorporated into the ion weight pushing equations (14) presented in section 2.2. Physically, this assumption corresponds to neglecting the constant of ion gyromotion (η=0)(\eta=0) while retaining only one dominant nonuniformity term in the linearized Vlasov equation. Figure 9 shows the eigenvalues of the dispersion relation and PIC simulation results under this assumption with identical parameters, confirming that the model correctly captures the ITG mode while avoiding high-frequency instabilities.

Refer to caption
(a) Theoretical eigenvalues
Refer to caption
(b) Simulation result
Figure 9: (a) Theoretical eigenvalues of the dispersion relation (b) Linear simulation results obtained with the implicit discretization scheme both under the Boussinesq assumption. Figure 9 is presented for direct comparison with Figure 8, both employing the same simulation parameters. The complex frequency of the simulated mode shown in Fig. 9 (b) is ω/Ωci=0.0222+0.00588i\omega/\Omega_{ci}=-0.0222+0.00588i, which corresponds to the eigenvalue ω/Ωci=0.0222+0.00934i\omega/\Omega_{ci}=-0.0222+0.00934i indicated by the red star symbol in Fig. 9 (a).

Figure 10 summarizes the PIC simulation results under the Boussinesq assumption. The implicit discretization scheme exhibits the closest agreement with the theoretical predictions in real frequencies, confirming its better ability to mitigate the cancellation problem compared to the explicit discretization scheme. Regarding growth rates, both schemes exhibit a systematic underestimation relative to theory (Fig. 10(b)), due to the numerical damping from the implicit ion weight pushing equations (14). This makes it difficult to compare their performance in predicting the ITG growth rate. Crucially, the explicit discretization scheme with the numerical procedure produces an artificially damped ITG mode, underscoring that this expedient approach lacks universal applicability.

The ITG simulations use ΩciΔt=0.01\Omega_{ci}\Delta t=0.01, a timestep sufficient to resolve ion gyromotion and to reduce numerical damping. Nevertheless, a 10%10\% error remains in the growth rates computed by the implicit discretization scheme. Achieving a better accuracy requires further reduction of the timestep, which motivates the development of a second-order scheme for particle pushing.

Refer to caption
(a) Real frequency
Refer to caption
(b) Growth rate
Figure 10: Simulation results of ion temperature gradient driven instabilities (ITG) for different schemes under the Boussinesq assumption. Here simulation parameters are nx=ny=32,nz=64,Np=128,ΩciΔt=0.01n_{x}=n_{y}=32,n_{z}=64,N_{p}=128,\Omega_{ci}\Delta t=0.01.The plasma parameters are βe=0.001,κtiρs=0.3,κteρs=0,kxρs=0.2,kyρs=0.4,kzρs=0.01\beta_{e}=0.001,\kappa_{ti}\rho_{s}=-0.3,\kappa_{te}\rho_{s}=0,k_{x}\rho_{s}=0.2,k_{y}\rho_{s}=0.4,k_{z}\rho_{s}=0.01. The explicit discretization scheme with the numerical procedure yields damped ITG modes, whose damping rates are not shown in figure (b).

4 Second-order time-stepping scheme

4.1 Numerical scheme

We develop a second-order time-stepping scheme based on a semi-implicit formulation [9], where the particle weights are advanced using

wn+1=wn+Δt2(dwndt+dwn+1dt).w^{n+1}=w^{n}+\frac{\Delta t}{2}\left(\frac{dw^{n}}{dt}+\frac{dw^{n+1}}{dt}\right). (74)

Accordingly, the discrete forms of the ion and electron weight pushing equations are given by

wiwinΔt/2=\displaystyle\frac{w_{i}^{*}-w_{i}^{n}}{\Delta t/2}= TeTi𝐯in𝐄1n(𝐱in)[E1yn(𝐱in)+viznB1xn(𝐱in)vixnB1zn(𝐱in)]κin,\displaystyle\frac{T_{e}}{T_{i}}\mathbf{v}_{i}^{n}\cdot\mathbf{E}_{1}^{n}\left(\mathbf{x}_{i}^{n}\right)-\left[E_{1y}^{n}\left(\mathbf{x}_{i}^{n}\right)+v_{iz}^{n}B_{1x}^{n}\left(\mathbf{x}_{i}^{n}\right)-v_{ix}^{n}B_{1z}^{n}\left(\mathbf{x}_{i}^{n}\right)\right]\kappa_{i}^{n}, (75)
win+1wiΔt/2=\displaystyle\frac{w_{i}^{n+1}-w_{i}^{*}}{\Delta t/2}= TeTi𝐯in+1𝐄1n+1(𝐱in+1)[E1yn+1(𝐱in+1)+vizn+1B1xn+1(𝐱in+1)vixn+1B1zn+1(𝐱in+1)]κin+1.\displaystyle\frac{T_{e}}{T_{i}}\mathbf{v}_{i}^{n+1}\cdot\mathbf{E}_{1}^{n+1}\left(\mathbf{x}_{i}^{n+1}\right)-\left[E_{1y}^{n+1}\left(\mathbf{x}_{i}^{n+1}\right)+v_{iz}^{n+1}B_{1x}^{n+1}\left(\mathbf{x}_{i}^{n+1}\right)-v_{ix}^{n+1}B_{1z}^{n+1}\left(\mathbf{x}_{i}^{n+1}\right)\right]\kappa_{i}^{n+1}.
wewenΔt/2=\displaystyle\frac{w_{e}^{*}-w_{e}^{n}}{\Delta t/2}= μe𝐛(×𝐄1n)(𝐱en)veznE1zn(𝐱en)[E1yn(𝐱en)+veznB1xn(𝐱en)]κen,\displaystyle-\mu_{e}\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{n}\right)\left(\mathbf{x}_{e}^{n}\right)-v_{ez}^{n}E_{1z}^{n}\left(\mathbf{x}_{e}^{n}\right)-\left[E_{1y}^{n}\left(\mathbf{x}_{e}^{n}\right)+v_{ez}^{n}B_{1x}^{n}\left(\mathbf{x}_{e}^{n}\right)\right]\kappa_{e}^{n}, (76)
wen+1weΔt/2=\displaystyle\frac{w_{e}^{n+1}-w_{e}^{*}}{\Delta t/2}= μe𝐛(×𝐄1n+1)(𝐱en+1)vezn+1E1zn+1(𝐱en+1)[E1yn+1(𝐱en+1)+vezn+1B1xn+1(𝐱en+1)]κen+1.\displaystyle-\mu_{e}\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{n+1}\right)\left(\mathbf{x}_{e}^{n+1}\right)-v_{ez}^{n+1}E_{1z}^{n+1}\left(\mathbf{x}_{e}^{n+1}\right)-\left[E_{1y}^{n+1}\left(\mathbf{x}_{e}^{n+1}\right)+v_{ez}^{n+1}B_{1x}^{n+1}\left(\mathbf{x}_{e}^{n+1}\right)\right]\kappa_{e}^{n+1}.

Here κin+1\kappa_{i}^{n+1} and κen+1\kappa_{e}^{n+1} are defined as

κin+1=lnnix+[Te(vin+1)22Ti32]lnTix,\displaystyle\kappa_{i}^{n+1}=\frac{\partial lnn_{i}}{\partial x}+\left[\frac{T_{e}\left(v_{i}^{n+1}\right)^{2}}{2T_{i}}-\frac{3}{2}\right]\frac{\partial lnT_{i}}{\partial x}, (77)
κen+1=lnnex+[me(vezn+1)22mi+μeB032]lnTex.\displaystyle\kappa_{e}^{n+1}=\frac{\partial lnn_{e}}{\partial x}+\left[\frac{m_{e}\left(v_{ez}^{n+1}\right)^{2}}{2m_{i}}+\mu_{e}B_{0}-\frac{3}{2}\right]\frac{\partial\ln T_{e}}{\partial x}.

In this paper, the second-order scheme refers to the semi-implicit formulations used to advance the particle weights, as given by Eqs. (75) and (76). The electric field equations—namely, the implicit parallel Ampere’s law and perpendicular Ohm’s law—do not themselves involve time derivatives. Their compatibility with the second-order time-stepping scheme is achieved by consistently splitting the implicit parts of the particle weights. Under Eqs. (75) and (76), the particle current and pressure at time step tn+1t^{n+1} can be split into intermediate and implicit parts as follows,

𝐉in+1=𝐉i+𝐉iImp,Jezn+1=Jez+JezImp,p1,en+1=p1,e+p1,eImp,\mathbf{J}_{i}^{n+1}=\mathbf{J}_{i}^{*}+\mathbf{J}_{i}^{\text{Imp}},\quad{J}_{ez}^{n+1}=J_{ez}^{*}+J_{ez}^{\text{Imp}},\quad p_{1,e\perp}^{n+1}=p_{1,e\perp}^{*}+p_{1,e\perp}^{\text{Imp}}, (78)

where the superscripts * and Imp denote the intermediate and implicit parts, respectively. The detailed expressions of the above terms are

𝐉i(𝐱g)=1Npj𝐯ijn+1wijS(𝐱g𝐱ijn+1),\displaystyle\mathbf{J}_{i}^{*}\left(\mathbf{x}_{g}\right)=\frac{1}{N_{p}}\sum_{j}\mathbf{v}_{ij}^{n+1}w_{ij}^{*}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right), (79)
𝐉iImp(𝐱g)=Δt2Npj𝐯ijn+1{TeTi𝐯ijn+1𝐄1n+1(𝐱ijn+1)[E1yn+1(𝐱ijn+1)+vijzn+1B1xn+1(𝐱ijn+1)vijxn+1B1zn+1(𝐱ijn+1)]κijn+1}S(𝐱g𝐱ijn+1),\displaystyle\mathbf{J}_{i}^{\text{Imp}}\left(\mathbf{x}_{g}\right)=\frac{\Delta t}{2N_{p}}\sum_{j}\mathbf{v}_{ij}^{n+1}\left\{\frac{T_{e}}{T_{i}}\mathbf{v}_{ij}^{n+1}\cdot\mathbf{E}_{1}^{n+1}\left(\mathbf{x}_{ij}^{n+1}\right)-\left[E_{1y}^{n+1}\left(\mathbf{x}_{ij}^{n+1}\right)+v_{ijz}^{n+1}B_{1x}^{n+1}\left(\mathbf{x}_{ij}^{n+1}\right)-v_{ijx}^{n+1}B_{1z}^{n+1}\left(\mathbf{x}_{ij}^{n+1}\right)\right]\kappa_{ij}^{n+1}\right\}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right),
Jez(𝐱g)=\displaystyle J_{ez}^{*}\left(\mathbf{x}_{g}\right)= 1Npjvejzn+1wejS(𝐱g𝐱ejn+1),\displaystyle-\frac{1}{N_{p}}\sum_{j}{v}_{ejz}^{n+1}w_{ej}^{*}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right), (80)
JezImp(𝐱g)=\displaystyle J_{ez}^{\text{Imp}}(\mathbf{x}_{g})= Δt2Npjvejzn+1S(𝐱g𝐱ejn+1){μej𝐛(×𝐄1n+1)(𝐱ejn+1)\displaystyle\frac{\Delta t}{2N_{p}}\sum_{j}v_{ejz}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\left\{\mu_{ej}\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{n+1}\right)\left(\mathbf{x}_{ej}^{n+1}\right)\right.
+vejzn+1E1zn+1(𝐱ejn+1)+[E1yn+1(𝐱ejn+1)+vejzn+1B1xn+1(𝐱ejn+1)]κejn+1},\displaystyle\left.+v_{ejz}^{n+1}E_{1z}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)+\left[E_{1y}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)+v_{ejz}^{n+1}B_{1x}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)\right]\kappa_{ej}^{n+1}\right\},
p1,e(𝐱g)=\displaystyle p_{1,e\perp}^{*}(\mathbf{x}_{g})= 1Npj(μejB0)wejS(𝐱g𝐱ejn+1),\displaystyle\frac{1}{N_{p}}\sum_{j}\left(\mu_{ej}B_{0}\right)w_{ej}^{*}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right), (81)
p1,eImp(𝐱g)=\displaystyle p_{1,e\perp}^{\text{Imp}}(\mathbf{x}_{g})= Δt2Npj(μejB0)S(𝐱g𝐱ejn+1){μej𝐛(×𝐄1n+1)(𝐱ejn+1)\displaystyle-\frac{\Delta t}{2N_{p}}\sum_{j}\left(\mu_{ej}B_{0}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\left\{\mu_{ej}\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{n+1}\right)\left(\mathbf{x}_{ej}^{n+1}\right)\right.
+vejzn+1E1zn+1(𝐱ejn+1)+[E1yn+1(𝐱ejn+1)+vejzn+1B1xn+1(𝐱ejn+1)]κejn+1}.\displaystyle\left.+v_{ejz}^{n+1}E_{1z}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)+\left[E_{1y}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)+v_{ejz}^{n+1}B_{1x}^{n+1}\left(\mathbf{x}_{ej}^{n+1}\right)\right]\kappa_{ej}^{n+1}\right\}.

Therefore, formally, the perpendicular Ohm’s law can be expressed as

βe𝐄1n+1Δt2𝐛×(××𝐄1n+1)+βe𝐉iImp×𝐛+βep1,eImp=𝐛×(×𝐁1)βep1,eβe𝐉i×𝐛.\displaystyle\beta_{e}\mathbf{E}_{1\perp}^{n+1}-\frac{\Delta t}{2}\mathbf{b}\times\left(\nabla\times\nabla\times\mathbf{E}_{1}^{n+1}\right)+\beta_{e}\mathbf{J}_{i\perp}^{\text{Imp}}\times\mathbf{b}+\beta_{e}\nabla_{\perp}p_{1,e\perp}^{\text{Imp}}=-\mathbf{b}\times\left(\nabla\times\mathbf{B}_{1}^{*}\right)-\beta_{e}\nabla_{\perp}p_{1,e\perp}^{*}-\beta_{e}\mathbf{J}_{i\perp}^{*}\times\mathbf{b}. (82)

The implicit parallel Ampere’s law becomes

Δt2𝐛×(×𝐄1n+1)+βe(JezImp+JizImp)=𝐛×𝐁1βe(Jez+Jiz).\displaystyle\frac{\Delta t}{2}\mathbf{b}\cdot\nabla\times\left(\nabla\times\mathbf{E}_{1}^{n+1}\right)+\beta_{e}\left(J_{ez}^{\text{Imp}}+J_{iz}^{\text{Imp}}\right)={\mathbf{b}\cdot\nabla\times\mathbf{B}_{1}^{*}}-\beta_{e}\left(J_{ez}^{*}+J_{iz}^{*}\right). (83)

Here, to ensure a consistent order of accuracy in time, the Faraday’s law is also discretized using the second-order scheme

𝐁1n+1=𝐁1Δt2(×𝐄1n+1),\mathbf{B}_{1}^{n+1}=\mathbf{B}_{1}^{*}-\frac{\Delta t}{2}\left(\nabla\times\mathbf{E}_{1}^{n+1}\right), (84)

with 𝐁1=𝐁1n(×𝐄1n)Δt/2\mathbf{B}_{1}^{*}=\mathbf{B}_{1}^{n}-\left(\nabla\times\mathbf{E}_{1}^{n}\right){\Delta t}/{2}.

In practice, Eq. (82) and (83) are solved using an iterative method analogous to Eq. (13). By following a derivation similar to the one leading from Eq. (10) to Eq. (13), the corresponding iterative forms of the field equations are obtained.

1. The iterative perpendicular Ohm’s law

βe𝐄1k+1Δt2𝐛×(××𝐄1k+1)Δt2βe4TiTelnniTix(𝐱^×𝐛)𝐛(×𝐄1k+1)\displaystyle\beta_{e}\mathbf{E}_{1\perp}^{k+1}-\frac{\Delta t}{2}\mathbf{b}\times\left(\nabla\times\nabla\times\mathbf{E}_{1}^{k+1}\right)-\frac{\Delta t^{2}\beta_{e}}{4}\frac{T_{i}}{T_{e}}\frac{\partial lnn_{i}T_{i}}{\partial x}\left(\mathbf{\hat{x}}\times\mathbf{b}\right)\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{k+1}\right) (85)
+Δtβe2𝐄1k+1×𝐛ΔtβeB0[𝐛(×𝐄1k+1)]Δtβe2lnneTexE1yk+1\displaystyle+\frac{\Delta t\beta_{e}}{2}\mathbf{E}_{1\perp}^{k+1}\times\mathbf{b}-\frac{\Delta t\beta_{e}}{B_{0}}\nabla_{\perp}\left[\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{k+1}\right)\right]-\frac{\Delta t\beta_{e}}{2}\frac{\partial lnn_{e}T_{e}}{\partial x}\nabla_{\perp}E_{1y}^{k+1}
=𝐛×(×𝐁1)βep1,eβe𝐉i×𝐁0Δtβe2Np(𝐱^×𝐛)j(vijxn+1)2B1z(𝐱ijn+1)κijn+1S(𝐱g𝐱ijn+1)\displaystyle=-\mathbf{b}\times\left(\nabla\times\mathbf{B}_{1}^{*}\right)-\beta_{e}\nabla_{\perp}p_{1,e\perp}^{*}-\beta_{e}\mathbf{J}_{i\perp}^{*}\times\mathbf{B}_{0}-\frac{\Delta t\beta_{e}}{2N_{p}}\left(\mathbf{\hat{x}}\times\mathbf{b}\right)\sum_{j}\left(v_{ijx}^{n+1}\right)^{2}B_{1z}^{*}\left(\mathbf{x}_{ij}^{n+1}\right)\kappa_{ij}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)
(𝐱^×𝐛)Δt2βe4[TiTelnniTix𝐛(×𝐄1k)1Npj(vijxn+1)2𝐛(×𝐄1k)(𝐱ijn+1)κijn+1S(𝐱g𝐱ijn+1)]\displaystyle-\frac{\left(\mathbf{\hat{x}}\times\mathbf{b}\right)\Delta t^{2}\beta_{e}}{4}\left[\frac{T_{i}}{T_{e}}\frac{\partial lnn_{i}T_{i}}{\partial x}\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{k}\right)-\frac{1}{N_{p}}\sum_{j}\left(v_{ijx}^{n+1}\right)^{2}\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{k}\right)\left(\mathbf{x}_{ij}^{n+1}\right)\kappa_{ij}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\right]
+Δtβe2{𝐄1k1NpTeTij[𝐯ijn+1𝐄1k(𝐱ijn+1)]𝐯ijn+1S(𝐱g𝐱ijn+1)}×𝐛\displaystyle+\frac{\Delta t\beta_{e}}{2}\left\{\mathbf{E}_{1\perp}^{k}-\frac{1}{N_{p}}\frac{T_{e}}{T_{i}}\sum_{j}\left[\mathbf{v}_{ij\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{k}\left(\mathbf{x}_{ij}^{n+1}\right)\right]\mathbf{v}_{ij\perp}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\right\}\times\mathbf{b}
Δtβe{1B0[𝐛(×𝐄1k)]12Npj(μej2B0)𝐛(×𝐄1k)(𝐱ejn+1)S(𝐱g𝐱ejn+1)}\displaystyle-\Delta t\beta_{e}\left\{\frac{1}{B_{0}}\nabla_{\perp}\left[\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{k}\right)\right]-\frac{1}{2N_{p}}\nabla_{\perp}\sum_{j}\left(\mu_{ej}^{2}B_{0}\right)\mathbf{b}\cdot\left(\nabla\times\mathbf{E}_{1}^{k}\right)\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\right\}
Δtβe2[lnneTexE1yk1Npj(μejB0)E1yk(𝐱ejn+1)κejn+1S(𝐱g𝐱ejn+1)].\displaystyle-\frac{\Delta t\beta_{e}}{2}\left[\frac{\partial lnn_{e}T_{e}}{\partial x}\nabla_{\perp}E_{1y}^{k}-\frac{1}{N_{p}}\nabla_{\perp}\sum_{j}\left(\mu_{ej}B_{0}\right)E_{1y}^{k}\left(\mathbf{x}_{ej}^{n+1}\right)\kappa_{ej}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\right].

2. The iterative form of the implicit parallel Ampere’s law

Δt2𝐛×(×𝐄1k+1)+Δtβe2(mime+1)E1zk+1Δt2βe4𝐱^(×𝐄1k+1)(mimelnneTexTiTelnniTix)\displaystyle\frac{\Delta t}{2}\mathbf{b}\cdot\nabla\times\left(\nabla\times\mathbf{E}_{1}^{k+1}\right)+\frac{\Delta t\beta_{e}}{2}\left(\frac{m_{i}}{m_{e}}+1\right)E_{1z}^{k+1}-\frac{\Delta t^{2}\beta_{e}}{4}\mathbf{\hat{x}}\cdot\left(\nabla\times\mathbf{E}_{1}^{k+1}\right)\left(\frac{m_{i}}{m_{e}}\frac{\partial lnn_{e}T_{e}}{\partial x}-\frac{T_{i}}{T_{e}}\frac{\partial lnn_{i}T_{i}}{\partial x}\right) (86)
=𝐛×𝐁1βe(Jez+Jiz)Δtβe2Np[j(vejzn+1)2B1x(𝐱ejn+1)κejn+1S(𝐱g𝐱ejn+1)j(vijzn+1)2B1x(𝐱ijn+1)κijn+1S(𝐱g𝐱ijn+1)]\displaystyle=\mathbf{b}\cdot\nabla\times\mathbf{B}_{1}^{*}-\beta_{e}\left(J_{ez}^{*}+J_{iz}^{*}\right)-\frac{\Delta t\beta_{e}}{2N_{p}}\left[\sum_{j}\left(v_{ejz}^{n+1}\right)^{2}B_{1x}^{*}\left(\mathbf{x}_{ej}^{n+1}\right)\kappa_{ej}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)-\sum_{j}\left(v_{ijz}^{n+1}\right)^{2}B_{1x}^{*}\left(\mathbf{x}_{ij}^{n+1}\right)\kappa_{ij}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\right]
+Δtβe2[mimeE1zk1Npj(vejzn+1)2E1zk(𝐱ejn+1)S(𝐱g𝐱ejn+1)]+Δtβe2[E1zk1NpTeTij(vijzn+1)2E1zk(𝐱ijn+1)S(𝐱g𝐱ijn+1)]\displaystyle+\frac{\Delta t\beta_{e}}{2}\left[\frac{m_{i}}{m_{e}}E_{1z}^{k}-\frac{1}{N_{p}}\sum_{j}\left(v_{ejz}^{n+1}\right)^{2}E_{1z}^{k}\left(\mathbf{x}_{ej}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\right]+\frac{\Delta t\beta_{e}}{2}\left[E_{1z}^{k}-\frac{1}{N_{p}}\frac{T_{e}}{T_{i}}\sum_{j}\left(v_{ijz}^{n+1}\right)^{2}E_{1z}^{k}\left(\mathbf{x}_{ij}^{n+1}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\right]
Δt2βe4[mimelnneTex𝐱^(×𝐄1k)1Npj(vejzn+1)2𝐱^(×𝐄1k)(𝐱ejn+1)κejn+1S(𝐱g𝐱ejn+1)]\displaystyle-\frac{\Delta t^{2}\beta_{e}}{4}\left[\frac{m_{i}}{m_{e}}\frac{\partial lnn_{e}T_{e}}{\partial x}\mathbf{\hat{x}}\cdot\left(\nabla\times\mathbf{E}_{1}^{k}\right)-\frac{1}{N_{p}}\sum_{j}\left(v_{ejz}^{n+1}\right)^{2}\mathbf{\hat{x}}\cdot\left(\nabla\times\mathbf{E}_{1}^{k}\right)\left(\mathbf{x}_{ej}^{n+1}\right)\kappa_{ej}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ej}^{n+1}\right)\right]
+Δt2βe4[TiTelnniTix𝐱^(×𝐄1k)1Npj(vijzn+1)2𝐱^(×𝐄1k)(𝐱ijn+1)κijn+1S(𝐱g𝐱ijn+1)].\displaystyle+\frac{\Delta t^{2}\beta_{e}}{4}\left[\frac{T_{i}}{T_{e}}\frac{\partial lnn_{i}T_{i}}{\partial x}\mathbf{\hat{x}}\cdot\left(\nabla\times\mathbf{E}_{1}^{k}\right)-\frac{1}{N_{p}}\sum_{j}\left(v_{ijz}^{n+1}\right)^{2}\mathbf{\hat{x}}\cdot\left(\nabla\times\mathbf{E}_{1}^{k}\right)\left(\mathbf{x}_{ij}^{n+1}\right)\kappa_{ij}^{n+1}S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right)\right].

Equations (85) and (86) are employed to update the iterative electric field 𝐄1k+1\mathbf{E}_{1}^{k+1}. On the right-hand side of these equations, the particle summation terms involving 𝐄1k\mathbf{E}_{1}^{k} are paired with their corresponding approximations in the limit of sufficient particles and grids to illustrate the iterative structure of the solver. It should be noted that certain particle summation terms, such as jvijzn+1(𝐯ijn+1𝐄1k)S(𝐱g𝐱ijn+1)\sum_{j}v_{ijz}^{n+1}\left(\mathbf{v}_{ij\perp}^{n+1}\cdot\mathbf{E}_{1\perp}^{k}\right)S\left(\mathbf{x}_{g}-\mathbf{x}_{ij}^{n+1}\right), have been omitted in the written form of Eqs. (85) and (86) because their corresponding approximations evaluate to zero analytically. Nevertheless, in the actual implementation of the FIDES code, these terms are inherently retained, as the particle moments are accumulated monolithically rather than evaluated on a term-by-term basis.

In summary, the structure of this second-order semi-implicit scheme follows the same flow as that depicted in Fig. 1 for the implicit discretization scheme in section 2.2. The only difference lies in the specific expressions used for the particle weights and field equations, which are now replaced by their second-order counterparts. Specifically, the particle weights are advanced using Eqs. (75) and (76). The electric field is computed self-consistently from the perpendicular Ohm’s law (85) and the implicit parallel Ampere’s law (86), after which the magnetic field is updated using Faraday’s law in its second-order form (84).

4.2 Odd-even decoupling problem

The IAW simulations reveal a problem with the second-order scheme. As shown in Fig. 11 (a), it seems that the solutions at odd and even timesteps become decoupled, producing a sawtooth-like oscillation in the EztE_{z}-t diagram. This phenomenon is the so-called odd-even decoupling in computational fluid dynamics [21], though here it manifests in the time domain rather than in space. The odd-even decoupling problem compromises the accuracy of simulation results and can trigger additional numerical instabilities. We analyze its underlying mechanism below and propose targeted solutions.

Refer to caption
(a) Odd-even decoupling
Refer to caption
(b) After optimization
Figure 11: (a) The odd-even decoupling problem in the IAW simulation for the second-order scheme. (b) The same IAW simulation after applying the proposed three-point second-order scheme with a=0.01a=0.01 to advance electron weights. The first-order implicit scheme is used for initialization during the first 50 time steps. Here simulation parameters are nx=ny=2,nz=128,Np=256,ΩciΔt=0.01n_{x}=n_{y}=2,n_{z}=128,N_{p}=256,\Omega_{ci}\Delta t=0.01.The plasma parameters are βe=0.01,Ti/Te=0.25,kxρs=kyρs=0,kzρs=0.1\beta_{e}=0.01,T_{i}/T_{e}=0.25,k_{x}\rho_{s}=k_{y}\rho_{s}=0,k_{z}\rho_{s}=0.1. For clarity, the plotting interval in (a) is 25ΩciΔt25\Omega_{ci}\Delta t.

To illustrate the odd-even decoupling problem, we make the following simplifications for the IAW case.

(1) We restrict the discussion to a one-dimensional electrostatic configuration, where 𝐄1=E1z𝐳^\mathbf{E}_{1}=E_{1z}\hat{\mathbf{z}} aligns with the direction of the equilibrium magnetic field.

(2) Since the electron current contributes the most part of particle current, only electron weights and motions are considered. Specifically,

wewenΔt=12vezE1zn(zen),wen+1weΔt=12vezE1zn+1(zen+1).\displaystyle\frac{w_{e}^{*}-w_{e}^{n}}{\Delta t}=-\frac{1}{2}v_{ez}E_{1z}^{n}\left(z_{e}^{n}\right),~\frac{w_{e}^{n+1}-w_{e}^{*}}{\Delta t}=-\frac{1}{2}v_{ez}E_{1z}^{n+1}\left(z_{e}^{n+1}\right). (87)

The linear electron motion equation in the z direction is the same as Eq. (49). Therefore, we can get the intermediate electron weight wew_{e}^{*} advanced from wenw_{e}^{n},

we=we0Δt2vezE1z0(ze0)Δtvezm=1nE1zm(zem).w_{e}^{*}=w_{e}^{0}-\frac{\Delta t}{2}v_{ez}E_{1z}^{0}\left(z_{e}^{0}\right)-\Delta tv_{ez}\sum_{m=1}^{n}E_{1z}^{m}\left(z_{e}^{m}\right). (88)

The governing field equation is the implicit parallel Ampere’s law, which can be expressed as

Δt2Npj(vejz2)2E1zn+1(zejn+1)S(zgzejn+1)=1Npjvejz[wej0Δt2vejzE1z0(zej0)Δtvejzm=1nE1zm(zejm)]S(zgzejn+1).\displaystyle\frac{\Delta t}{2N_{p}}\sum_{j}\left(v_{ejz}^{2}\right)^{2}E_{1z}^{n+1}\left(z_{ej}^{n+1}\right)S\left(z_{g}-z_{ej}^{n+1}\right)=\frac{1}{N_{p}}\sum_{j}v_{ejz}\left[w_{ej}^{0}-\frac{\Delta t}{2}v_{ejz}E_{1z}^{0}\left(z_{ej}^{0}\right)-\Delta tv_{ejz}\sum_{m=1}^{n}E_{1z}^{m}\left(z_{ej}^{m}\right)\right]S\left(z_{g}-z_{ej}^{n+1}\right). (89)

For further derivation, we make the same assumptions (3)-(5) in section 3.2 and take the limit of infinite grid resolution, which leads to

(Δt2E~1z0vzw~e0)vzeikzvz(n+1)Δtfe0dvz+Δtm=1nE~1zmvz2eikzvz(n+1m)Δtfe0dvz+Δt2E~1zn+1vz2fe0dvz=0,\displaystyle\int\left(\frac{\Delta t}{2}\tilde{E}_{1z}^{0}v_{z}-\tilde{w}_{e}^{0}\right)v_{z}e^{-ik_{z}v_{z}\left(n+1\right)\Delta t}f_{e0}dv_{z}+\Delta t\sum_{m=1}^{n}\tilde{E}_{1z}^{m}\int v_{z}^{2}e^{-ik_{z}v_{z}\left(n+1-m\right)\Delta t}f_{e0}dv_{z}+\frac{\Delta t}{2}\tilde{E}_{1z}^{n+1}\int v_{z}^{2}f_{e0}dv_{z}=0, (90)

with fe0f_{e0} given by Eq. (57). The velocity integral in Eq. (90) can be calculated using the residue theorem,

12πmi/me+vz2exp[mevz22miikzvz(n+1m)Δt]dvz\displaystyle\frac{1}{\sqrt{2\pi m_{i}/m_{e}}}\int_{-\infty}^{+\infty}v_{z}^{2}exp\left[-\frac{m_{e}v_{z}^{2}}{2m_{i}}-ik_{z}v_{z}\left(n+1-m\right)\Delta t\right]dv_{z} (91)
=12πmi/meexp[kz2(n+1m)2Δt2mi2me]ikz(n+1m)Δtmime+ikz(n+1m)Δtmimevz2exp{me2mi[vz+ikz(n+1m)Δtmime]2}dvz\displaystyle=\frac{1}{\sqrt{2\pi m_{i}/m_{e}}}exp\left[-k_{z}^{2}\left(n+1-m\right)^{2}\Delta t^{2}\frac{m_{i}}{2m_{e}}\right]\int_{-\infty-ik_{z}\left(n+1-m\right)\Delta t\frac{m_{i}}{m_{e}}}^{+\infty-ik_{z}\left(n+1-m\right)\Delta t\frac{m_{i}}{m_{e}}}v_{z}^{2}exp\left\{-\frac{m_{e}}{2m_{i}}\left[v_{z}+ik_{z}\left(n+1-m\right)\Delta t\frac{m_{i}}{m_{e}}\right]^{2}\right\}dv_{z}
=mime[1kz2(n+1m)2Δt2mime]exp[kz2(n+1m)2Δt2mi2me].\displaystyle=\frac{m_{i}}{m_{e}}\left[1-k_{z}^{2}\left(n+1-m\right)^{2}\Delta t^{2}\frac{m_{i}}{m_{e}}\right]exp\left[-k_{z}^{2}\left(n+1-m\right)^{2}\Delta t^{2}\frac{m_{i}}{2m_{e}}\right].

Therefore, we can obtain a recurrence relation of E1z,kn+1E_{1z,k}^{n+1} from Eq. (90),

ikz(n+1)ekz2(n+1)2Δt2mi2mew~e0+12E~1z0ekz2(n+1)2Δt2mi2me[1kz2(n+1)2Δt2mime]\displaystyle ik_{z}(n+1)e^{-k_{z}^{2}(n+1)^{2}\Delta t^{2}\frac{m_{i}}{2m_{e}}}\tilde{w}_{e}^{0}+\frac{1}{2}\tilde{E}_{1z}^{0}e^{-k_{z}^{2}(n+1)^{2}\Delta t^{2}\frac{m_{i}}{2m_{e}}}\left[1-k_{z}^{2}(n+1)^{2}\Delta t^{2}\frac{m_{i}}{m_{e}}\right] (92)
+m=1nE~1zmekz2(n+1m)2Δt2mi2me[1kz2(n+1m)2Δt2mime]+12E~1zn+1=0.\displaystyle+\sum_{m=1}^{n}\tilde{E}_{1z}^{m}e^{-k_{z}^{2}(n+1-m)^{2}\Delta t^{2}\frac{m_{i}}{2m_{e}}}\left[1-k_{z}^{2}(n+1-m)^{2}\Delta t^{2}\frac{m_{i}}{m_{e}}\right]+\frac{1}{2}\tilde{E}_{1z}^{n+1}=0.

An explicit form of E~1zn+1\tilde{E}_{1z}^{n+1} is generally not available from the recurrence relation. However, an intuitive understanding can be gained when the time step nn is moderate and Δt\Delta t is sufficiently small such that kz2n2Δt2mi/me1k_{z}^{2}n^{2}\Delta t^{2}{m_{i}}/{m_{e}}\ll 1 holds. In this regime, the leading-order terms of the recurrence relation (92) yield

E~1z2n=E~1z0,E~1z2n+1=E~1z02ikzw~e0.\displaystyle\tilde{E}_{1z}^{2n}=\tilde{E}_{1z}^{0},\quad\tilde{E}_{1z}^{2n+1}=-\tilde{E}_{1z}^{0}-2ik_{z}\tilde{w}_{e}^{0}. (93)

The leading-order expression of E~1zn\tilde{E}_{1z}^{n} behaves as an alternating sequence determined by the parity of nn, which accounts for the observed odd-even decoupling in the IAW simulations. The time evolution of E~1zn\tilde{E}_{1z}^{n} in the order of O(kz2Δt2mi/me)O(k_{z}^{2}\Delta t^{2}m_{i}/m_{e}) is described by the higher-order terms of Eq. (92), which are not considered here.

To solve the odd-even decoupling problem, we generalize the preceding derivation. If the electron weight pushing equation is

wejn+1wejnΔt=vejz[aE1zn1(zejn1)+bE1zn(zejn)+cE1zn+1(zejn+1)],\frac{w_{ej}^{n+1}-w_{ej}^{n}}{\Delta t}=-v_{ejz}\left[aE_{1z}^{n-1}\left(z_{ej}^{n-1}\right)+bE_{1z}^{n}\left(z_{ej}^{n}\right)+cE_{1z}^{n+1}\left(z_{ej}^{n+1}\right)\right], (94)

the leading-order terms of the implicit parallel Ampere’s law for kz2n2Δt2mi/me1k_{z}^{2}n^{2}\Delta t^{2}{m_{i}}/{m_{e}}\ll 1 can be simplified as

ikzw~e0+aE~1zn1+bE~1zn+cE~1zn+1=0,ik_{z}\tilde{w}_{e}^{0}+a\tilde{E}_{1z}^{n-1}+b\tilde{E}_{1z}^{n}+c\tilde{E}_{1z}^{n+1}=0, (95)

which leads to the following two representative cases.

1. The first-order implicit scheme (a=0,b=0,c=1)(a=0,b=0,c=1). We can get E~1zn=ikzw~e0\tilde{E}_{1z}^{n}=-ik_{z}\tilde{w}_{e}^{0}, which can explain why the implicit discretization scheme doesn’t encounter the odd-even decoupling problem. Motivated by this, one may use the first-order implicit scheme during initialization to connect odd and even sequences. Numerical experiments confirms that although the odd-even decoupling oscillation persists, its amplitude is significantly reduced.

2. The second-order scheme with three points (a(0,0.25),b=0.52a,c=0.5+a)(a\in(0,0.25),b=0.5-2a,c=0.5+a). The leading-order solution takes the form

E~1zn={1r1r2[(E~1z0+ikzw~e0)(r1n+1r2n+1)a0.5+aikzw~e0(r1nr2n)]ikzw~e0,a116,[(E~1z0+ikzw~e0)+n(E~1z0+43ikzw~e0)](13)nikzw~e0,a=116,\tilde{E}_{1z}^{n}=\begin{cases}\frac{1}{r_{1}-r_{2}}\left[\left(\tilde{E}_{1z}^{0}+ik_{z}\tilde{w}_{e}^{0}\right)\left(r_{1}^{n+1}-r_{2}^{n+1}\right)-\frac{a}{0.5+a}ik_{z}\tilde{w}_{e}^{0}\left(r_{1}^{n}-r_{2}^{n}\right)\right]-ik_{z}\tilde{w}_{e}^{0},&a\neq\frac{1}{16},\\ {\left[\left(\tilde{E}_{1z}^{0}+ik_{z}\tilde{w}_{e}^{0}\right)+n\left(\tilde{E}_{1z}^{0}+\frac{4}{3}ik_{z}\tilde{w}_{e}^{0}\right)\right]\left(-\frac{1}{3}\right)^{n}-ik_{z}\tilde{w}_{e}^{0},}&a=\frac{1}{16},\end{cases} (96)

where r1,2=(4a1±116a)/2(1+2a)r_{1,2}=\left(4a-1\pm\sqrt{1-16a}\right)/2(1+2a) are eigenvalues of Eq. (95). Since |r1,2|<1|r_{1,2}|<1, this scheme numerically damps odd-even decoupling oscillations. In practice, choosing a1a\ll 1 can suppress the odd-even decoupling oscillations while preserving the accuracy of the underlying second-order scheme.

Refer to caption
(a) Odd-even decoupling
Refer to caption
(b) After optimization
Figure 12: (a) The odd-even decoupling problem observed in the ITG simulation when using the second-order scheme. (b) The same ITG simulation after applying the proposed solution, which uses the first-order implicit scheme for the first 5050 time steps and then employs the three-point second-order scheme with a=0.01a=0.01 to advance electron weights in the running stage. Simulation parameters are nx=ny=32,nz=64,Np=128,ΩciΔt=0.1n_{x}=n_{y}=32,n_{z}=64,N_{p}=128,\Omega_{ci}\Delta t=0.1. Plasma parameters are βe=0.001,Ti/Te=1,κnρs=0,κtiρs=0.3,κteρs=0,kxρs=0.2,kyρs=0.4,kzρs=0.01\beta_{e}=0.001,T_{i}/T_{e}=1,\kappa_{n}\rho_{s}=0,\kappa_{ti}\rho_{s}=-0.3,\kappa_{te}\rho_{s}=0,k_{x}\rho_{s}=0.2,k_{y}\rho_{s}=0.4,k_{z}\rho_{s}=0.01. For clarity, the plotting interval in (a) is 25ΩciΔt25\Omega_{ci}\Delta t.

In the following simulations, the three-point scheme with the typical parameter a=0.01a=0.01 is employed for advancing the electron weights. Together with the first-order implicit scheme used during the initialization stage, this combination effectively resolves the odd-even decoupling problem, as demonstrated in Fig. 11 (b). Notably, the proposed method is not limited to the IAW simulations. The key to overcoming the odd-even decoupling problem is to establish a connection between odd and even time steps. We have verified that the method also eliminates this decoupling successfully in other scenarios, such as the ITG simulations shown in Fig. 12.

4.3 Numerical results

Refer to caption
(a) Real frequency
Refer to caption
(b) Growth rate
Figure 13: The timestep convergence study for ITG simulations between the first-order implicit and second-order semi-implicit schemes. Here simulation parameters are nx=ny=32,nz=64,Np=128n_{x}=n_{y}=32,n_{z}=64,N_{p}=128. The plasma parameters are βe=0.001,κnρs=0,κtiρs=0.3,κteρs=0,kxρs=0.2,kyρs=0.4,kzρs=0.01\beta_{e}=0.001,\kappa_{n}\rho_{s}=0,\kappa_{ti}\rho_{s}=-0.3,\kappa_{te}\rho_{s}=0,k_{x}\rho_{s}=0.2,k_{y}\rho_{s}=0.4,k_{z}\rho_{s}=0.01.
Refer to caption
(a) Real frequency
Refer to caption
(b) Damping rate
Figure 14: Comparison of IAW simulation results between the first-order (ΩciΔt=0.01\Omega_{ci}\Delta t=0.01) and second-order (ΩciΔt=0.05\Omega_{ci}\Delta t=0.05) schemes. All other parameters are consistent with those in Fig. 7.
Refer to caption
(a) Real frequency
Refer to caption
(b) Growth rate
Figure 15: ITG simulation results for the first-order (ΩciΔt=0.01\Omega_{ci}\Delta t=0.01) and second-order (ΩciΔt=0.1\Omega_{ci}\Delta t=0.1) schemes, with other parameters as in Fig. 10.

With the odd-even decoupling problem resolved, a clean comparison of the first-order implicit and second-order semi-implicit schemes becomes feasible. Figure 13 presents a timestep refinement study of the ITG simulations for the two schemes. The second-order scheme accurately reproduces the real frequency and growth rate over the entire range of tested timestep (ΩciΔt0.2)(\Omega_{ci}\Delta t\leq 0.2). In contrast, while the first-order implicit scheme yields accurate real frequencies, it requires a sufficiently small timestep (ΩciΔt0.01)(\Omega_{ci}\Delta t\leq 0.01) to achieve good agreement for the growth rate. These results confirm the expected order of accuracy and clearly demonstrate the advantage of the second-order semi-implicit scheme.

The robustness of the second-order semi-implicit scheme is further illustrated in Figs. 14 and 15 for different parameter regimes. In both the IAW and ITG cases, the second-order scheme achieves more accurate damping rates (for IAW) and growth rates (for ITG) even with a larger timestep Δt\Delta t compared to the first-order implicit scheme. These results confirm that the second-order scheme effectively reduces numerical damping inherent in the implicit advancement.

4.4 Discussion

In this work, three numerical schemes are presented.

1. Explicit discretization scheme (conventional method). This scheme is based on the generalized perpendicular and parallel Ohm’s law, given by Eqs. (21) and (47).

2. First-order implicit discretization scheme. It advances electron weights via an implicit EE_{\|} scheme (7), and employs the implicit parallel Ampere’s law (13) and perpendicular Ohm’s law (21) as electric field equations.

3. Second-order semi-implicit discretization scheme. This scheme advances particle weights with the second-order semi-implicit scheme, Eqs. (75) and (76). The field equations are the implicit parallel Ampere’s law and perpendicular Ohm’s law in the compatible second-order form, as illustrated in Eqs. (85) and (86).

The first-order implicit discretization scheme is proposed to better mitigate the cancellation problem in the parallel Ohm’s law. A key feature is that the implicit parallel Ampere’s law employs the first-order velocity moment of the electron weights. Analytical analysis and numerical experiments confirm that this scheme mitigates the cancellation problem. Specifically, for both the IAW and ITG test cases, the real frequency is accurately obtained over a wide range of Δt\Delta t. However, the damping rate (for IAW) or growth rate (for ITG) remains inaccurate due to the numerical damping inherent in the implicit pushing.

To overcome this limitation, we develop the second-order semi-implicit scheme. It retains the implicit parallel Ampere’s law and perpendicular Ohm’s law as field equations, but advances particle weights using a second-order semi-implicit scheme. Numerical tests demonstrate that this scheme accurately captures both the real frequency and the growth/damping rate over a large range of Δt\Delta t. Compared with the conventional scheme, the second-order semi-implicit scheme overcomes the cancellation problem in a comprehensive manner.

For simulations where the cancellation problem is severe, the second-order semi-implicit scheme achieves accurate results with the lowest computational cost among the three schemes. However, this scheme is considerably more complex to implement than the other two.

5 Conclusion

In this paper, we have developed the full-kinetic ion drift-kinetic electron simulation (FIDES) code. We present two numerical schemes and compare their performance in both high- and low-frequency cases. In the implicit discretization scheme, the electric field is determined by the implicit parallel Ampere’s law and implicit perpendicular Ohm’s law. The formulation of the implicit parallel Ampere’s law requires an implicit EE_{\|} scheme for advancing electron weight. To suppress unphysical high-frequency instabilities with perpendicular electric fields, an implicit 𝐄\mathbf{E}_{\perp} scheme is used for ion weights. Benchmarks against perpendicular and parallel waves confirm that FIDES can correctly simulate high-frequency wave behavior. The low-frequency IAW and ITG simulations demonstrate that the implicit parallel Ampere’s law mitigates the cancellation problem more effectively than the conventional parallel Ohm’s law. The parallel Ohm’s law, with its higher-order moment of electron weights and the spatial gradient \nabla_{\|}, complicates the numerical cancellation between E1E_{1\|} and δpe-\nabla_{\|}\delta p_{e\|}. To achieve more accurate wave dynamics, we further develop a second-order scheme to reduce the numerical damping of the original implicit method. However, this scheme introduces the odd-even decoupling problem in time domain. To address this, we implement an integrated approach which uses the first-order implicit scheme in the initialization stage and advances particle weights via the second-order scheme with three points. This strategy can effectively suppress the odd-even decoupling oscillations while preserving the accuracy of the second-order scheme.

In closing, we emphasize that the scope of this paper is limited to the presentation of the new algorithm and the analysis of its linear characteristics. A comprehensive study for the nonlinear performance of the scheme will be reported in the future.

Code availability

The FIDES source code is archived at Zenodo with the DOI https://doi.org/10.5281/zenodo.19605309. The repository is presently under restricted access. Access will be granted immediately upon reasonable request directed to the corresponding author.

Acknowledgements

This work was supported by the National MCF Energy R & D Program of China under Grant No.2024YFE03230300, National Natural Science Foundation of China under Grant No.12375213, 12125502 and 12335014, Natural Science Foundation of Sichuan Province under Grant No.2025ZNSFSC0061, China National Nuclear Corporation ‘Young Talents’ Project No.2024-QNYC-02 and the Innovation Program of Southwestern Institute of Physics (202301XWCX001). This manuscript was first submitted to the Journal of Computational Physics on 21 December 2025.

References

  • [1] H. Chen, L. Chen, F. Zonca, J. Li, M. Xu, Validity of gyrokinetic theory in magnetized plasmas, Comm. Physics 7 (2024) 261.
  • [2] E. A. Frieman, L. Chen, Nonlinear gyrokinetic equations for low-frequency electromagnetic waves in general plasma equilibria, Phys. Fluids 25 (1982) 502.
  • [3] W. W. Lee, Gyrokinetic approach in particle simulation, Phys. Fluids 26 (1983) 556.
  • [4] W. W. Lee, Gyrokinetic particle simulation model, J. Comput. Phys. 72 (1987) 243.
  • [5] Y. Chen, S. Parker, A delta-f particle method for gyrokinetic simulations with kinetic electrons and electromagnetic perturbations, J. Comput. Phys. 189 (2003) 463.
  • [6] Y. Chen, S. Parker, Electromagnetic gyrokinetic delta-f particle-in-cell turbulence simulation with realistic equilibrium profiles and geometry, J. Comput. Phys. 220 (2007) 839.
  • [7] F. I. Parra, P. J. Catto, Limitations of gyrokinetics on transport time scales, Plasma Phys. Control. Fusion 50 (2008) 065014.
  • [8] Y. Chen, S. Parker, Particle-in-cell simulation with Vlasov ions and drift kinetic electrons, Phys. Plasmas 16 (2009) 052305.
  • [9] J. Cheng, S. Parker, Y. Chen, D. Uzdensky, A second-order semi-implicit delta-f method for hybrid simulation, J. Comput. Phys. 245 (2013) 364.
  • [10] L. Chen, H. Chen, F. Zonca, Y. Lin, A gyrokinetic simulation model for low frequency electromagnetic fluctuations in magnetized plasmas, Sci. China-Phys. Mech. Astron. 64 (2021) 245211.
  • [11] H. Chen, L. Chen, E. Viezzer, M. Garcia-Munoz, J. Li, On gyrokinetic-fluid model for electromagnetic fluctuations in magnetized plasmas, Plasma Phys. Control. Fusion 65 (2023) 064003.
  • [12] S. E. Parker, W. Lee, A fully nonlinear characteristic method for gyrokinetic simulation, Phys. Fluids B 5 (1993) 77.
  • [13] Y. Chen, S. Parker, Fluid electrons with kinetic closure for long wavelength energetic particles driven modes, Phys. Plasmas 18 (2011) 5.
  • [14] H. Chen, On locating the zeros and poles of a meromorphic function, J. Comput. Appl. Math. 402 (2022) 113796.
  • [15] H. Chen, L. Chen, Gyrokinetic theory of low-frequency electromagnetic waves in finite-beta anisotropic plasmas, Phys. Plasmas 28 (2021) 052103.
  • [16] Z. Li, H. Chen, Z. Gao, W. Chen, A kinetic CMA diagram, Nucl. Fusion 65 (2025) 056022.
  • [17] J. Cummings, Gyrokinetic simulation of finite-beta and self-generated sheared-flow effects on pressure-gradient-driven instabilities, Ph.D. Thesis, Princeton University, 1994.
  • [18] Y. Chen, S. Parker, Gyrokinetic turbulence simulations with kinetic electrons, Phys. Plasmas 8 (2001) 2095.
  • [19] M. Raeth, K. Hallatschek, High-frequency nongyrokinetic turbulence at tokamak edge parameters, Phys. Rev. Lett. 133 (2024) 195101.
  • [20] M. Raeth, K. Hallatschek, K. Kormann, Simulation of ion temperature gradient driven modes with 6D kinetic Vlasov code, Phys. Plasmas 32 (2024) 042101.
  • [21] S. Patankar, Numerical Heat Transfer and Fluid Flow, CRC Press, 1980.