Discrete Velocity Method (DVM)
GUERNICA discretizes velocity space using the discrete velocity method (DVM). In this approach, the continuous velocity variable is replaced by a finite set of discrete velocities, and the kinetic equation is solved independently at each velocity point, with coupling introduced only through collision operators.
This section describes the velocity discretization, quadrature, and resulting semi-discrete form of the kinetic equation. Configuration-space discretization using DG is treated separately.
Velocity-space discretization
The continuous velocity space is truncated to a bounded Cartesian domain,
and discretized using a uniform tensor-product grid in each velocity direction.
The discrete velocities are denoted by
with constant spacings \(\Delta v_x\), \(\Delta v_y\), and \(\Delta v_z\). The total number of discrete velocities is
While the grid is uniform in each direction, the spacings in different directions need not be equal.
Velocity-domain truncation
The velocity bounds are chosen such that the support of the distribution function is well contained within \(\mathcal{V}\). In practice, this corresponds to selecting bounds several thermal speeds away from the bulk flow, typically
though the appropriate choice depends on the local plasma and neutral conditions.
Truncation error is controlled by increasing the velocity-domain extent rather than by modifying the quadrature or grid structure.
Discrete kinetic equation
With the DVM, the distribution function is represented as
For each discrete velocity \(\mathbf{v}_j\), the kinetic equation reduces to a scalar transport equation in configuration space,
where \(R_j[f_n]\) denotes the collision and source operators evaluated at \(\mathbf{v} = \mathbf{v}_j\).
The spatial transport operator acts independently for each discrete velocity, while coupling across velocity space enters exclusively through collision operators.
Velocity-space quadrature
Velocity integrals appearing in macroscopic moments and collision operators are approximated using Simpson–Cotes quadrature on the uniform Cartesian grid.
A generic velocity integral is approximated as
where the quadrature weights \(w_j\) are given by the tensor product of one-dimensional Simpson–Cotes weights in each velocity direction.
This choice is consistent with the uniform grid and provides improved accuracy over midpoint or trapezoidal rules without modifying the underlying velocity discretization.
Macroscopic moments (discrete form)
Macroscopic neutral quantities are computed from the discrete distribution using the same velocity quadrature. The primary moments evaluated are:
The bulk velocity and temperature are recovered as
These discrete moments are used consistently throughout the solver, including in the construction of BGK equilibrium distributions.
Implementation in GUERNICA
Velocity integration and moments
VelocityIntegrate.hxx/VelocityIntegrate.cxx
All velocity-space integrations use the same Simpson–Cotes weights that define the DVM, ensuring consistency between transport, collisions, and diagnostics.
Motivation for a uniform Cartesian grid
The choice of a uniform Cartesian velocity grid is motivated by several considerations:
- Simplicity and robustness of quadrature
- Straightforward computation of velocity moments
- Compatibility with matrix-free, element-local loops
- Efficient evaluation of convolution-type operators
Most importantly, this structure enables FFT-based acceleration of the charge exchange operator, which relies on uniform spacing and tensor-product structure in velocity space.
Coupling to collision operators
In the DVM formulation:
- Local collision operators (e.g., ionization) are applied pointwise in velocity space.
- Global collision operators (e.g., charge exchange, BGK) introduce coupling across velocity space through discrete velocity integrals or convolutions.
The numerical treatment of these operators is described in detail in the Collision Operators section.
Relationship to configuration-space discretization
The DVM produces a system of transport equations indexed by discrete velocity. Each of these equations is discretized in configuration space using the discontinuous Galerkin method.
From an implementation perspective, this results in:
- identical DG operators applied independently for each velocity, and
- collision operators that couple these velocity-indexed fields.
The DG discretization and its matrix-free realization are described in the next section.