This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Hermite spectral method for multi-species Boltzmann equation

Ruo Li,  Yixiao Lu,  Yanli Wang,  Haoxuan Xu CAPT, LMAM & School of Mathematical Sciences, Peking University, Beijing, China, email: rli@math.pku.edu.cn.HEDPS, Center for Applied Physics and Technology & School of Mathematical Sciences, Peking University, Beijing, China, 100871, email: luyixiao@pku.edu.cn.Beijing Computational Science Research Center, email: ylwang@csrc.ac.cn.School of Mathematical Sciences, Peking University, Beijing, China, 100871, email: xhxxhx@pku.edu.cn.
Abstract

We introduce a numerical scheme for the full multi-species Boltzmann equation based on Hermite spectral method. With the proper choice of expansion centers for different species, a practical algorithm is derived to evaluate the complicated multi-species binary collision operator. New collision models are built by combining the quadratic collision model and the simple BGK collision model under the framework of the Hermite spectral method, which enables us to balance the computational cost and accuracy. Several numerical experiments are implemented to validate the dramatic efficiency of this new Hermite spectral method. Moreover, we can handle the problems with as many as 100 species, which is far beyond the capability of the state-of-art algorithms.
Keywords: multi-species Boltzmann equation; multi-species binary collision operator; Hermite spectral method

1 Introduction

For rarefied gas flows where the molecular mean free path is comparable to the characteristic length, the continuum-fluid models such as Euler equations and Navier-Stokes equations are no longer accurate. The Boltzmann equation is an important model to study rarefied gas dynamics, which uses the distribution function to govern the dilute gas behavior at the mesoscopic scale. Gas mixtures with species diffusion, which play an essential role in the evaporation/condensation process, could also be described by the multi-species Boltzmann equation. For each species of the gases, it is represented by a distribution function f(i)(t,𝒙,𝒗)f^{(i)}(t,\boldsymbol{x},\boldsymbol{v}), where tt is time, 𝒙\boldsymbol{x} is the physical space, 𝒗\boldsymbol{v} is the particle velocity space, and (i)(i) represents the kind of species. Thus, the multi-species Boltzmann equation, which describes a many-particle system comprised of a mixture of ss species, has the form below [7, 17]

f([)i]t+𝒗𝒙f([)i]=j=1s𝒬([)ij][f([)i],f([)j]](𝒗),i=1,2,,s,\frac{\partial{f^{([)}i]}}{\partial{t}}+\boldsymbol{v}\cdot\nabla_{\boldsymbol{x}}f^{([)}i]=\sum_{j=1}^{s}\mathcal{Q}^{([)}ij][f^{([)}i],f^{([)}j]](\boldsymbol{v}),\quad i=1,2,\cdots,s, (1.1)

where 𝒬([)ij]\mathcal{Q}^{([)}ij] is the collision operator that models binary collisions between ii-th and jj-th species:

𝒬([)ij][f([)i],f([)j]](𝒗)=3S2Bij(|𝒗𝒗|,ς)[f([)i](𝒗)f([)j](𝒗)f([)i](𝒗)f([)j](𝒗)]dςd𝒗,\begin{split}&\mathcal{Q}^{([)}ij][f^{([)}i],f^{([)}j]](\boldsymbol{v})=\int_{\mathbb{R}^{3}}\int_{S^{2}}B_{ij}(|\boldsymbol{v}-\boldsymbol{v}_{\ast}|,\varsigma)\left[f^{([)}i](\boldsymbol{v}^{\prime})f^{([)}j](\boldsymbol{v}^{\prime}_{\ast})-f^{([)}i](\boldsymbol{v})f^{([)}j](\boldsymbol{v}_{\ast})\right]\mathrm{d}\varsigma\mathrm{d}\boldsymbol{v}_{\ast},\end{split} (1.2)

During the collisions, the momentum and energy are conserved. (𝒗,𝒗)(\boldsymbol{v},\boldsymbol{v}_{\ast}) and (𝒗,𝒗)(\boldsymbol{v}^{\prime},\boldsymbol{v}^{\prime}_{\ast}) denote the pre-collision and post-collision velocity pairs satisfying

{𝒗=m([)i]𝒗+m([)j]𝒗m([)i]+m([)j]+m([)j]m([)i]+m([)j]|𝒗𝒗|ς,𝒗=m([)i]𝒗+m([)j]𝒗m([)i]+m([)j]m([)i]m([)i]+m([)j]|𝒗𝒗|ς,\left\{\begin{array}[]{l}\boldsymbol{v}^{\prime}=\frac{m^{([)}i]\boldsymbol{v}+m^{([)}j]\boldsymbol{v}_{\ast}}{m^{([)}i]+m^{([)}j]}+\frac{m^{([)}j]}{m^{([)}i]+m^{([)}j]}|\boldsymbol{v}-\boldsymbol{v}_{\ast}|\varsigma,\\ \boldsymbol{v}^{\prime}_{\ast}=\frac{m^{([)}i]\boldsymbol{v}+m^{([)}j]\boldsymbol{v}_{\ast}}{m^{([)}i]+m^{([)}j]}-\frac{m^{([)}i]}{m^{([)}i]+m^{([)}j]}|\boldsymbol{v}-\boldsymbol{v}_{\ast}|\varsigma,\end{array}\right. (1.3)

where ς\varsigma is a unit vector indicating the direction of the post-collision relative velocity, and m([)i],m([)j]m^{([)}i],m^{([)}j] are the mass of particles of ii-th and jj-th species respectively.

The collision kernel BijB_{ij} in (1.1) characterizes the interaction between the particles, which could be determined by the classical scattering theory based on the interaction potential as

Bij(|𝒗𝒗|,ς)=|𝒗𝒗|bijsinχ|dbijdχ|,χ=arccos(ς(𝒗𝒗)|𝒗𝒗|),B_{ij}(|\boldsymbol{v}-\boldsymbol{v}_{\ast}|,\varsigma)=|\boldsymbol{v}-\boldsymbol{v}_{\ast}|\frac{b_{ij}}{\sin\chi}\left|\frac{\mathrm{d}b_{ij}}{\mathrm{d}\chi}\right|,\qquad\chi=\arccos\left(\frac{\varsigma\cdot(\boldsymbol{v}-\boldsymbol{v}_{\ast})}{|\boldsymbol{v}-\boldsymbol{v}_{\ast}|}\right), (1.4)

with χ\chi the deviation angle between 𝒗𝒗\boldsymbol{v}-\boldsymbol{v}_{\ast} and 𝒗𝒗\boldsymbol{v}^{\prime}-\boldsymbol{v}_{\ast}^{\prime}, and bijb_{ij} the impact factor [21]. For the multi-species Boltzmann equation, the most difficult part lies in the binary collision term due to its complex quadratic form and high-dimensional integral. Several collision models are introduced, such as the variable soft sphere model (VSS) [24] by assuming

χ=2cos1[(bij/dij)1/αij]\chi=2\cos^{-1}\left[(b_{ij}/d_{ij})^{1/\alpha_{ij}}\right] (1.5)

where dijd_{ij} is the diameter and αij\alpha_{ij} is the scattering parameter. For the diameter dijd_{ij}, we choose the same as in [21], which is borrowed from [2, Eq. (4.79)] as

dij=dref,ij[(2kBTref,ijμij|𝒗𝒗|2)ωij0.51Γ(2.5ωij)]1/2d_{ij}=d_{{\rm ref},ij}\left[\left(\frac{2k_{B}T_{{\rm ref},ij}}{\mu_{ij}|\boldsymbol{v}-\boldsymbol{v}_{\ast}|^{2}}\right)^{\omega_{ij}-0.5}\frac{1}{\Gamma(2.5-\omega_{ij})}\right]^{1/2} (1.6)

with μij=m([)i]m([)j]m([)i]+m([)j]\mu_{ij}=\frac{m^{([)}i]m^{([)}j]}{m^{([)}i]+m^{([)}j]}, Γ\Gamma the Gamma function, ωij\omega_{ij} the viscosity index, and dref,ij,Tref,ijd_{{\rm ref},ij},T_{{\rm ref},ij} are the reference diameter and temperature. Particularly, we could obtain the variable hard sphere model (VHS) when αij=1\alpha_{ij}=1 and 0.5ωij10.5\leqslant\omega_{ij}\leqslant 1 (especially, the Maxwell molecules and hard sphere model (HS) are corresponding to ω=1\omega=1 and ω=0.5\omega=0.5 respectively); and the VSS model when 1<αij21<\alpha_{ij}\leqslant 2 and 0.5ωij10.5\leqslant\omega_{ij}\leqslant 1. It is full of difficulty in numerically dealing with the binary collision term, especially for the VSS model, due to its extremely complicated form of integral.

For now, several numerical methods have been proposed to solve the multi-species Boltzmann equation. By stochastically modelling the binary interactions, the Direct Simulation Monte Carlo (DSMC) method [2] is widely used in the simulation of the Boltzmann equation. DSMC method is efficient in the highly-rarefied gas flows but does not work well in the unsteady-state problems due to its stochastical noise. In recent years, research on the deterministic methods has made great progress. Discrete velocity method (DVM) [13, 28] is a classical deterministic method. However, low efficiency of DVM has greatly limited its usage [32]. Spectral methods such as Fourier spectral method [33, 31, 10] have made great success in the simulation of the Boltzmann equation, and then, it has been extended to the multi-species Boltzmann equations [21, 36]. Another important spectral method is the Hermite spectral method [12, 35], where the Hermite polynomials are utilized as the basis functions to approximate the distribution function. An asymptotic-preserving scheme for the two-species binary collisional kinetic system was proposed in [11]. A comprehensive review of these methods can be referred to [8]. Another important method is the moment method, which was firstly proposed by Grad [14] in 1949. However, the non-hyperbolicity (even near the Maxwellian) of the moment equation led by Grad’s method, has blocked the its development. Recently, several regularization methods [3, 23] have been proposed to derive the globally hyperbolic moment systems.

In this paper, we are focusing on the Hermite spectral method. Since the Maxwellian is the steady-state solution of the Boltzmann equation, it is natural to consider expanding the distribution function with Hermite polynomials, whose weight function is just the Maxwellian. Another advantage of the Hermite spectral method is that several macroscopic variables such as the density, velocity, temperature, shear stress, and heat flux could be expressed by the expansion coefficients of the first few orders under the framework of the Hermite expansions. Recently, an algorithm to reduce the computational cost of approximating the binary collision term is proposed in [35], which is achieved by exactly calculating the expansion coefficients of the quadratic collision model and building new collision models through combining the quadratic collision term and the simplfied collision models such as the BGK model. This method is verified to make great success in the simulation of rarefied gas [20], and is soon extended to the field of the collisional plasma [27, 26].

Following similar lines, we develop the Hermite spectral method for the multi-species Boltzmann equation. Distribution functions of each species are expanded with the Hermite basis functions, with the expansion center in the basis function chosen differently for different species. We first simplify the complicated quadratic collision models, where the expansion centers are decided by the macroscopic velocity, the average temperature, and the mass of each species. Following the techniques in [35, 27], we will derive the algorithm to calculate the expansion coefficients of the binary collision models under the framework of the Hermite expansions. The different expansion centers for different species will make this calculation much easier. Moreover, the choice of the expansion centers makes the expansion coefficients of the collision models only depend on the mass ratio of the two particles, which also could be pre-computed and only need to be computed once. To reduce the computational cost of this complicated binary collision model, new collision models are built by combining the quadratic collision models and the simple multi-species BGK model [22], which enables us to obtain a high-order approximation with low computational cost and this advantage is also verified in the numerical experiments. The time-splitting scheme is utilized to deal with the convection term and the collision term separately, where the convection term is solved similarly as in [20, 4] with the standard finite volume method. With the new collision model in the collision step, the total computational cost to approximate one collision term is greatly reduced, which is about 𝒪(M09+M3)\mathcal{O}(M_{0}^{9}+M^{3}), where M0M_{0} and MM are the length of the binary collision part and the order of Hermite expansion, respectively.

In the numerical experiments, the test for the exact Krook-Wu solution [25] validates the correctness of this new numerical method. The simulations are implemented for one-dimensional benchmark problems, including Couette flow and Fourier heat transfer, and the two-dimensional lid-driven cavity flow. To further verify the accuracy and efficiency of this Hermite spectral method, we finally implement a 100-species Krook-Wu solution with tolerable costs of time and memory space, where the number of species can be hardly handled by most of the methods nowadays.

The rest of this paper is organized as follows. In Sec. 2, the multi-species Boltzmann equation and the Hermite spectral method are introduced. The numerical method to calculate the expansion coefficients of the quadratic collision term in the framework of the Hermite spectral method is shown in Sec. 3, and the algorithm to build the new collision model is also presented in this section. The discussion of the moment equations and the description of the whole numerical scheme is given in Sec. 4. The numerical experiments are presented in Sec. 5, with some concluding remarks in Sec. 6. Some supplementary contents are presented in App. 7.

2 Preliminaries

For easier computation, we follow the similar nodimensionalization as in [21] to scale the variables as

𝒙^=𝒙x0,𝒗^=𝒗u0,t^=tx0/u0,m^([)i]=m([)i]m0,f^([)i]=f([)i]n0/u03,\hat{\boldsymbol{x}}=\frac{\boldsymbol{x}}{x_{0}},\qquad\hat{\boldsymbol{v}}=\frac{\boldsymbol{v}}{u_{0}},\qquad\hat{t}=\frac{t}{x_{0}/u_{0}},\qquad\hat{m}^{([)}i]=\frac{m^{([)}i]}{m_{0}},\qquad\hat{f}^{([)}i]=\frac{f^{([)}i]}{n_{0}/u_{0}^{3}}, (2.1)

where x0,n0,T0x_{0},n_{0},T_{0} and m0m_{0} are the characteristic length, number density, temperature and mass, with u0u_{0} the character velocity defined as u0=kBT0/m0u_{0}=\sqrt{k_{B}T_{0}/m_{0}}.

2.1 Multi-species Boltzmann equation

Substituting the nondimensionalization into the Boltzmann equation (1.1), we derive the dimensionless Boltzmann equation as (dropping ^\hat{} for simplicity)

f([)i]t+𝒗𝒙f([)i]=j=1s1Knij𝒬([)ij][f([)i],f([)j]],\frac{\partial{f^{([)}i]}}{\partial{t}}+\boldsymbol{v}\cdot\nabla_{\boldsymbol{x}}f^{([)}i]=\sum_{j=1}^{s}\frac{1}{{\rm Kn}_{ij}}\mathcal{Q}^{([)}ij][f^{([)}i],f^{([)}j]], (2.2)

where the collision term 𝒬([)ij][f([)i],f([)j]]\mathcal{Q}^{([)}ij][f^{([)}i],f^{([)}j]] is simplified as

𝒬([)ij]=3S2Bij(|𝒗𝒗|,ς)[f([)i](𝒗)f([)j](𝒗)f([)i](𝒗)f([)j](𝒗)]dςd𝒗.\mathcal{Q}^{([)}ij]=\int_{\mathbb{R}^{3}}\int_{S^{2}}B_{ij}(|\boldsymbol{v}-\boldsymbol{v}_{\ast}|,\varsigma)\left[f^{([)}i](\boldsymbol{v}^{\prime})f^{([)}j](\boldsymbol{v}^{\prime}_{\ast})-f^{([)}i](\boldsymbol{v})f^{([)}j](\boldsymbol{v}_{\ast})\right]\mathrm{d}\varsigma\mathrm{d}\boldsymbol{v}_{\ast}. (2.3)

and Knij{\rm Kn}_{ij} is the Knudsen number, which is defined as the ratio of the mean free path and characteristic length. For the VSS model, the dimensionless collision kernel BijB_{ij} has the form

Bij=2ωij1/2αij1+m([)i]m([)j]μijωij1/2Γ(52ωij)2αij+1π|𝒗𝒗|2(1ωij)(1+cosχ)αij1.B_{ij}=\frac{2^{\omega_{ij}-1/2}\alpha_{ij}}{\sqrt{1+\frac{m^{([)}i]}{m^{([)}j]}}\mu_{ij}^{\omega_{ij}-1/2}\Gamma(\frac{5}{2}-\omega_{ij})2^{\alpha_{ij}+1}\pi}|\boldsymbol{v}-\boldsymbol{v}_{\ast}|^{2(1-\omega_{ij})}(1+\cos\chi)^{\alpha_{ij}-1}. (2.4)

From the nondimensionalization, the Knudsen number can be computed as

Knij=11+m([)i]/m([)j]πn0dref,ij2(Tref,ij/T0)ωij0.5x0.{\rm Kn}_{ij}=\frac{1}{\sqrt{1+m^{([)}i]/m^{([)}j]}\pi n_{0}d^{2}_{{\rm ref},ij}(T_{{\rm ref},ij}/T_{0})^{\omega_{ij}-0.5}x_{0}}. (2.5)

The macroscopic variables such as the number density n([)i]n^{([)}i], density ρ([)i]\rho^{([)}i], macroscopic velocity 𝒖([)i]\boldsymbol{u}^{([)}i] and temperature T([)i]T^{([)}i] for each species could be derived from the distribution function as

n([)i](t,𝒙)=3f([)i](t,𝒙,𝒗)d𝒗,ρ([)i](t,𝒙)=m([)i]3f([)i](t,𝒙,𝒗)d𝒗,\displaystyle n^{([)}i](t,\boldsymbol{x})=\int_{\mathbb{R}^{3}}f^{([)}i](t,\boldsymbol{x},\boldsymbol{v})\mathrm{d}\boldsymbol{v},\qquad\rho^{([)}i](t,\boldsymbol{x})=m^{([)}i]\int_{\mathbb{R}^{3}}f^{([)}i](t,\boldsymbol{x},\boldsymbol{v})\mathrm{d}\boldsymbol{v}, (2.6)
𝒖([)i](t,𝒙)=1n([)i]3𝒗f([)i](t,𝒙,𝒗)d𝒗,T([)i](t,𝒙)=m([)i]3n([)i]3|𝒗𝒖([)i]|2f([)i](t,𝒙,𝒗)d𝒗.\displaystyle\boldsymbol{u}^{([)}i](t,\boldsymbol{x})=\frac{1}{n^{([)}i]}\int_{\mathbb{R}^{3}}\boldsymbol{v}f^{([)}i](t,\boldsymbol{x},\boldsymbol{v})\mathrm{d}\boldsymbol{v},\qquad T^{([)}i](t,\boldsymbol{x})=\frac{m^{([)}i]}{3n^{([)}i]}\int_{\mathbb{R}^{3}}|\boldsymbol{v}-\boldsymbol{u}^{([)}i]|^{2}f^{([)}i](t,\boldsymbol{x},\boldsymbol{v})\mathrm{d}\boldsymbol{v}.

The stress tensor 𝝈([)i]\boldsymbol{\sigma}^{([)}i], heat flux 𝒒([)i]\boldsymbol{q}^{([)}i] and total energy E([)i]E^{([)}i] could also be derived from the distribution function as

𝝈([)i](t,𝒙)=m([)i]3[(𝒗𝒖([)i])(𝒗𝒖([)i])13|𝒗𝒖([)i]|2I]f([)i](t,𝒙,𝒗)d𝒗,\displaystyle\boldsymbol{\sigma}^{([)}i](t,\boldsymbol{x})=m^{([)}i]\int_{\mathbb{R}^{3}}\left[(\boldsymbol{v}-\boldsymbol{u}^{([)}i])\otimes(\boldsymbol{v}-\boldsymbol{u}^{([)}i])-\frac{1}{3}|\boldsymbol{v}-\boldsymbol{u}^{([)}i]|^{2}I\right]f^{([)}i](t,\boldsymbol{x},\boldsymbol{v})\mathrm{d}\boldsymbol{v}, (2.7)
𝒒([)i](t,𝒙)=12m([)i]3(𝒗𝒖([)i])|𝒗𝒖([)i]|2f([)i](t,𝒙,𝒗)d𝒗,\displaystyle\boldsymbol{q}^{([)}i](t,\boldsymbol{x})=\frac{1}{2}m^{([)}i]\int_{\mathbb{R}^{3}}(\boldsymbol{v}-\boldsymbol{u}^{([)}i])|\boldsymbol{v}-\boldsymbol{u}^{([)}i]|^{2}f^{([)}i](t,\boldsymbol{x},\boldsymbol{v})\mathrm{d}\boldsymbol{v},
E([)i]=12m([)i]3f([)i]𝒗2d𝒗=12ρ([)i]|𝒖([)i]|2+32n([)i]T([)i].\displaystyle E^{([)}i]=\frac{1}{2}m^{([)}i]\int_{\mathbb{R}^{3}}f^{([)}i]\boldsymbol{v}^{2}\mathrm{d}\boldsymbol{v}=\frac{1}{2}\rho^{([)}i]|\boldsymbol{u}^{([)}i]|^{2}+\frac{3}{2}n^{([)}i]T^{([)}i].

The macroscopic variables for the whole system are defined as

n=i=1sn([)i],ρ=i=1sρ([)i],ρ𝒖=i=1sρ([)i]𝒖([)i],nT=i=1sn([)i]T([)i],𝝈=i=1s𝝈([)i],𝒒=i=1s𝒒([)i],E=i=1sE([)i].\begin{split}&n=\sum_{i=1}^{s}n^{([)}i],\qquad\rho=\sum_{i=1}^{s}\rho^{([)}i],\qquad\rho\boldsymbol{u}=\sum_{i=1}^{s}\rho^{([)}i]\boldsymbol{u}^{([)}i],\qquad nT=\sum_{i=1}^{s}n^{([)}i]T^{([)}i],\\ &\boldsymbol{\sigma}=\sum_{i=1}^{s}\boldsymbol{\sigma}^{([)}i],\qquad\boldsymbol{q}=\sum_{i=1}^{s}\boldsymbol{q}^{([)}i],\qquad E=\sum_{i=1}^{s}E^{([)}i].\end{split} (2.8)

Define θ([)i]=T([)i]/m([)i]\theta^{([)}i]=T^{([)}i]/m^{([)}i], then the steady-state solution to the multi-species Boltzmann equation (2.2) has the form as [21]

𝒖([)i]=𝒖,T([)i]=T,f([)i]=n([)i]𝒖([)i],θ([)i](𝒗),i=1,2,,s,\boldsymbol{u}^{([)}i]=\boldsymbol{u},\qquad T^{([)}i]=T,\qquad f^{([)}i]=n^{([)}i]\mathcal{M}_{\boldsymbol{u}^{([)}i],\theta^{([)}i]}(\boldsymbol{v}),\qquad i=1,2,\cdots,s, (2.9)

with

𝒖,T(𝒗)=1(2πT)32exp(|𝒗𝒖|22T),\mathcal{M}_{\boldsymbol{u},T}(\boldsymbol{v})=\frac{1}{(2\pi T)^{\frac{3}{2}}}\exp\left(-\frac{|\boldsymbol{v}-\boldsymbol{u}|^{2}}{2T}\right), (2.10)

which is named as the local Maxwellian. Here, we define the total average temperature 𝒯\mathcal{T} as

32n𝒯+12ρ|𝒖|2=E=i=1s12m([)i]3|𝒗|2f([)i]d𝒗,\frac{3}{2}n\mathcal{T}+\frac{1}{2}\rho|\boldsymbol{u}|^{2}=E=\sum_{i=1}^{s}\frac{1}{2}m^{([)}i]\int_{\mathbb{R}^{3}}|\boldsymbol{v}|^{2}f^{([)}i]\mathrm{d}\boldsymbol{v}, (2.11)

which could express the total average temperature of the system. We also want to emphasize that due to the nonlinearity of the total energy respected to the macroscopic velocity 𝒖\boldsymbol{u}, 𝒯\mathcal{T} is different from TT in (2.8). Based on the conservation of mass, momentum, and energy during the collision, the properties hold for the collision term as

3𝒬([)ij](𝒗)d𝒗=0,3𝒬([)ij](𝒗)m([)i]𝒗d𝒗+3𝒬([)ji](𝒗)m([)j]𝒗d𝒗=0,3𝒬([)ij](𝒗)m([)i]|𝒗|2d𝒗+3𝒬([)ji](𝒗)m([)j]|𝒗|2d𝒗=0.\begin{split}&\int_{\mathbb{R}^{3}}\mathcal{Q}^{([)}ij](\boldsymbol{v})\mathrm{d}\boldsymbol{v}=0,\\ &\int_{\mathbb{R}^{3}}\mathcal{Q}^{([)}ij](\boldsymbol{v})m^{([)}i]\boldsymbol{v}\mathrm{d}\boldsymbol{v}+\int_{\mathbb{R}^{3}}\mathcal{Q}^{([)}ji](\boldsymbol{v}_{\ast})m^{([)}j]\boldsymbol{v}_{\ast}\mathrm{d}\boldsymbol{v}_{\ast}=0,\\ &\int_{\mathbb{R}^{3}}\mathcal{Q}^{([)}ij](\boldsymbol{v})m^{([)}i]|\boldsymbol{v}|^{2}\mathrm{d}\boldsymbol{v}+\int_{\mathbb{R}^{3}}\mathcal{Q}^{([)}ji](\boldsymbol{v}_{\ast})m^{([)}j]|\boldsymbol{v}_{\ast}|^{2}\mathrm{d}\boldsymbol{v}_{\ast}=0.\end{split} (2.12)

Due to the complex form of the quadratic collision term, several simplified collision models are introduced, such as the BGK collision model [22]

𝒬([)ij][f([)i],f([)j]](𝒗)=ν([)ij]n([)j][f([)i]n([)i]𝒖([)ij],T([)ij]m([)i](𝒗)],\mathcal{Q}^{([)}ij][f^{([)}i],f^{([)}j]](\boldsymbol{v})=\nu^{([)}ij]n^{([)}j]\big{[}f^{([)}i]-n^{([)}i]\mathcal{M}_{\boldsymbol{u}^{([)}ij],\frac{T^{([)}ij]}{m^{([)}i]}}(\boldsymbol{v})\big{]}, (2.13)

where ν([)ij]\nu^{([)}{ij}] is the collision frequency, 𝒖([)ij]\boldsymbol{u}^{([)}{ij}] and T([)ij]T^{([)}{ij}] are decided by the macroscopic variables of species ii and jj, which should satisfy the conversation relationship (2.12). Here, we want to mention if it holds that

𝒖([)i]=𝒖([)j]=𝒖,T([)i]=T([)j]=T,\boldsymbol{u}^{([)}i]=\boldsymbol{u}^{([)}j]=\boldsymbol{u},\qquad T^{([)}i]=T^{([)}j]=T, (2.14)

then 𝒖([)ij]=𝒖([)ji]=𝒖\boldsymbol{u}^{([)}ij]=\boldsymbol{u}^{([)}ji]=\boldsymbol{u}, and T([)ij]=T([)ji]=TT^{([)}ij]=T^{([)}ji]=T. Once 𝒖([)ij]\boldsymbol{u}^{([)}ij] is decided, 𝒖([)ji]\boldsymbol{u}^{([)}ji] could be calculated with the conservation law (2.12), so as T([)ij]T^{([)}ij] and T([)ji]T^{([)}ji]. There are several types of BGK models to decide 𝒖([)ij],𝒖([)ji]\boldsymbol{u}^{([)}ij],\boldsymbol{u}^{([)}ji] and T([)ij],T([)ji]T^{([)}ij],T^{([)}ji], such as the work in [22, 15], which we will not discuss in detail.

For now, we have introduced the properties of the multi-species Boltzmann equation. Due to its high dimensionality and the complex collision terms, several numerical methods have been proposed, such as the stochastic DSMC method [2], the discrete velocity method [13, 32], and the Fourier spectral method [21, 36]. So far, the Hermite spectral method has been successfully utilized to solve Boltzmann equation with single species and the plasma with collisions [26, 20]. In this work, we will extend the methodology therein to solve the multi-species Boltzmann equation, which we will discuss in detail in the next sections.

2.2 Hermite spectral method

In the framework of the Hermite spectral method, the distribution function f([)i]f^{([)}i] is approximated by a series of expansions. Following the method in [20], we choose the weighted Hermite polynomials as the basis function as

Definition (Hermite Polynomials).

For α=(α1,α2,α3)\alpha=(\alpha_{1},\alpha_{2},\alpha_{3}), the three-dimensional Hermite polynomial Hα𝐮¯,θ¯(𝐯)H_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v}) is defined as

