Skip to main content
Log in

A New Discontinuity Indicator for Hybrid WENO Schemes

  • Published:
Journal of Scientific Computing Aims and scope Submit manuscript

Abstract

In the present work, we propose a new discontinuity indicator for constructing shock-capturing finite difference schemes based on the self-adaptation algorithm in the WENO-OS4 scheme (Li et al. in J Sci Comput 71:109–143, 2017). The new discontinuity indicator can identify the discontinuities as accurate as the original self-adaptation algorithm through using a more straightforward numerical condition. The high-resolution and the problem-independency of the original algorithm for identifying discontinuities are maintained, but the excessive expenses are greatly reduced by the decoupled implementation and the employment of the local characteristic projection. Moreover, new hybrid WENO schemes are constructed based on this new discontinuity indicator. The hybrids are carried out between nonlinear WENO schemes with shock-capturing ability and linear upwind or central schemes with high resolution. Both the effectiveness of the indicator and the good resolution of the hybrid schemes are demonstrated by the numerical tests. The results of the tests indicate that the new hybrid WENO schemes have significant improvements on both resolution and computational efficiency when compared with the WENO-JS5 and WENO-OS4.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

References

  1. Liu, X., Osher, S., Chan, T.: Weighted essentially non-oscillatory schemes. J. Comput. Phys. 115, 200–212 (1994)

    Article  MathSciNet  Google Scholar 

  2. Jiang, G., Shu, C.-W.: Efficient implementation of weighted ENO schemes. J. Comput. Phys. 126, 202–228 (1996)

    Article  MathSciNet  Google Scholar 

  3. Henrick, A.K., Aslam, T.D., Powers, J.M.: Mapped weigted essentially non-oscillatory schemes: achieving optimal order near critical points. J. Comput. Phys. 207, 542–567 (2005)

    Article  Google Scholar 

  4. Borges, R., Carmona, M., Costa, B., Don, W.S.: An improved weighted essentially non-oscillatory scheme for hyperbolilc conservation laws. J. Comput. Phys. 227, 3191–3211 (2008)

    Article  MathSciNet  Google Scholar 

  5. Martin, M.P., Taylor, E.M., Wu, M., Weirs, V.G.: A bandwidth-optimized WENO scheme for the effective direct numerical simulation of compressible turbulence. J. Comput. Phys. 220, 270–289 (2006)

    Article  Google Scholar 

  6. Taylor, E.M., Wu, M., Martin, M.P.: Optimization of nonlinear error for weighted essentially non-oscillatory methods in direct numerical simulations of compressible turbulence. J. Comput. Phys. 223, 384–397 (2006)

    Article  Google Scholar 

  7. Wu, M., Martin, M.P.: Direct numerical simulation of supersonic turbulent boundary layer over a compression ramp. AIAA J. 45, 879–889 (2007)

    Article  Google Scholar 

  8. Li, Q., Guo, Q.-L., Sun, D., Liu, P.-X., Zhang, H.-X.: A fourth-order symmetric WENO scheme with improved performance by new linear and nonlienear optimizations. J. Sci. Comput. 71, 109–143 (2017)

    Article  MathSciNet  Google Scholar 

  9. Shu, C.-W.: High order weighted essentially non-oscillatory schemes for convection dominated problems. SIAM Rev. 51, 82–126 (2009)

    Article  MathSciNet  Google Scholar 

  10. Johnsen, E.: On the treatment of contact discontinuities using WENO schemes. J. Comput. Phys. 230, 8665–8668 (2011)

    Article  MathSciNet  Google Scholar 

  11. Adams, N.A., Shariff, K.: A high-resolution hybrid compact-ENO scheme for shock-turbulence interaction problems. J. Comput. Phys. 127, 27–51 (1996)

    Article  MathSciNet  Google Scholar 

  12. Pirozzoli, S.: Conservative hybrid compact-weno schemes for shock-turbulence interaction. J. Comput. Phys. 178, 81–117 (2002)

    Article  MathSciNet  Google Scholar 

  13. Hill, D.J., Pullin, D.I.: Hybrid tuned center-difference-WENO method for large eddy simulations in the presence of strong shocks. J. Comput. Phys. 194, 435–450 (2004)

    Article  Google Scholar 

  14. Wan, Z.-H., Zhou, L., Sun, D.-J.: Robustness of the hybrid DRP-WENO scheme for shock flow computations. Int. J. Numer. Methods Fluids 70, 985–1003 (2012)

    Article  MathSciNet  Google Scholar 

  15. Tong, F.-L., Li, X.-L., Duan, Y.-H., Yu, C.-P.: Direct numerical simulation of supersonic turbulent boundary layer subjected to a curved compression ramp. Phys. Fluids 29, 125101-1 (2017)

    Article  Google Scholar 

  16. Tong, F.-L., Tang, Z.-G., Yu, C.-P., Zhu, X.-K., Li, X.-L.: Numerical analysis of shock wave and supersonic turbulent boundary interaction between adiabatic and cold walls. J. Turbul. 18(6), 569–588 (2017)

    Article  MathSciNet  Google Scholar 

  17. Sun, Z.-S., Ren, Y.-X., Larricq, C., Zhang, S.-Y., Yang, Y.-C.: A class of finite difference schemes with low dispersion and controllable dissipation for DNS of compressible turbulence. J. Comput. Phys. 230, 4616–4635 (2011)

    Article  MathSciNet  Google Scholar 

  18. Peng, J., Shen, Y.: A novel weighting switch function for uniformly high order hybrid shock-capturing schemes. Int. J. Numer. Methods Fluids 00, 1–30 (2015)

    Google Scholar 

  19. Li, G., Qiu, J.: Hybrid weighted essentially non-oscillatory schemes with different indicators. J. Comput. Phys. 229, 8105–8129 (2010)

    Article  MathSciNet  Google Scholar 

  20. Tam, C.K.W., Webb, J.C.: Dispersion-relation-preserving finite difference schemes for computational acoustics. J. Comput. Phys. 107, 262–281 (1993)

    Article  MathSciNet  Google Scholar 

  21. Steger, J.L., Warming, R.F.: Flux vector splitting of the inviscid gasdynamics equations with application on finite difference methods. J. Comput. Phys. 40, 263–293 (1981)

    Article  MathSciNet  Google Scholar 

  22. Jiang, Y., Shu, C.-W., Zhang, M.-P.: An alternative formulation of finite difference weighted ENS schemes with Lax-Wendroff time discretization for conservation laws. SIAM J. Sci. Comput. 35(2), 1137–1160 (2013)

    Article  MathSciNet  Google Scholar 

  23. Lax, P.D., Liu, X.-D.: Solution of two-dimensional Riemann problems of gas dynamics by positive schemes. SIAM J. Sci. Comput. 19, 319–340 (1998)

    Article  MathSciNet  Google Scholar 

  24. Woodward, P., Colella, P.: The numerical simulation of two-dimensional fluid flow with strong shocks. J. Comput. Phys. 54, 115–173 (1984)

    Article  MathSciNet  Google Scholar 

  25. Samtaney, R., Pullin, D.I., Kosovic, B.: Direct numerical simulation of decaying compressible turbulence and shocklet statistics. Phys. Fluids 13(5), 1415–1430 (2001)

    Article  Google Scholar 

  26. Hoffmann, K.A., Chiang, S.T.: Computational Fluid Dynamics, vol. II, 4th edn. Engineering Education System, Wichita (2000)

    Google Scholar 

