# Evolution of Flow and Streaming in Exponential Variable Cross-Section Resonators
## Two-Dimensional GKS-BGK Model
### GKS on the Triangle Mesh  
The numerical scheme introduced in Reference [23] can be modified such that it can be implemented on unconstructed grids. The unconstructed mesh must be applied when the computation region is not regular, such as a closed resonator with variable cross-section. Figure 1 shows a schematic of unconstructed triangle mesh.  
In Figure 1, \(\mathbf{W}_{i-1},\cdots,\mathbf{W}_{i+2}\) denote the average macroscopic quantities for the \(i\)-1 th,..., \(i\)+2 th triangle grid, respectively, and \(e\) is one of the sides for the \(i\)th grid, with unit outer normal vector \(\mathbf{n}~{}=~{}\big{(}n_{x},n_{y}\big{)}^{T}\) and unit tangent vector \(\mathbf{t}~{}=~{}\big{(}-n_{y},n_{x}\big{)}^{T}\).  
A crucial step in the application of the GKS on a triangle mesh is to compute the fluxes through the grid sides. Taking side \(e\) as an example, the computational method for the fluxes through the side \(e\) is as follows. First, the least square method, but not limited to, is applied to reconstruct the gradients for the macroscopic values in the meshes \(i\) and \(i\)+1. Then, local coordinate system \(x^{\prime}Oy^{\prime}\) is constructed at the middle point of side \(e\); the \(x^{\prime}\) and \(y^{\prime}\) directions in the local coordinate system are the same as those of vectors \(\mathbf{n}\) and \(\mathbf{t}\), respectively. The relationship of the macroscopic values and their gradients in the two coordinate systems \(x^{\prime}Oy^{\prime}\) and \(xOy\) are listed as follows:  
\[\mathbf{W}^{{}^{\prime}}~{}=~{}(\rho^{\prime},\rho^{\prime}u^{\prime},\rho^{ \prime}v^{\prime},\rho^{\prime}\varepsilon^{\prime})^{T}~{}=~{}(\rho,(\rho u, \rho v)\cdot\mathbf{n},(\rho u,\rho v)\cdot\mathbf{t},\rho\varepsilon)^{T} \tag{8}\]  
\[\left(\begin{array}{c}\partial_{x^{\prime}}\rho^{\prime}\\ \partial_{y^{\prime}}\rho^{\prime}\end{array}\right)~{}=~{}\left(\begin{array} []{c}\left(\partial_{x^{\prime}}\rho,\ \partial_{y}\rho\right)\cdot\mathbf{n}\\ \left(\partial_{x^{\prime}}\rho,\ \partial_{y}\rho\right)\cdot\mathbf{t}\end{array}\right) \qquad\left(\begin{array}{c}\partial_{x^{\prime}}\rho^{\prime} \varepsilon^{\prime}\\ \partial_{y^{\prime}}\rho^{\prime}\varepsilon^{\prime}\end{array}\right)~{}=~ {}\left(\begin{array}{c}\left(\partial_{x}\rho\varepsilon,\ \partial_{y}\rho \varepsilon\right)\cdot\mathbf{n}\\ \left(\partial_{x}\rho\varepsilon,\ \partial_{y}\rho\varepsilon\right)\cdot\mathbf{t} \end{array}\right) \tag{9}\]  
Note that the gradient of other quantities can be computed similarly to Equation (9).  
The algorithm presented in Reference [23] is implemented in the local coordinate system \(x^{\prime}Oy^{\prime}\) to obtain the local fluxes \(\mathbf{F}^{{}^{\prime}}~{}=\left(F_{\rho^{\prime}},F_{\rho^{\prime}u^{\prime }},F_{\rho^{\prime}v^{\prime}},F_{\rho^{\prime}\varepsilon^{\prime}}\right)^{T}\) through the side \(e\). Finally, the fluxes in the local  
Figure 1: Schematic of the triangle mesh.  
coordinate system \(x^{\prime}Oy^{\prime}\) must turn into the fluxes in the reference coordinate system \(xOy\) by rotation and translation, as follows:  
\[\textbf{F}\ =\ \left[\begin{array}{c}F_{\rho^{\prime}}\\ F_{\rho^{\prime}}\
u n_{x}-F_{\rho^{\prime}V^{\prime}}n_{y}\\ F_{\rho^{\prime}V^{\prime}}n_{y}+F_{\rho^{\prime}V^{\prime}}n_{x}\\ F_{\rho^{\prime}\epsilon^{\prime}}\end{array}\right] \tag{10}\]  
After all fluxes through the sides of the mesh are computed, Equation (5) can be employed to update the averaged macroscopic quantities. This is a crucial procedure for GKS dealing with the variable cross-section problems.