Hα𝒖¯,θ¯(𝒗)=(1)|α|θ¯|α|2𝒖¯,θ¯(𝒗)|α|𝒗α𝒖¯,θ¯(𝒗),H_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})=\frac{(-1)^{|\alpha|}\overline{\theta}^{\frac{|\alpha|}{2}}}{\mathcal{M}_{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})}\dfrac{\partial^{|\alpha|}}{\partial\boldsymbol{v}^{\alpha}}\mathcal{M}_{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v}), (2.15)

with |α|=α1+α2+α3|\alpha|=\alpha_{1}+\alpha_{2}+\alpha_{3} and 𝐯α=v1α1v2α2v3α3\partial\boldsymbol{v}^{\alpha}=\partial v_{1}^{\alpha_{1}}\partial v_{2}^{\alpha_{2}}\partial v_{3}^{\alpha_{3}}. Here 𝐮¯3\overline{\boldsymbol{u}}\in\mathbb{R}^{3} and θ¯+\overline{\theta}\in\mathbb{R}^{+} are two parameters which are chosen problem-dependently. 𝐮¯,θ¯(𝐯)\mathcal{M}_{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v}) is the Maxwellian defined in (2.10). The Hermite polynomials have several useful properties when approximating the complex collision term, which are listed in Appendix 7.3.

With the Hermite polynomials, the distribution function f([)i]f^{([)}i] is expanded as

f([)i](t,𝒙,𝒗)=α3fα([)i](t,𝒙)α𝒖¯,θ¯(𝒗),f^{([)}i](t,\boldsymbol{x},\boldsymbol{v})=\sum_{\alpha\in\mathbb{N}^{3}}f_{\alpha}^{([)}i](t,\boldsymbol{x})\mathcal{H}_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v}), (2.16)

where α𝒖¯,θ¯(𝒗)=Hα𝒖¯,θ¯(𝒗)𝒖¯,θ¯(𝒗)\mathcal{H}_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})=H_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})\mathcal{M}_{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v}) are the basis functions, [𝒖¯,θ¯]3×+[\overline{\boldsymbol{u}},\overline{\theta}]\in\mathbb{R}^{3}\times\mathbb{R}^{+} is the problem-dependent expansion center. One of the advantages of this expansion is that the problem-dependent expansion center could also be interpreted as the ”moments” of the distribution function. With a properly chosen expansion center, the computational cost may be greatly reduced. More details will be revealed in the successive sections. By the orthogonality of the basis function (7.13), it holds that

fα([)i](t,𝒙)=1α!3f([)i](t,𝒙,𝒗)Hα𝒖¯,θ¯(𝒗)d𝒗.f_{\alpha}^{([)}i](t,\boldsymbol{x})=\frac{1}{\alpha!}\int_{\mathbb{R}^{3}}f^{([)}i](t,\boldsymbol{x},\boldsymbol{v})H_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})\mathrm{d}\boldsymbol{v}. (2.17)

The macroscopic variables (2.6) could also be expressed using fα([)i]f_{\alpha}^{([)}i] as

n([)i]=f0([)i],u([)i]k=u¯k+θ¯n([)i]f([)i]ek,T([)i]=2m([)i]θ¯3n([)i]k=13f([)i]2ek+m([)i]θ¯,σ([)i]kl=(1+δkl)m([)i]θ¯f([)i]ei+ej+δklρ([)i](θ¯T([)i]m([)i])ρ([)i](u¯ku([)i]k)(u¯lu([)i]l),q([)i]k=2m([)i]θ¯32f([)i]3ek+(u¯ku([)i]k)θ¯f([)i]2ek+|𝒖¯𝒖([)i]|2θ¯f([)i]ek+l=13[θ¯32f([)i]2el+ek+(u¯lu([)i]l)θ¯f([)i]el+ek+(u¯ku([)i]k)θ¯f([)i]2el].\begin{split}&n^{([)}i]=f_{0}^{([)}i],\quad u^{([)}i]_{k}=\overline{u}_{k}+\frac{\sqrt{\overline{\theta}}}{n^{([)}i]}f^{([)}i]_{e_{k}},\quad T^{([)}i]=\frac{2m^{([)}i]\overline{\theta}}{3n^{([)}i]}\sum_{k=1}^{3}f^{([)}i]_{2e_{k}}+m^{([)}i]\overline{\theta},\\ &\sigma^{([)}i]_{kl}=(1+\delta_{kl})m^{([)}i]\overline{\theta}f^{([)}i]_{e_{i}+e_{j}}+\delta_{kl}\rho^{([)}i]\left(\overline{\theta}-\frac{T^{([)}i]}{m^{([)}i]}\right)-\rho^{([)}i]\left(\overline{u}_{k}-u^{([)}i]_{k}\right)\left(\overline{u}_{l}-u^{([)}i]_{l}\right),\\ &q^{([)}i]_{k}=2m^{([)}i]\overline{\theta}^{\frac{3}{2}}f^{([)}i]_{3e_{k}}+(\overline{u}_{k}-u^{([)}i]_{k})\overline{\theta}f^{([)}i]_{2e_{k}}+|\overline{\boldsymbol{u}}-\boldsymbol{u}^{([)}i]|^{2}\sqrt{\overline{\theta}}f^{([)}i]_{e_{k}}\\ &\qquad\qquad+\sum_{l=1}^{3}\left[\overline{\theta}^{\frac{3}{2}}f^{([)}i]_{2e_{l}+e_{k}}+\left(\overline{u}_{l}-u^{([)}i]_{l}\right)\overline{\theta}f^{([)}i]_{e_{l}+e_{k}}+\left(\overline{u}_{k}-u^{([)}i]_{k}\right)\overline{\theta}f^{([)}i]_{2e_{l}}\right].\end{split} (2.18)

Sometimes, the expansion center is chosen according to the numerical scheme, such as dealing with the force term when simulating the plasma with collision [26], or according to the average temperature in the whole space for the Fourier flow problem [20]. In this work, this expansion center is also chosen differently for the convection part and the collision term.

3 Modelling the quadratic collision term with Hermite spectral method

In this section, we will model the quadratic collision term using the Hermite spectral method. The influence of the convection term will be ignored temporarily, and we only discuss the algorithm to approximate the collision term 𝒬([)ij]\mathcal{Q}^{([)}ij] in (2.2).

3.1 Hermite expansion of the collision term

For the homogeneous Boltzmann equation, the total momentum and the kinetic energy are conserved. With a proper frame of reference, we can suppose that the total macroscopic velocity 𝒖\boldsymbol{u} in (2.8) is 𝒖=𝟎\boldsymbol{u}=\boldsymbol{0}. With (2.11), the total average temperature 𝒯\mathcal{T} is constant and solely decided by the total energy EE. Therefore, we choose the macroscopic velocity and total average temperature to decide the expansion center. For the ii-th species, the expansion center is set as [𝒖¯,θ¯]([)i]=[𝒖,ζ([)i]][\overline{\boldsymbol{u}},\overline{\theta}]^{([)}i]=[\boldsymbol{u},\zeta^{([)}i]] with 𝒖=𝟎\boldsymbol{u}=\boldsymbol{0} and ζ([)i]=𝒯/m([)i]\zeta^{([)}i]=\mathcal{T}/m^{([)}i] to approximate the collision term.

Thus, the basis function of f([)i]f^{([)}i] is chosen as α([)i]=α𝟎,ζ([)i]\mathcal{H}_{\alpha}^{([)}i]=\mathcal{H}_{\alpha}^{\boldsymbol{0},\zeta^{([)}i]}, and the variable 𝒙\boldsymbol{x} is also omitted in the distribution function for simplicity. The Hermite expansion (2.16) is then written as

f([)i](t,𝒗)=α3fα([)i](t)α([)i](𝒗).f^{([)}i](t,\boldsymbol{v})=\sum_{\alpha\in\mathbb{N}^{3}}f_{\alpha}^{([)}i](t)\mathcal{H}_{\alpha}^{([)}i](\boldsymbol{v}). (3.1)

In what follows, we denote Hα([)i]H_{\alpha}^{([)}i] and ([)i]\mathcal{M}^{([)}i] as the Hermite polynomial and Maxwellian corresponding to α([)i]\mathcal{H}_{\alpha}^{([)}i]. Substituting (3.1) in the the collision term (2.3), the collision 𝒬([)ij]\mathcal{Q}^{([)}ij] could be expanded as

𝒬([)ij][f([)i],f([)j]](𝒗)=α3Q([)ij]α(𝟎,ζ([)i])α([)i](𝒗).\mathcal{Q}^{([)}ij][f^{([)}i],f^{([)}j]](\boldsymbol{v})=\sum_{\alpha\in\mathbb{N}^{3}}Q^{([)}ij]_{\alpha}(\boldsymbol{0},\zeta^{([)}i])\mathcal{H}_{\alpha}^{([)}i](\boldsymbol{v}). (3.2)

Now we consider how to obtain Q([)ij]α(𝟎,ζ([)i])Q^{([)}ij]_{\alpha}(\boldsymbol{0},\zeta^{([)}i]) for fixed ii and jj. From the orthogonality (7.13), we can obtain that

Q([)ij]α(𝟎,ζ([)i])=1α!3Hα([)i](𝒗)𝒬([)ij][f([)i],f([)j]](𝒗)d𝒗=λ3κ3Aα,λ,κ(ij)(𝟎,ζ([)i])fλ([)i]fκ([)j],Q^{([)}ij]_{\alpha}(\boldsymbol{0},\zeta^{([)}i])=\frac{1}{\alpha!}\int_{\mathbb{R}^{3}}H_{\alpha}^{([)}i](\boldsymbol{v})\mathcal{Q}^{([)}ij][f^{([)}i],f^{([)}j]](\boldsymbol{v})\mathrm{d}\boldsymbol{v}=\sum_{\lambda\in\mathbb{N}^{3}}\sum_{\kappa\in\mathbb{N}^{3}}A_{\alpha,\lambda,\kappa}^{(ij)}(\boldsymbol{0},\zeta^{([)}i])f_{\lambda}^{([)}i]f_{\kappa}^{([)}j], (3.3)

with α!=α1!α2!α3!\alpha!=\alpha_{1}!\alpha_{2}!\alpha_{3}!. Here, the second equality can be obtained by inserting (3.1) into (2.3), and

Aα,λ,κ(ij)(𝟎,ζ([)i])=1α!33S2Bij(|𝒗𝒗|,ς)[λ([)i](𝒗)κ([)j](𝒗)λ([)i](𝒗)κ([)j](𝒗)]Hα([)i](𝒗)dςd𝒗d𝒗,A_{\alpha,\lambda,\kappa}^{(ij)}(\boldsymbol{0},\zeta^{([)}i])=\frac{1}{\alpha!}\int_{\mathbb{R}^{3}}\int_{\mathbb{R}^{3}}\int_{S^{2}}B_{ij}(|\boldsymbol{v}-\boldsymbol{v}_{\ast}|,\varsigma)\Bigg{[}\mathcal{H}_{\lambda}^{([)}i](\boldsymbol{v}^{\prime})\mathcal{H}_{\kappa}^{([)}j](\boldsymbol{v}^{\prime}_{\ast})-\mathcal{H}_{\lambda}^{([)}i](\boldsymbol{v})\mathcal{H}_{\kappa}^{([)}j](\boldsymbol{v}_{\ast})\Bigg{]}H_{\alpha}^{([)}i](\boldsymbol{v})\mathrm{d}\varsigma\mathrm{d}\boldsymbol{v}\mathrm{d}\boldsymbol{v}_{\ast}, (3.4)

where (𝒗,𝒗)(\boldsymbol{v}^{\prime},\boldsymbol{v}^{\prime}_{\ast}) is the post-collision velocity pair determined by (1.3). Here, Q([)ij]α(𝟎,ζ([)i])Q^{([)}ij]_{\alpha}(\boldsymbol{0},\zeta^{([)}i]) and Aα,λ,κ(ij)(𝟎,ζ([)i])A_{\alpha,\lambda,\kappa}^{(ij)}(\boldsymbol{0},\zeta^{([)}i]) are functions related to the expansion center [𝟎,ζ([)i]][\boldsymbol{0},\zeta^{([)}i]]. For simplicity, from now on, the coefficients Q([)ij]α(𝟎,ζ([)i])Q^{([)}ij]_{\alpha}(\boldsymbol{0},\zeta^{([)}i]) and Aα,λ,κ(ij)(𝟎,ζ([)i])A_{\alpha,\lambda,\kappa}^{(ij)}(\boldsymbol{0},\zeta^{([)}i]) will be shortened as Q([)ij]αQ^{([)}ij]_{\alpha} and Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} if the expansion center is set as [𝟎,ζ([)i]][\boldsymbol{0},\zeta^{([)}i]]; and this parameter will be explicitly written out if expansion center other than [𝟎,ζ([)i]][\boldsymbol{0},\zeta^{([)}i]] is utilized.

In the computation of the expansion coefficients Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)}, it has a complicated high-dimensional integral. Moreover, for the multi-species particles, this Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} should be calculated for each pair of (ij)(ij), which has greatly increased the computational cost compared to the single species case. Here, the properties of the Hermite polynomials and the conservation of the collision model are all utilized to compute Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)}.

