Quand faut-il utiliser des méthodes implicites dans l'intégration des EDP hyperboliques?

16

Les méthodes numériques de résolution des EDP (ou ODE) se divisent en deux grandes catégories: les méthodes explicites et implicites. Les méthodes implicites permettent des pas de temps stables plus grands mais nécessitent plus de travail par étape. Pour les EDP hyperboliques, la sagesse courante est que les méthodes implicites ne sont généralement pas payantes car l'utilisation de pas de temps plus grands que ceux autorisés par la condition CFL conduit à des résultats très inexacts. Cependant, des méthodes implicites sont utilisées dans certains cas. Pour une application donnée, comment choisir d'utiliser une méthode explicite ou implicite?

David Ketcheson
la source

Réponses:

17

La question centrale est de savoir quels processus physiques (vagues ou termes sources) ont des échelles de temps que vous êtes intéressé à résoudre et que vous préféreriez franchir. Si vous n'êtes pas intéressé par l'échelle de temps la plus rapide du système, alors les équations sont dites "rigides". Les lois de conservation hyperbolique sont généralement écrites comme des systèmes de premier ordre

ut+F(u)=g(u,u,...)

u contient des variables conservées, F est le flux, et gest appelé le "terme source". Notez qu'avec cette terminologie, le fluxF ne contient pas de dérivés, les termes diffusifs et dispersifs doivent donc g. Il est assez courant d'utiliser l'intégration implicite ou semi-implicite lorsque les termes sources sont rigides, comme avec de nombreux problèmes de réaction chimique et lorsque la diffusion ou la dispersion est présente. La réaction chimique peut généralement être implicitement résolue localement dans chaque élément car elle n'est pas couplée aux cellules voisines.

Pour calculer les vitesses des vagues, nous examinons les valeurs propres du flux jacobien UNE=[F/u]. Si nous décidons que la phase de certaines ondes n'a pas d'intérêt physique, nous pouvons vouloir les franchir.

Par exemple, si vous simulez l'évolution à long terme d'un océan, vous pourriez ne pas être intéressé par les ondes de gravité de surface (par exemple les tsunamis). Malheureusement, la modification de la vitesse des vagues (soit en la ralentissant pour utiliser des méthodes explicites, soit en la faisant passer à un modèle à «couvercle rigide» pouvant utiliser une projection) modifie la physique en modifiant la façon dont les tourbillons se propagent. Les tourbillons dans l'océan sont un effet où l'onde de gravité est presque équilibrée avec la convection, mais pas tout à fait.

Un autre exemple est Euler compressible, par exemple le flux d'air à travers un centre de données. La vitesse des ondes acoustiques est beaucoup plus rapide que la convection et seule cette dernière est importante pour le transfert de chaleur. Si vous n'êtes pas intéressé par l'acoustique, vous voudrez peut-être utiliser une méthode implicite.

L'efficacité relative d'une méthode implicite dépend du coût de résolution des systèmes algébriques à chaque étape / étape par rapport à la taille d'étape qui peut être utilisée avec des méthodes explicites. La résolution efficace de tels systèmes algébriques est un sujet de recherche actif. (Faites une autre question et je vais y répondre et faire référence à partir d'ici.)

Vous pouvez également utiliser des méthodes implicites si:

  • vos équations ont des états stationnaires significatifs que vous souhaitez explorer directement, peut-être avec pour caractériser la stabilité
  • vous résolvez des problèmes d'assimilation inverse / de données impliquant une longue histoire
  • vous voulez contourner les barrières d'ordre pour utiliser des méthodes d'intégration de temps d'ordre très élevé avec certaines propriétés de stabilité
  • vous utilisez des méthodes adaptatives spatio-temporelles
  • vous utilisez une discrétisation spatiale qui nécessite déjà la résolution d'un système algébrique (par exemple, méthodes d'éléments finis continus avec matrice de masse cohérente)
Jed Brown
la source