Keywords

1 Introduction

Vortices play an indispensable role in fluid dynamics research, especially turbulence. Therefore, vortex visualization has a very important research value. Influenced by the fact that vorticity represented twice angular speed for rigid bodies, scientists had first believed that vorticity is also a good indicator of fluid rotation. Using this cognitive, some successes were achieved in analyzing low-speed flow away from the boundary. At the same time, problems arose when scholars shifted their research focus to high-speed flow and flow near the boundary region. Robinson [1] found that the connection between vorticity and actual vortices can be very weak. Wang et al. [2] found vorticity strength is smaller inside the vortex region while bigger outside. The causes of this problem can be explained by R-S decomposition [3] of vorticity. R-S decomposition shows that vorticity can be decomposed into rigid rotation and shear. For rigid bodies and low-speed flow away from the boundary, the shear is small or zero if ideal, but for high-speed flow or flow near the boundary, the shear cannot be ignored. Later, some vortex visualization methods were developed to overcome this drawback of using vorticity for detecting vortices. Some popular methods of these are the Q criterion [4], \({\lambda }_{ci}\) criterion [5] and \({\lambda }_{2}\) criterion [6]. Admittedly, using these methods can obtain more consistent results with the experimental results than vorticity, these methods also have some shortcomings.

Firstly, these methods cannot reveal what the rotation axis, important rotation information, is since they are all scalar methods. Secondly, the physical meaning of the numbers calculated from these methods is unclear. People can only know the relative rotation strength but do not know the exact angular speed. These shortcomings motivate researchers to find more proper vortex indicators. In 2018, Liu et al. [7, 8] proposed a new method called “Liutex”, which is a vector. The direction of Liutex is the rotation axis, and the magnitude of Liutex represents twice rigid rotation angular speed. Many numerical and experimental results have shown that Liutex performs beyond the previous methods. In the experiments done by Guo et al. [9], Liutex is more consistent with the experimental results than other methods.

Apart from all the methods discussed above, the most human intuitive way to identify vortices is the curving of the streamline; since what people can observe in daily life is the motion of fluids which is streamline or trace in fluid concepts. Streamline is based on velocity, which is dependent on the choice of coordinates. Due to this reason, some weird results can be obtained when using streamlines to detect vortices.

People may conclude that there are no vortices within the iso-surface from Fig. 2.1a and apparent vortex from Fig. 2.1b, even though these two figures depict the same scene at the same moment. Choice of the coordinates is the only difference between these two figures. The boundary-fixed coordinate is used in Fig. 2.1a, while a uniform linear motion coordinate is used in Fig. 2.1b, and both coordinates are inertial. Therefore, different choices of coordinates may lead to different vortices detections when applying streamline. This issue can be described by Galilean invariance.

Fig. 2.1
2 contour plots have a plane on the X Y Z coordinates with a streamline based on velocity. Plot 1 indicates the streamline in the original frame with the fixed boundary coordinate. Plot 2 indicates a uniform linear motion coordinate where the streamline resembles a spiral.

Streamline in the a original frame b the frame moving with the u speed of the intersection point

Galilean invariance is a feature in that the variables are the same under different inertial coordinates. Obviously, streamline is Galilean variant since velocity is Galilean variant. Galilean invariance should be a vital property of vortex visualization to avoid the ambiguous vortex detection results shown in Fig. 2.1.

In this paper, Galilean invariance is first introduced in Sect. 2.2. Section 2.3 explains why streamline is Galilean variant, and the proof of Liutex being Galilean invariant is shown in Sect. 2.4. In Sect. 2.5, numerical examples illustrate that streamline is Galilean variant and Liutex is Galilean invariant. Conclusions are given in Sect. 2.6.

2 Galilean Invariance

Galilean transformation is used to transform between two different inertial coordinates or two coordinates that only differ by a constant translation within Newtonian physics. The Galilean transformation can be uniquely defined as the decomposition of a rotation, a translation, and a uniform motion of space–time.

$$\left[\begin{array}{c}x{^{\prime}}\\ y{^{\prime}}\\ z{^{\prime}}\end{array}\right]=Q\left[\begin{array}{c}x\\ y\\ z\end{array}\right]+\vec{c}_1t+\vec{c}_2=rotation+uniform\,motion+translation$$
(2.1)

where x, y, z are the coordinates in the original reference frame and x′, y′, z′ are the coordinates in the new reference frame.