Denoting r([)ij]=m([)j]m([)i]=ζ([)i]ζ([)j]r^{([)}ij]=\frac{m^{([)}j]}{m^{([)}i]}=\frac{\zeta^{([)}i]}{\zeta^{([)}j]} as the mass ratio, with the transitivity of Hermite polynomials (7.14) and the definition of Maxwellian (2.10), it holds that

Hα([)j](𝒗)=Hα([)i](r𝒗),([)j](𝒗)=r32([)i](r𝒗),H_{\alpha}^{([)}j](\boldsymbol{v})=H_{\alpha}^{([)}i](\sqrt{r}\boldsymbol{v}),\qquad\mathcal{M}^{([)}j](\boldsymbol{v})={r^{\frac{3}{2}}}\mathcal{M}^{([)}i](\sqrt{r}\boldsymbol{v}), (3.5)

where we omit the superscript of r([)ij]r^{([)}ij] and short it as rr for simplicity. Besides, from the conversation of energy, it also holds that

|𝒗|2+r|𝒗|2=|𝒗|2+r|𝒗|2.|\boldsymbol{v}|^{2}+r|\boldsymbol{v}_{\ast}|^{2}=|\boldsymbol{v}^{\prime}|^{2}+r|\boldsymbol{v}^{\prime}_{\ast}|^{2}. (3.6)

Based on (2.10), (3.5) and (3.6), we can derive that

([)i](𝒗)([)j](𝒗)=([)i](𝒗)([)j](𝒗).\mathcal{M}^{([)}i](\boldsymbol{v}^{\prime})\mathcal{M}^{([)}j](\boldsymbol{v}^{\prime}_{\ast})=\mathcal{M}^{([)}i](\boldsymbol{v})\mathcal{M}^{([)}j](\boldsymbol{v}_{\ast}). (3.7)

Then, (3.4) can be simplified as

Aα,λ,κ(ij)=r32α!33S2Bij(|𝒗𝒗|,ς)[Hλ([)i](𝒗)Hκ([)i](r𝒗)Hλ([)i](𝒗)Hκ([)i](r𝒗)]Hα([)i](𝒗)([)i](𝒗)([)i](r𝒗)dςd𝒗d𝒗.\begin{split}A_{\alpha,\lambda,\kappa}^{(ij)}=&\frac{r^{\frac{3}{2}}}{\alpha!}\int_{\mathbb{R}^{3}}\int_{\mathbb{R}^{3}}\int_{S^{2}}B_{ij}(|\boldsymbol{v}-\boldsymbol{v}_{\ast}|,\varsigma)\Bigg{[}H_{\lambda}^{([)}i](\boldsymbol{v}^{\prime})H_{\kappa}^{([)}i](\sqrt{r}\boldsymbol{v}^{\prime}_{\ast})\\ &\qquad-H_{\lambda}^{([)}i](\boldsymbol{v})H_{\kappa}^{([)}i](\sqrt{r}\boldsymbol{v}_{\ast})\Bigg{]}H_{\alpha}^{([)}i](\boldsymbol{v})\mathcal{M}^{([)}i](\boldsymbol{v})\mathcal{M}^{([)}i](\sqrt{r}\boldsymbol{v}_{\ast})\mathrm{d}\varsigma\mathrm{d}\boldsymbol{v}\mathrm{d}\boldsymbol{v}_{\ast}.\end{split} (3.8)

With the properties of the basis functions, the calculation of Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} could be greatly simplified, and the final result is listed in the theorem below.

Theorem 1.

The coefficients Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} could be simplified as the form below:

Aα,λ,κ(ij)=r32(1+r)|α|+32λα,λκ+λr|𝒋|2𝒋!al1k1l1k1(r)al2k2l2k2(r)al3k3l3k3(r)γκ𝒋(r,ζ([)i]),A_{\alpha,\lambda,\kappa}^{(ij)}=\frac{r^{\frac{3}{2}}}{(1+r)^{\frac{|\alpha|+3}{2}}}\sum_{\lambda^{\prime}\preceq\alpha,\lambda^{\prime}\preceq\kappa+\lambda}\frac{r^{\frac{|\boldsymbol{j}|}{2}}}{\boldsymbol{j}!}a_{l^{\prime}_{1}k^{\prime}_{1}}^{l_{1}k_{1}}(r)a_{l^{\prime}_{2}k^{\prime}_{2}}^{l_{2}k_{2}}(r)a_{l^{\prime}_{3}k^{\prime}_{3}}^{l_{3}k_{3}}(r)\gamma_{\kappa^{\prime}}^{\boldsymbol{j}}(r,\zeta^{([)}i]), (3.9)

where κ=κ+λλ\kappa^{\prime}=\kappa+\lambda-\lambda^{\prime} and 𝐣=αλ\boldsymbol{j}=\alpha-\lambda^{\prime}, with λ=(l1,l2,l3),κ=(k1,k2,k3)\lambda=(l_{1},l_{2},l_{3}),\kappa=(k_{1},k_{2},k_{3}). Besides, the symbol ‘\preceq’ means

(i1,i2,i3)(j1,j2,j3)isjsfors=1,2,3.(i_{1},i_{2},i_{3})\preceq(j_{1},j_{2},j_{3})\Leftrightarrow i_{s}\leqslant j_{s}\quad\text{for}\quad s=1,2,3.

The coefficients aldkdldkd(r)a_{l^{\prime}_{d}k^{\prime}_{d}}^{l_{d}k_{d}}(r) are given by

aldkdldkd(r)=(1+r)ld+kd2sCldsCkdlds(1)kdld+srld+ld2s,a_{l^{\prime}_{d}k^{\prime}_{d}}^{l_{d}k_{d}}(r)=(1+r)^{-\frac{l^{\prime}_{d}+k^{\prime}_{d}}{2}}\sum_{s\in\mathbb{Z}}C_{l_{d}}^{s}C_{k_{d}}^{l^{\prime}_{d}-s}(-1)^{k_{d}-l^{\prime}_{d}+s}r^{\frac{l_{d}+l^{\prime}_{d}}{2}-s}, (3.10)

with CnkC_{n}^{k} the generalized combination number which is regarded as zero when k>nk>n or k<0k<0. The coefficients γκ𝐣(r,θ¯)\gamma_{\kappa^{\prime}}^{\boldsymbol{j}}(r,\overline{\theta}) are defined as

γκ𝒋(r,θ¯)=3S2[H𝒋𝟎,θ¯(r1+r𝒈)H𝒋𝟎,θ¯(r1+r𝒈)]Hκ𝟎,θ¯(r1+r𝒈)Bij(|𝒈|,ς)𝟎,θ¯(r1+r𝒈)dςd𝒈,\begin{split}&\gamma_{\kappa^{\prime}}^{\boldsymbol{j}}(r,\overline{\theta})=\\ &\int_{\mathbb{R}^{3}}\int_{S^{2}}\left[H_{\boldsymbol{j}}^{\boldsymbol{0},\overline{\theta}}\left({\sqrt{\frac{r}{1+r}}\boldsymbol{g}^{\prime}}\right)-H_{\boldsymbol{j}}^{\boldsymbol{0},\overline{\theta}}\left({\sqrt{\frac{r}{1+r}}\boldsymbol{g}}\right)\right]H_{\kappa^{\prime}}^{\boldsymbol{0},\overline{\theta}}\left({\sqrt{\frac{r}{1+r}}\boldsymbol{g}}\right)B_{ij}(|\boldsymbol{g}|,\varsigma)\mathcal{M}_{\boldsymbol{0},\overline{\theta}}\left({\sqrt{\frac{r}{1+r}}\boldsymbol{g}}\right)\mathrm{d}\varsigma\mathrm{d}\boldsymbol{g},\end{split} (3.11)

where 𝐠=𝐯𝐯\boldsymbol{g}=\boldsymbol{v}-\boldsymbol{v}_{\ast} is the relative velocity and 𝐠=|𝐠|ς\boldsymbol{g}^{\prime}=|\boldsymbol{g}|\varsigma is the post-collision relative velocity.

The proof of Theorem 1 could be finished with the following steps. First, we introduce the lemma below

Lemma 1.

For any r>0r>0, define 𝐯=𝐡+r1+r𝐠\boldsymbol{v}=\boldsymbol{h}+\frac{r}{1+r}\boldsymbol{g}, 𝐰=r𝐡r1+r𝐠\boldsymbol{w}=\sqrt{r}\boldsymbol{h}-\frac{\sqrt{r}}{1+r}\boldsymbol{g}, then θ¯>0\forall\;\overline{\theta}>0

Hλ𝟎,θ¯(𝒗)Hκ𝟎,θ¯(𝒘)=κ+λ=κ+λal1k1l1k1(r)al2k2l2k2(r)al3k3l3k3(r)Hλ𝟎,θ¯(1+r𝒉)Hκ𝟎,θ¯(r1+r𝒈),H_{\lambda}^{\boldsymbol{0},\overline{\theta}}(\boldsymbol{v})H_{\kappa}^{\boldsymbol{0},\overline{\theta}}(\boldsymbol{w})=\sum_{\kappa^{\prime}+\lambda^{\prime}=\kappa+\lambda}a_{l^{\prime}_{1}k^{\prime}_{1}}^{l_{1}k_{1}}(r)a_{l^{\prime}_{2}k^{\prime}_{2}}^{l_{2}k_{2}}(r)a_{l^{\prime}_{3}k^{\prime}_{3}}^{l_{3}k_{3}}(r)H^{\boldsymbol{0},\overline{\theta}}_{\lambda^{\prime}}(\sqrt{1+r}\boldsymbol{h})H^{\boldsymbol{0},\overline{\theta}}_{\kappa^{\prime}}\left(\sqrt{\frac{r}{1+r}}\boldsymbol{g}\right), (3.12)

where κ=(k1,k2,k3),λ=(l1,l2,l3)\kappa=(k_{1},k_{2},k_{3}),\lambda=(l_{1},l_{2},l_{3}), κ=(k1,k2,k3),λ=(l1,l2,l3)\kappa^{\prime}=(k^{\prime}_{1},k^{\prime}_{2},k^{\prime}_{3}),\lambda^{\prime}=(l^{\prime}_{1},l^{\prime}_{2},l^{\prime}_{3}) and the coefficients aldkdldkd(r)a_{l^{\prime}_{d}k^{\prime}_{d}}^{l_{d}k_{d}}(r) are defined in (3.10).

The proof of Lemma 1 could be found in App. 7.1. Based on Lemma 1, we could derive the corollary below

Corollary 1.

For any r>0r>0, define 𝐯=𝐡+r1+r𝐠\boldsymbol{v}=\boldsymbol{h}+\frac{r}{1+r}\boldsymbol{g}, then it holds that

Hλ𝟎,θ¯(𝒗)=(1+r)|λ|2κ+λ=λλ!κ!λ!r|λ|2Hκ𝟎,θ¯(1+r𝒉)Hλ𝟎,θ¯(r1+r𝒈).H_{\lambda}^{\boldsymbol{0},\overline{\theta}}(\boldsymbol{v})=(1+r)^{-\frac{|\lambda|}{2}}\sum_{\kappa^{\prime}+\lambda^{\prime}=\lambda}\frac{\lambda!}{\kappa^{\prime}!\lambda^{\prime}!}r^{\frac{|\lambda^{\prime}|}{2}}H_{\kappa^{\prime}}^{\boldsymbol{0},\overline{\theta}}(\sqrt{1+r}\boldsymbol{h})H_{\lambda^{\prime}}^{\boldsymbol{0},\overline{\theta}}\left(\sqrt{\frac{r}{1+r}}\boldsymbol{g}\right). (3.13)

The proof is straightforward by letting κ=𝟎\kappa=\boldsymbol{0} in (3.12). Based on Lemma 1 and Corollary 1, the proof of Theorem 1 is as below.

Proof of Theorem 1.

First, we denote 𝒈=𝒗𝒗\boldsymbol{g}=\boldsymbol{v}-\boldsymbol{v}_{\ast}, 𝒉=𝒗+r𝒗1+r\boldsymbol{h}=\frac{\boldsymbol{v}+r\boldsymbol{v}_{\ast}}{1+r} in (3.8), then it holds that

d𝒈d𝒉=d𝒗d𝒗,|𝒗|2+r|𝒗|2=r1+r|𝒈|2+(1+r)|𝒉|2.\mathrm{d}\boldsymbol{g}\mathrm{d}\boldsymbol{h}=\mathrm{d}\boldsymbol{v}\mathrm{d}\boldsymbol{v}_{\ast},\qquad|\boldsymbol{v}|^{2}+r|\boldsymbol{v}_{\ast}|^{2}=\frac{r}{1+r}|\boldsymbol{g}|^{2}+(1+r)|\boldsymbol{h}|^{2}. (3.14)

Similarly, with the conservation of the collision term, if 𝒘=𝒗,𝒘=𝒗\boldsymbol{w}=\boldsymbol{v}^{\prime},\boldsymbol{w}_{\ast}=\boldsymbol{v}^{\prime}_{\ast}, ς=𝒈|𝒈|\varsigma^{\prime}=\frac{\boldsymbol{g}}{|\boldsymbol{g}|}, then it holds that

𝒘=𝒗,𝒘=𝒗,d𝒘d𝒘=d𝒗d𝒗,|𝒘|2+r|𝒘|2=|𝒗|2+r|𝒗|2.\boldsymbol{w}^{\prime}=\boldsymbol{v},\boldsymbol{w}^{\prime}_{\ast}=\boldsymbol{v}_{\ast},\qquad\mathrm{d}\boldsymbol{w}\mathrm{d}\boldsymbol{w}_{\ast}=\mathrm{d}\boldsymbol{v}\mathrm{d}\boldsymbol{v}_{\ast},\qquad|\boldsymbol{w}|^{2}+r|\boldsymbol{w}_{\ast}|^{2}=|\boldsymbol{v}|^{2}+r|\boldsymbol{v}_{\ast}|^{2}. (3.15)

Thus, following the transformation method in [35], we can derive that

Aα,λ,κ(ij)=r32α!33S2Bij(|𝒗𝒗|,ς)Hλ([)i](𝒗)Hκ([)i](r𝒗)[Hα([)i](𝒗)Hα([)i](𝒗)]([)i](𝒗)([)i](r𝒗)dςd𝒗d𝒗.\begin{split}A_{\alpha,\lambda,\kappa}^{(ij)}=&\frac{r^{\frac{3}{2}}}{\alpha!}\int_{\mathbb{R}^{3}}\int_{\mathbb{R}^{3}}\int_{S^{2}}B_{ij}(|\boldsymbol{v}-\boldsymbol{v}_{\ast}|,\varsigma)H_{\lambda}^{([)}i](\boldsymbol{v})H_{\kappa}^{([)}i](\sqrt{r}\boldsymbol{v}_{\ast})\\ &\qquad\qquad\left[H_{\alpha}^{([)}i](\boldsymbol{v}^{\prime})-H_{\alpha}^{([)}i](\boldsymbol{v})\right]\mathcal{M}^{([)}i](\boldsymbol{v})\mathcal{M}^{([)}i](\sqrt{r}\boldsymbol{v}_{\ast})\mathrm{d}\varsigma\mathrm{d}\boldsymbol{v}\mathrm{d}\boldsymbol{v}_{\ast}.\end{split} (3.16)

Combining Lemma 1 and Corollary 1, we rewrite the above equality as an integral of 𝒈\boldsymbol{g} and 𝒉\boldsymbol{h}

Aα,λ,κ(ij)=r32(1+r)|α|2λ+κ=λ+κ𝒊+𝒋=αr|𝒋|2𝒊!𝒋!al1k1l1k1(r)al2k2l2k2(r)al3k3l3k3(r)γκ𝒋(r,ζ([)i])ηλ𝒊,A_{\alpha,\lambda,\kappa}^{(ij)}=\frac{r^{\frac{3}{2}}}{(1+r)^{\frac{|\alpha|}{2}}}\sum_{\lambda^{\prime}+\kappa^{\prime}=\lambda+\kappa}\sum_{\boldsymbol{i}+\boldsymbol{j}=\alpha}\frac{r^{\frac{|\boldsymbol{j}|}{2}}}{\boldsymbol{i}!\boldsymbol{j}!}a_{l^{\prime}_{1}k^{\prime}_{1}}^{l_{1}k_{1}}(r)a_{l^{\prime}_{2}k^{\prime}_{2}}^{l_{2}k_{2}}(r)a_{l^{\prime}_{3}k^{\prime}_{3}}^{l_{3}k_{3}}(r)\gamma_{\kappa^{\prime}}^{\boldsymbol{j}}(r,\zeta^{([)}i])\eta_{\lambda^{\prime}}^{\boldsymbol{i}}, (3.17)

where the coefficients γκ𝒋\gamma_{\kappa^{\prime}}^{\boldsymbol{j}} are integrals with respect to 𝒈\boldsymbol{g} defined in (3.11), and ηλ𝒊\eta_{\lambda^{\prime}}^{\boldsymbol{i}} are integrals with respect to 𝒉\boldsymbol{h} defined by

ηλ𝒊=3H([)i]λ(1+r𝒉)H([)i]𝒊(1+r𝒉)([)i](1+r𝒉)d𝒉=λ!(1+r)32δλ,𝒊.\eta_{\lambda^{\prime}}^{\boldsymbol{i}}=\int_{\mathbb{R}^{3}}H^{([)}i]_{\lambda^{\prime}}(\sqrt{1+r}\boldsymbol{h})H^{([)}i]_{\boldsymbol{i}}(\sqrt{1+r}\boldsymbol{h})\mathcal{M}^{([)}i](\sqrt{1+r}\boldsymbol{h})\mathrm{d}\boldsymbol{h}=\frac{\lambda^{\prime}!}{(1+r)^{\frac{3}{2}}}\delta_{\lambda^{\prime},\boldsymbol{i}}. (3.18)

The second equality can be obtained by orthogonality (7.13). With (3.17) and (3.18), we complete the proof of Theorem 1. ∎

For some special collision kernels, the calculation of Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} could be further simplified. For example, for the VSS collision kernel (1.5), where Bij(|𝒈|,ς)B_{ij}(|\boldsymbol{g}|,\varsigma) could be rewritten in the form

Bij(|𝒈|,ς)=|𝒈|CΣij(ς),B_{ij}(|\boldsymbol{g}|,\varsigma)=|\boldsymbol{g}|^{C}\Sigma_{ij}(\varsigma), (3.19)

where CC is some constant and Σij(ς)\Sigma_{ij}(\varsigma) is a function of ς\varsigma. Then for the VSS model, with the transitivity property (7.14), the coefficient γκ𝒋(r,θ¯)\gamma_{\kappa}^{\boldsymbol{j}}(r,\overline{\theta}) in (3.11) could be further simplified as

γκ𝒋(r,θ¯)=3S2[H𝒋𝟎,1(β𝒈)H𝒋𝟎,1(β𝒈)]Hκ𝟎,1(β𝒈)Bij(|𝒈|,ς)θ¯32𝟎,1(β𝒈)dςd𝒈=(1+r2r)32((1+r)θ¯2r)C2γκ𝒋(1,1),withβ=r(1+r)θ¯.\begin{split}\gamma_{\kappa}^{\boldsymbol{j}}(r,\overline{\theta})=&\int_{\mathbb{R}^{3}}\int_{S^{2}}\left[H_{\boldsymbol{j}}^{\boldsymbol{0},1}\left(\beta\boldsymbol{g}^{\prime}\right)-H_{\boldsymbol{j}}^{\boldsymbol{0},1}\left(\beta\boldsymbol{g}\right)\right]H_{\kappa}^{\boldsymbol{0},1}\left({\beta\boldsymbol{g}}\right)B_{ij}(|\boldsymbol{g}|,\varsigma)\overline{\theta}^{-\frac{3}{2}}\mathcal{M}_{\boldsymbol{0},1}\left(\beta\boldsymbol{g}\right)\mathrm{d}\varsigma\mathrm{d}\boldsymbol{g}\\ =&\left(\frac{1+r}{2r}\right)^{\frac{3}{2}}\left(\frac{(1+r)\overline{\theta}}{2r}\right)^{\frac{C}{2}}\gamma_{\kappa}^{\boldsymbol{j}}(1,1),\qquad{\rm with}~{}\beta=\sqrt{\frac{r}{(1+r)\overline{\theta}}}.\end{split} (3.20)

Here, a further simplification of γκ𝒋(1,1)\gamma_{\kappa}^{\boldsymbol{j}}(1,1) is introduced in [35], and we list the result in App. 7.2. For the VSS model, the ultimate form of Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} only needs a two-dimensional integration, and the computational cost has been greatly reduced.

Remark 1.

From the calculation of Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)}, we want to emphasize that the expansion center [𝟎,ζ([)i]][\boldsymbol{0},\zeta^{([)}i]] is not unique. As long as the same expansion center 𝐮¯\overline{\boldsymbol{u}} and scaling factor 𝒯\mathcal{T} is chosen for each species, (i.e. the expansion center is [𝐮¯,𝒯/m([)i]][\overline{\boldsymbol{u}},\mathcal{T}/m^{([)}i]] for species ii), (3.4) could be computed in a similar way. It is easy to verify that for the VSS model, it holds that

