Je m'intéresse à l'implémentation d'un maillage mobile pour un problème d'advection-diffusion. Les méthodes de maillage mobile adaptatif donnent un bon exemple de la façon de procéder pour l'équation de Burger en 1D en utilisant la différence finie. Quelqu'un pourrait-il offrir un exemple concret de résolution de l'équation d'advection-diffusion 1D en utilisant la différence finie avec un maillage mobile?
Par exemple, sous une forme conservatrice, l'équation est,
où est la vitesse (fonction de l'espace). Les conditions initiales pourraient spécifier (par exemple) une espèce d'écoulement se déplaçant de gauche à droite (par exemple le long d'une conduite) où la condition initiale a un gradient prononcé.u ( 0 , x )
Comment résoudre le problème d'équidistribution du maillage mobile (éventuellement avec l'algorithme de De Boor ou une autre approche)? Je souhaite l'implémenter moi-même en Python, donc si votre réponse peut être facilement traduite en code, c'est encore mieux!
Ancienne question avant la prime
- Quelles sont les approches de base pour générer un maillage adaptatif basé sur les propriétés du système? Dois-je utiliser le flux pour mesurer où les gradients sont grands?
- Parce que je recherche une solution itérative (balayage temporel). J'imagine qu'il est important d'interpoler de l'ancienne grille à la nouvelle grille, quelle est l'approche habituelle?
- Je serais vraiment intéressé de voir un exemple travaillé pour un problème simple (comme l'équation d'advection).
Un peu de contexte sur les spécificités du problème. Je simule un système d'équation couplé 1D,
L'ensemble des équations décrit un problème d'advection-diffusion de deux espèces où la troisième équation se couple aux deux autres. La solution change rapidement près du centre de ma grille, voir ci-dessous (ce sont des illustrations et non des calculs),
Notez que l'échelle logarithmique sur le graphique inférieur, les solutions pour et varient selon les ordres de grandeur. Sur le graphique supérieur ( ), il y a une discontinuité au centre. Je résous le système ci-dessus avec un vent adaptatif où la discrétisation peut s'adapter du centre au vent dominant en fonction de la valeur locale du nombre de Péclet . Je résous implicitement le système avec une intégration trapézoïdale dans le temps ("Crank-Nicolson").
Je souhaite appliquer une grille adaptative à ce problème. Je pense que c'est important car sinon les détails du paramètre pic de forme (le ) pourraient être perdus. Contrairement à cette question , je voudrais appliquer, je l'espère simplement, un algorithme pour la génération de maillage.
Comme il s'agit d'un problème d'advection-diffusion, on pourrait imaginer un schéma de maillage adaptatif basé sur les flux de et aux limites des cellules. Comme cela indiquerait où la valeur change rapidement. Le pic du correspond également à celui où le flux est le plus important.v w
Réponses:
Une grille adaptative est un réseau de grille qui regroupe automatiquement les points de grille dans les régions à gradient de champ élevé; il utilise la solution des propriétés du champ d'écoulement pour localiser les points de grille dans le plan physique. La grille adaptative évolue par étapes de temps en conjonction avec une solution dépendante du temps des équations de champ d'écoulement régissant, qui calcule les variables de champ d'écoulement en étapes de temps. Au cours de la solution, les points de la grille dans le plan physique se déplacent de cette manière pour «s'adapter» aux régions de grands gradients de champ d'écoulement. Par conséquent, les points de grille réels dans le plan physique sont constamment en mouvement pendant la résolution du champ d'écoulement et ne deviennent stationnaires que lorsque la solution d'écoulement approche d'un état stationnaire.
L'adaptation de la grille est utilisée pour les types de problèmes stables et instables. En cas de problèmes de débit constant, la grille est adaptée après un nombre prédéterminé d'itérations et l'adaptation de la grille s'arrête au point où la solution converge. Dans le cas de solutions précises dans le temps, le mouvement et le raffinement du point de grille sont effectués conjointement avec une solution précise du temps du problème physique. Cela nécessite un couplage précis dans le temps des PDE du problème physique et de ceux décrivant le mouvement du réseau ou l'adaptation du réseau.
Pour les calculs de configurations plus récentes, la dépendance vis-à-vis des meilleures pratiques de génération de maillage et de l'expérience antérieure laisse la porte ouverte à de grandes quantités d'erreur numérique. Les méthodes d'adaptation au réseau peuvent produire des améliorations substantielles de la qualité de la solution et promettent de meilleurs résultats car il n'existe aucune limitation définissant la limite de résolution du réseau qui peut être atteinte.
Au lieu d'apporter des modifications topologiques locales au maillage et à sa connectivité, les méthodes adaptatives r apportent des changements locaux à la résolution en déplaçant les emplacements d'un nombre total fixe de points de maillage.
Méthode très populaire d'adaptation de la grille dans l'approche par éléments finis plutôt que la méthode des volumes finis ou des éléments finis. Il réduit l'erreur dans la solution en enrichissant le polynôme des fonctions d'interpolation avec le même ordre d'élément géométrique.Aucun nouveau maillage, géométrie à calculer et un autre avantage de cette méthode est qu'elle peut mieux approximer les limites irrégulières ou courbes avec moins de sensibilité rapport d'aspect et asymétrie. Pour cette raison, son application structurelle est très célèbre.
Bonne chance!
[1] Fidkowski Krzysztof J. et Darmofal David L. Examen de l'estimation de l'erreur basée sur les résultats et de l'adaptation du maillage dans la dynamique des fluides computationnelle. Journal de l'AIAA, 49: 673–694, 2011.
[2] John Tannehill Richard Pletcher et Dale Anderson. Mécanique numérique des fluides et transfert de chaleur. Taylor et Francis, 1997.
[3] JD Jr. Anderson. Dyanamics fluides computationnels: les bases avec les applications, McGraw Hill Inc., 1995.
[4] Roy Christopher J. Stratégies pour stimuler l'adaptation des mailles dans cfd. Lors de la 47e réunion des sciences aérospatiales de l'AIAA, y compris le New Horizons Forum et Aerospace Exposition, 2009.
[5] McRae Scott D. algorithmes et problèmes d'adaptation de la grille de re-raffinement. Méthodes informatiques en mécanique appliquée et en génie, 189: 1161–1182, 2000.
[6] Ivanenko Sergey A. Azarenok Boris N. et Tang Tao. Méthode de redistribution de maillage adaptative basée sur le schéma godunovs. Comm. math. sci., 1: 152-179.
[7] Ahmadi Majid et Ghaly Wahid S. Simulation du flux non visqueux en cascade en utilisant une méthode de volume fini avec adaptation de la solution. Dans CASI 6th Aerodynamics Symposium, 1997.
[8] Jasak H. et Gosman AD Contrôle de résolution automatique pour la méthode à volume fini, partie 1: estimations d'erreur a posteriori. Transfert de chaleur numérique, Taylor & Francis, 38: 237–256, 2000.
[9] Jasak H. et Gosman AD Contrôle automatique de la résolution pour la méthode à volume fini, partie 2: raffinement et grossissement de maillage adaptatif. Transfert de chaleur numérique, Taylor & Francis, 38: 257-271, 2000.
[10] Thompson David S. Soni Bharat K., Koomullil Roy et Thornburg Hugh. Stratégies de grille adaptative de solution basées sur la redistribution des points. Méthodes informatiques en mécanique appliquée et en génie, 189: 1183–1204, 2000.
[11] Venditti David A. et Darmofal David L. Estimation d'erreur conjointe et adaptation de la grille pour les sorties fonctionnelles: Application au fl ux quasi-unidimensionnel. Journal of Computational Physics, 164: 204-227, 2000.
[12] Balasubramanian R. et Newman JC Comparaison de l'adaptation de grille basée sur l'adjoint et la fonction pour les sorties fonctionnelles. Journal international pour les méthodes numériques des fluides, 53: 1541-1569, 2007.
[13] Hartmann Ralf. Estimation des erreurs et adaptation basée sur l'adjoint en aérodynamique. Dans European Conference on Computational Fluid Dynamics, 2006.
la source
Je cherchais (suis toujours) de bonnes réponses à cela. Je travaille avec des grilles adaptatives à plusieurs niveaux où j'utilise une sorte de critère de raffinement. Les gens qui pratiquent la FEM bénéficient d'estimations d'erreur rigoureuses, plutôt bon marché (sur le plan du calcul), qu'ils utilisent comme critère de raffinement. Pour nous faisant FDM / FVM, je n'ai pas eu de chance de trouver de telles estimations.
Dans ce contexte, si vous voulez être rigoureux sur le raffinement, c'est-à-dire affiner en fonction d' une estimation de l'erreur réelle, votre (presque) seul choix est l'extrapolation de Richardson. C'est ce qui a été, par exemple, utilisé par Berger et Oliger (1984) pour leur solveur hyperbolique AMR structuré en blocs. La méthodologie est générale dans le sens où vous pouvez utiliser l'extrapolation Richardson pour pratiquement n'importe quel problème. Le seul problème, c'est qu'il est cher, en particulier pour les problèmes transitoires.
À part l'extrapolation de Richardson, tous les autres critères (à mon humble avis) sont juste ad hoc. Oui, vous pouvez définir un certain seuil sur une "quantité d'intérêt" et affiner en fonction de cela. Vous pouvez utiliser des flux ou des dérivés d'une certaine quantité pour alerter un grand gradient et l'utiliser. Ou si vous suivez une interface, vous pouvez affiner en fonction de votre proximité avec l'interface. Tout cela est très bon marché, bien sûr, mais il n'y a rien de rigoureux à leur sujet.
En ce qui concerne l'interpolation entre les grilles, vous avez généralement besoin de quelque chose qui est au moins aussi précis que vous le résolvez. Parfois, il est possible de construire des interpolations qui satisfont à certaines propriétés, par exemple conserver la masse ou sont convexes donc n'introduisent pas de nouveaux extrema. J'ai remarqué que cette dernière propriété est parfois très importante pour la stabilité du schéma global.
la source
S'il s'agit bien de 1D, vous n'aurez probablement pas besoin de maillage adaptatif ici, pour un problème aussi simple, vous pouvez probablement résoudre tout ce dont vous avez besoin avec une grille statique, avec la puissance de calcul d'une station de travail moderne. Mais c'est une stratégie parfaitement raisonnable, en cours d'intégration temporelle, d'identifier périodiquement les zones où la résolution numérique est accentuée, d'y ajouter des points de grille (et de supprimer des points de grille des zones sur-résolues) et d'interpoler vers la nouvelle grille. Mais cela ne devrait pas être fait trop fréquemment car l'interpolation peut être coûteuse et cela ajouterait une erreur numérique dans le calcul global.
la source