Download references

Acknowledgements

This work was supported by National Numerical Windtunnel project and National Natural Science Foundation of China (Grant No. 11802324).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Qilong Guo.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix 1

The three-dimensional Euler or Navier–Stokes equations in the arbitrary curvilinear coordinate system are given here. Let \( (\xi_{1} ,\;\xi_{2} ,\text{ }\xi_{3} ) \) be the computational coordinates, and a continuously differentiable transformation is assumed for mapping Cartesian coordinates \( (x_{1} ,\;x_{2} ,\text{ }x_{3} ) \) of the physical space to \( (\xi_{1} ,\;\xi_{2} ,\text{ }\xi_{3} ) \). The non-dimensional form of the governing equations for the compressible flow are given as

$$ \frac{{\partial {\hat{\mathbf{q}}}}}{\partial t} + \frac{{\partial {\hat{\mathbf{f}}}_{1} }}{{\partial \xi_{1} }} + \frac{{\partial {\hat{\mathbf{f}}}_{2} }}{{\partial \xi_{2} }} + \frac{{\partial {\hat{\mathbf{f}}}_{3} }}{{\partial \xi_{3} }} = \frac{{\partial {\hat{\mathbf{f}}}_{v,1} }}{{\partial \xi_{1} }} + \frac{{\partial {\hat{\mathbf{f}}}_{v,2} }}{{\partial \xi_{2} }} + \frac{{\partial {\hat{\mathbf{f}}}_{v,3} }}{{\partial \xi_{3} }} $$
(30)