Galilean invariance means variables are the same in different inertial coordinates, so in other words, variables need to be the same under Galilean transformations. The Galilean variances of streamline and Liutex are checked in Sects. 2.3 and 2.4, respectively.

3 Galilean Variance of Streamline

Let u′, v′, w′ be the velocity after Galilean transformation, and u, v, w be the velocity in the original coordinate. From Eq. 2.1, it can be derived that

$$\begin{aligned} \left[ {\begin{array}{*{20}c} {u^{\prime} } \\ {v^{\prime} } \\ {w^{\prime} } \\ \end{array} } \right] = & \frac{d}{{dt}}\left( {\left[ {\begin{array}{*{20}c} {x^{\prime} } \\ {y^{\prime} } \\ {z^{\prime} } \\ \end{array} } \right]} \right) = \frac{d}{{dt}}\left( {Q\left[ {\begin{array}{*{20}c} x \\ y \\ z \\ \end{array} } \right] + \vec{c}_1 t + \vec{c}_2 } \right) = Q\left[ {\begin{array}{*{20}c} {\frac{{dx}}{{dt}}} \\ {\frac{{dy}}{{dt}}} \\ {\frac{{dz}}{{dt}}} \\ \end{array} } \right] + \vec{c}_1 \\ & = Q\left[ {\begin{array}{*{20}c} u \\ v \\ w \\ \end{array} } \right] + \vec{c}_1 \\ \end{aligned}$$
(2.2)

A streamline is a line whose tangent direction is the velocity direction of the chosen point, thus it has the following relation

$$d\overrightarrow{s}\times \overrightarrow{V}=0$$
(2.3)

where \(\overrightarrow{s}\) represents streamline. Since the velocities in different coordinates are different, \(\overrightarrow{V}\ne \overrightarrow{V^{\prime}}\), their streamlines are different. Thus, streamline is not a Galilean invariant physical quantity.

4 Galilean Invariance of Liutex

This section gives the proof of Liutex being Galilean invariant based on Wang’s paper [10]. Liutex [8] is a vector, which can be expressed as

$$\overrightarrow{R}=R\overrightarrow{r}$$
(2.4)

where R is the magnitude and \(\overrightarrow{r}\) is the direction of Liutex. \(\overrightarrow{r}\) is meanwhile the real eigenvector of the velocity gradient tensor with \(\overrightarrow{r}\cdot \overrightarrow{\omega }>0\), and R can be calculated from [11]

$$R=\overrightarrow{r}\cdot \overrightarrow{\omega }-\sqrt{{\left(\overrightarrow{r}\cdot \overrightarrow{\omega }\right)}^{2}-4{\lambda }_{ci}^{2}}$$
(2.5)

where \({\lambda }_{ci}\) is the imaginary part of the complex conjugate eigenvalues.

To prove Liutex is Galilean invariant, it needs to show that its direction and magnitude are Galilean invariant.

Let \(\nabla \overrightarrow{v}{^{\prime}}\) and \(\nabla \overrightarrow{v}\) be the velocity gradient tensor in the new and original reference frames, respectively. Let Q be the invertible rotation matrix of these two reference frames. Then \(\nabla \overrightarrow{v}^{{\prime}}\) and \(\nabla \overrightarrow{v}\) have the following relation

$$\nabla {\overrightarrow{v}}^{{{\prime}}}=\left[\begin{array}{ccc}\frac{\partial u{^{\prime}}}{\partial x{^{\prime}}}& \frac{\partial u{^{\prime}}}{\partial y{^{\prime}}}& \frac{\partial u{^{\prime}}}{\partial z{^{\prime}}}\\ \frac{\partial v{^{\prime}}}{\partial x{^{\prime}}}& \frac{\partial v{^{\prime}}}{\partial y{^{\prime}}}& \frac{\partial v{^{\prime}}}{\partial z{^{\prime}}}\\ \frac{\partial w{^{\prime}}}{\partial x{^{\prime}}}& \frac{\partial w{^{\prime}}}{\partial y{^{\prime}}}& \frac{\partial w{^{\prime}}}{\partial z{^{\prime}}}\end{array}\right]=Q\nabla \overrightarrow{v}{Q}^{-1}=Q\left[\begin{array}{ccc}\frac{\partial u}{\partial x}& \frac{\partial u}{\partial y}& \frac{\partial u}{\partial z}\\ \frac{\partial v}{\partial x}& \frac{\partial v}{\partial y}& \frac{\partial v}{\partial z}\\ \frac{\partial w}{\partial x}& \frac{\partial w}{\partial y}& \frac{\partial w}{\partial z}\end{array}\right]{Q}^{-1}$$
(2.6)

