Les équations aux dérivées partielles dominées par l’advection sont difficiles car les informations se déplacent principalement le long d’une direction d’écoulement tandis que la diffusion physique fournit peu de lissage. Une méthode numérique qui fonctionne bien pour un problème dominé par la diffusion peut produire des oscillations, un maculage excessif ou des valeurs non physiques lorsque l’advection devient plus forte.
La bonne réponse n’est pas simplement de sélectionner le schéma le plus diffusif disponible. Une diffusion numérique excessive peut masquer les fronts nets, affaiblir les pics de concentration et modifier les taux de transport. Une discrétisation utile doit équilibrer la stabilité, la délimitation, la conservation et la résolution.
Le nombre de peclets cellulaires aide à décrire cet équilibre. La différenciation centrale peut fonctionner lorsque le maillage résout la diffusion physique. Le contre-vent du premier ordre fournit de la robustesse mais enduit la solution. Les schémas limités d’ordre supérieur réduisent les bavures tout en contrôlant les oscillations. Dans les méthodes d’éléments finis, SUPG ajoute une stabilisation cohérente principalement le long des lignes de courant.
L’équation d’advection-diffusion
Un modèle de transport scalaire commun est :
∂φ/∂t + ∇ · (vφ) = ∇ · (α∇φ) + S
Pour un champ de vitesse incompressible, ceci est souvent écrit comme suit :
∂φ/∂t + v · ∇φ = α∇²φ + S
ici :
φest le scalaire transporté, comme la température ou la concentration.vest le champ de vitesse.αest la diffusivité physique.Sest une source ou un puits.
La diffusion diffuse des informations dans toutes les directions et lisse les gradients. L’advection transporte les informations principalement selon les caractéristiques déterminées par le champ de vitesse. Lorsque la diffusion est faible, la méthode numérique doit respecter ce transport directionnel.
Le nombre de peclet de cellule
Le nombre de peclet de cellule compare l’advection et la diffusion à l’échelle d’une cellule de maille. Une convention largement utilisée est :
Peₕ = |v|h / α
Pour une équation unidimensionnelle de convection-diffusion stable sur une grille uniforme, les coefficients de volume fini central classique restent non négatifs lorsque :
|Peₕ| ≤ 2
Certaines références définissent le nombre de peclet cellulaire avec un facteur supplémentaire de deux :
Pe* = |v|h / (2α)
Selon cette convention, la condition équivalente est :
|Pe*| ≤ 1
La convention doit donc être énoncée avant de citer un seuil. Écrire |v|h/(2α) et le comparer avec 2 mélangerait deux définitions différentes.
Pour un maillage de volume fini multidimensionnel, une valeur de face locale plus utile est :
Pe_f =
|v_f · n_f| d_PA
/ α_f
La valeur dépend de la vitesse normale à travers une face, de la distance entre les centres cellulaires voisins et de la diffusivité locale. Il peut varier d’un domaine à l’autre lorsque les propriétés du maillage, de la vitesse ou du matériau ne sont pas uniformes.
Ce que signifie réellement le critère Peclet
Le seuil souvent coté proche de deux s’applique à une discrétisation particulière à convection-diffusion unidimensionnelle et stable. Il s’agit d’un critère de délimitation pour les coefficients algébriques produits par la différenciation centrale.
Cela ne signifie pas que chaque schéma central pour chaque problème transitoire devient immédiatement instable au même nombre. Les discrétisations spatiales et temporelles doivent être analysées ensemble.
Deux problèmes différents sont souvent confondus :
- Dans une équation de volume fini par convection-diffusion stable, la différenciation centrale peut perdre la positivité du coefficient lorsque le nombre de peclets cellulaires est trop grand. La solution peut alors développer des dépassements et des sous-débits.
- Pour une advection transitoire pure, l’avant Euler dans le temps combiné à l’espace centré, connu sous le nom de FTCS, est instable pour n’importe quel nombre de cours non nul.
Ces deux problèmes peuvent produire des oscillations, mais leurs causes mathématiques ne sont pas identiques.
Pourquoi la différenciation centrale peut osciller
La différenciation centrale estime une valeur nominale de manière symétrique :
φ_f ≈ (φ_P + φ_A) / 2
Sur une grille uniforme, cela produit une approximation du second ordre pour des solutions lisses. Il introduit également très peu de dissipation numérique.
Cette faible dissipation est utile lorsque la solution physique est lisse et bien résolue. Cela devient un problème à proximité de couches abruptes ou lorsque la diffusion physique est trop faible pour contrôler les modes d’échelle de la grille.
Dans l’équation de volume fini unidimensionnel régulier, l’augmentation du nombre de peclets cellulaires réduit un coefficient voisin. Une fois que ce coefficient change de signe, le principe maximum discret peut être perdu. La solution peut dépasser les valeurs limites ou devenir négative même lorsque la solution physique reste limitée.
Pour l’advection pure transitoire, un dérivé spatial centré est principalement dispersif. Sa convenance dépend de l’intégrateur de temps. L’association avec l’avant Euler produit une méthode instable, tandis que d’autres intégrateurs temporels peuvent contrôler la croissance mais introduire toujours des erreurs de phase ou des oscillations à proximité de gradients non résolus.
Différence de premier ordre au vent
La différenciation au vent utilise des informations de la direction d’origine du flux. Pour une vitesse unidimensionnelle positive :
(∂φ/∂x)ᵢ
≈ (φᵢ - φᵢ₋₁) / h
Pour une vitesse négative, il utilise la valeur de droite :
(∂φ/∂x)ᵢ
≈ (φᵢ₊₁ - φᵢ) / h
Ce pochoir sensible à la direction supprime de nombreuses oscillations produites par une approximation centrée. Pour une convection linéaire et une diffusion linéaires, il produit également des coefficients voisins positifs sur une gamme beaucoup plus large de nombres de peclet cellulaire.
La discrétisation spatiale au vent ne doit pas être décrite comme inconditionnellement stable sans qualification. S’il est combiné avec un intégrateur de temps explicite, la méthode complète a toujours une restriction de Courant.
Au vent comme différenciation centrale et diffusion
Pour une vitesse constante positive, la dérivée du premier ordre du vent peut être écrite exactement comme suit :
(φᵢ - φᵢ₋₁) / h
=
(φᵢ₊₁ - φᵢ₋₁) / (2h)
-
(φᵢ₊₁ - 2φᵢ + φᵢ₋₁) / (2h)
L’expression de la deuxième différence se rapproche de hφₓₓ. Le remplacement de l’opérateur au vent dans l’équation d’advection donne l’équation modifiée :
∂φ/∂t + v∂φ/∂x
=
(|v|h / 2) ∂²φ/∂x²
+ higher-order terms
Le premier coefficient de diffusion numérique de la semi-discrétisation spatiale est donc :
α_num = |v|h / 2
Cela explique à la fois la stabilité et la diffamation associée au premier ordre au vent. Il ajoute un terme de troncature de type diffusion qui supprime les ondes courtes et les gradients pointus.
La formule décrit l’erreur principale de l’opérateur spatial. Une fois qu’une discrétisation temporelle est ajoutée, l’équation modifiée complète peut contenir des termes supplémentaires qui dépendent du nombre de cours et de la taille du pas de temps.
Réduire la diffusion numérique
Parce que la diffusion au vent en tête s’adapte à l’espacement des mailles, l’affinage du maillage réduit la bavure. Réduire uniquement le pas de temps ne supprime pas l’erreur spatiale principale.
D’autres options incluent :
- Utilisation d’une reconstruction de second ordre
- Application d’un limiteur de flux
- Utilisation rapide sur des maillages structurés appropriés
- Appliquer les méthodes TVD ou Weno
- Utilisation de SUPG dans une formulation d’éléments finis
- Aligner et affiner le maillage à proximité de couches importantes
L’augmentation de la diffusivité physique n’est pas une solution numérique. Il change de modèle et ne doit être fait que lorsque le problème physique nécessite un coefficient différent.
Diffusion et dispersion numériques
La diffusion numérique réduit l’amplitude des ondes résolues. Il répand les discontinuités et lisse les pics étroits.
La dispersion numérique modifie la vitesse de propagation de différentes longueurs d’onde. Il peut produire des oscillations d’attaque ou de fin, même lorsque l’amplitude totale n’est pas fortement amortie.
Le contrevent du premier ordre est principalement dissipatif. De nombreux schémas centrés et d’ordre supérieur sont moins dissipatifs mais plus dispersifs. Une bonne méthode de transport doit contrôler les deux effets.
Le bon équilibre dépend de l’application. Une petite quantité limitée de dissipation peut être acceptable dans un calcul d’ingénierie robuste. Dans la propagation des ondes, un amortissement excessif peut détruire la quantité mesurée. Dans le transport réactif, les sous-débits oscillatoires peuvent créer des concentrations négatives et briser le modèle de réaction.
Schémas linéaires d’ordre supérieur
| Schème | ordre nominal | force principale | principal risque |
|---|---|---|---|
| différence centrale | Deuxième ordre sur des grilles uniformes et lisses | Faible diffusion numérique | Perte de délimitation ou oscillations dispersives |
| Premier ordre au vent | premier ordre | Robuste et sensé | Forte diffusion numérique |
| Linéaire au vent | Deuxième commande sur des grilles lisses | Moins de diffusion que le premier ordre au vent | pas automatiquement délimité près des gradients nets |
| Rapide | Interpolation du visage du troisième ordre sur une grille uniforme | Bonne précision pour une convection lisse | Peut dépasser et perdre de l’ordre près des limites ou des grilles irrégulières |
| Lax-Wendroff | Deuxième ordre dans l’espace et le temps pour l’advection linéaire | Faible dissipation pour les ondes résolues | Oscillations dispersives proches des discontinuités |
L’ordre nominal s’applique dans les régions lisses selon les hypothèses utilisées pour dériver le schéma. Les limites, les limiteurs, la non-orthogonalité de maillage, les discontinuités et les coefficients variables peuvent réduire le taux de convergence observé.
Limiteurs de flux et schémas TVD
Un limiteur de flux combine un flux d’ordre faible robuste avec une correction d’ordre élevé moins diffusive. Dans les régions lisses, le limiteur permet l’approximation d’ordre supérieur. Près de gradients pointus, il réduit la correction pour éviter de nouveaux maxima ou minima.
Une valeur faciale mélangée simplifiée peut être écrite comme suit :
φ_f =
φ_f(upwind)
+
ψ(r) [
φ_f(high-order)
- φ_f(upwind)
]
La fonction limiteur ψ(r) dépend des gradients voisins. Les exemples courants incluent Minmod, Van Leer, Superbee et Monotonized Central Limitters.
Les méthodes de diminution des variations totales sont conçues pour éviter d’augmenter la variation totale d’une solution unidimensionnelle. Ils offrent un compromis utile entre la robustesse du premier ordre au vent et la résolution d’un schéma d’ordre supérieur.
Près d’une véritable discontinuité, un limiteur non linéaire réduit normalement l’ordre local. Ceci est attendu : le maintien de la monotonie et de l’ordre linéaire élevé à une discontinuité sont des objectifs contradictoires.
Méthodes Weno
Les méthodes pondérées essentiellement non oscillatoires utilisent plusieurs pochoirs candidats. Les indicateurs de douceur attribuent un poids plus faible aux pochoirs qui traversent une discontinuité.
Les méthodes Weno peuvent fournir une précision d’ordre élevé dans des régions lisses tout en évitant les oscillations les plus fortes d’un schéma linéaire d’ordre élevé fixe. Ils sont largement utilisés pour le flux compressible, les lois de conservation et les problèmes de chocs mobiles.
Leurs inconvénients comprennent un coût de calcul plus élevé, des dépendances de données plus larges, un traitement plus complexe des limites et plusieurs choix de mise en œuvre qui affectent la dissipation.
Stabilisation SUPG
La stabilisation de l’amortissement au vent/Petrov–Galerkin est avant tout une technique d’éléments finis. Il modifie l’espace de test de sorte que la forme faible reçoit une contribution résiduelle alignée avec le flux.
Pour un opérateur avec un fort résidu :
R(φ) =
∂φ/∂t
+ v · ∇φ
- ∇ · (α∇φ)
- S
Un terme typique de stabilisation est :
Σ_K ∫_K
τ_K
(v · ∇w)
R(φ_h)
dΩ
Parce que le fort résidu apparaît dans la formulation, le terme est cohérent : la solution exacte satisfait également l’équation stabilisée.
Le facteur v · ∇w met l’accent sur la direction de la ligne de courant. Cela réduit les oscillations sans introduire la même quantité de maculage de vent de travers que la simple diffusion artificielle isotrope.
Choisir le paramètre SUPG
Le paramètre de stabilisation n’est pas universellement égal à h/(2|v|). Cette expression est la limite à peclet élevé de plusieurs formules d’advection régulières.
Pour un problème d’advection et de diffusion régulière unidimensionnelle, une forme courante est :
τ =
h / (2|v|)
[
coth(Pe*) - 1/Pe*
]
Pe* = |v|h / (2α)
Quand l’advection domine fortement :
τ → h / (2|v|)
Lorsque la diffusion domine, l’expression se rapproche d’une limite à l’échelle de la diffusion au lieu d’ajouter une stabilisation excessive.
Les implémentations transitoires et multidimensionnelles peuvent combiner des échelles de temps, d’advection et de diffusion :
τ ≈
[
(c_t / Δt)²
+ (c_v |v| / h)²
+ (c_d α / h²)²
]⁻¹ᐟ²
Les constantes et la définition de la longueur des éléments dépendent de la formulation. L’expression appropriée doit provenir de la méthode des éléments finis et de l’implémentation logicielle utilisée.
La Documentation de l’orignal LevelEtAdvectionSupg montre comment le SUPG est inclus dans une équation de niveau stabilisée complète.
Le SUPG n’est pas une diffusion artificielle isotrope
L’ajout d’un coefficient scalaire plus grand à un terme de diffusion ordinaire n’est pas une implémentation SUPG complète. Un coefficient de diffusion scalaire agit dans chaque direction spatiale.
SUPG modifie la forme faible en utilisant la dérivée directionnelle de la fonction de test et le fort résidu. Il peut donc ajouter une stabilisation de la ligne de courant tout en préservant une plus grande résolution de vent de travers.
Des oscillations de vent de travers peuvent encore se produire dans des couches multidimensionnelles difficiles. Des termes supplémentaires de capture de discontinuité ou de capture de chocs sont parfois utilisés avec SUPG, mais ceux-ci doivent être conçus et validés séparément.
Advection-diffusion dans FIPY
FIPY fournit plusieurs termes de convection de volume fini, notamment :
CentralDifferenceConvectionTermExponentialConvectionTermHybridConvectionTermPowerLawConvectionTermUpwindConvectionTermExplicitUpwindConvectionTermVanLeerConvectionTerm
Le coefficient d’un terme de convection doit représenter une vitesse ou un flux vectoriel. En deux dimensions, un vecteur constant peut être fourni sous la forme ((v_x,), (v_y,)).
Un exemple FIPY au vent
L’exemple suivant transporte une région scalaire circulaire à travers un domaine bidimensionnel tout en ajoutant une petite quantité de diffusion physique :
from fipy import (
Grid2D,
CellVariable,
TransientTerm,
DiffusionTerm,
UpwindConvectionTerm
)
from fipy.tools import numerix
# Domain
length_x = 2.0
length_y = 1.0
nx = 200
ny = 100
dx = length_x / nx
dy = length_y / ny
mesh = Grid2D(
nx=nx,
ny=ny,
dx=dx,
dy=dy
)
# Transported scalar
phi = CellVariable(
name="concentration",
mesh=mesh,
value=0.0,
hasOld=True
)
x, y = mesh.cellCenters
initial_region = (
(x - 0.4) ** 2
+ (y - 0.5) ** 2
< 0.1 ** 2
)
phi.setValue(
1.0,
where=initial_region
)
# Constant velocity vector
velocity_x = 1.0
velocity_y = 0.0
velocity = (
(velocity_x,),
(velocity_y,)
)
diffusivity = 1e-3
equation = (
TransientTerm(var=phi)
+ UpwindConvectionTerm(
coeff=velocity,
var=phi
)
== DiffusionTerm(
coeff=diffusivity,
var=phi
)
)
# Inflow value on the left boundary
phi.constrain(
0.0,
where=mesh.facesLeft
)
# Moderate time step for temporal accuracy
dt = 0.25 * dx / abs(velocity_x)
number_of_steps = 200
for step in range(number_of_steps):
phi.updateOld()
equation.solve(
var=phi,
dt=dt
)
UpwindConvectionTerm utilise une discrétisation implicite du premier ordre au vent au vent. Le pas de temps choisi n’est donc pas présenté comme une limite de LFC explicite stricte. Il est maintenu modéré pour résoudre le transport avec précision.
Pour une convection explicitement intégrée, le schéma complet doit satisfaire la restriction de stabilité associée aux méthodes spatiales et temporelles choisies.
Utilisation du régime de loi de puissance de Fipy
Pour une convection constante–diffusion, les exemples officiels de FIPY utilisent PowerLawConvectionTerm :
from fipy import (
CellVariable,
Grid1D,
DiffusionTerm,
PowerLawConvectionTerm
)
length = 10.0
cell_count = 1000
mesh = Grid1D(
nx=cell_count,
dx=length / cell_count
)
concentration = CellVariable(
name="concentration",
mesh=mesh,
value=0.0
)
concentration.constrain(
0.0,
where=mesh.facesLeft
)
concentration.constrain(
1.0,
where=mesh.facesRight
)
diffusivity = 1.0
velocity = (10.0,)
equation = (
DiffusionTerm(
coeff=diffusivity
)
+ PowerLawConvectionTerm(
coeff=velocity
)
)
equation.solve(
var=concentration
)
Les documents FIPY PowerLawConvectionTerm et ExponentialConvectionTerm conviennent à une large gamme de cas de convection-diffusion, l’approximation de la loi de puissance offrant une option pratique plus efficace.
Vérification du numéro de peclet
Pour l’exemple uniforme à deux dimensions, les nombres de peclets de cellules directionnelles peuvent être calculés comme suit :
peclet_x = (
abs(velocity_x)
* dx
/ diffusivity
)
peclet_y = (
abs(velocity_y)
* dy
/ diffusivity
)
print("Pe_x =", peclet_x)
print("Pe_y =", peclet_y)
Pour les mailles non uniformes et les vitesses variables, calculez un nombre de peclets de face locale en utilisant la vitesse de face normale et la distance de centre cellule local. Une seule valeur globale peut masquer des régions à peclet élevé.
Les erreurs spatiales et temporelles doivent être séparées
L’étalement d’un calcul d’advection peut provenir du flux spatial, de l’intégrateur de temps ou des deux.
Euler à l’envers, par exemple, est dissipatif pour les modes de décomposition et oscillatoire. Crank – Nicolson se comporte différemment et n’amortit pas fortement tous les modes rigides. Les méthodes explicites de Runge-Kutta ont leurs propres courbes de dissipation et de dispersion.
Il est donc inexact d’affirmer que chaque méthode implicite introduit toujours la même quantité de diffusion. L’amortissement numérique dépend de la méthode.
Une analyse utile fait varier le maillage tout en maintenant une erreur temporelle petite, puis fait varier le pas de temps sur un maillage fin fixe. Cela permet de séparer la diffusion numérique spatiale de l’erreur temporelle.
Le guide connexe Méthodes d’intégration temporelle pour les solveurs PDE : schémas explicites ou implicites discute de cette distinction plus en détail.
Choisir une stratégie de stabilisation
| Situation | Point de départ possible | considération principale |
|---|---|---|
| Faible nombre de peclets cellulaires et solution lisse | différenciation centrale | Faible diffusion et précision du second ordre |
| Nombre élevé de peclets avec priorité de robustesse | Premier ordre au vent | Limité mais potentiellement trop diffusant |
| Solution fluide nécessitant une plus grande précision | Linéaire au vent ou rapide | Vérifier la limite et le traitement des limites |
| Avant pointu nécessitant une monotonie | Méthode de flux TVD à intensité limitée | Le limiteur non linéaire réduit les oscillations |
| Loi de conservation dominée par les chocs | Méthode de type Godounov, Weno ou DG | Nécessite des flux numériques appropriés à l’équation |
| Advection des éléments finis–diffusion | soup | Stabilisation résiduelle cohérente |
| Couches de vent de travers complexes | SUPG avec capture de choc supplémentaire ou raffinement local | Le SUPG seul ne peut pas contrôler toutes les oscillations de vent de travers |
Conditions aux limites dans les problèmes d’advection
Advection transporte des informations dans le domaine à travers les limites d’entrée. Les valeurs limites doivent normalement être prescrites lorsque :
v · n < 0
À une limite de sortie, la prescription d’une valeur scalaire inutile peut surcontrôler le problème ou créer une fausse couche limite.
La diffusion modifie les exigences de limites car elle introduit un opérateur spatial de second ordre. Un modèle complet d’advection-diffusion peut donc nécessiter une valeur ou une condition de flux dérivée du problème physique.
Les conditions aux limites doivent être vérifiées avec la direction du flux. Un schéma peut sembler instable lorsque le problème réel est un traitement d’entrée ou d’écoulement incorrect.
Alignement du maillage et diffusion du vent de travers
La diffusion numérique est influencée par l’orientation du maillage. Sur une grille cartésienne, le transport aligné avec un axe de coordonnées est généralement représenté plus proprement que le transport diagonal.
Lorsque le flux traverse la grille de manière oblique, les schémas de remontage multidimensionnel du premier ordre peuvent introduire un étalement de vent de travers substantiel. Le raffinement, les mailles anisotropes, la reconstruction des moindres carrés, la limitation multidimensionnelle ou la stabilisation des éléments finis à base résiduelle peuvent améliorer le résultat.
Une petite taille de cellule à elle seule ne garantit pas une bonne précision si les cellules sont très biaisées ou mal alignées avec des couches importantes.
Tests de vérification
Une nouvelle implémentation d’advection doit être testée sur les problèmes de comportement connu.
Traduction d’un profil fluide
Utilisez des limites périodiques et transportez une onde gaussienne ou sinusoïdale lisse. Après une période, comparez le profil numérique avec la condition initiale.
Ce test révèle une perte d’amplitude et une erreur de phase.
Traduction d’un pouls carré
Une impulsion carrée expose la diffusion numérique et les oscillations. Le contrevent du premier ordre étale les bords, tandis que les schémas d’ordre élevé sans restriction peuvent dépasser.
Blob rotatif
Un champ de vitesse de rotation en deux dimensions teste le transport multidimensionnel, la diffusion par vent de travers et les effets d’orientation de maillage.
Couche limite stable
Un problème de convection-diffusion stable unidimensionnelle avec une solution analytique connue teste le critère de peclet cellulaire et la capacité de résoudre une couche mince de sortie.
Convergence de maillage et de pas de temps
Exécutez le même problème sur plusieurs maillages. Mesurez les erreurs de quantités telles que :
- valeur maximale
- position avant
- Épaisseur de couche
- Masse transportée totale
L1,L2, ou norme maximale- dépassement et sous-dépassement
Répétez le calcul avec des pas de temps plus petits sur un maillage fixe. Cela sépare les erreurs spatiales et temporelles.
Une méthode d’ordre supérieur doit démontrer sa convergence attendue pour un test fluide. Quasi discontinuités, la convergence globale peut être plus faible car la solution exacte manque de régularité suffisante.
erreurs courantes
- Mélanger deux définitions de nombre de peclet différentes
- Application du seuil de différence centrale stable à chaque schéma transitoire
- Appeler le vent inconditionnellement stable sans spécifier l’intégrateur de temps
- En supposant que la diffusion numérique ne dépend que du pas de temps
- Remplacer le SUPG par une diffusion isotrope ordinaire
- En supposant que SUPG utilise toujours
τ = h/(2|v|) - Utilisation d’un schéma linéaire d’ordre élevé sans restriction près d’une discontinuité
- Augmentation de la diffusivité physique pour masquer les bavures numériques
- Application de valeurs scalaires à la fois en entrée et en sortie sans vérifier la PDE
- Comparaison de schémas sur différents maillages ou à différents niveaux d’erreur
- Ignorer la conservation de la masse et les limites physiques
- Attribuer tout l’amortissement à la discrétisation spatiale
Un flux de travail pratique
- Écrivez l’équation sous forme conservatrice ou non conservatrice comme l’exige la physique.
- Identifiez les limites d’afflux, de sortie et de diffusion.
- Calculez les nombres de peclets de cellules directionnelles locales.
- Commencez par un schéma robuste au vent ou borné.
- Mesurer la diffusion numérique lors d’un test de transport connu.
- Affinez le maillage et vérifiez la convergence.
- Passer à un schéma d’ordre supérieur limité lorsque la diffamation est inacceptable.
- Utilisez SUPG pour les formulations d’éléments finis nécessitant une stabilisation simplifiée.
- Vérifiez le numéro de Courant et la convergence temporelle séparément.
- Documentez le flux, le limiteur, le paramètre de stabilisation et le traitement aux limites.
Guides connexes
- méthode de volume fini expliquée simplement – revoir les flux faciaux, la conservation et la discrétisation centrée sur les cellules.
- Méthodes d’intégration temporelle pour les solveurs PDE : schémas explicites ou implicites : comparez les restrictions CFL, l’amortissement et les erreurs temporelles.
- Quand utiliser FEM, FVM ou FDM — Choisissez une discrétisation spatiale pour le problème qui gouverne.
- Études de qualité et de convergence des mailles : un guide pratique : relier la résolution locale à la convergence numérique.
- Séparation de l’opérateur, fractionnement de Strang et schémas IMEX pour les solveurs PDE : séparer les processus de diffusion et de réaction.
- Élargir FIPY avec des modules personnalisés – Explorez le comportement numérique personnalisé autour des modèles FIPY.
Lectures complémentaires
- informatique à différences finies avec PDE – analyse détaillée des schémas d’advection, facteurs d’amplification, diffusion et dispersion.
- nptel : convection et diffusion – discussion sur le comportement de volume fini central et au vent et le critère Peclet.
- Moose LevelSetAdVectionSupg Documentation — Une implémentation de la stabilisation SUPG pour une équation de niveau.
- WiAS Berlin : stabilisation des problèmes dominés par la convection — Ressources sur les méthodes d’éléments finis stabilisées.
- Fenics QA : Implémentation de SUPG — Discussion sur la mise en œuvre historique et mises en garde pratiques.
- Exemples d’advection Fipy Level-Set — Exemples d’advection de la documentation FIPY.
- Supg Finite Analyse — Analyse mathématique des formulations d’éléments finis stabilisés.
- Échange de piles de calculs : pourquoi l’advection est difficile — Discussion sur la communauté des problèmes numériques dans les équations d’advection.
Conclusion
Les équations dominées par l’advection défient les méthodes numériques, car la diffusion physique est trop faible pour supprimer le comportement non résolu à l’échelle de la grille. Le nombre de peclets cellulaires permet de déterminer si une discrétisation du volume fini central stable est susceptible de rester bornée, mais sa définition et son champ d’application doivent être indiqués correctement.
Le contrevent du premier ordre fournit une approximation directionnelle robuste. Son erreur de troncature principale se comporte comme une diffusion artificielle avec le coefficient |v|h/2, ce qui explique à la fois sa stabilité et sa tendance à étaler les fronts.
Les méthodes linéaires d’ordre supérieur réduisent la diffusion numérique, mais peuvent introduire des oscillations dispersives. Les limiteurs de flux, les schémas TVD et les méthodes Weno utilisent des mécanismes non linéaires pour conserver une résolution élevée dans des régions lisses tout en réduisant les oscillations à proximité de gradients abrupts.
SUPG sert un objectif connexe dans les méthodes d’éléments finis. Il ajoute un terme cohérent basé sur les résidus aligné avec la direction d’écoulement. Son paramètre de stabilisation dépend de l’advection locale, de la diffusion, du maillage et parfois de l’échelle de temps ; Il ne doit pas être remplacé aveuglément par une quantité fixe de diffusion isotrope.
Aucun schéma n’est universellement le meilleur. Le choix correct dépend du nombre de peclets locaux, de la régularité de la solution, des exigences de conservation, de la qualité du maillage, des conditions aux limites et de la tolérance à la diffusion ou à la dispersion. Un choix crédible doit être soutenu par des tests analytiques, un raffinement de maillage, une convergence temporelle et des contrôles des limites physiques.