Solveur de Riemann
Un solveur de Riemann est une méthode numérique permettant de donner une solution du problème de Riemann. Diverses variantes sont très largement utilisés en mécanique des fluides numérique.
Définition
modifierLes solveurs de Riemann sont des méthodes permettant de calculer le flux numérique à travers une discontinuité[1],[2]. Ils constituent une partie importante des schémas à haute résolution. Les états gauche et droit du problème de Riemann sont généralement calculés à l'aide d'une méthode de reconstruction non linéaire telle qu'un limiteur de flux ou une méthode WENO puis utilisés comme données d'entrée pour le solveur de Riemann.
Solveurs exacts
modifierSergueï Godounov a introduit le premier solveur exact de Riemann pour les équations d'Euler[3] en étendant la méthode Courant-Isaacson-Rees[4] aux systèmes non linéaires de lois de conservation hyperboliques. Les solveurs modernes sont capables de simuler les effets relativistes et les champs magnétiques.
Des recherches plus récentes montrent qu'il existe une série exacte au problème de Riemann qui peut converger suffisamment vite dans certains cas pour éviter les méthodes itératives requises par le schéma de Godounov[5].
Solutions approchées
modifierLes solutions itératives étant trop coûteuses, notamment en magnétohydrodynamique, il est nécessaire d'utiliser des approximations. Voici quelques solutions couramment utilisées :
Solveur de Roe
modifierPhilip Roe a utilisé la linéarisation du jacobien qu'il a ensuite résolu de manière exacte[6].
Solveur HLLE
modifierLe solveur HLLE (développé par Amiram Harten, Peter Lax, Bram van Leer et B. Einfeldt) est une solution approchée du problème de Riemann basée sur la forme intégrale des lois de conservation et les vitesses d'onde maximale et minimale à l'interface[7],[8]. La stabilité et la robustesse du solveur HLLE sont étroitement liées aux vitesses du signal et à un état moyen central unique, comme proposé par Einfeldt dans l'article original.
Solveur HLLc
modifierLe solveur HLLc (Harten-Lax-van Leer-contact) a été introduit par Eleuterio Toro[9]. Il restaure l'onde de raréfaction manquante en utilisant une technique d'estimation telle que la linéarisation. Des techniques plus avancées existent, comme l'utilisation de la vitesse moyenne de Roe pour la vitesse de l'onde intermédiaire. Ces schémas sont assez robustes et efficaces mais un peu plus diffusifs[10]
Solveurs de Riemann hybrides rotatifs
modifierCes solveurs ont été introduits par Hiroaki Nishikawa et Keiichi Kitamura[11]. Pour surmonter les problèmes de carbuncle du solveur de Roe et la diffusion excessive du solveur HLLE des solveurs de Riemann robustes et précis ont été développés. Ces solveurs combinent le solveur de Roe et les solveurs HLLE/Rusanov. Appliqués selon deux directions orthogonales, les deux solveurs de Riemann peuvent être combinés en un seul solveur de type Roe (le solveur de Roe avec des vitesses de propagation modifiées). En particulier, le solveur dérivé des solveurs de Roe et HLLE, appelé solveur « Rotated-RHLL », est extrêmement robuste (sans carbuncle pour tous les cas de test possibles, sur des maillages structurés et non structurés) et précis (aussi précis que le solveur de Roe pour le calcul de la couche limite).
Autres solveurs
modifierIl existe divers autres solveurs, notamment d'autres variantes du schéma HLL[12] et des solveurs basés sur la séparation de flux par décomposition suivant les caractéristiques[13].
Voir aussi
modifierRéférences
modifier- ↑ (en) Randall J. LeVeque, Numerical methods for conservation laws, Birkhäuser Verlag, (ISBN 3-7643-2723-5, OCLC 25281500)
- ↑ (en) Eleuterio F. Toro, Riemann Solvers and Numerical Methods for Fluid Dynamics: A Practical Introduction, Springer-Verlag, (ISBN 978-3540659662, lire en ligne)
- ↑ S. K. Godunov, « A difference scheme for numerical computation of discontinuous solution of hyperbolic equation », Matematicheskiĭ Sbornik, vol. 47, , p. 271-306
- ↑ (en) Richard Courant, E. Isaacson et M. Rees, « On the Solution of Nonlinear Hyperbolic Differential Equations by Finite Differences », Communications on Pure and Applied Mathematics, vol. 5, no 3, , p. 243-255 (DOI 10.1002/cpa.3160050303)
- ↑ (en) Y. Y. Wu et K. F. Cheung, « Explicit solution to the exact Riemann problem and application in nonlinear shallow-water equations », International Journal for Numerical Methods in Fluids, vol. 57, no 11, , p. 1649-1668 (DOI 10.1002/fld.1696)
- ↑ (en) P. L. Roe, « Approximate Riemann solvers, parameter vectors, and difference schemes », Journal of Computational Physics, vol. 43, no 2, , p. 357-372 (DOI 10.1016/0021-9991(81)90128-5, Bibcode 1981JCoPh..43..357R)
- ↑ (en) Amiram Harten, Peter D. Lax et Bram van Leer, « On Upstream Differencing and Godunov-Type Schemes for Hyperbolic Conservation Laws », SIAM Review, vol. 25, no 1, , p. 35–61 (ISSN 0036-1445, DOI 10.1137/1025002, JSTOR 2030019)
- ↑ (en) B. Einfeldt, « On Godunov-type methods for gas dynamics », SIAM Journal on Numerical Analysis, vol. 25, , p. 294–318 (DOI 10.1137/0725021, Bibcode 1988SJNA...25..294E)
- ↑ (en) E. F. Toro, M. Spruce et W. Speares, « Restoration of the contact surface in the HLL-Riemann solver », Shock Waves, vol. 4, no 1, , p. 25-34 (DOI 10.1007/BF01414629, Bibcode 1994ShWav...4...25T, S2CID 119972653)
- ↑ (en) J. J. Quirk, « A contribution to the great Riemann solver debate », International Journal on Numerical Methods in Fluids, vol. 18, no 6, , p. 555-574 (DOI 10.1002/fld.1650180603, Bibcode 1994IJNMF..18..555Q, hdl 2060/19930015894
) - ↑ (en) H. Nishikawa et K. Kitamura, « Very simple, carbuncle-free, boundary-layer-resolving, rotated-hybrid Riemann solvers », Journal of Computational Physics, vol. 227, , p. 2560-2581 (DOI 10.1016/j.jcp.2007.11.003, Bibcode 2008JCoPh.227.2560N)
- ↑ (en) Takahiro Miyoshi et Kanya Kusano, « A multi-state HLL approximate Riemann solver for ideal magnetohydrodynamics », Journal of Computational Physics, vol. 208, no 1, , p. 315–344 (DOI 10.1016/j.jcp.2005.02.017, Bibcode 2005JCoPh.208..315M)
- ↑ (en) R. Donat, J. A. Font, J. M. Ibáñez et A. Marquina, « A Flux-Split Algorithm Applied to Relativistic Flows », Journal of Computational Physics, vol. 146, no 1, , p. 58–81 (DOI 10.1006/jcph.1998.5955, Bibcode 1998JCoPh.146...58D)
- (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Riemann solver » (voir la liste des auteurs).