Suppose \(\overrightarrow{r}\) is the Liutex direction in the original xyz coordinate, in other words, \(\overrightarrow{r}\) is the eigenvector of \(\nabla \overrightarrow{v}\).

$$\nabla \overrightarrow{v}\cdot \overrightarrow{r}={\lambda }_{r}\overrightarrow{r}$$
(2.7)

Do the following manipulation, it has

$$Q\nabla \overrightarrow{v}\cdot \overrightarrow{r}=Q\nabla \overrightarrow{v}\left({Q}^{-1}Q\right)\cdot \overrightarrow{r}=\left(Q\nabla \overrightarrow{v}{Q}^{-1}\right)Q\cdot \overrightarrow{r}=\nabla \overrightarrow{v}{^{\prime}}Q\cdot \overrightarrow{r}$$
(2.8)

Equation 2.7 both sides multiplied by Q from the left

$$Q\nabla \overrightarrow{v}\cdot \overrightarrow{r}={\lambda }_{r}Q\overrightarrow{r}$$
(2.9)

Combine Eqs. 2.8 and 2.9, it can be obtained

$$\nabla \overrightarrow{v}{^{\prime}}\cdot (Q\overrightarrow{r})={\lambda }_{r}(Q\overrightarrow{r})$$
(2.10)

From this, it can be seen that \(Q\overrightarrow{r}\) is the real eigenvector of \(\nabla \overrightarrow{v}{^{\prime}}\).

Suppose \(\overrightarrow{r}={\left[\begin{array}{ccc}{x}_{1}& {y}_{1}& {z}_{1}\end{array}\right]}^{T}-{\left[\begin{array}{ccc}{x}_{0}& {y}_{0}& {z}_{0}\end{array}\right]}^{T}\) and \({\overrightarrow{r}}^{{{\prime}}}={\left[\begin{array}{ccc}{x}_{1}^{{{\prime}}}& {y}_{1}^{{{\prime}}}& {z}_{1}^{{{\prime}}}\end{array}\right]}^{T}-{\left[\begin{array}{ccc}{x}_{0}^{{{\prime}}}& {y}_{0}^{{{\prime}}}& {z}_{0}^{{{\prime}}}\end{array}\right]}^{T}\) where \({\overrightarrow{r}}^{{{\prime}}}\) is the corresponding vector of \(\overrightarrow{r}\) after Galilean transformation.

$$\left[\begin{array}{c}{x}_{0}{^{\prime}}\\ {y}_{0}{^{\prime}}\\ {z}_{0}{^{\prime}}\end{array}\right]=Q\left[\begin{array}{c}{x}_{0}\\ {y}_{0}\\ {z}_{0}\end{array}\right]+{\overrightarrow{c}}_{1}t+{\overrightarrow{c}}_{2}$$
(2.11)
$$\left[\begin{array}{c}{x}_{1}{^{\prime}}\\ {y}_{1}{^{\prime}}\\ {z}_{1}{^{\prime}}\end{array}\right]=Q\left[\begin{array}{c}{x}_{1}\\ {y}_{1}\\ {z}_{1}\end{array}\right]+{\overrightarrow{c}}_{1}t+{\overrightarrow{c}}_{2}$$
(2.12)
$${\overrightarrow{r}}^{{{\prime}}}=\left[\begin{array}{c}{x}_{1}{^{\prime}}\\ {y}_{1}{^{\prime}}\\ {z}_{1}{^{\prime}}\end{array}\right]-\left[\begin{array}{c}{x}_{0}{^{\prime}}\\ {y}_{0}{^{\prime}}\\ {z}_{0}{^{\prime}}\end{array}\right]=Q\left\{\left[\begin{array}{c}{x}_{1}\\ {y}_{1}\\ {z}_{1}\end{array}\right]-\left[\begin{array}{c}{x}_{0}\\ {y}_{0}\\ {z}_{0}\end{array}\right]\right\}=Q\overrightarrow{r}$$
(2.13)

So, \({\overrightarrow{r}}^{{\prime}}\) is the real eigenvector of \(\nabla \overrightarrow{v}{^{\prime}}\).

