Quelles sont les pistes pour l'amélioration d'un code de FDTD sur l'équation d'onde d'Alembert ?
Sur quels paramètres peut-on intervenir pour améliorer la précision des résultats de cette simulation ?
Merci d'avance
-----
16/10/2022, 11h46
#2
Paraboloide_Hyperbolique
Date d'inscription
juin 2012
Localisation
Liège
Messages
2 686
Re : FDTD piste amélioration
Bonjour,
Votre question est trop large telle quelle. Il y a 36 manières d'améliorer un code en différences finies:
1. Du point de vue algorithmique:
1.a.: augmenter l'ordre de discrétisation (si on veut améliorer la fidélité de la modélisation, mais allonge le temps calcul)
1.b.: passer à un schéma implicite (permet d'augmenter le pas de temps au prix de la résolution d'un système linéaire à chaque pas de temps).
1.c: utiliser un schéma explicite avec un pas de temps adaptatif.
1.d: utiliser un schéma explicite avec un pas de temps spatial adaptatif.
1.e: combiner 1.c et 1.d
1.f: utiliser un schéma "mixte" combinant un schéma explicite et implicite.
1.g: voir la littérature sur le sujet qui propose certainement plein d'autres idées en fonction de cas considérés.
2. Du point de vue informatique:
2.a: utiliser une arithmétique mult-précision
2.b: exploiter les possibilités de vectorisation proposées par le processeurs modernes (SSE)
2.c: paralléliser le code pour le faire tourner sur plusieurs processeurs à la fois.
2.e: optimiser l'utilisation des différentes mémoires caches.
2.f: recourir à des matrices creuses pour les schémas implicites.
2.g: et encore d'autres optimisations possibles que je n'ai pas à l'esprit maintenant...