## Sliding-Mesh SD/FR Method

Sliding mesh is handy in dealing with rotating geometries. However, it introduces nonconforming interfaces between subdomain meshes. To overcome this geometric incompatibility, we have developed a curved dynamic mortar method. The figure below shows the sliding mesh for a Taylor-Couette flow simulation, as well as the distribution of mortar elements between two subdomains.

**Step 1:** map each mesh element to a standard unit square element (as a result, each sliding cell face is mapped to a unit line element at the same time). This process is demonstrated in the figure below.

Since the sliding interface here is circular, we employ the following transfinite mapping that introduces no geometric error for elements along a sliding interface,

$$
\begin{aligned}
\vec{X}(\xi,\eta)
&= (1-\eta) \vec{X}_{f_1}(\xi) + \xi \vec{X}_{f_2}(\eta) + \eta \vec{X}_{f_3}(\xi) + (1-\xi) \vec{X}_{f_4}(\eta) \\[0.5em]
& - (1-\xi)(1-\eta) \vec{X}_1 - \xi (1-\eta) \vec{X}_2 - \xi \eta \vec{X}_3 - (1-\xi) \eta \vec{X}_4,
\end{aligned}
$$
where $\vec{X}_{f_i}$ is the analytical expression of the $i$-th cell face, and $\vec{X}_i$ is the coordinate vector of the $i$-th corner node. For example, the circular face $\vec{X}_{f_1}$ has the following analytical expression,

$$
\vec{X}_{f_1}(\xi) = \left[
\begin{matrix}
\mathrm{R} \cdot \cos\big((1-\xi)\theta_1 + \xi \theta_2 \big) + x_c \\
\mathrm{R} \cdot \sin\big((1-\xi)\theta_1 + \xi \theta_2 \big) + y_c
\end{matrix}
\right],
$$
where R and $(x_c,y_c)$ are the radius and the center of the underlying circle; $\theta_1$ and $\theta_2$ are the angles of the two nodes. The changes of a sliding cell face and its mortars during this process are illustrated in the figure below, where $\Omega$ and $\Xi$ denote cell face and mortar, respectively.

The mortar space $\xi$ and the computational space $z$ are related through the following offset and scaling (OS) relation,

$$
\xi=o_k + s_k \cdot z, \qquad s_k = L^{\Xi_k}/L^\Omega, \qquad o_k = \sum\nolimits_{\alpha=1}^{k-1} s_\alpha,
$$
where $L$ represents the physical length of the corresponding element.

**Step 2:** project solutions from cell faces to mortars. The figure below demonstrates this process for the left side of a mortar.
The projection is
$$
\int_0^1 \left( \mathbf{Q}^{\Xi,L}(z) - \mathbf{Q}^{\Omega}(\xi) \right) h_j(z)dz = 0,~~ j=1,2,...,N,
$$
The same process is applied to the right side of each mortar.

**Step 3:** compute the common inviscid flux $\mathbf{F}_{inv}^{\Xi}$ and common solution $\mathbf{Q}^{\Xi}$ on a mortar element using the left and the right solutions.

**Step 4:** project the common values from mortars back to cell faces as demonstrated in the figure below.
Taking the flux for example, the projection is
$$
\sum_{i=1}^{n} \int_{o_i}^{o_i+s_i} \left( \mathbf{F}_{inv}^{\Omega}(\xi) - \mathbf{F}_{inv}^{\Xi_i}(z) \right) h_j(\xi)d\xi = 0, ~~ j=1,2,...,N,
$$
where $n$ is the number of mortars associated with the cell face, and $\mathbf{F}_{inv}^{\Omega}$ is the unknown common inviscid flux on the cell face.

Steps 2–4 are repeated for viscous fluxes if it is a viscous flow. It is worth mentioning that mortar and cell face connectivities as well as the OS relation need to be updated at each stage of a time marching scheme.