Aα,λ,κ(ij)(𝒖¯,θ¯)=θ¯C2Aα,λ,κ(ij)(𝟎,1),A_{\alpha,\lambda,\kappa}^{(ij)}(\overline{\boldsymbol{u}},\overline{\theta})=\overline{\theta}^{\frac{C}{2}}A_{\alpha,\lambda,\kappa}^{(ij)}(\boldsymbol{0},1), (3.21)

and Aα,λ,κ(ij)(𝟎,1)A_{\alpha,\lambda,\kappa}^{(ij)}(\boldsymbol{0},1) only depends on the mass ratio r=m([)j]m([)i]r=\frac{m^{([)}j]}{m^{([)}i]}. Therefore, in the real simulation, we only need to compute and store Aα,λ,κ(ij)(𝟎,1)A_{\alpha,\lambda,\kappa}^{(ij)}(\boldsymbol{0},1) with each different mass ratio rr in the system.

For now, we have introduced the algorithm to calculate the expansion coefficients Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} for the Boltzmann collision term. Especially for the VSS model, the final computation is reduced into some elementary operations and a two-dimensional integral. Moreover, the coefficients Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} could be precomputed offline and saved for the simulation. The computational cost of the coefficients is listed in Tab. 1, where the computational cost for the related coefficients is also listed.

Coefficients Formula Computational cost
D𝒎κD_{\boldsymbol{m}}^{\kappa} (7.9) 𝒪(M6)\mathcal{O}(M^{6})
SκλS_{\kappa}^{\lambda} (7.12) 𝒪(M5)\mathcal{O}(M^{5})
K𝒎𝒏κ𝒋K_{\boldsymbol{m}\boldsymbol{n}}^{\kappa\boldsymbol{j}} (7.11) 𝒪(M4)\mathcal{O}(M^{4})
γκλ(r,θ¯)\gamma_{\kappa}^{\lambda}(r,\overline{\theta}) (3.20) and (7.8) 𝒪(M11)\mathcal{O}(M^{11})
aldkdldkda_{l^{\prime}_{d}k^{\prime}_{d}}^{l_{d}k_{d}} (3.10) 𝒪(M4)\mathcal{O}(M^{4})
Aα,λ,κA_{\alpha,\lambda,\kappa} (3.8) 𝒪(M12)\mathcal{O}(M^{12})
Table 1: The formula and computational cost to obtain Aα,λ,κA_{\alpha,\lambda,\kappa} and related coefficients [35].

Even though the expansion coefficients Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} could be precomputed, the memory required to store Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} is extremely large. Thus, in the framework of the Hermite spectral method to solve the Boltzmann equation, the direct simulation of the collision term is still quite expensive. Following the thought in [35], a new collision model will be built to approximate the quadratic collision term in the framework of Hermite expansion.

3.2 Approximation to the Boltzmann collision term

Supposing that the truncation order of the expansion approximation in (3.1) is MM, then the computational cost to compute the collision terms 𝒬([)ij]\mathcal{Q}^{([)}ij] in (3.3) is 𝒪(s2M9)\mathcal{O}(s^{2}M^{9}), where ss is the number of species. Such computational cost is unacceptable for a large MM. For the spatially non-homogeneous problems, the computational cost will be much larger. Therefore, we want to build new collision models following the method proposed in [35, 20].

3.2.1 The BGK collision term

Before introducing the new collision model, we will discuss the BGK model (2.13) firstly. For the BGK model in the multi-species Boltzmann equation, other than that in the single-species case where the BGK model has only one form, there are several variants here. The essential part is how to choose 𝒖([)ij]\boldsymbol{u}^{([)}ij], T([)ij]T^{([)}ij] and collision frequency ν([)ij]\nu^{([)}ij] in (2.13), with different models discussed in related literature. It is assumed that 𝒖([)ij]\boldsymbol{u}^{([)}ij] is a linear combination of 𝒖([)i]\boldsymbol{u}^{([)}i] and 𝒖([)j]\boldsymbol{u}^{([)}j] in [22], and an estimation depending on the macroscopic variables is provided in [15]. In this work, for simplicity, we assume that 𝒖([)ij]=𝒖([)ji]\boldsymbol{u}^{([)}ij]=\boldsymbol{u}^{([)}ji] and T([)ij]=T([)ji]T^{([)}ij]=T^{([)}ji]. Then, as is discussed in [16], it holds for 𝒖([)ij]\boldsymbol{u}^{([)}ij] and T([)ij]T^{([)}ij] that

𝒖([)ij]=ρ([)i]ν([)ij]𝒖([)i]+ρ([)j]ν([)ji]𝒖([)j]ρ([)i]ν([)ij]+ρ([)j]ν([)ji],T([)ij]=n([)i]ν([)ij]T([)i]+n([)j]ν([)ji]T([)j]n([)i]ν([)ij]+n([)j]ν([)ji]+ρ([)i]ν([)ij](|𝒖([)i]|2|𝒖([)ij]|2)+ρ([)j]ν([)ji](|𝒖([)j]|2|𝒖([)ji]|2)3(n([)i]ν([)ij]+n([)j]ν([)ji]).\begin{gathered}\boldsymbol{u}^{([)}ij]=\frac{\rho^{([)}i]\nu^{([)}ij]\boldsymbol{u}^{([)}i]+\rho^{([)}j]\nu^{([)}ji]\boldsymbol{u}^{([)}j]}{\rho^{([)}i]\nu^{([)}ij]+\rho^{([)}j]\nu^{([)}ji]},\\ T^{([)}ij]=\frac{n^{([)}i]\nu^{([)}ij]T^{([)}i]+n^{([)}j]\nu^{([)}ji]T^{([)}j]}{n^{([)}i]\nu^{([)}ij]+n^{([)}j]\nu^{([)}ji]}+\frac{\rho^{([)}i]\nu^{([)}ij](|\boldsymbol{u}^{([)}i]|^{2}-|\boldsymbol{u}^{([)}ij]|^{2})+\rho^{([)}j]\nu^{([)}ji](|\boldsymbol{u}^{([)}j]|^{2}-|\boldsymbol{u}^{([)}ji]|^{2})}{3(n^{([)}i]\nu^{([)}ij]+n^{([)}j]\nu^{([)}ji])}.\end{gathered} (3.22)

To approximate the BGK collision term under the framework of the Hermite expansion, we choose the same expansion center [𝟎,ζ([)i]][\boldsymbol{0},\zeta^{([)}i]] as in (3.1). Thus, the BGK collision term (2.13) could be expanded as

𝒬([)ij]BGK(𝒗)=α3Q([)ij]α,BGKα([)i](𝒗),\mathcal{Q}^{([)}ij]_{\rm BGK}(\boldsymbol{v})=\sum_{\alpha\in\mathbb{N}^{3}}Q^{([)}ij]_{\alpha,\rm BGK}\mathcal{H}_{\alpha}^{([)}i](\boldsymbol{v}), (3.23)

where

Q([)ij]α,BGK=ν([)ij]n([)j][(Π[𝟎,ζ([)i]](𝒖([)ij],T([)ij]m([)i]))αf([)i]α].Q^{([)}ij]_{\alpha,\rm BGK}=\nu^{([)}ij]n^{([)}j]\Bigg{[}\bigg{(}\Pi_{[\boldsymbol{0},\zeta^{([)}i]]}\left(\mathcal{M}_{\boldsymbol{u}^{([)}ij],\frac{T^{([)}ij]}{m^{([)}i]}}\right)\bigg{)}_{\alpha}-f^{([)}i]_{\alpha}\Bigg{]}. (3.24)

Here Π[𝟎,ζ([)i]](f)\Pi_{[\boldsymbol{0},\zeta^{([)}i]]}(f) is the operator defined as below.

Definition.

First, define the function space, 𝔽\mathbb{F} and [𝐮¯,θ¯]\mathbb{H}[\overline{\boldsymbol{u}},\overline{\theta}] as

𝔽={f(𝒗)|3(1+|𝒗|N)f(𝒗)d𝒗<,N},[𝒖¯,θ¯]=span{α𝒖¯,θ¯(𝒗)|α3}𝔽.\begin{split}&\mathbb{F}=\left\{f(\boldsymbol{v})\Big{|}\int_{\mathbb{R}^{3}}(1+|\boldsymbol{v}|^{N})f(\boldsymbol{v})\mathrm{d}\boldsymbol{v}<\infty,\;\forall N\in\mathbb{N}\right\},\\ &\mathbb{H}[\overline{\boldsymbol{u}},\overline{\theta}]=\text{span}\left\{\mathcal{H}_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})\Big{|}\alpha\in\mathbb{N}^{3}\right\}\subset\mathbb{F}.\end{split} (3.25)

Assume that for t>0,𝐱Ω,f(t,𝐱,)𝔽t>0,\boldsymbol{x}\in\Omega,f(t,\boldsymbol{x},\cdot)\in\mathbb{F}, then the projection operator Π[𝐮¯,θ¯]:𝔽[𝐮¯,θ¯]\Pi_{[\overline{\boldsymbol{u}},\overline{\theta}]}:\mathbb{F}\to\mathbb{H}[\overline{\boldsymbol{u}},\overline{\theta}] is defined as

Π[𝒖¯,θ¯](f)=α3[(1α!3Hα𝒖¯,θ¯(𝒗)f(𝒗)d𝒗)α𝒖¯,θ¯(𝒗)].\Pi[\overline{\boldsymbol{u}},\overline{\theta}](f)=\sum_{\alpha\in\mathbb{N}^{3}}\left[\left(\frac{1}{\alpha!}\int_{\mathbb{R}^{3}}H_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})f(\boldsymbol{v})\mathrm{d}\boldsymbol{v}\right)\mathcal{H}_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})\right]. (3.26)

In the simulation, the expansion coefficient for the the Maxwellian 𝒖([)ij],T([)ij]m([)i]\mathcal{M}_{\boldsymbol{u}^{([)}ij],\frac{T^{([)}ij]}{m^{([)}i]}} in (3.24) is calculated using the Theorem 2 instead of the definition of the projection operator (3.26), and readers can be referred to [20, Theorem 3.1] for the related proof and the implementation of this projection algorithm.

Theorem 2.

Suppose f(𝐯)𝔽f(\boldsymbol{v})\in\mathbb{F} is expanded with two different expansion centers [𝐮¯([)1],θ¯([)1]][\overline{\boldsymbol{u}}^{([)}1],\overline{\theta}^{([)}1]] and [𝐮¯([)2],θ¯([)2]][\overline{\boldsymbol{u}}^{([)}2],\overline{\theta}^{([)}2]]. From (2.17), we can compute these two sets of expansion coefficients as

fα[𝒖¯([)1],θ¯([)1]]=1α!Hα𝒖¯([)1],θ¯([)1](𝒗)f(𝒗)d𝒗fα[𝒖¯([)2],θ¯([)2]]=1α!Hα𝒖¯([)2],θ¯([)2](𝒗)f(𝒗)d𝒗\begin{split}&f^{[\overline{\boldsymbol{u}}^{([)}1],\overline{\theta}^{([)}1]]}_{\alpha}=\frac{1}{\alpha!}\int H_{\alpha}^{\overline{\boldsymbol{u}}^{([)}1],\overline{\theta}^{([)}1]}(\boldsymbol{v})f(\boldsymbol{v})\mathrm{d}\boldsymbol{v}\\ &f^{[\overline{\boldsymbol{u}}^{([)}2],\overline{\theta}^{([)}2]]}_{\alpha}=\frac{1}{\alpha!}\int H_{\alpha}^{\overline{\boldsymbol{u}}^{([)}2],\overline{\theta}^{([)}2]}(\boldsymbol{v})f(\boldsymbol{v})\mathrm{d}\boldsymbol{v}\\ \end{split} (3.27)

Then we have

fα[𝒖¯([)2],θ¯([)2]]=(θ¯([)2])|α|2l=0|α|ϕα([)l],f^{[\overline{\boldsymbol{u}}^{([)}2],\overline{\theta}^{([)}2]]}_{\alpha}=\Big{(}\overline{\theta}^{([)}2]\Big{)}^{-\frac{|\alpha|}{2}}\sum_{l=0}^{|\alpha|}\phi_{\alpha}^{([)}l], (3.28)

where ϕα([)l]\phi_{\alpha}^{([)}l] is defined recursively by

ϕα([)l]={(θ¯([)1])|α|2f[𝒖¯([)1],θ¯([)1]]α,l=0,1ld=13[(𝒖¯([)2]𝒖¯([)1])ϕαed([)l1]+12(θ¯([)2]θ¯([)1])ϕα2ed([)l1]],1l|α|.\phi_{\alpha}^{([)}l]=\left\{\begin{array}[]{ll}\Big{(}\overline{\theta}^{([)}1]\Big{)}^{\frac{|\alpha|}{2}}f^{[\overline{\boldsymbol{u}}^{([)}1],\overline{\theta}^{([)}1]]}_{\alpha},&l=0,\\ \frac{1}{l}\sum_{d=1}^{3}\left[\Big{(}\overline{\boldsymbol{u}}^{([)}2]-\overline{\boldsymbol{u}}^{([)}1]\Big{)}\phi_{\alpha-e_{d}}^{([)}l-1]+\frac{1}{2}\Big{(}\overline{\theta}^{([)}2]-\overline{\theta}^{([)}1]\Big{)}\phi_{\alpha-2e_{d}}^{([)}l-1]\right],&1\leqslant l\leqslant|\alpha|.\end{array}\right. (3.29)

In (3.29), terms with any negative index are regarded as 0.

3.2.2 Building new collision model

In the problem that is far from equilibrium, the BGK model could not describe the movements of the particles well, so the quadratic collision model should be utilized. However, the quadratic collision is quite expensive to simulate. Thus, we want to build a new collision model combining the quadratic and BGK collision model.

For the single-species Boltzmann equation, the BGK collision model could not give the correct Prandtl number [34], and the Shakhov model has fixed this problem by modifying the Maxwellian term in the BGK model. To build the new collision model, we borrow this idea from the Shakhov model. Instead of modifying the Maxwellian, we will revise the expansion coefficients of the collision model under the framework of the Hermite spectral method.

In the new collision model, we first choose M0>0M_{0}>0 to decide the length of the expansion coefficients which are derived from the quadratic collision term, then the rest are obtained from the BGK collision model. Precisely, the new collision model could be written as

Q([)ij]new=Q([)ij]α,newα([)i](𝒗),Q^{([)}ij]_{\rm new}=\sum Q^{([)}ij]_{\alpha,\rm new}\mathcal{H}_{\alpha}^{([)}i](\boldsymbol{v}), (3.30)

with

Q([)ij]α,new={|λ|,|κ|M0Aα,λ,κ(ij)(𝒖,ζ([)i])fλ([)i]fκ([)j],|α|M0,ν([)ij]M0Q([)ij]α,BGK,|α|>M0.Q^{([)}ij]_{\alpha,\rm new}=\left\{\begin{array}[]{ll}\sum\limits_{|\lambda|,|\kappa|\leqslant M_{0}}A_{\alpha,\lambda,\kappa}^{(ij)}(\boldsymbol{u},\zeta^{([)}i])f_{\lambda}^{([)}i]f_{\kappa}^{([)}j],&|\alpha|\leqslant M_{0},\\[11.38109pt] \nu^{([)}ij]_{M_{0}}Q^{([)}ij]_{\alpha,\rm BGK},&|\alpha|>M_{0}.\end{array}\right. (3.31)

Here, ν([)ij]M0\nu^{([)}ij]_{M_{0}} are some positive constants deciding the damping rate, where we follow the same idea in [20] to decide this parameter. Since Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} could be regarded as a matrix respect to λ\lambda and κ\kappa for each fixed α\alpha, and then, we set ν([)ij]M0\nu^{([)}ij]_{M_{0}} as the minimum of all eigenvalues of Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} among |α|M0|\alpha|\leqslant M_{0}. Building the new collision model (3.30) here could also be understood as combining the quadratic and BGK collision models as in [20, 35]. In this way, the computational cost for the quadratic collision part in the new collision model will be 𝒪(s2M09)\mathcal{O}(s^{2}M_{0}^{9}), which will be reduced greatly compared to (3.2).

For the new collision model, the length of the quadratic collision model M0M_{0} is problem-dependent as the further the system from the equilibrium, the larger M0M_{0} is needed. However, there is no standard principle to decide M0M_{0}. There is an adaptive method in [6] to choose M0M_{0}, which is still an initial work, and we have not adopted the algorithm therein.

Remark 2.

In this section, we are focusing on approximating the quadratic collision term in the homogeneous problem. Therefore, the expansion center to calculate the expansion coefficients Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} and build the new collision model (3.30) is set as [𝟎,ζ([)i]][\boldsymbol{0},\zeta^{([)}i]]. As is stated in Remark 1, the expansion center could be chosen arbitrarily, so as the expansion of the BGK collision term (3.23). The transition between different expansion centers could be derived through Theorem 2, and we refer the readers to [20] for more details.

4 Moment equations and numerical algorithm

In the last section, we have explained the approximation of the quadratic collision term for the homogeneous problem under the framework of the Hermite expansion. In this section, the numerical scheme to solve the whole Boltzmann equation (2.2) will be introduced. We will first introduce the moment systems in the framework of the Hermite expansions. Since the Strang splitting is adopted to solve the convection and collision part separately, the moment equations will also be derived for the convection and collision step. Precisely, the Boltzmann equation (2.2) is split into the convection step and the collision step as

  • convection step:

    f([)i]t+𝒗𝒙f([)i]=0,\frac{\partial{f^{([)}i]}}{\partial{t}}+\boldsymbol{v}\cdot\nabla_{\boldsymbol{x}}f^{([)}i]=0, (4.1)
  • collision step:

    f([)i]t=j=1s1Knij𝒬([)ij][f([)i],f([)j]].\frac{\partial{f^{([)}i]}}{\partial{t}}=\sum_{j=1}^{s}\frac{1}{{\rm Kn}_{ij}}\mathcal{Q}^{([)}ij][f^{([)}i],f^{([)}j]]. (4.2)

4.1 Moment equations

To obtain the finite moment system, we first conduct a truncation of the expansion (2.16) as

f([)i](t,𝒙,𝒗)|α|Mfα([)i](t,𝒙)𝒖¯([)i],θ¯([)i](𝒗)M[𝒖¯(i),θ¯(i)],M,f^{([)}i](t,\boldsymbol{x},\boldsymbol{v})\approx\sum_{|\alpha|\leqslant M}f_{\alpha}^{([)}i](t,\boldsymbol{x})\mathcal{H}^{\overline{\boldsymbol{u}}^{([)}i],\overline{\theta}^{([)}i]}(\boldsymbol{v})\in\mathbb{H}_{M}[\overline{\boldsymbol{u}}^{(i)},\overline{\theta}^{(i)}],\qquad M\in\mathbb{N}, (4.3)

where the expansion center is chosen differently for the convection and collision step, and M[𝒖¯(i),θ¯(i)]\mathbb{H}_{M}[\overline{\boldsymbol{u}}^{(i)},\overline{\theta}^{(i)}] is the functional space

M[𝒖¯,θ¯]=span{α𝒖¯,θ¯(𝒗)||α|M}.\mathbb{H}_{M}[\overline{\boldsymbol{u}},\overline{\theta}]=\text{span}\left\{\mathcal{H}_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})\Big{|}|\alpha|\leqslant M\right\}. (4.4)

For the convection step, we follow the framework in [20], and the identical expansion center all over the spatial space is utilized for each species. Precisely, the choice of [𝒖¯([)i],θ¯([)i]][\overline{\boldsymbol{u}}^{([)}i],\overline{\theta}^{([)}i]] is based on a priori estimation of the problem such that the expansion center is not too far away from the average macroscopic variables. Then, substituting (4.3) into (4.1), we could derive the moment equations for the convection part as

𝒇([)i]t+d=13𝑨d𝒇([)i]xd=0.\frac{\partial{\boldsymbol{f}^{([)}i]}}{\partial{t}}+\sum_{d=1}^{3}\boldsymbol{A}_{d}\frac{\partial{\boldsymbol{f}^{([)}i]}}{\partial{x_{d}}}=0. (4.5)