where

$$ \begin{aligned} & {\hat{\mathbf{q}}} = J^{ - 1} {\mathbf{q}} \\ & {\hat{\mathbf{f}}}_{1} = J^{ - 1} (\partial_{1} \xi_{1} \cdot {\mathbf{f}}_{1} + \partial_{2} \xi_{1} \cdot {\mathbf{f}}_{2} + \partial_{3} \xi_{1} \cdot {\mathbf{f}}_{3} )\quad {\hat{\mathbf{f}}}_{v,1} = J^{ - 1} (\partial_{1} \xi_{1} \cdot {\mathbf{f}}_{v,1} + \partial_{2} \xi_{1} \cdot {\mathbf{f}}_{v,2} + \partial_{3} \xi_{1} \cdot {\mathbf{f}}_{v,3} ) \\ & {\hat{\mathbf{f}}}_{2} = J^{ - 1} (\partial_{1} \xi_{1} \cdot {\mathbf{f}}_{1} + \partial_{2} \xi_{1} \cdot {\mathbf{f}}_{2} + \partial_{3} \xi_{1} \cdot {\mathbf{f}}_{3} )\quad {\hat{\mathbf{f}}}_{v,2} = J^{ - 1} (\partial_{2} \xi_{1} \cdot {\mathbf{f}}_{v,1} + \partial_{2} \xi_{2} \cdot {\mathbf{f}}_{v,2} + \partial_{3} \xi_{2} \cdot {\mathbf{f}}_{v,3} ) \\ & {\hat{\mathbf{f}}}_{2} = J^{ - 1} (\partial_{1} \xi_{3} \cdot {\mathbf{f}}_{1} + \partial_{2} \xi_{3} \cdot {\mathbf{f}}_{2} + \partial_{3} \xi_{3} \cdot {\mathbf{f}}_{3} )\quad {\hat{\mathbf{f}}}_{v,3} = J^{ - 1} (\partial_{1} \xi_{3} \cdot {\mathbf{f}}_{v,1} + \partial_{2} \xi_{3} \cdot {\mathbf{f}}_{v,2} + \partial_{3} \xi_{3} \cdot {\mathbf{f}}_{v,3} ) \\ \end{aligned} $$
(31)

and \( J = \left| {\frac{{\partial (\xi_{1} ,\;\xi_{2} ,\text{ }\xi_{3} )}}{{\partial (x_{1} ,\text{ }x_{2} ,\text{ }x_{3} )}}} \right| \) is the transformation Jacobian. The notation ‘\( \partial_{j} \)‘ is standing for the derivative with respect to \( x_{j} \). The quantities in the physical space are