In the expression of R (Eq. 2.5), it contains \(\overrightarrow{\omega }\), \(\overrightarrow{r}\) and \({\lambda }_{ci}\). It has been proved that \(\overrightarrow{r}\) is Galilean invariant, and it is known to us that \(\overrightarrow{\omega }\) and \({\lambda }_{ci}\) are both Galilean invariant physical quantities. So, R is Galilean invariant as well.

It has been proved that both magnitude and direction of Liutex are Galilean invariant. Thus, Liutex is a Galilean invariant physical quantity.

5 Numerical Example

In a DNS research of boundary layer transition, the grid level is \(1920\times 128\times 241\), representing the total amount in streamwise(x), spanwise(y), and wall-normal(z) directions. The first interval length in the normal direction at the origin is 0.43 in wall units (\({Z}^{+}=0.43\)). The flow parameters are listed in Table 2.1, including Mach number, Reynolds number, and others. In this case, \({x}_{in}=300.79{\delta }_{in}\) represents the distance between the leading edge and the inlet, Lx, Ly, and Lzin are the lengths of the computational domain and \({T}_{w}\) is the wall temperature.

Table 2.1 Flow parameters

The streamline passing through a selected point is shown in Fig. 2.2. The iso-surface is the iso-surface of Liutex, and the black line is the streamline. In this figure, the streamline looks like a straight line by eye observation which implies no rotation exists according to people’s intuition.

Fig. 2.2
A contour plot has a plane on the X Y Z coordinates with a streamline based on velocity. The streamline resembles a straight line in the original frame with the fixed boundary coordinate.

Streamline in original frame

However, if discussed in a new frame, the conclusion of rotation existence based on the curve of streamlines can be different. Establish a new frame such that the frame moves with the streamwise speed of the selected point (intersection of the plane and black line). The streamline in the new frame is shown in Fig. 2.3.

Fig. 2.3
A contour plot has a plane on the X Y Z coordinates with a streamline based on velocity. It indicates the movement of the streamline with the u speed of the intersection point on the plane where the streamline resembles a spiral.

Streamline in a frame moving with u speed of the intersection point

In the new figure, the streamline looks like a spiral. From these two figures, it can be seen clearly that streamlines are not Galilean invariant.

To test the Galilean invariance of Liutex, a rotation matrix Q is selected. Let \({\gamma }_{1}=36^\circ , {\gamma }_{2}=69^\circ , {\gamma }_{3}=78^\circ\), then

$$Q={Q}_{x}{Q}_{y}{Q}_{z}=\left[\begin{array}{ccc}1& 0& 0\\ 0& cos{\gamma }_{1}& sin{\gamma }_{1}\\ 0& -sin{\gamma }_{1}& cos{\gamma }_{1}\end{array}\right]\left[\begin{array}{ccc}cos{\gamma }_{2}& 0& -sin{\gamma }_{2}\\ 0& 1& 0\\ sin{\gamma }_{2}& 0& cos{\gamma }_{2}\end{array}\right]\left[\begin{array}{ccc}cos{\gamma }_{3}& sin{\gamma }_{3}& 0\\ -sin{\gamma }_{3}& cos{\gamma }_{3}& 0\\ 0& 0& 1\end{array}\right]=\left[\begin{array}{ccc}0.2686& 1.2637& -0.5752\\ -0.6644& 0.7156& 0.2157\\ 0.7437& 0.6042& 0.2862\end{array}\right]$$
(2.14)

The iso-surface of Liutex in the original frame and the frame after Galilean transformation are shown in Figs. 2.4 and 2.5, respectively.

Fig. 2.4
An illustration of Liutex iso-surface in the original X Y Z coordinate frame.

Liutex iso-surface in the original frame

Fig. 2.5
Two illustrations of Liutex iso-surface in the original X Y Z coordinate frame and after Galilean transformation. It resembles the same after the Galilean invariant.

Liutex iso-surface in the frame after Galilean transformation

It can be clearly seen that it keeps the same after Galilean invariant.

6 Conclusion

Liutex is Galilean invariant, while streamline is not. Being Galilean invariant is an important requirement of vortex identification methods. It is not proper to use the curve of the streamlines to detect vortices because different frames lead to different results. Liutex keeps the same after Galilean transformation, so Liutex is more reliable than streamlines.