where 𝒇([)i]\boldsymbol{f}^{([)}i] is a column vector of all fα([)i]f_{\alpha}^{([)}i] for |α|M|\alpha|\leqslant M and 𝑨d\boldsymbol{A}_{d} is a constant matrix made up by the convection term, the detailed form of which can be referred to [20] and will be omitted here. Moreover, without loss of generality, we will record 𝒇([)i]\boldsymbol{f}^{([)}i] as 𝒇([)i]M[𝒖¯(i),θ¯(i)]\boldsymbol{f}^{([)}i]\in\mathbb{H}_{M}[\overline{\boldsymbol{u}}^{(i)},\overline{\theta}^{(i)}] if the corresponding distribution function f([)i]M[𝒖¯(i),θ¯(i)]f^{([)}i]\in\mathbb{H}_{M}[\overline{\boldsymbol{u}}^{(i)},\overline{\theta}^{(i)}]. For the collision term, the expansion center could be the same as the convection term, the same expansion center as in Sec. 3, or some other choices could also be utilized. For any expansion center, substituting (4.3) into (4.2) and matching the basis functions on both sides, we can derive the moment equations for the collision step as

f([)i]αt=j=1s1KnijQ([)ij]α,|α|M.\frac{\partial{f^{([)}i]_{\alpha}}}{\partial{t}}=\sum_{j=1}^{s}\frac{1}{{\rm Kn}_{ij}}Q^{([)}ij]_{\alpha},\qquad|\alpha|\leqslant M. (4.6)

To solve the moment equations of the convection step (4.5) and the collision step (4.6), the standard finite volume method will be adopted, which we will introduce in detail in the following sections.

Here, we also want to emphasize that if different expansion centers are utilized for the convection and the collision steps, the transition of the distribution functions between different expansion centers can be achieved with Theorem 2.

4.2 Numerical scheme

Supposing the spatial domain Ω3\Omega\in\mathbb{R}^{3} is discretized by a uniform grid with the cell size Δ𝒙\Delta\boldsymbol{x} and the cell centers 𝒙k=(xk1,xk2,xk3)\boldsymbol{x}_{k}=(x_{k_{1}},x_{k_{2}},x_{k_{3}}). Using 𝒇([)i]n,kM[𝒖¯(i),θ¯(i)]\boldsymbol{f}^{([)}i]_{n,k}\in\mathbb{H}_{M}[\overline{\boldsymbol{u}}^{(i)},\overline{\theta}^{(i)}] to approximate the average of 𝒇([)i]\boldsymbol{f}^{([)}i] over the kkth grid cell at time tnt^{n}, then we will introduce the numerical scheme for the Boltzmann equation. It will split into two steps, which we will begin from the convection step. The system (4.5) can be solved by the forward-Euler method with time step length Δt\Delta t as follows:

𝒇n,k(i),𝒇([)i]n,kΔt+d=13𝑭([)i]n,k+12ed𝑭([)i]n,k12edΔxd=0,\frac{\boldsymbol{f}^{(i),\ast}_{n,k}-\boldsymbol{f}^{([)}i]_{n,k}}{\Delta t}+\sum_{d=1}^{3}\frac{\boldsymbol{F}^{([)}i]_{n,k+\frac{1}{2}e_{d}}-\boldsymbol{F}^{([)}i]_{n,k-\frac{1}{2}e_{d}}}{\Delta x_{d}}=0, (4.7)

where the finite volume method is employed for spatial discretization and 𝒇n,k(i),\boldsymbol{f}^{(i),\ast}_{n,k} is the result of convection step (4.5). 𝑭([)i]n,k+12ed\boldsymbol{F}^{([)}i]_{n,k+\frac{1}{2}e_{d}} is the HLL flux [18] given by