$$ \begin{aligned} & {\mathbf{q}} = \left[ {\rho , \rho u_{1} , \rho u_{2} , \rho u_{3} ,e} \right]^{{\text{T}}} \\ & {\mathbf{f}}_{1} = \left[ {\begin{array}{*{20}l} {\rho u_{1} } \hfill \\ {\rho u_{1} u_{1} + p} \hfill \\ {\rho u_{1} u_{2} } \hfill \\ {\rho u_{1} u_{3} } \hfill \\ {(e + p)u_{1} } \hfill \\ \end{array} } \right]\quad {\mathbf{f}}_{{v,1}} = s \cdot \frac{1}{{\text{Re} }}\left[ {\begin{array}{*{20}l} 0 \hfill \\ {\tau _{{11}} } \hfill \\ {\tau _{{12}} } \hfill \\ {\tau _{{13}} } \hfill \\ {u_{1} \tau _{{11}} + u_{2} \tau _{{12}} + u_{3} \tau _{{13}} + q_{1} } \hfill \\ \end{array} } \right] \\ & {\mathbf{f}}_{2} = \left[ {\begin{array}{*{20}l} {\rho u_{2} } \hfill \\ {\rho u_{1} u_{2} } \hfill \\ {\rho u_{2} u_{2} + p} \hfill \\ {\rho u_{2} u_{3} } \hfill \\ {(e + p)u_{2} } \hfill \\ \end{array} } \right]\quad {\mathbf{f}}_{{v,2}} = s \cdot \frac{1}{{\text{Re} }}\left[ {\begin{array}{*{20}l} 0 \hfill \\ {\tau _{{21}} } \hfill \\ {\tau _{{22}} } \hfill \\ {\tau _{{23}} } \hfill \\ {u_{1} \tau _{{21}} + u_{2} \tau _{{22}} + u_{3} \tau _{{23}} + q_{2} } \hfill \\ \end{array} } \right] \\ & {\mathbf{f}}_{3} = \left[ {\begin{array}{*{20}l} {\rho u_{3} } \hfill \\ {\rho u_{1} u_{3} } \hfill \\ {\rho u_{2} u_{3} } \hfill \\ {\rho u_{3} u_{3} + p} \hfill \\ {(e + p)u_{3} } \hfill \\ \end{array} } \right]\quad {\mathbf{f}}_{{v,3}} = s \cdot \frac{1}{{\text{Re} }}\left[ {\begin{array}{*{20}l} 0 \hfill \\ {\tau _{{31}} } \hfill \\ {\tau _{{32}} } \hfill \\ {\tau _{{33}} } \hfill \\ {u_{1} \tau _{{31}} + u_{2} \tau _{{32}} + u_{3} \tau _{{33}} + q_{3} } \hfill \\ \end{array} } \right] \\ \end{aligned} $$
(32)

where \( e = \frac{p}{\gamma - 1} + \frac{1}{2}\rho (u_{1}^{2} + u_{2}^{2} + u_{3}^{2} ) \) and γ = 1.4. In the viscous flux, the variable s is a Boolean. When s = 1, the Navier–Stokes equations are obtained, while s = 0 gives the Euler equations. The stress tensors and heat flux are

$$ \tau_{ij} = \mu \left[ {\left( {\frac{{\partial u_{i} }}{{\partial x_{j} }} + \frac{{\partial u_{j} }}{{\partial x_{i} }}} \right) - \frac{2}{3}\left( {\frac{{\partial u_{k} }}{{\partial x_{k} }}} \right)\delta_{ij} } \right] $$
(33)
$$ q_{i} = \frac{\gamma }{(\gamma - 1)}\frac{\mu }{\Pr }\frac{{\partial \tilde{T}}}{{\partial x_{i} }} $$
(34)

where Re and Pr are the Reynolds number and the Prandtl number respectively. \( \mu \) is the dynamical viscosity coefficient. The state equation for the perfect gas is adopted as

$$ p = \rho \tilde{T} $$
(35)

The optimized WENO scheme addressed in this paper is designed for the discretization of the derivatives of the inviscid fluxes, i.e. \( {\hat{\mathbf{f}}}_{1} ,\text{ }{\hat{\mathbf{f}}}_{2} ,\text{ }{\hat{\mathbf{f}}}_{3} \).

Appendix 2

For the Euler or Navier–Stokes equations in the computational coordinates, the matrices \( {\mathbf{L}} \) and \( {\mathbf{R}} \) must be known for characteristic projection and anti-projection (of the inviscid fluxes). In the three-dimensional case, the matrices are given as