𝑭([)i]n,k+12ed={Ad𝒇n,k+12ed(i),L,λdL0,λdRAd𝒇n,k+12ed(i),LλdLAd𝒇n,k+12ed(i),R+λdRλdL(𝒇n,k+12ed(i),R𝒇n,k+12ed(i),L)λdRλdL,λdL<0<λdR,Ad𝒇n,k+12ed(i),R,λdR0,\boldsymbol{F}^{([)}i]_{n,k+\frac{1}{2}e_{d}}=\left\{\begin{array}[]{ll}A_{d}\boldsymbol{f}_{n,k+\frac{1}{2}e_{d}}^{(i),L},&\lambda^{L}_{d}\geqslant 0,\\ \frac{\lambda_{d}^{R}A_{d}\boldsymbol{f}_{n,k+\frac{1}{2}e_{d}}^{(i),L}-\lambda_{d}^{L}A_{d}\boldsymbol{f}_{n,k+\frac{1}{2}e_{d}}^{(i),R}+\lambda_{d}^{R}\lambda_{d}^{L}\left(\boldsymbol{f}_{n,k+\frac{1}{2}e_{d}}^{(i),R}-\boldsymbol{f}_{n,k+\frac{1}{2}e_{d}}^{(i),L}\right)}{\lambda_{d}^{R}-\lambda_{d}^{L}},&\lambda^{L}_{d}<0<\lambda^{R}_{d},\\[5.69054pt] A_{d}\boldsymbol{f}_{n,k+\frac{1}{2}e_{d}}^{(i),R},&\lambda^{R}_{d}\leqslant 0,\end{array}\right. (4.8)

where 𝒇n,k+12ed(i),L\boldsymbol{f}_{n,k+\frac{1}{2}e_{d}}^{(i),L} and 𝒇n,k12ed(i),R\boldsymbol{f}_{n,k-\frac{1}{2}e_{d}}^{(i),R} can be computed with the linear reconstruction (also used in [20])

𝒈dn=𝒇n,k+ed𝒇n,ked2Δx,𝒇n,k+12edL=𝒇n,k+12Δx𝒈dn,𝒇n,k12edR=𝒇n,k12Δx𝒈dn,\begin{split}&\boldsymbol{g}_{d}^{n}=\frac{\boldsymbol{f}_{n,k+e_{d}}-\boldsymbol{f}_{n,k-e_{d}}}{2\Delta x},\\ &\boldsymbol{f}_{n,k+\frac{1}{2}e_{d}}^{L}=\boldsymbol{f}_{n,k}+\frac{1}{2}\Delta x\boldsymbol{g}_{d}^{n},\\ &\boldsymbol{f}_{n,k-\frac{1}{2}e_{d}}^{R}=\boldsymbol{f}_{n,k}-\frac{1}{2}\Delta x\boldsymbol{g}_{d}^{n},\end{split} (4.9)

or the 3-order WENO reconstruction [29]

𝒇L,1=32𝒇n,k12𝒇n,ked,𝒇L,2=12𝒇n,k+12𝒇n,k+ed,𝒇R,1=32𝒇n,k12𝒇n,k+ed,𝒇R,2=12𝒇n,k+12𝒇n,ked,ωL,1=γ1[ε+(𝒇n,k𝒇n,ked)2]2,ωL,2=γ2[ε+(𝒇n,k+ed𝒇n,k)2]2,ωR,1=γ1[ε+(𝒇n,k+ed𝒇n,k)2]2,ωR,2=γ2[ε+(𝒇n,k𝒇n,ked)2]2,𝒇n,k+12edL=ωL,1𝒇L,1+ωL,2𝒇L,2ωL,1+ωL,2,𝒇n,k12edR=ωR,1𝒇R,1+ωR,2𝒇R,2ωR,1+ωR,2,ε=106,γ1=13,γ2=23,\begin{split}&\boldsymbol{f}^{L,1}=\frac{3}{2}\boldsymbol{f}_{n,k}-\frac{1}{2}\boldsymbol{f}_{n,k-e_{d}},\quad\boldsymbol{f}^{L,2}=\frac{1}{2}\boldsymbol{f}_{n,k}+\frac{1}{2}\boldsymbol{f}_{n,k+e_{d}},\\ &\boldsymbol{f}^{R,1}=\frac{3}{2}\boldsymbol{f}_{n,k}-\frac{1}{2}\boldsymbol{f}_{n,k+e_{d}},\quad\boldsymbol{f}^{R,2}=\frac{1}{2}\boldsymbol{f}_{n,k}+\frac{1}{2}\boldsymbol{f}_{n,k-e_{d}},\\ &\omega_{L,1}=\frac{\gamma_{1}}{\Big{[}\varepsilon+(\boldsymbol{f}_{n,k}-\boldsymbol{f}_{n,k-e_{d}})^{2}\Big{]}^{2}},\quad\omega_{L,2}=\frac{\gamma_{2}}{\Big{[}\varepsilon+(\boldsymbol{f}_{n,k+e_{d}}-\boldsymbol{f}_{n,k})^{2}\Big{]}^{2}},\\ &\omega_{R,1}=\frac{\gamma_{1}}{\Big{[}\varepsilon+(\boldsymbol{f}_{n,k+e_{d}}-\boldsymbol{f}_{n,k})^{2}\Big{]}^{2}},\quad\omega_{R,2}=\frac{\gamma_{2}}{\Big{[}\varepsilon+(\boldsymbol{f}_{n,k}-\boldsymbol{f}_{n,k-e_{d}})^{2}\Big{]}^{2}},\\ &\boldsymbol{f}_{n,k+\frac{1}{2}e_{d}}^{L}=\frac{\omega_{L,1}\boldsymbol{f}^{L,1}+\omega_{L,2}\boldsymbol{f}^{L,2}}{\omega_{L,1}+\omega_{L,2}},\quad\boldsymbol{f}_{n,k-\frac{1}{2}e_{d}}^{R}=\frac{\omega_{R,1}\boldsymbol{f}^{R,1}+\omega_{R,2}\boldsymbol{f}^{R,2}}{\omega_{R,1}+\omega_{R,2}},\\ &\varepsilon=10^{-6},\quad\gamma_{1}=\frac{1}{3},\quad\gamma_{2}=\frac{2}{3},\end{split} (4.10)

where the square of 𝒇\boldsymbol{f} in (4.10) indicates squaring by each expansion coefficient, and the superscript (i)(i) of 𝒇\boldsymbol{f} is omitted in (4.9) and (4.10) for simplicity.

In (4.8), λdL\lambda_{d}^{L} and λdR\lambda_{d}^{R} are the minimum and maximum eigenvalue of Ad,d=1,2,3A_{d},d=1,2,3 respectively. Due to the same form of AdA_{d} here as in [20], λdL\lambda_{d}^{L} and λdR\lambda_{d}^{R} are set as λdL=u¯dCM+1θ¯\lambda_{d}^{L}=\overline{u}_{d}-C_{M+1}\sqrt{\overline{\theta}} and λdR=u¯d+CM+1θ¯\lambda_{d}^{R}=\overline{u}_{d}+C_{M+1}\sqrt{\overline{\theta}}. The time step is chosen to satisfy the CFL condition as

Δtd=13|u¯d|+CM+1θ¯Δxd<1.\Delta t\sum_{d=1}^{3}\frac{|\overline{u}_{d}|+C_{M+1}\sqrt{\overline{\theta}}}{\Delta x_{d}}<1. (4.11)

After obtaining the results 𝒇n,k(i),\boldsymbol{f}^{(i),\ast}_{n,k} at each cell in the convection step, we will update the collision step. Since the expansion center of the convection step and the collision step may be different, we will apply the algorithm in Theorem 2 to obtain the new expansion coefficients in the expansion center of the collision step.

For the collision step, we choose a similar expansion center as in Sec. 3. Precisely, the expansion center for species ii is [𝒖n+1,k,𝒯n+1,k/m([)i]][\boldsymbol{u}_{n+1,k},\mathcal{T}_{n+1,k}/m^{([)}i]], where 𝒖n+1,k\boldsymbol{u}_{n+1,k} is the the average macroscopic velocity in (2.8) and 𝒯n+1,k\mathcal{T}_{n+1,k} is the average temperature in (2.11) in the kk-th cell at time step n+1n+1. Since the collision term does not change the average macroscopic velocity and the average temperature in each cell, the expansion center [𝒖n+1,k,𝒯n+1,k/m([)i]][\boldsymbol{u}_{n+1,k},\mathcal{T}_{n+1,k}/m^{([)}i]] here is computed using the distribution function 𝒇n,k(i),\boldsymbol{f}^{(i),\ast}_{n,k} after the convection step. Thus, with the projection operator defined in (3.26), we first compute 𝒇n,k(i),\boldsymbol{f}^{(i),\ast\ast}_{n,k} as

𝒇n,k(i),=Π[𝒖n+1,k,𝒯n+1,k/m([)i]](𝒇n,k(i),).\boldsymbol{f}^{(i),\ast\ast}_{n,k}=\Pi\left[\boldsymbol{u}_{n+1,k},\mathcal{T}_{n+1,k}/m^{([)}i]\right](\boldsymbol{f}^{(i),\ast}_{n,k}). (4.12)

Then, at the kk-th cell, we compute the collision term 𝑸([)ij]new,n,k\boldsymbol{Q}^{([)}ij]_{\rm new,n,k} in (3.31) with the distribution function 𝒇n,k(i),\boldsymbol{f}^{(i),\ast\ast}_{n,k}. The forward-Euler scheme is adopted here to update the distribution function in the collision step (4.6) as

𝒇n,k(i),=𝒇n,k(i),+Δtj=1s1Knij𝑸([)ij]new,n,k.\boldsymbol{f}^{(i),\ast\ast\ast}_{n,k}=\boldsymbol{f}^{(i),\ast\ast}_{n,k}+\Delta t\sum_{j=1}^{s}\frac{1}{Kn_{ij}}\boldsymbol{Q}^{([)}ij]_{\rm new,n,k}. (4.13)

The final step is to project the distribution function 𝒇n,k(i),\boldsymbol{f}^{(i),\ast\ast\ast}_{n,k} to the expansion center [𝒖¯([)i],θ¯([)i]][\overline{\boldsymbol{u}}^{([)}i],\overline{\theta}^{([)}i]] of the convection step as

𝒇([)i]n+1,k=Π[𝒖¯([)i],θ¯([)i]](𝒇n,k(i),).\boldsymbol{f}^{([)}i]_{n+1,k}=\Pi[\overline{\boldsymbol{u}}^{([)}i],\overline{\theta}^{([)}i]](\boldsymbol{f}^{(i),\ast\ast\ast}_{n,k}). (4.14)

For the forward Euler scheme in (4.14), the Runge-Kutta scheme could also be utilized, and the time step Δt\Delta t may also be restricted by the collision term. A small enough and problem-dependent Δt\Delta t should be adopted, which we will not discuss in detail here. The Maxwell boundary condition [30] is adopted here and the detailed implementation can be referred to [20].

For now, we have finished the whole numerical scheme, and it will be summarized as Algorithm 1.

Algorithm 1 Numerical algorithm for one time step
1:Given 𝒇n,k([)i]M[𝒖¯([)i],θ¯([)i]]\boldsymbol{f}_{n,k}^{([)}i]\in\mathbb{H}_{M}[\overline{\boldsymbol{u}}^{([)}i],\overline{\theta}^{([)}i]] at each cell kk for time step tnt_{n}.
2:Solve the convection step (4.5) with the numerical scheme (4.7) to gain
𝒇n,k(i),M[𝒖¯(i),θ¯(i)].\boldsymbol{f}^{(i),\ast}_{n,k}\in\mathbb{H}_{M}[\overline{\boldsymbol{u}}^{(i)},\overline{\theta}^{(i)}].
3:Calculate the expansion center 𝒖n+1,k,𝒯n+1,k\boldsymbol{u}_{n+1,k},\mathcal{T}_{n+1,k} of 𝒇n,k(i),\boldsymbol{f}^{(i),\ast}_{n,k} at each cell kk.
4:In each cell, obtain 𝒇n,k(i),\boldsymbol{f}^{(i),\ast\ast}_{n,k} with (4.12).
5:Compute the collision term 𝑸([)ij]new,n,k\boldsymbol{Q}^{([)}ij]_{\rm new,n,k} in (3.31) with 𝒇n,k(i),\boldsymbol{f}^{(i),\ast\ast}_{n,k}.
6:Update 𝒇n,k(i),\boldsymbol{f}^{(i),\ast\ast\ast}_{n,k} with the forward Euler scheme (4.13).
7:Obtain the final 𝒇n+1,k([)i]M[𝒖¯([)i],θ¯([)i]]\boldsymbol{f}_{n+1,k}^{([)}i]\in\mathbb{H}_{M}[\overline{\boldsymbol{u}}^{([)}i],\overline{\theta}^{([)}i]] with (4.14) and enter the next time step.

5 Numerical experiments

In this section, several numerical examples are studied to validate the numerical algorithm proposed in the last section. Precisely, the spatial homogeneous test with Krook-Wu solution, two spatially one-dimensional and a spatially two-dimensional problem are tested. For the spatially non-homogeneous problems, the SPARTA [9] is utilized to obtain the reference solution with DSMC method, and the mixture of Argon and Krypton is taken as the working gas, the parameters of which are listed in Tab. 9 in App. 7.4. In the final example, we study the Krook-Wu solution with 100100 species to show the superiority of this numerical method.

5.1 Spatially homogeneous case: Krook-Wu solution

For the spatially homogeneous problem, we will consider a constant collision kernel. In this case, the spatially homogeneous two-species Boltzmann equation can be simplified as

f(i)t(t,𝒗)=j=1s3S2Bij[f([)i](𝒗)f([)j](𝒗)f([)i](𝒗)f([)j](𝒗)]dςd𝒗,\frac{\partial{f^{(i)}}}{\partial{t}}(t,\boldsymbol{v})=\sum_{j=1}^{s}\int_{\mathbb{R}^{3}}\int_{S^{2}}B_{ij}\left[f^{([)}i](\boldsymbol{v}^{\prime})f^{([)}j](\boldsymbol{v}^{\prime}_{\ast})-f^{([)}i](\boldsymbol{v})f^{([)}j](\boldsymbol{v}_{\ast})\right]\mathrm{d}\varsigma\mathrm{d}\boldsymbol{v}_{\ast}, (5.1)

where s=2s=2 is the number of species. Bij=Bji=λij4πn(j)B_{ij}=B_{ji}=\frac{\lambda_{ij}}{4\pi n^{(j)}} and λij\lambda_{ij} are some positive constants. This problem is also studied in [21, 35]. There exists an exact solution to this problem [25] as

f(i)(t,𝒗)=n([)i](m([)i]2πK(t))32exp(m([)i]|𝒗|22K(t))[13piQ(t)+m([)i]K(t)piQ(t)|𝒗|2],f^{(i)}(t,\boldsymbol{v})=n^{([)}i]\left(\frac{m^{([)}i]}{2\pi K(t)}\right)^{\frac{3}{2}}\exp\left(-\frac{m^{([)}i]|\boldsymbol{v}|^{2}}{2K(t)}\right)\left[1-3p_{i}Q(t)+\frac{m^{([)}i]}{K(t)}p_{i}Q(t)|\boldsymbol{v}|^{2}\right], (5.2)

where

p1=λ22λ21μ(32μ),p2=λ11λ12μ(32μ),Q(t)=AAexp(A(t+t0))B,K(t)=n([)1]+n([)2](n([)1]+n([)2])+2(n([)1]p1+n([)2]p2)Q(t),\begin{gathered}p_{1}=\lambda_{22}-\lambda_{21}\mu(3-2\mu),\qquad p_{2}=\lambda_{11}-\lambda_{12}\mu(3-2\mu),\\ Q(t)=\frac{A}{A\exp(A(t+t_{0}))-B},\qquad K(t)=\frac{n^{([)}1]+n^{([)}2]}{(n^{([)}1]+n^{([)}2])+2(n^{([)}1]p_{1}+n^{([)}2]p_{2})Q(t)},\end{gathered} (5.3)

with

μ=4m([)1]m([)2](m([)1]+m([)2])2,A=16[λ11+λ21μ(32μp2p1)],B=2p1A,\mu=\frac{4m^{([)}1]m^{([)}2]}{(m^{([)}1]+m^{([)}2])^{2}},\qquad A=\frac{1}{6}\left[\lambda_{11}+\lambda_{21}\mu\left(3-2\mu\frac{p_{2}}{p_{1}}\right)\right],\qquad B=2p_{1}A, (5.4)

and t0t_{0} is a constant. The number density n([)i]n^{([)}i] should be chosen such that Bij=BjiB_{ij}=B_{ji}, while the mass m([)i]m^{([)}i] can be arbitrary with the following condition satisfied

(p1p2)[2μ2(λ21p1λ12p2)1]=0.(p_{1}-p_{2})\left[2\mu^{2}\left(\frac{\lambda_{21}}{p_{1}}-\frac{\lambda_{12}}{p_{2}}\right)-1\right]=0. (5.5)

Here, we choose the same parameters as in [35] that n([)1]=n([)2]=1n^{([)}1]=n^{([)}2]=1, (m([)1],m([)2])=(1,2)(m^{([)}1],m^{([)}2])=(1,2), and the constant t0=3t_{0}=3. Moreover, the constants λij\lambda_{ij} are chosen as (λ11,λ12)=(1,0.5)(\lambda_{11},\lambda_{12})=(1,0.5), and (λ21,λ22)=(0.5,1)(\lambda_{21},\lambda_{22})=(0.5,1).

It can be directly computed from (5.2) that the average temperature is 𝒯=1\mathcal{T}=1, and therefore we choose the expansion center as [𝒖¯([)i],θ¯([)i]]=[𝟎,𝒯/m([)i]],i=1,2.[\overline{\boldsymbol{u}}^{([)}i],\overline{\theta}^{([)}i]]=[\boldsymbol{0},\mathcal{T}/m^{([)}i]],\;i=1,2. Based on this expansion center, we can obtain the expansion coefficient fα([)i](t)f_{\alpha}^{([)}i](t) of the exact solution (5.2) as

fα([)i](t)={1|α|2α!j=13[(αj1)!!](2pi)|α|2exp(|α|2A(t+t0)),α1,α2,α3all even,0,Otherwise,f_{\alpha}^{([)}i](t)=\left\{\begin{array}[]{ll}\frac{1-\frac{|\alpha|}{2}}{\alpha!}\prod\limits_{j=1}^{3}\Big{[}(\alpha_{j}-1)!!\Big{]}(-2p_{i})^{\frac{|\alpha|}{2}}\exp\left(-\frac{|\alpha|}{2}A(t+t_{0})\right),&\alpha_{1},\alpha_{2},\alpha_{3}\;\text{all even},\\ 0,&\text{Otherwise},\end{array}\right. (5.6)

for all α3\alpha\in\mathbb{N}^{3} and i=1,2i=1,2.

In the computation, the time step length is fixed as Δt=0.01\Delta t=0.01, and the fourth-order Runge-Kutta scheme is adopted. The total expansion order MM is M=20M=20, and two cases with different length of the quadratic collision term M0M_{0} are tested, where M0M_{0} is set as M0=5M_{0}=5 and M0=10M_{0}=10 respectively. The numerical results of f400(t)f_{400}(t) from t=0t=0 to t=5t=5 are given in Fig. 1, since the expansion coefficients for the lower orders are all constant with respect to tt. We can find that for the two cases, the numerical results of both species all match well with the exact solution at any time.

Refer to caption
(a) Species 1, M0=5M_{0}=5
Refer to caption
(b) Species 2, M0=5M_{0}=5
Refer to caption
(c) Species 1, M0=10M_{0}=10
Refer to caption
(d) Species 2, M0=10M_{0}=10
Figure 1: Krook-Wu solution with two species in Sec. 5.1: Numerical results of f400f_{400}. Blue lines are numerical solutions, while red lines are exact solution.

To see the numerical results of the distribution function more clearly, we randomly select several vectors σS2\sigma\in S^{2} for each species and show the results of f(𝒗)f(\boldsymbol{v}) along σ\sigma at time t=0.5t=0.5 and t=1t=1, which are shown in Fig. 2. In Fig. 2, three cases are plotted with (M,M0)=(20,5),(10,10),(20,10)(M,M_{0})=(20,5),(10,10),(20,10) respectively. For the case (20,5)(20,5), there is an obvious distance between the numerical solution and the exact solution, and for the case (10,10)(10,10), the numerical solution is still far away from the numerical solution, while the results for the case (20,10)(20,10) are almost on top of the exact solution. From this, we can see that with the increase of M0M_{0}, the numerical solution could describe the distribution function better. The results in Fig. 2 also show that the MM-order approximation is much better than those with M0M_{0}-order, which exhibits the importance of the expansion coefficients with the order higher than M0M_{0} and validates the advantage of this numerical algorithm as well.

Refer to caption
(a) Species 1, t=0.5t=0.5
Refer to caption
(b) Species 2, t=0.5t=0.5
Refer to caption
(c) Species 1, t=1t=1
Refer to caption
(d) Species 2, t=1t=1
Figure 2: Krook-Wu solution with two species in Sec. 5.1: Distribution functions with different expansion order for the two species at different time. The top row is at t=0.5t=0.5 while the bottom row is at t=1t=1. Blue lines correspond to the results with M0=5,M=20M_{0}=5,M=20; Cyan lines correspond to M0=10,M=10M_{0}=10,M=10; Green lines correspond to M0=10,M=20M_{0}=10,M=20, and red lines correspond to exact solutions.

5.2 1D case: Couette flow

In this section, we will consider the Couette flow, which is also tested in [21, 20]. The Ar-Kr mixture between two infinite parallel plates with a distance of 10310^{-3}m will be studied when they arrive at the steady state. Both the left and right plates have the temperature T=273T=273K and move in the opposite direction along with the plate with the speed uw=(0,50,0)u^{w}=(0,\mp 50,0) m/s. Besides, both walls are purely diffusive. The VSS collision model (1.5) is utilized here, the detailed parameters of which are shown in Tab. 9. In this simulation, a uniform grid with 2525 cells is utilized for the spatial discretization with the WENO reconstruction adopted. The CFL condition is set as CFL=0.45{\rm CFL}=0.45. Three tests with different number densities are carried out, which are corresponding to different Knudsen numbers. The detailed parameters for the initial conditions are listed in Tab. 2, where the parameters for the nondimensionalization are also listed. With (2.5), we can obtain the corresponding Knudsen number for the three cases as in Tab. 2.

Case 1 Case 2 Case 3
Initial conditions:
Temperature TT(K) 273273 273 273
Velocity 𝒗\boldsymbol{v} (m/s) (0, 0, 0) (0, 0, 0) (0, 0, 0)
Number density nArn_{\rm Ar}(m-3) 1.68e21 5.6e20 1.68e20
Number density nKrn_{\rm Kr}(m-3) 8.009e20 2.667e20 8.009e19
Characteristic variables:
Length x0x_{0} (m) 1e-3 1e-3 1e-3
Mass m0m_{0} (kg) 6.63e-27 6.63e-27 6.63e-27
Number density n0n_{0}(m-3) 1.68e21 5.6e20 1.68e20
Temperature TT(K) 273 273 273
Velocity u0u_{0}(m/s) 238.377 238.377 238.377
Knudsen number (Kn11({\rm Kn}_{11}, Kn12){\rm Kn}_{12}) (0.793, 0.804) (2.379, 2.411) (7.931, 8.036)
Knudsen number (Kn21({\rm Kn}_{21}, Kn22){\rm Kn}_{22}) (0.606, 0.555) (1.819, 1.664) (6.065, 5.548)
Table 2: Couette flow in Sec. 5.2: Running parameters for Couette flow.
Refer to caption
(a) yy-component velocity, u2u_{2} (m/s)
Refer to caption
(b) Temperature, TT(K)
Refer to caption
(c) Stress tensor, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Refer to caption
(d) Heat flux, q1q_{1} (kg \cdot s-3)
Figure 3: Couette flow in Sec. 5.2: Numerical solutions of the Couette flow for case 1, where the Knudsen number is (Kn11,Kn12)=(0.793,0.804)({\rm Kn}_{11},{\rm Kn}_{12})=(0.793,0.804) and (Kn21,Kn22)=(0.606,0.555)({\rm Kn}_{21},{\rm Kn}_{22})=(0.606,0.555).
Refer to caption
(a) yy-component velocity, u2u_{2} (m/s)
Refer to caption
(b) Temperature, TT(K)
Refer to caption
(c) Stress tensor, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Refer to caption
(d) Heat flux, q1q_{1} (kg \cdot s-3)
Figure 4: Couette flow in Sec. 5.2: Numerical solutions of the Couette flow for case 2, where the Knudsen number is (Kn11,Kn12)=(2.379,3.411)({\rm Kn}_{11},{\rm Kn}_{12})=(2.379,3.411) and (Kn21,Kn22)=(1.819,1.664)({\rm Kn}_{21},{\rm Kn}_{22})=(1.819,1.664).
Refer to caption
(a) yy-component velocity, u2u_{2} (m/s)
Refer to caption
(b) Temperature, TT(K)
Refer to caption
(c) Stress tensor, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Refer to caption
(d) Heat flux, q1q_{1} (kg \cdot s-3)
Figure 5: Couette flow in Sec. 5.2: Numerical solutions of the Couette flow for case 3, where the Knudsen number is (Kn11,Kn12)=(7.931,8.036)({\rm Kn}_{11},{\rm Kn}_{12})=(7.931,8.036) and (Kn21,Kn22)=(6.065,5.548)({\rm Kn}_{21},{\rm Kn}_{22})=(6.065,5.548).

For the Couette flow, the average macroscopic velocity of the whole domain is zero. Therefore, we choose the expansion center for the convection step as 𝒖¯Ar=𝒖¯Kr=𝟎\overline{\boldsymbol{u}}_{\rm Ar}=\overline{\boldsymbol{u}}_{\rm Kr}=\boldsymbol{0}. The average temperature for the initial condition after non-dimensionalization is 𝒯Ar=𝒯Kr=1\mathcal{T}_{\rm Ar}=\mathcal{T}_{\rm Kr}=1. Therefore, in the convection step, the expansion center of temperature is set as θ¯Ar=𝒯Ar/m^Ar=1\overline{\theta}_{\rm Ar}=\mathcal{T}_{\rm Ar}/\hat{m}_{\rm Ar}=1 and θ¯Kr=𝒯Kr/m^Kr=0.477\overline{\theta}_{\rm Kr}=\mathcal{T}_{\rm Kr}/\hat{m}_{\rm Kr}=0.477, where m^Ar\hat{m}_{\rm Ar} and m^Kr\hat{m}_{\rm Kr} are the mass after non-dimensionalization. In the collision step, the expansion center will be decided by local macroscopic variables. The details can be referred to Algorithm 1.

In the simulation, the macroscopic velocity in the yy-direction u2u_{2}, temperature TT, stress tensor σ12\sigma_{12}, and the heat flux q1q_{1} are studied. In the first case, since the Knudsen number is relatively small, we set the length of the quadratic collision term as M0=10M_{0}=10, and the total moment number as M=40M=40. The numerical results are shown in Fig. 3, from which we can see that for these both species Ar and Kr, the numerical solutions of these four variables match well with the reference solutions obtained by the DSMC method. Though there is a little difference in the temperature between the numerical solution and the reference, the relative error is less than 0.1%0.1\%. For the second case, we still set M0=10M_{0}=10 and M=40M=40. The behavior of the numerical solution is similar to that of the first case, as is shown in Fig. 4, where the numerical solution and the reference solution are almost on top of each other. For the third case, since the Knudsen number is relatively large, we increase MM to 6060 and keep M0=10M_{0}=10 due to the limitation of the computational cost. From Fig. 5, we can see that for the two species, though there is a little disparity between the numerical solution and the reference solution for the velocity u2u_{2} and the heat flux q1q_{1} on the boundary, the relative error is quite small. We also find that in this case, there are small oscillations for the reference solution in temperature TT, while the numerical results are still quite smooth.

Case 1 Case 2 Case 3
Run-time data:
Total CPUtime TCPUT_{\rm CPU}(s): 15264 17217 27273
Elapsed time(Wall time) TWallT_{\rm Wall}(s): 4923.69 6600.08 10164.6
Table 3: Couette flow in Sec. 5.2: Run-time data for Couette flow.

The simulation of the Couette flow is done on the CPU model Intel Xeon E5-2697A V4 @ 2.6GHz, and 4 threads are used in this test. We implement the simulation for a long enough time to obtain the steady-state solution. In the real simulation, the final time for the simulation is t=10t=10 for all three cases. The total CPU time and wall time are recorded in Tab. 3, from which we can see that the computational time is increasing with the increase of MM. The computational time also shows the high efficiency of this Hermite spectral method, even for the quite rarefied cases.

5.3 1D case: Fourier heat transfer

The second example of the 1D case is the Fourier heat transfer problem, which is also widely studied [21, 20, 19]. In this example, we also consider the Ar-Kr mixture between two infinitely large plates. Similar to the Couette flow, the distance between the walls is 10310^{-3}m, and both boundaries are assumed to be purely diffusive. Different from the Couette flow, the Fourier heat transfer problem considers a distinction of temperature instead of velocity on two walls. In this example, a different collision model, the VHS model, is adopted for the collision term, the detailed parameters of which are listed in Tab. 9. For the Fourier heat transfer problem, the steady-state solution is studied and the DSMC method is utilized to obtain the reference solution.

In the simulation, the same WENO reconstruction with 2525 uniform grid cells and CFL=0.45{\rm CFL}=0.45 is utilized as the Couette flow problem. Two different number densities and two different boundary conditions are tested. The detailed parameters for the initial and boundary conditions are listed in Tab. 4, where the parameters for the nondimensionalization are also listed. The same expansion centers [𝒖¯Ar,θ¯Ar]=[𝟎,1][\overline{\boldsymbol{u}}_{\rm Ar},\overline{\theta}_{\rm Ar}]=[\boldsymbol{0},1] and [𝒖¯Kr,θ¯Kr]=[𝟎,0.477][\overline{\boldsymbol{u}}_{\rm Kr},\overline{\theta}_{\rm Kr}]=[\boldsymbol{0},0.477] are adopted here for the convection step while the expansion centers of the collision step are decided with local macroscopic variables as in Algorithm 1.

Case 1 Case 2 Case 3 Case 4
Initial conditions
Temperature TT(K) 273 273 273 273
Velocity 𝒗\boldsymbol{v} (m/s) (0, 0, 0) (0, 0, 0) (0 ,0, 0) (0, 0, 0)
Number density nArn_{\rm Ar}(m-3) 1.68e21 5.6e20 1.68e21 5.6e20
Number density nKrn_{\rm Kr}(m-3) 8.009e20 2.667e20 8.009e20 2.667e20
Characteristic variables
Length x0x_{0} (m) 1e-3 1e-3 1e-3 1e-3
Mass m0m_{0} (kg) 6.63e-27 6.63e-27 6.63e-27 6.63e-27
Number density n0n_{0}(m-3) 1.68e21 5.6e20 1.68e21 5.6e20
Temperature TT(K) 273 273 273 273
Velocity u0u_{0}(m/s) 238.377 238.377 238.377 238.377
Knudsen number (Kn11(Kn_{11}, Kn12)Kn_{12}) (0.77, 0.782) (2.311, 2.346) (0.77, 0.782) (2.311, 2.346)
Knudsen number (Kn21(Kn_{21}, Kn22)Kn_{22}) (0.54, 0.591) (1.62, 1.774) (0.54, 0.591) (1.62, 1.774)
Boundary conditions
Left wall temperature TlT_{l}(K) 223 223 109.2 109.2
Right wall temperature TrT_{r}(K) 323 323 436.8 436.8
Table 4: Fourier heat transfer in Sec. 5.3: Running parameters for Fourier heat transfer.
Refer to caption
(a) Density, ρ\rho (m-3)
Refer to caption
(b) Temperature, TT(K)
Refer to caption
(c) Stress tensor, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Refer to caption
(d) Heat flux, q1q_{1} (kg \cdot s-3)
Figure 6: Fourier heat transfer in Sec. 5.3: Numerical results of Fourier heat transfer for case 1, where the Knudsen number is (Kn11,Kn12)=(0.77,0.782)({\rm Kn}_{11},{\rm Kn}_{12})=(0.77,0.782) and (Kn21,Kn22)=(0.54,0.591)({\rm Kn}_{21},{\rm Kn}_{22})=(0.54,0.591), and the temperature of the boundary condition is (Tl,Tr)=(223,323)(T_{l},T_{r})=(223,323).
Refer to caption
(a) Density, ρ\rho (m-3)
Refer to caption
(b) Temperature, TT(K)
Refer to caption
(c) Stress tensor, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Refer to caption
(d) Heat flux, q1q_{1} (kg \cdot s-3)
Figure 7: Fourier heat transfer in Sec. 5.3: Numerical results of Fourier heat transfer for case 2, where the Knudsen number is (Kn11,Kn12)=(2.311,2.346)({\rm Kn}_{11},{\rm Kn}_{12})=(2.311,2.346) and (Kn21,Kn22)=(1.62,1.774)({\rm Kn}_{21},{\rm Kn}_{22})=(1.62,1.774), and the temperature of the boundary condition is (Tl,Tr)=(223,323)(T_{l},T_{r})=(223,323).
Refer to caption
(a) Density, ρ\rho (m-3)
Refer to caption
(b) Temperature, TT(K)
Refer to caption
(c) Stress tensor, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Refer to caption
(d) Heat flux, q1q_{1} (kg \cdot s-3)
Figure 8: Fourier heat transfer in Sec. 5.3: Numerical results of Fourier heat transfer for case 2, where the Knudsen number is (Kn11,Kn12)=(0.77,0.782)({\rm Kn}_{11},{\rm Kn}_{12})=(0.77,0.782) and (Kn21,Kn22)=(0.54,0.591)({\rm Kn}_{21},{\rm Kn}_{22})=(0.54,0.591), and the temperature of the boundary condition is (Tl,Tr)=(109.2,436.8)(T_{l},T_{r})=(109.2,436.8).
Refer to caption
(a) Density, ρ\rho (m-3)
Refer to caption
(b) Temperature, TT(K)
Refer to caption
(c) Stress tensor, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Refer to caption
(d) Heat flux, q1q_{1} (kg \cdot s-3)
Figure 9: Fourier heat transfer in Sec. 5.3: Numerical results of Fourier heat transfer for case 4, where the Knudsen number is (Kn11,Kn12)=(2.311,2.346)({\rm Kn}_{11},{\rm Kn}_{12})=(2.311,2.346) and (Kn21,Kn22)=(1.62,1.774)({\rm Kn}_{21},{\rm Kn}_{22})=(1.62,1.774), and the temperature of the boundary condition is (Tl,Tr)=(109.2,436.8)(T_{l},T_{r})=(109.2,436.8).

For the Fourier heat transfer problem, the density ρ\rho, temperature TT, stress tensor σ12\sigma_{12}, and heat flux q1q_{1} are studied. In the first and second cases in Tab. 4, since that difference between the two boundary conditions is small, which are (Tl,Tr)=(223,323)(T_{l},T_{r})=(223,323), we set the order of the total moment number and the length of the quadratic collision term as (M,M0)=(40,10)(M,M_{0})=(40,10). The numerical results are shown in Fig. 6 and 7. In Fig. 6, the numerical solutions match well with the reference solutions, and there are some oscillations in the reference solutions in the stress tensor, while those of the numerical solutions are still smooth. In Fig. 7, for the temperature TT, stress tensor σ12\sigma_{12}, and heat flux q1q_{1} all match well with the reference solution, although there is a little discrepancy for the density on the left boundary. However, the relative error is still quite small, which is about 1%1\%.

In the third and fourth cases in Tab. 4, the boundary condition is chosen as (Tl,Tr)=(109.3,436.8)(T_{l},T_{r})=(109.3,436.8), where the ratio of the temperature is 1:41:4. In case 3, since the Knudsen number is still small, we set (M,M0)=(40,10)(M,M_{0})=(40,10), the results of which are shown in Fig. 8. Most of the numerical solutions and the reference solutions are on top of each other, excepting the little difference in the stress tensor. In case 4, we increase MM to 6060 due to the large Knudsen number and keep M0=10M_{0}=10 due to the limitation of the computational cost. Fig. 9 shows that even for this large Knudsen number and the ratio of temperature on the boundary condition, we can still catch the behavior of the two species.

The Fourier heat transfer problem is simulated using the same machine as the Couette flow problem. Here, the final computation time is still t=10t=10, and the total CPU time and wall time are shown in Tab. 5. We can find that with the same MM, the total run times for the first three cases are almost the same, while that of the fourth case is much longer, which may be due to the large Knudsen number and the high ratio of the temperature on the boundary conditions.

Case 1 Case 2 Case 3 Case 4
Run-time data:
Total CPUtime TCPUT_{\rm CPU}(s): 16384 17599 16978 43887
Elapsed time(Wall time) TWallT_{\rm Wall}(s): 5238.95 5839.7 5366.48 18839.9
Table 5: Fourier heat transfer in Sec. 5.3: Run-time data for Fourier heat transfer.

5.4 2D case: Lid-driven cavity flow

In this section, the two-dimensional lid-driven cavity flow is studied, which is also tested in [20, 5, 28]. In this test, the Ar-Kr mixture is also taken as the working gas, and the HS collision kernel is utilized here in the collision model, the detailed parameters of which are listed in Tab. 9. For the lid-driven cavity flow, the gas is confined in a square cavity with side length L=103mL=10^{-3}m. All walls are purely diffusive and have temperature T=273KT=273K. The top lid moves to the right with a constant speed (50,0,0)m/s(50,0,0)m/s, while the other three boundaries are stationary.

In this simulation, a uniform grid with 100×100100\times 100 cells is utilized for the spatial discretization with the linear reconstruction adopted. The CFL condition is set as CFL=0.3{\rm CFL}=0.3. Two tests with different number densities are carried out, which are corresponding to different Knudsen numbers. The detailed parameters for the initial conditions are listed in Tab. 6, where the parameters for the non-dimensionalization are also listed. With (2.5), we can obtain the corresponding Knudsen number for the two cases as in Tab. 6. The same expansion centers [𝒖¯Ar,θ¯Ar]=[𝟎,1][\overline{\boldsymbol{u}}_{\rm Ar},\overline{\theta}_{\rm Ar}]=[\boldsymbol{0},1] and [𝒖¯Kr,θ¯Kr]=[𝟎,0.477][\overline{\boldsymbol{u}}_{\rm Kr},\overline{\theta}_{\rm Kr}]=[\boldsymbol{0},0.477] as the Couette flow and Fourier heat transfer problem are adopted here for the convection step. For the collision step, the expansion centers are also decided with local macroscopic variables as in Algorithm 1.

Case 1 Case 2
Initial conditions
Temperature TT(K) 273 273
Velocity 𝒗\boldsymbol{v} (m/s) (0, 0, 0) (0, 0, 0)
Number density nArn_{\rm Ar}(m-3) 1.708e22 1.708e21
Number density nKrn_{\rm Kr}(m-3) 8.141e21 8.141e20
Characteristic variables
Mass m0m_{0} (kg) 6.63e-27 6.63e-27
Number density n0n_{0}(m-3) 1.68e21 5.6e20
Temperature TT(K) 273 273
Velocity u0u_{0}(m/s) 238.377 238.377
Knudsen number (Kn11Kn_{11}, Kn12Kn_{12}) (0.1, 0.101) (1, 1.014)
Knudsen number (Kn21Kn_{21}, Kn22Kn_{22}) (0.07, 0.076) (0.7, 0.762)
Table 6: Lid-driven cavity flow in Sec. 5.4: Running parameters for the cavity flow.

In the simulation, the temperature TT and the stress tensor σ12\sigma_{12} of the two species are studied. For case 1 in Tab. 6, since the Knudsen number is small, we set the total expansion order and the length of the quadratic collision term as (M,M0)=(25,10)(M,M_{0})=(25,10). The numerical results are plotted in Fig. 10, where we find that the numerical solution matches well with the reference solution obtained by the DSMC method. Moreover, small oscillations exist in the reference solution of the temperature, while the numerical solution keeps smooth. For case 2 in Tab. 6, we set (M,M0)(M,M_{0}) as (M,M0)=(30,10)(M,M_{0})=(30,10), and the numerical results are shown in Fig. 11. We find that for the case with increased Knudsen number, the numerical results and the reference solution are also almost the same, except that the reference solution has some oscillations and the numerical solutions are all smooth.

Refer to caption
(a) Temperature of Ar, TT(K)
Refer to caption
(b) Stress tensor of Ar, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Refer to caption
(c) Temperature of Kr, TT(K)
Refer to caption
(d) Stress tensor of Kr, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Figure 10: Lid-driven cavity flow in Sec. 5.4: Numerical results of the lid-driven cavity flow for case 1, where the Knudsen number is (Kn11,Kn12)=(0.1,0.101)({\rm Kn}_{11},{\rm Kn}_{12})=(0.1,0.101) and (Kn21,Kn22)=(0.07,0.076)({\rm Kn}_{21},{\rm Kn}_{22})=(0.07,0.076). Blue contours: Numerical solution. Red contours: Reference solution by DSMC.
Refer to caption
(a) Temperature of Ar, TT(K)
Refer to caption
(b) Stress tensor of Ar, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Refer to caption
(c) Temperature of Kr, TT(K)
Refer to caption
(d) Stress tensor of Kr, σ12\sigma_{12} (kg\cdot m-1 \cdot s-2)
Figure 11: Lid-driven cavity flow in Sec. 5.4: Numerical results of the lid-driven cavity flow for case 2, where the Knudsen number is (Kn11,Kn12)=(1.0,1.01)({\rm Kn}_{11},{\rm Kn}_{12})=(1.0,1.01) and (Kn21,Kn22)=(0.7,0.76)({\rm Kn}_{21},{\rm Kn}_{22})=(0.7,0.76). Blue contours: Numerical solution. Red contours: Reference solution by DSMC.

5.5 100-species KW solution

To verify the superiority of the numerical methods proposed in Algorithm 1 in the cost of time and space, we again implement the KW solution test in 5.1. The difference is that we will consider the 100-species case, which is much more challenging in the required memory and running time. The numerical simulation with such a quantity of species is unreachable by most methods with acceptable consumption of time and space. The general ss-species Boltzmann equation with constant collision kernel has the same form as in (5.1), and it also has the exact solution [25], the form of which is similar to (5.2). Precisely, the exact solution has the form below

f(i)(t,𝒗)=n([)i](m([)i]2πK)32exp(m([)i]|𝒗|22K)[13Q+m([)i]KQ|𝒗|2],f^{(i)}(t,\boldsymbol{v})=n^{([)}i]\left(\frac{m^{([)}i]}{2\pi K}\right)^{\frac{3}{2}}\exp\left(-\frac{m^{([)}i]|\boldsymbol{v}|^{2}}{2K}\right)\left[1-3Q+\frac{m^{([)}i]}{K}Q|\boldsymbol{v}|^{2}\right], (5.7)

where

A=16,n([)i]=1,m([)i]=i,s=100,μij=4m([)i]m([)j](m([)i])2+(m([)j])2,λij=1sμij(32μij),Q=1exp(A(t+t0))2,K=11+2Q.\begin{gathered}A=\frac{1}{6},\qquad n^{([)}i]=1,\qquad m^{([)}i]=i,\qquad s=100,\qquad\mu_{ij}=\frac{4m^{([)}i]m^{([)}j]}{(m^{([)}i])^{2}+(m^{([)}j])^{2}},\\ \lambda_{ij}=\frac{1}{s\mu_{ij}(3-2\mu_{ij})},\qquad Q=\frac{1}{\exp(A(t+t_{0}))-2},\qquad K=\frac{1}{1+2Q}.\end{gathered} (5.8)

Here t0t_{0} is a constant which is large enough to ensure f([)i]f^{([)}i] is positive for each ii, and we set t0=20t_{0}=20. The same expansion center [𝒖¯([)i],θ¯([)i]]=[𝟎,1/m([)i]][\overline{\boldsymbol{u}}^{([)}i],\overline{\theta}^{([)}i]]=[\boldsymbol{0},1/{m^{([)}i]}] is utilized here for each species as in Sec. 5.1. The corresponding coefficients can be computed as

fα([)i](t)={(1|α|2)(2)|α|2α!j=13[(α([)j]1)!!]exp(|α|2A(t+t0)),α1,α2,α3all even,0,otherwise.\begin{split}f_{\alpha}^{([)}i](t)=\left\{\begin{array}[]{ll}\frac{(1-\frac{|\alpha|}{2})(-2)^{\frac{|\alpha|}{2}}}{\alpha!}\prod_{j=1}^{3}\Big{[}(\alpha^{([)}j]-1)!!\Big{]}\exp(-\frac{|\alpha|}{2}A(t+t_{0})),&\alpha_{1},\alpha_{2},\alpha_{3}\;\text{all even},\\ 0,&\text{otherwise}.\end{array}\right.\end{split} (5.9)

In the simulation, the fourth-order Runge-Kutta scheme with the time step length Δt=0.01\Delta t=0.01 is utilized. The total expansion order MM and the length of the quadratic collision M0M_{0} is set as (M,M0)=(20,10)(M,M_{0})=(20,10). To show the efficiency of this new method, instead of showing the numerical solutions, we evaluate the relative L2L^{2} error and weighted L2L^{2} error

E([)i]=[3|f([)i]num(𝒗)f([)i]exact(𝒗)|2d𝒗]12[3|f([)i]exact(𝒗)|2d𝒗]12,E([)i]w=[3|f([)i]num(𝒗)f([)i]exact(𝒗)|2(([)i](𝒗))1d𝒗]12[3|f([)i]exact(𝒗)|2(([)i](𝒗))1d𝒗]12\begin{split}E^{([)}i]&=\frac{\left[\int_{\mathbb{R}^{3}}|f^{([)}i]_{\text{num}}(\boldsymbol{v})-f^{([)}i]_{\text{exact}}(\boldsymbol{v})|^{2}\mathrm{d}\boldsymbol{v}\right]^{\frac{1}{2}}}{\left[\int_{\mathbb{R}^{3}}|f^{([)}i]_{\text{exact}}(\boldsymbol{v})|^{2}\mathrm{d}\boldsymbol{v}\right]^{\frac{1}{2}}},\\ E^{([)}i]_{w}&=\frac{\left[\int_{\mathbb{R}^{3}}|f^{([)}i]_{\text{num}}(\boldsymbol{v})-f^{([)}i]_{\text{exact}}(\boldsymbol{v})|^{2}(\mathcal{M}^{([)}i](\boldsymbol{v}))^{-1}\mathrm{d}\boldsymbol{v}\right]^{\frac{1}{2}}}{\left[\int_{\mathbb{R}^{3}}|f^{([)}i]_{\text{exact}}(\boldsymbol{v})|^{2}(\mathcal{M}^{([)}i](\boldsymbol{v}))^{-1}\mathrm{d}\boldsymbol{v}\right]^{\frac{1}{2}}}\end{split} (5.10)

for each species. The integral will be evaluated with the 10-point Gauss-Hermite quadrature in each dimension. Two times t=1t=1 and 55 are recorded, the detailed of which is shown in Tab. 7. We can see that the two errors are all quite small, which are almost at the order 10810^{-8}. The results clearly show the accuracy of this method. Moreover, with time evolution, the distribution function is approximating the Maxwellian, and that is why the error reduces with time increasing.

E([)i]E^{([)}i] t=1t=1 t=5t=5
Average of 100 species: 1.03×1081.03\times 10^{-8} 1.12×1091.12\times 10^{-9}
Maximum: 8.22×1088.22\times 10^{-8} 2.57×1092.57\times 10^{-9}
E([)i]wE^{([)}i]_{w} t=1t=1 t=5t=5
Average of 100 species: 3.90×1083.90\times 10^{-8} 3.58×1093.58\times 10^{-9}
Maximum: 3.35×1073.35\times 10^{-7} 6.95×1096.95\times 10^{-9}
Table 7: 100-species KW solution in Sec. 5.5: Error estimations of the distribution function at time t=1t=1 and 55.

The computational cost including the total computational time and the total memory used is shown in Tab. 8. The simulation is run on the CPU model Intel Xeon E5-2697A V4 @ 2.6GHz with 8 threads. Tab. 8 shows that the computing time for each collision term is only 5.26×1045.26\times 10^{-4}s, which is quite short for such a problem with 100100 species. Moreover, the total memory to store the expansion coefficients Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)}, which are represented in the double-precision floating-point format, is 18.8518.85GB, which is also quite easy to accomplish for computers nowadays. This is due to the special algorithm to calculate Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)}, which is also the unique point in this new method. For Maxwell molecules (i.e., constant collision kernel BijB_{ij}), it has been proved in [35] that γκj(1,1)\gamma_{\kappa}^{j}(1,1) can be nonzero only when |κ|=|j||\kappa|=|j|. Combining (3.9) and (3.20), we know that Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} is nonzero only when |α|=|λ|+|κ||\alpha|=|\lambda|+|\kappa|. Therefore, we only need to store the coefficients of |α|=|λ|+|κ||\alpha|=|\lambda|+|\kappa|. The memory for each Aα,λ,κ(r)A_{\alpha,\lambda,\kappa}(r) can be reduced to 𝒪(M08)\mathcal{O}(M_{0}^{8}). Besides, since the set of expansion coefficients Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} is only decided by the mass ratio r=m([)j]/m([)i]r=m^{([)}j]/m^{([)}i], we only need to store one group of coefficients Aα,λ,κ(ij)A_{\alpha,\lambda,\kappa}^{(ij)} for duplicate rr, which will further reduce the storage cost. Furthermore, the new collision model combined by the quadratic collision term and the BGK collision term will reduce the computational cost and greatly improve the efficiency of this new method. All of these special properties make the simulation of this 100-species KW solution problem possible, while similar simulations are never seen before.

t=1t=1 t=5t=5
Total CPU time(s): 2102 10642
Collision terms computed: 4×1064\times 10^{6} 2×1072\times 10^{7}
CPU time per collision term(s): 5.26×1045.26\times 10^{-4} 5.32×1045.32\times 10^{-4}
Elapsed time(Wall time)(s): 302.02 1759.32
Total memory of Aα,λ,κA_{\alpha,\lambda,\kappa} (Gigabytes): 18.85 18.85
Table 8: 100-species KW solution in Sec. 5.5: Running time & memory at time t=1t=1 and 55.

6 Conclusion

In this paper, we have developed a numerical scheme of multi-species Boltzmann equation based on the Hermite spectral method. A new collision model is built by combing the quadratic collision term and the BGK collision model to balance the computational cost and the accuracy. The expansion coefficients of the quadratic collision model are almost computed with the properties of the Hermite basis functions. Several numerical examples are implemented to validate this new numerical method. Even for problems with 100-species, this new method could capture the behavior of the particles well with a low computational cost.

Such numerical results make this new numerical method promising when applied to high-dimensional and more complicated problems. Moreover, the GPU may be adopted to further speed up and the research on the quantum Boltzmann equations are ongoing.

Acknowledgements

We thank Prof. Zhenning Cai from NUS for his valuable suggestions. The work of Yanli Wang is partially supported by the National Natural Science Foundation of China (Grant No. 12171026, U1930402 and 12031013).

7 Appendix

7.1 Proof of Lemma 1

Now we provide the proof of Lemma 1. For convenience, we will omit the superscript [𝟎,θ¯][\boldsymbol{0},\overline{\theta}] of Hermite polynomials in the proof.

proof of Lemma 1.

First, it is easy to verify that |𝒗|2+|𝒘|2=(1+r)|𝒉|2+r1+r|𝒈|2|\boldsymbol{v}|^{2}+|\boldsymbol{w}|^{2}=(1+r)|\boldsymbol{h}|^{2}+\frac{r}{1+r}|\boldsymbol{g}|^{2}, d𝒗d𝒘\mathrm{d}\boldsymbol{v}\mathrm{d}\boldsymbol{w}=rd𝒈d𝒉\sqrt{r}\mathrm{d}\boldsymbol{g}\mathrm{d}\boldsymbol{h} and

𝒗=11+r𝒉+𝒈,𝒘=r1+r𝒉1r𝒈.\begin{split}\frac{\partial{}}{\partial{\boldsymbol{v}}}=\frac{1}{1+r}\frac{\partial{}}{\partial{\boldsymbol{h}}}+\frac{\partial{}}{\partial{\boldsymbol{g}}},\qquad\frac{\partial{}}{\partial{\boldsymbol{w}}}=\frac{\sqrt{r}}{1+r}\frac{\partial{}}{\partial{\boldsymbol{h}}}-\frac{1}{\sqrt{r}}\frac{\partial{}}{\partial{\boldsymbol{g}}}.\end{split} (7.1)

By the Leibniz rule, we have the following relation:

ld+kdvdldwdkd=id=0ldjd=0kdCldidCkdjd(1)kdjdrjdkd2(1+r)id+jdldhdid+jdkdgdid+jd,d=1,2,3.\frac{\partial{{}^{l_{d}+k_{d}}}}{\partial{v_{d}^{l_{d}}w_{d}^{k_{d}}}}=\sum_{i_{d}=0}^{l_{d}}\sum_{j_{d}=0}^{k_{d}}C_{l_{d}}^{i_{d}}C_{k_{d}}^{j_{d}}\frac{(-1)^{k_{d}-j_{d}}r^{j_{d}-\frac{k_{d}}{2}}}{(1+r)^{i_{d}+j_{d}}}\frac{\partial{{}^{l_{d}}}}{\partial{h_{d}^{i_{d}+j_{d}}}}\frac{\partial{{}^{k_{d}}}}{\partial{g_{d}^{i^{\prime}_{d}+j^{\prime}_{d}}}},\quad d=1,2,3. (7.2)

where id=ldid,jd=kdjdi^{\prime}_{d}=l_{d}-i_{d},j^{\prime}_{d}=k_{d}-j_{d}. Denote

Iλ,κλ,κ(r)33Hλ(𝒗)Hκ(𝒘)Hλ(1+r𝒉)Hκ(r1+r𝒈)(1+r𝒉)(r1+r𝒈)d𝒈d𝒉.\begin{split}I_{\lambda^{\prime},\kappa^{\prime}}^{\lambda,\kappa}(r)\triangleq\int_{\mathbb{R}^{3}}\int_{\mathbb{R}^{3}}&H_{\lambda}(\boldsymbol{v})H_{\kappa}(\boldsymbol{w})H_{\lambda^{\prime}}(\sqrt{1+r}\boldsymbol{h})H_{\kappa^{\prime}}\left(\sqrt{\frac{r}{1+r}}\boldsymbol{g}\right)\mathcal{M}(\sqrt{1+r}\boldsymbol{h})\mathcal{M}\left(\sqrt{\frac{r}{1+r}}\boldsymbol{g}\right)\mathrm{d}\boldsymbol{g}\mathrm{d}\boldsymbol{h}.\end{split} (7.3)

Based on the orthogonality of Hermite polynomials, we only need to prove that