$$ {\mathbf{L}}\left( {\xi_{i} } \right) = \left[ {\begin{array}{*{20}l} {\frac{1}{{2a^{2} }}\left( {\varphi^{2} + a\bar{\theta }_{i} } \right)} \hfill \\ {n_{i1} \left( {1 - \frac{{\varphi^{2} }}{{a^{2} }}} \right) + n_{i3} \frac{{u_{2} }}{a} - n_{i2} \frac{{u_{3} }}{a}} \hfill \\ {n_{i2} \left( {1 - \frac{{\varphi^{2} }}{{a^{2} }}} \right) + n_{i1} \frac{{u_{3} }}{a} - n_{i3} \frac{{u_{1} }}{a}} \hfill \\ {n_{i3} \left( {1 - \frac{{\varphi^{2} }}{{a^{2} }}} \right) + n_{i2} \frac{{u_{1} }}{a} - n_{i1} \frac{{u_{2} }}{a}} \hfill \\ {\frac{1}{{2a^{2} }}\left( {\varphi^{2} - a\bar{\theta }_{i} } \right)} \hfill \\ \end{array} } \right.\text{ }\begin{array}{*{20}c} { - \frac{1}{{2a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{1} + n_{i1} a} \right]} \\ {\frac{{n_{i1} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{1} } \\ {\frac{{n_{i2} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{1} + \frac{{n_{i3} }}{a}} \\ {\frac{{n_{i3} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{1} - \frac{{n_{i2} }}{a}} \\ { - \frac{1}{{2a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{1} - n_{i1} a} \right]} \\ \end{array} \left. {\text{ }\begin{array}{*{20}c} { - \frac{1}{{2a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{2} + n_{i2} a} \right]} \\ {\frac{{n_{i1} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{2} - \frac{{n_{i3} }}{a}} \\ {\frac{{n_{i2} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{2} } \\ {\frac{{n_{i3} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{2} + \frac{{n_{i1} }}{a}} \\ { - \frac{1}{{2a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{2} - n_{i2} a} \right]} \\ \end{array} \text{ }\begin{array}{*{20}c} { - \frac{1}{{2a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{3} + n_{i3} a} \right]} \\ {\frac{{n_{i1} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{3} + \frac{{n_{i2} }}{a}} \\ {\frac{{n_{i2} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{3} - \frac{{\overline{{n_{i1} }} }}{a}} \\ {\frac{{n_{i3} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{3} } \\ { - \frac{1}{{2a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{3} - n_{i3} a} \right]} \\ \end{array} \text{ }\begin{array}{*{20}c} {\frac{1}{{2a^{2} }}\left( {\gamma - 1} \right)} \\ { - \frac{{n_{i1} }}{{a^{2} }}\left( {\gamma - 1} \right)} \\ { - \frac{{n_{i2} }}{{a^{2} }}\left( {\gamma - 1} \right)} \\ { - \frac{{n_{i3} }}{{a^{2} }}\left( {\gamma - 1} \right)} \\ {\frac{1}{{2a^{2} }}\left( {\gamma - 1} \right)} \\ \end{array} } \right] $$
(36)

and

$$ {\mathbf{R}}\left( {\xi_{i} } \right) = \left[ {\begin{array}{*{20}l} 1 \hfill & {n_{i1} } \hfill & {n_{i2} } \hfill & {n_{i3} } \hfill & 1 \hfill \\ {u_{1} - an_{i1} } \hfill & {u_{1} n_{i1} } \hfill & {u_{1} n_{i2} + an_{i3} } \hfill & {u_{1} n_{i3} - an_{i2} } \hfill & {u_{1} + an_{i1} } \hfill \\ {u_{2} - an_{i2} } \hfill & {u_{2} n_{i1} - an_{i3} } \hfill & {u_{2} n_{i2} } \hfill & {u_{2} n_{i3} + an_{i1} } \hfill & {u_{2} + an_{i2} } \hfill \\ {u_{3} - an_{i3} } \hfill & {u_{3} n_{i1} + an_{i2} } \hfill & {u_{3} n_{i2} - an_{i1} } \hfill & {u_{3} n_{i3} } \hfill & {u_{3} + an_{i3} } \hfill \\ {\frac{{\varphi^{2} + a^{2} }}{\gamma - 1} - \bar{\theta }_{i} a} \hfill & {\frac{{\varphi^{2} a}}{\gamma - 1}n_{i1} + u_{3} an_{i2} - u_{2} an_{i3} } \hfill & {\frac{{\varphi^{2} a}}{\gamma - 1}n_{i2} + u_{1} an_{i3} - u_{3} an_{i1} } \hfill & {\frac{{\varphi^{2} a}}{\gamma - 1}n_{i3} + u_{2} an_{i1} - u_{1} an_{i2} } \hfill & {\frac{{\varphi^{2} + a^{2} }}{\gamma - 1} + \bar{\theta }_{i} a} \hfill \\ \end{array} } \right] $$
(37)

for the \( \xi_{i} \) direction respectively. a is the local sound speed, and \( \varphi^{2} = \frac{1}{2}\left( {\gamma - 1} \right)\left( {u_{1}^{2} + u_{2}^{2} + u_{3}^{2} } \right) \), \( n_{ij} \equiv \frac{{\partial_{j} \xi_{i} }}{{\sqrt {(\partial_{1} \xi_{i} )^{2} + (\partial_{2} \xi_{i} )^{2} + (\partial_{3} \xi_{i} )^{2} } }} \), \( \bar{\theta }_{i} = n_{i1} \cdot u_{1} + n_{i2} \cdot u_{2} + n_{i3} \cdot u_{3} \)

Since matrix \( {\mathbf{L}} \) is formed by the row eigen-vectors of the approximated flux Jacobian, i.e., \( {\mathbf{L}} = \left( {\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{l}_{1} ,\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{l}_{2} ,\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{l}_{3} ,\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{l}_{4} ,\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{l}_{5} } \right)^{T} \), its expressions for each eigen-vector are not unique. Assuming \( \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{l}_{i} \) is the eigen-vector, then \( \alpha \cdot \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\rightharpoonup}$}}{l}_{i} \) will still be the eigen-vector of the same eigenvalue with \( \alpha \) being an arbitrary non-zero constant. Another common-used form projection matrix can be referred to Eqs. (12–30) in [26], and the corresponding 3-D form is

$$ {\mathbf{L}}^{ * } \left( {\xi_{i} } \right) = \left[ {\begin{array}{*{20}c} {\frac{1}{{\sqrt 2 a^{2} }}\left( {\varphi^{2} + a\bar{\theta }_{i} } \right)} \\ {n_{i1} \left( {1 - \frac{{\varphi^{2} }}{{a^{2} }}} \right) + n_{i3} \frac{{u_{2} }}{a} - n_{i2} \frac{{u_{3} }}{a}} \\ {n_{i2} \left( {1 - \frac{{\varphi^{2} }}{{a^{2} }}} \right) + n_{i1} \frac{{u_{3} }}{a} - n_{i3} \frac{{u_{1} }}{a}} \\ {n_{i3} \left( {1 - \frac{{\varphi^{2} }}{{a^{2} }}} \right) + n_{i2} \frac{{u_{1} }}{a} - n_{i1} \frac{{u_{2} }}{a}} \\ {\frac{1}{{\sqrt 2 a^{2} }}\left( {\varphi^{2} - a\bar{\theta }_{i} } \right)} \\ \end{array} } \right.\text{ }\begin{array}{*{20}c} { - \frac{1}{{\sqrt 2 a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{1} + n_{i1} a} \right]} \\ {\frac{{n_{i1} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{1} } \\ {\frac{{n_{i2} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{1} + \frac{{n_{i3} }}{a}} \\ {\frac{{n_{i3} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{1} - \frac{{n_{i2} }}{a}} \\ { - \frac{1}{{\sqrt 2 a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{1} - n_{i1} a} \right]} \\ \end{array} \left. {\text{ }\begin{array}{*{20}l} { - \frac{1}{{\sqrt 2 a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{2} + n_{i2} a} \right]} \hfill \\ {\frac{{n_{i1} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{2} - \frac{{n_{i3} }}{a}} \hfill \\ {\frac{{n_{i2} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{2} } \hfill \\ {\frac{{n_{i3} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{2} + \frac{{n_{i1} }}{a}} \hfill \\ { - \frac{1}{{\sqrt 2 a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{2} - n_{i2} a} \right]} \hfill \\ \end{array} \text{ }\begin{array}{*{20}c} { - \frac{1}{{\sqrt 2 a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{3} + n_{i3} a} \right]} \\ {\frac{{n_{i1} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{3} + \frac{{n_{i2} }}{a}} \\ {\frac{{n_{i2} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{3} - \frac{{\overline{{n_{i1} }} }}{a}} \\ {\frac{{n_{i3} }}{{a^{2} }}\left( {\gamma - 1} \right)u_{3} } \\ { - \frac{1}{{\sqrt 2 a^{2} }}\left[ {\left( {\gamma - 1} \right)u_{3} - n_{i3} a} \right]} \\ \end{array} \text{ }\begin{array}{*{20}c} {\frac{1}{{\sqrt 2 a^{2} }}\left( {\gamma - 1} \right)} \\ { - \frac{{n_{i1} }}{{a^{2} }}\left( {\gamma - 1} \right)} \\ { - \frac{{n_{i2} }}{{a^{2} }}\left( {\gamma - 1} \right)} \\ { - \frac{{n_{i3} }}{{a^{2} }}\left( {\gamma - 1} \right)} \\ {\frac{1}{{\sqrt 2 a^{2} }}\left( {\gamma - 1} \right)} \\ \end{array} } \right] $$
(38)

Apparently, we have \( {\mathbf{L}}^{ * } = {\varvec{\Lambda}} \cdot {\mathbf{L}} \) with

$$ {\varvec{\Lambda}} = diag\left[ {\sqrt 2 a,a,a,a,\sqrt 2 a} \right] $$
(39)

Appendix 3

It has been elucidated that the self-adaptation algorithm in WENO-OS4 is devised mainly for identifying the discontinuities, which inevitably introduce some empirical threshold values. In order to make these values uniformly valid for various cases governed by the Euler or Navier–Stokes equations, the algorithm (and the new derived discontinuity indicator) must be as less problem-dependent as possible. This objective is realized by the rescaling function \( {\mathbb{F}}\left( \cdot \right) \) in Eq. (16). The expression is given as

$$ {\mathbb{F}}\left( {\mathbf{x}} \right) = C_{I} \cdot C_{G} \cdot {\varvec{\Lambda}}_{{}}^{ - 1} \cdot {\mathbf{x}} $$
(40)

where \( C_{I} ,\text{ }C_{G} \) and \( {\varvec{\Lambda}}_{{}}^{ - 1} \) are corresponding to the ambiguities from the initial/boundary conditions, the grid transformation, and the characteristic projection respectively.

The first rescaling factor \( C_{I} \) used in this paper is modified compared to the original expression in [8], which is given as

$$ C_{I} = \frac{1}{{\sqrt {\rho \left( {\frac{1}{2}\rho u^{2} + \frac{\gamma }{\gamma - 1}p} \right)}_{{\partial\Omega }} }} $$
(41)

where the notation ‘\( \phi_{{\partial\Omega }} \)‘ stands for the lower bound of the quantity \( \phi \) on the boundaries for the initial instant. The rationale behind Eq. (41) is argued as follows: the driven mechanisms of different discontinuities-containing problems are both correlated to the quantity \( \sqrt {\rho \left( {\frac{1}{2}\rho u^{2} + \frac{\gamma }{\gamma - 1}p} \right)} \), which is an empirical combination of the density, kinetic energy and pressure (or the enthalpy). Thus, the discrepancy of the discontinuity indicator between different problems can be reasonably dramatically cancelled by the rescaling factor \( C_{I} \).

The second one \( C_{G} \) is

$$ C_{G} = \frac{J}{{\sqrt {n_{i1}^{2} + n_{i2}^{2} + n_{i3}^{2} } }} $$
(42)

The last one \( {\varvec{\Lambda}}_{{}}^{ - 1} \) is depending on the form of the eigen-matrix for characteristic projection \( {\mathbf{L}} \) [for example Eq .(39)] and only employed in case that the form of \( {\mathbf{L}} \) is different to Eq. (36).

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Guo, Q., Sun, D., Li, C. et al. A New Discontinuity Indicator for Hybrid WENO Schemes. J Sci Comput 83, 28 (2020). https://doi.org/10.1007/s10915-020-01217-w

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s10915-020-01217-w

Keywords

Navigation