Iλ,κλ,κ(r)={1r32λ!κ!al1k1l1k1(r)al2k2l2k2(r)al3k3l3k3(r),if λ+κ=λ+κ,0,otherwise.I_{\lambda^{\prime},\kappa^{\prime}}^{\lambda,\kappa}(r)=\left\{\begin{array}[]{ll}\frac{1}{r^{\frac{3}{2}}}\lambda^{\prime}!\kappa^{\prime}!a_{l^{\prime}_{1}k^{\prime}_{1}}^{l_{1}k_{1}}(r)a_{l^{\prime}_{2}k^{\prime}_{2}}^{l_{2}k_{2}}(r)a_{l^{\prime}_{3}k^{\prime}_{3}}^{l_{3}k_{3}}(r),&\text{if }\lambda+\kappa=\lambda^{\prime}+\kappa^{\prime},\\ 0,&\text{otherwise}.\end{array}\right. (7.4)

With |𝒗|2+|𝒘|2=(1+r)|𝒉|2+r1+r|𝒈|2|\boldsymbol{v}|^{2}+|\boldsymbol{w}|^{2}=(1+r)|\boldsymbol{h}|^{2}+\frac{r}{1+r}|\boldsymbol{g}|^{2}, we can simplify (7.3) as

Iλ,κλ,κ(r)=33Hλ(𝒗)Hκ(𝒘)Hλ(1+r𝒉)Hκ(r1+r𝒈)(𝒗)(𝒘)d𝒈d𝒉=θ¯|λ|+|κ|233(1)|λ||λ|v1l1v2l2v3l3(𝒗)(1)|κ||κ|w1k1w2k2w3k3(𝒘)Hλ(1+r𝒉)Hκ(r1+r𝒈)d𝒈d𝒉=θ¯|λ|+|κ|233(1+r𝒉)(r1+r𝒈)d=13[id=0ldjd=0kdCldidCkdjd(1)kdjdrjdkd2(1+r)id+jdldhdid+jdkdgdid+jd]Hλ(1+r𝒉)Hκ(r1+r𝒈)d𝒈d𝒉,\begin{split}I_{\lambda^{\prime},\kappa^{\prime}}^{\lambda,\kappa}(r)=&\int_{\mathbb{R}^{3}}\int_{\mathbb{R}^{3}}H_{\lambda}(\boldsymbol{v})H_{\kappa}(\boldsymbol{w})H_{\lambda^{\prime}}(\sqrt{1+r}\boldsymbol{h})H_{\kappa^{\prime}}\left(\sqrt{\frac{r}{1+r}}\boldsymbol{g}\right)\mathcal{M}(\boldsymbol{v})\mathcal{M}(\boldsymbol{w})\mathrm{d}\boldsymbol{g}\mathrm{d}\boldsymbol{h}\\ =&{\overline{\theta}^{\frac{|\lambda|+|\kappa|}{2}}}\int_{\mathbb{R}^{3}}\int_{\mathbb{R}^{3}}(-1)^{|\lambda|}\frac{\partial{{}^{|\lambda|}}}{\partial{v_{1}^{l_{1}}v_{2}^{l_{2}}v_{3}^{l_{3}}}}\mathcal{M}(\boldsymbol{v})(-1)^{|\kappa|}\frac{\partial{{}^{|\kappa|}}}{\partial{w_{1}^{k_{1}}w_{2}^{k_{2}}w_{3}^{k_{3}}}}\mathcal{M}(\boldsymbol{w})\\ &H_{\lambda^{\prime}}(\sqrt{1+r}\boldsymbol{h})H_{\kappa^{\prime}}\left(\sqrt{\frac{r}{1+r}}\boldsymbol{g}\right)\mathrm{d}\boldsymbol{g}\mathrm{d}\boldsymbol{h}\\ =&{\overline{\theta}^{\frac{|\lambda|+|\kappa|}{2}}}\int_{\mathbb{R}^{3}}\int_{\mathbb{R}^{3}}\mathcal{M}(\sqrt{1+r}\boldsymbol{h})\mathcal{M}\left(\sqrt{\frac{r}{1+r}}\boldsymbol{g}\right)\\ &\prod_{d=1}^{3}\left[\sum_{i_{d}=0}^{l_{d}}\sum_{j_{d}=0}^{k_{d}}C_{l_{d}}^{i_{d}}C_{k_{d}}^{j_{d}}\frac{(-1)^{k_{d}-j_{d}}r^{j_{d}-\frac{k_{d}}{2}}}{(1+r)^{i_{d}+j_{d}}}\frac{\partial{{}^{l_{d}}}}{\partial{h_{d}^{i_{d}+j_{d}}}}\frac{\partial{{}^{k_{d}}}}{\partial{g_{d}^{i^{\prime}_{d}+j^{\prime}_{d}}}}\right]H_{\lambda^{\prime}}(\sqrt{1+r}\boldsymbol{h})H_{\kappa^{\prime}}\left(\sqrt{\frac{r}{1+r}}\boldsymbol{g}\right)\mathrm{d}\boldsymbol{g}\mathrm{d}\boldsymbol{h},\end{split} (7.5)

where the second equality uses the definition (2.15) and the third equality is obtained using integration by parts. From the differentiation relation (7.16)

vdHλ={0,if ld=0,ldθ¯Hλed,if ld>0,\frac{\partial{}}{\partial{v_{d}}}H_{\lambda}=\left\{\begin{array}[]{ll}0,&\text{if }l_{d}=0,\\ \frac{l_{d}}{\sqrt{\overline{\theta}}}H_{\lambda-e_{d}},&\text{if }l_{d}>0,\end{array}\right. (7.6)

and the orthogonality (7.13), it holds that (7.5) is nonzero only when id+jd=ldi_{d}+j_{d}=l^{\prime}_{d}, id+jd=kdi^{\prime}_{d}+j^{\prime}_{d}=k^{\prime}_{d}, d=1,2,3d=1,2,3, which implies λ+κ=λ+κ\lambda+\kappa=\lambda^{\prime}+\kappa^{\prime}. When λ+κ=λ+κ\lambda+\kappa=\lambda^{\prime}+\kappa^{\prime} holds, we can apply (7.6) to (7.5) and get

Iλ,κλ,κ(r)λ!κ!=r32d=13[id=0ldjd=0,ld=id+jdkdCldidCkdjd(1)kdjdrjd+kdkd2(1+r)ld+kd2]=1r32al1k1l1k1(r)al2k2l2k2(r)al3k3l3k3(r).\begin{split}\frac{I_{\lambda^{\prime},\kappa^{\prime}}^{\lambda,\kappa}(r)}{\lambda^{\prime}!\kappa^{\prime}!}&=r^{-\frac{3}{2}}\prod_{d=1}^{3}\left[\sum_{i_{d}=0}^{l_{d}}\sum_{j_{d}=0,l^{\prime}_{d}=i_{d}+j_{d}}^{k_{d}}C_{l_{d}}^{i_{d}}C_{k_{d}}^{j_{d}}\frac{(-1)^{k_{d}-j_{d}}r^{j_{d}+\frac{k^{\prime}_{d}-k_{d}}{2}}}{(1+r)^{\frac{l^{\prime}_{d}+k^{\prime}_{d}}{2}}}\right]=\frac{1}{r^{\frac{3}{2}}}a_{l^{\prime}_{1}k^{\prime}_{1}}^{l_{1}k_{1}}(r)a_{l^{\prime}_{2}k^{\prime}_{2}}^{l_{2}k_{2}}(r)a_{l^{\prime}_{3}k^{\prime}_{3}}^{l_{3}k_{3}}(r).\end{split} (7.7)

Thus (7.4) holds, which completes the proof of the lemma. ∎

7.2 The algorithm of γκ𝒋(1,1)\gamma_{\kappa}^{\boldsymbol{j}}(1,1)

In this section, we will briefly introduce the algorithm to obtain γκ𝒋(1,1)\gamma_{\kappa}^{\boldsymbol{j}}(1,1), and readers can be referred to [35, Theorem 2] for the detailed algorithm. As is shown in [35], it holds that

γκ𝒋(1,1)=𝒎3,𝒎κ2𝒏3,𝒏𝒋2(2|κ|4|𝒎|+1)D𝒎κD𝒏𝒋Sκ2𝒎𝒋2𝒏K𝒎𝒏κ𝒋,\gamma_{\kappa}^{\boldsymbol{j}}(1,1)=\sum_{\boldsymbol{m}\in\mathbb{N}^{3},\boldsymbol{m}\preceq\frac{\kappa}{2}}\sum_{\boldsymbol{n}\in\mathbb{N}^{3},\boldsymbol{n}\preceq\frac{\boldsymbol{j}}{2}}(2|\kappa|-4|\boldsymbol{m}|+1)D_{\boldsymbol{m}}^{\kappa}D_{\boldsymbol{n}}^{\boldsymbol{j}}S_{\kappa-2\boldsymbol{m}}^{\boldsymbol{j}-2\boldsymbol{n}}K_{\boldsymbol{m}\boldsymbol{n}}^{\kappa\boldsymbol{j}}, (7.8)

where

D𝒎κ=(1)|𝒎|4π|𝒎|!(2(κ𝒎)+1)!!κ!𝒎!,D_{\boldsymbol{m}}^{\kappa}=\frac{(-1)^{|\boldsymbol{m}|}4\pi|\boldsymbol{m}|!}{(2(\kappa-\boldsymbol{m})+1)!!}\frac{\kappa!}{\boldsymbol{m}!}, (7.9)

and SκλS_{\kappa}^{\lambda} is the coefficient of v1κ1v2κ2v3κ3w1λ1w2λ2w3λ3v_{1}^{\kappa_{1}}v_{2}^{\kappa_{2}}v_{3}^{\kappa_{3}}w_{1}^{\lambda_{1}}w_{2}^{\lambda_{2}}w_{3}^{\lambda_{3}} in the polynomial

R|κ|(𝒗,𝒘):=(|𝒗||𝒘|)|κ|)P|κ|(𝒗|𝒗|𝒘|𝒘|),R_{|\kappa|}(\boldsymbol{v},\boldsymbol{w}):=(|\boldsymbol{v}||\boldsymbol{w}|)^{|\kappa|})P_{|\kappa|}\left(\frac{\boldsymbol{v}}{|\boldsymbol{v}|}\cdot\frac{\boldsymbol{w}}{|\boldsymbol{w}|}\right), (7.10)

and

K𝒎𝒏κ𝒋=00πL|𝒎|(|κ|2|𝒎|+12)(r24)L|𝒏|(|λ|2|𝒏|+12)(r24)×(r2)|κ|+|λ|2(|𝒎|+|𝒏|)+2Bij(r,ς)[P|κ|2|𝒎|(cosχ)1]exp(r24)dχdr,\begin{split}K_{\boldsymbol{m}\boldsymbol{n}}^{\kappa\boldsymbol{j}}=&\int_{0}^{\infty}\int_{0}^{\pi}L_{|\boldsymbol{m}|}^{\Big{(}|\kappa|-2|\boldsymbol{m}|+\frac{1}{2}\Big{)}}\left(\frac{r^{2}}{4}\right)L_{|\boldsymbol{n}|}^{\Big{(}|\lambda|-2|\boldsymbol{n}|+\frac{1}{2}\Big{)}}\left(\frac{r^{2}}{4}\right)\\ &\times\left(\frac{r}{\sqrt{2}}\right)^{|\kappa|+|\lambda|-2(|\boldsymbol{m}|+|\boldsymbol{n}|)+2}B_{ij}(r,\varsigma)\left[P_{|\kappa|-2|\boldsymbol{m}|}(\cos\chi)-1\right]\exp\left(-\frac{r^{2}}{4}\right)\mathrm{d}\chi\mathrm{d}r,\end{split} (7.11)

where Ln(α)(x)L_{n}^{(\alpha)}(x) are the Laguerre polynomials and Pn(x)P_{n}(x) are the Legendre polynomials. Moreover, Bij(r,ς)B_{ij}(r,\varsigma) is in fact decided by (r,χ)(r,\chi) based on (1.4). As for SκλS_{\kappa}^{\lambda}, we can obtain Rk(𝒗,𝒘)R_{k}(\boldsymbol{v},\boldsymbol{w}) with the recursion formula:

R0(𝒗,𝒘)=1,R1(𝒗,𝒘)=𝒗𝒘,Rk+1(𝒗,𝒘)=2k+1k+1(𝒗𝒘)Rk(𝒗,𝒘)kk+1(|𝒗||𝒘|)2Rk1(𝒗,𝒘),\begin{split}&R_{0}(\boldsymbol{v},\boldsymbol{w})=1,\quad R_{1}(\boldsymbol{v},\boldsymbol{w})=\boldsymbol{v}\cdot\boldsymbol{w},\\ &R_{k+1}(\boldsymbol{v},\boldsymbol{w})=\frac{2k+1}{k+1}(\boldsymbol{v}\cdot\boldsymbol{w})R_{k}(\boldsymbol{v},\boldsymbol{w})-\frac{k}{k+1}(|\boldsymbol{v}||\boldsymbol{w}|)^{2}R_{k-1}(\boldsymbol{v},\boldsymbol{w}),\end{split} (7.12)

then we can derive the expression of SκλS_{\kappa}^{\lambda} based on (7.12).

7.3 Properties of Hermite polynomials

For the Hermite polynomials (2.15), several important properties are listed below

Property 1.

(Orthogonality)

3Hα𝒖¯,θ¯(𝒗)Hβ𝒖¯,θ¯(𝒗)𝒖¯,θ¯(𝒗)d𝒗=α1!α2!α3!δα,β.\int_{\mathbb{R}^{3}}H_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})H_{\beta}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})\mathcal{M}_{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})\mathrm{d}\boldsymbol{v}=\alpha_{1}!\alpha_{2}!\alpha_{3}!\delta_{\alpha,\beta}. (7.13)
Property 2.

(Transitivity)

Hα𝒖¯,θ¯(𝒗)=Hα0,ζ(ζθ¯(𝒗𝒖¯)).H_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})=H_{\alpha}^{0,\zeta}\left(\sqrt{\frac{{\zeta}}{{\;\overline{\theta}\;}}}(\boldsymbol{v}-\overline{\boldsymbol{u}})\right). (7.14)
Property 3.

(Recursion)

Hα+ed𝒖¯,θ¯(𝒗)=vdudθ¯Hα𝒖¯,θ¯(𝒗)αdHαed𝒖¯,θ¯(𝒗),andvdHα𝒖¯,θ¯=θ¯Hα+ed𝒖¯,θ¯+udHα𝒖¯,θ¯+αdθ¯Hαed𝒖¯,θ¯.\begin{split}&H^{\overline{\boldsymbol{u}},\overline{\theta}}_{\alpha+e_{d}}(\boldsymbol{v})=\frac{v_{d}-u_{d}}{\sqrt{\overline{\theta}}}H^{\overline{\boldsymbol{u}},\overline{\theta}}_{\alpha}(\boldsymbol{v})-\alpha_{d}H^{\overline{\boldsymbol{u}},\overline{\theta}}_{\alpha-e_{d}}(\boldsymbol{v}),\\ \text{and}\quad&v_{d}H^{\overline{\boldsymbol{u}},\overline{\theta}}_{\alpha}=\sqrt{\overline{\theta}}H^{\overline{\boldsymbol{u}},\overline{\theta}}_{\alpha+e_{d}}+u_{d}H^{\overline{\boldsymbol{u}},\overline{\theta}}_{\alpha}+\alpha_{d}\sqrt{\overline{\theta}}H^{\overline{\boldsymbol{u}},\overline{\theta}}_{\alpha-e_{d}}.\end{split} (7.15)
Property 4.

(Differential of Hermite polynomial)

vdHα𝒖¯,θ¯(𝒗)=αdθ¯Hαed𝒖¯,θ¯(𝒗).\frac{\partial}{\partial v_{d}}H_{\alpha}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v})=\frac{\alpha_{d}}{\sqrt{\overline{\theta}}}H_{\alpha-e_{d}}^{\overline{\boldsymbol{u}},\overline{\theta}}(\boldsymbol{v}). (7.16)

The property of transitivity can be directly derived from the definition (2.15), and the proof of the other properties can be found in [1].

7.4 Solver configurations for spatially inhomogeneous cases

In the numerical simulation, SPARTA [9] is employed to carry out the DSMC simulation as the reference. In spatially inhomogeneous cases, the mixture of Argon and Krypton will be taken as the working gas. Three collision models, the VSS, VHS, and HS collision kernels, are utilized in the simulation. The parameters of these three collision models between Argon and Krypton are shown in Tab. 9, where the reference diameter is derived with [2, Eq. (4.62)].

Collision model for Ar-Kr mixture VSS VHS HS
Molecular mass: m1m_{1} (×1026\times 10^{-26}kg) 6.63 6.63 6.63
Molecular mass: m2m_{2} (×1026\times 10^{-26}kg) 13.91 13.91 13.91
Ref. viscosity: μref,1\mu_{ref,1} (×105\times 10^{-5}Pa s) 2.117 2.117 2.117
Ref. viscosity: μref,2\mu_{ref,2} (×105\times 10^{-5}Pa s) 2.328 2.328 2.328
Viscosity index: (ω11,ω12\omega_{11},\omega_{12}) (0.81, 0.805) (0.81, 0.805) (0.5, 0.5)
Viscosity index: (ω21,ω22\omega_{21},\omega_{22}) (0.805, 0.8) (0.805, 0.8) (0.5, 0.5)
Scattering parameter: (α11,α12\alpha_{11},\alpha_{12}) (1.4, 1.36) (1, 1) (1, 1)
Scattering parameter: (α21,α22\alpha_{21},\alpha_{22}) (1.36, 1.32) (1, 1) (1, 1)
Ref. diameter: (dref,11,dref,12d_{ref,11},d_{ref,12})(×1010m\times 10^{-10}m) (4.11, 4.405) (4.17, 4.465) (3.63, 3.895)
Ref. diameter: (dref,21,dref,22d_{ref,21},d_{ref,22})(×1010m\times 10^{-10}m) (4.405, 4.7) (4.465, 4.76) (3.895, 4.16)
Ref. temperature: (Tref,11,Tref,12T_{ref,11},T_{ref,12})(K) 273 273 273
Ref. temperature: (Tref,21,Tref,22T_{ref,21},T_{ref,22})(K) 273 273 273
Table 9: Parameters for the collision models.

References

  • [1] M. Abramowitz and I. Stegun. Handbook of mathematical functions with formulas, graphs, and mathematical tables. New York: Dover, 1964.
  • [2] G. Bird. Molecular Gas Dynamics and the Direct Simulation of Gas Flows. Oxford: Clarendon Press, 1994.
  • [3] Z. Cai, Y. Fan, and R. Li. Globally hyperbolic regularization of Grad’s moment system in one dimensional space. Comm. Math. Sci., 11(2):547–571, 2013.
  • [4] Z. Cai, Y. Fan, and R. Li. A framework on moment model reduction for kinetic equation. SIAM J. Appl. Math., 75(5):2001–2023, 2015.
  • [5] Z. Cai and M. Torrilhon. Numerical simulation of microflows using moment methods with linearized collision operator. J. Sci. Comput., 74:336–374, 2018.
  • [6] Z. Cai and Y. Wang. Numerical solver for the Boltzmann equation with self-adaptive collision operators. arXiv:2102.08559, 2021.
  • [7] C. Cercignani. The Boltzmann Equation and Its Applications. Springer-Verlag, New York, 1988.
  • [8] G. Dimarco and L. Pareschi. Numerical methods for kinetic equations. Acta Numerica, 23:369–520, 2014.
  • [9] M. Gallis, J. Torczynski, S. Plimpton, D. Rader, T. Koehler, and J. Fan. Direct simulation monte carlo: the quest for speed. AIP Conference Proceedings, 1628(1):27–36, 2014.
  • [10] I. Gamba, J. Haack, C. Hauck, and J. Hu. A fast spectral method for the Boltzmann collision operator with general collision kernels. SIAM J. Sci. Comput., 39(14):B658–B674, 2017.
  • [11] I. Gamba, S. Jin, and L. Liu. Asymptotic-preserving schemes for two-species binary collisional kinetic system with disparate masses i: time discretization and asymptotic analysis. Comm. Math. Sci., 17:1257–1289, 2019.
  • [12] I. Gamba and S. Rjasanow. Galerkin-Petrov approach for the Boltzmann equation. J. Comput. Phys., 366:341–365, 2018.
  • [13] D. Goldstein, B. Sturtevant, and J. E. Broadwell. Investigations of the motion of discrete-velocity gases. Progress in Astronautics and Aeronautics, 117:100–117, 1989.
  • [14] H. Grad. On the kinetic theory of rarefied gases. Comm. Pure Appl. Math., 2(4):331–407, 1949.
  • [15] J. Haack, C. Hauck, C. Klingenberg, M. Pirner, and S. Warnecke. A consistent BGK model with velocity-dependent collision frequency for gas mixtures. J. Stat. Phys., 184(31), 2021.
  • [16] J. Haack, C. Hauck, and M. Murillo. A conservative entropic multispecies BGK model. J. Stat. Phys., 168:826–856, 2017.
  • [17] S. Harris. An introduction to the theory of the Boltzmann equation. Holt, Rinehart and Winston, Inc., 1971.
  • [18] A. Harten, P. Lax, and B. Leer. On upstream differencing and Godunov-type schemes for hyperbolic conservation laws. SIAM Rev., 25(1):35–61, 1983.
  • [19] Z. Hu and Z. Cai. Burnett spectral method for high-speed rarefied gas flows. SIAM J. Sci. Comput., 42(5):B1193–B1226, 2020.
  • [20] Z. Hu, Z. Cai, and Y. Wang. Numerical simulation of microflows using Hermite spectral methods. SIAM J. Sci. Comput., 42(1):B105–B134, 2020.
  • [21] S. Jaiswal, A. Alexeenko, and J. Hu. A discontinuous Galerkin fast spectral method for the multi-species Boltzmann equation. Comput. Methods Appl. Mech. Engrg., 352:56–84, 2019.
  • [22] C. Klingenberg, M. Pirner, and G. Puppo. A consistent kinetic model for a two-component mixture with an application to plasma. Kinet. Relat. Models, 10(2):445–465, 2017.
  • [23] J. Koellermeier and M. Torrilhon. Numerical study of partially conservative moment equations in kinetic theory. Commun. Comput. Phys., 21(4):981–1011, 2017.
  • [24] K. Koura and H. Matsumoto. Variable soft sphere molecular model for inverse-power-law or Lennard-Jones potential. Phys. Fluids A, 3(10), 1991.
  • [25] M. Krook and T. T. Wu. Exact solutions of the Boltzmann equation. Phys. Fluids, 20(10):1589–1595, 1977.
  • [26] R. Li, Y. Ren, and Y. Wang. Hermite spectral method for Fokker-Planck-Landau equation modeling collisional plasma. J. Comput. Phys., 434:110235, 2021.
  • [27] R. Li, Y. Wang, and Y. Wang. Approximation to singular quadratic collision model in Fokker-Planck-Landau equation. SIAM J. Sci. Comput., 42(3):B792–B815, 2020.
  • [28] C. Liu and K. Xu. A unified gas-kinetic scheme for micro flow simulation based on linearized kinetic equation. Adv. Aerodyn., 2(21), 2020.
  • [29] X. Liu, S. Osher, and T. Chan. Weighted essentially non-oscillatory schemes. J. Comput. Phys., 115:200–212, 1994.
  • [30] J. Maxwell. On stresses in rarefied gases arising from inequalities of temperature. Proc. R. Soc. Lond., 27:304–308, 1878.
  • [31] C. Mouhot and L. Pareschi. Fast algorithms for computing the Boltzmann collision operator. Math. Comp., 75(256):1833–1852, 2006.
  • [32] A. Panferov and A. Heintz. A new consistent discrete-velocity model for the Boltzmann equation. Math. Method Appl. Sci., 25(7):571–593, 2002.
  • [33] L. Pareschi and B. Perthame. A Fourier spectral method for homogeneous Boltzmann equa- tions. Transport Theor. Stat., 25:369–382, 1996.
  • [34] H. Struchtrup. Macroscopic Transport Equations for Rarefied Gas Flows: Approximation Methods in Kinetic Theory. Springer, 2005.
  • [35] Y. Wang and Z. Cai. Approximation of the Boltzmann collision operator based on hermite spectral method. J. Comput. Phys., 397:108815, 2019.
  • [36] L. Wu, J. Zhang, J. Reese, and Y. Zhang. A fast spectral method for the Boltzmann equation for monatomic gas mixtures. J. Comput. Phys., 298:602–621, 2015.