• Aucun résultat trouvé

ondelettes pour la résolution d’une équation de Lippmann-Schwinger

3.4. Influence du type d’ondelette utilisé

Il existe une infinité d’ondelettes différentes, chacune avec des spécificités particulières, qui induisent des avantages et des inconvénients suivant le système à résoudre. Nous savons que plus une ondelette possède de moments nuls, plus le système matriciel transformé aura des chances d’être creux. Les ondelettes d’interpolation, qui forment une base biorthogonale de Wj, possèdent la plus grande régularité de toutes les

ondelettes à support borné de même degré. Ce sont donc a priori les ondelettes les plus adaptées pour creuser les systèmes matriciels et accélérer les temps d’inversion, tout en conservant une précision maximale sur le résultat. Dans ce paragraphe, nous allons dans un premier temps réaliser une étude comparative des ondelettes d’interpolation de différents degrés, tant en durée de transformation qu’en gain de précision ou en compression de données matricielles.

Fig. V-6 Représentation des temps d’inversion de la matrice en fonction de sa taille. Les courbes en

trait plein caractérisent la résolution d’une matrice pleine tandis que les symboles noirs représentent les temps de résolution de la matrice creuse obtenue après transformée en ondelettes. La taille des symboles caractérise la valeur du seuillage réalisé. A gauche, seul le temps de résolution de la matrice est considéré, à droite, temps total de transformation en ondelettes directe et inverse.

Fig. V-7 Étude du temps cumulé de transformée en ondelette directe de la matrice et du second membre, et du temps de transformée inverse du vecteur solution. Les différents symboles

d’une même couleur représentent des calculs réalisés avec un seuillage différent de la matrice. Le seuillage n’a théoriquement aucune incidence sur le temps de transformation mais indique encore la reproductibilité du degré d’utilisation du processeur. Comme on peut le constater dans la Fig. V-7, l’ordre de l’ondelette n’a que peu d’incidence sur le temps de transformation, qui reste lui-même relativement faible comparé au temps de résolution du système. Ce critère n’est donc pas décisif pour le choix de l’ondelette appropriée.

Si l’on se réfère uniquement au temps de calcul, l’ondelette d’interpolation dont l’ordre est le plus bas permet d’optimiser au mieux ce temps de calcul, mais ne garantit pas les matrices les plus creuses. Nous allons donc étudier l’impact de la régularité (l’ordre) de l’ondelette sur les propriétés de la matrice transformée. Pour cela, nous allons calculer le taux de compression défini comme étant le pourcentage de coefficients de la matrice dont la valeur est en dessous d’un seuil δ après transformation en ondelettes.

Selon l’ondelette utilisée et la valeur du seuillage réalisé, l’erreur relative peut être particulièrement importante sur la composante axiale du tenseur de polarisabilité moléculaire du nanotube (jusqu’à 16%), alors qu’elle demeure très faible sur la composante transverse (moins de 1%, sauf jusqu’à 5% ponctuellement). Cela signifie qu’il ne faut que très peu de coefficients matriciels pour calculer avec une assez bonne précision la polarisabilité transverse des nanotubes de carbone (cf. Fig. V-8). Nous allons donc surtout nous intéresser à la précision sur la composante axiale de

polarisabilité car c’est cette dernière qui détermine bon nombre de propriétés intéressantes des nanotubes de carbone, et surtout qui majore l’imprécision sur la polarisabilité moléculaire.

Dans un premier temps, nous allons tenter de caractériser le taux de compression des données réalisé par la transformée en ondelettes, en étudiant le nombre de coefficients nuls de la matrice, après seuillage, en fonction du seuil. Les courbes correspondantes sont présentées dans la Fig. V-9.

Fig. V-9 À gauche : pourcentage de coefficients nuls de la matrice en fonction du seuillage δ. À droite : erreur relative sur la polarisabilité axiale des nanotubes en fonction du seuillage δ. Une résolution de matrice creuse a également été effectuée sans transformation en ondelettes préalable (symboles noirs) pour comparaisons. Les courbes ont été obtenues pour trois tailles de matrices Fig. V-8 Erreur relative commise sur la polarisabilité transverse des nanotubes en fonction du seuillage δ.

La courbe de gauche semble démontrer l’inefficacité d’un seul niveau de décomposition en ondelettes pour creuser les matrices, quelque soit leur taille, étant donné que le maximum de coefficients nuls est obtenu dans le cas où la transformée en ondelettes n’est pas effectuée. Néanmoins, l’écart se réduit pour la plus grosse matrice (N = 6675) et peut peut-être s’inverser par la suite. Le taux de compression de la matrice n’est donc pas augmenté après transformée en ondelettes. Toutefois, des résultats préliminaires obtenus par Y. Li nous incitent à penser qu’il pourrait en être autrement pour un nombre de niveaux de décomposition compris entre 3 et 5 suivant la taille des blocs de matrice.

Dans un deuxième temps, nous allons donc étudier la qualité de la compression des données matricielles, et l’impact de la transformée en ondelettes sur la précision de la représentation. Les coefficients de la matrice transportent une information. Ils quantifient le niveau d’interactions dipolaires entre deux atomes i et j. Après transformée en ondelettes, l’information a changé. L’ondelette établit un lien entre coefficients, si plusieurs coefficients placés côte à côte sur une même ligne ou colonne de matrice sont très différents les uns des autres, l’espace des détails correspondant comportera beaucoup de coefficients non nuls à cet endroit (filtre passe haut), tandis que si les coefficients contigüs sont très proches en valeur, seul un espace d’approximation comportera des coefficients non nuls (filtre passe bas). Le seuillage permet de supprimer des coefficients de l’espace des détails et réalise ainsi une troncature à partir d’un certain seuil de détails. Comme l’interaction est en 1/||rij||3, la variation est plus rapide lorsque deux atomes

proches s’écartent d’une certaine distance ∆||rij|| que lorsque deux atomes lointains

s’écartent de la même distance ∆||rij||. Les coefficients qui varient le plus sont ceux qui sont

proches de la diagonale de la matrice, c’est donc ceux là qui donneront théoriquement le plus de coefficients d’ondelettes non nuls, comme on peut le constater dans la Fig. V-10. Si l’on s’arrête au premier niveau de décomposition, chaque bloc de matrice (ici 1024×1024, 512×512, 256×256, 128×128, 16×16, et 1×1 non transformé, et toutes les autres conbinaisons telles que 1024×512…) est décomposé en un sous-bloc de coefficients d’approximation (projection sur la base des fonctions d’échelles), et trois sous-blocs de détails, l’un analysant les détails selon les lignes (<ψ|A|ϕ>, sous-bloc « dc »), l’un analysant les détails des colonnes (<ϕ|A|ψ>, sous-bloc « cd »), et l’un analysant les détails en diagonale (<ψ|A|ψ>, sous-bloc « dd »).

Fig. V-10 À gauche : représentation graphique des valeurs des composantes de la matrice

décrivant les interactions dipolaires dans un nanotube (8,0) de 624 atomes (matrice 1872×1872), après une transformée en ondelettes d’interpolation d’ordre 4 au premier niveau de décomposition. Chaque bloc comprend une partie approximation cc (en haut à gauche du bloc) et trois parties détails (sous-blocs cd, dc, et dd). À droite, matrice de départ pour comparaisons. Après avoir transformée par ondelettes la matrice, nous avons seuillé ses coefficients, et nous avons étudié l’influence du pourcentage de coefficients non nuls qu’elle contient sur la précision des résultats (sur α// en particulier). Les résultats ont été

obtenus pour plusieurs tailles de matrices (de N = 2835 à N = 6675) et sont représentés dans la Fig. V-11. Ce mode de représentation graphique a été suggéré par Y. Li afin de s’affranchir des instabilités liées à l’évaluation correcte du temps de calcul.

Fig. V-11 Erreur relative sur la polarisabilité axiale du nanotube (par rapport à la résolution de matrice dense sans seuillage ni transformée en ondelettes), en fonction du pourcentage de coefficients nuls (taux de compression), pour différentes tailles de matrices (N = 2835, 4755 et 6675), et pour différents types d’ondelettes d’interpolation (symboles différents).

Dans un premier temps, on note une amélioration de la précision pour des matrices à la fois de plus en plus grandes, et de plus en plus creuses. Maheureusement, comme on peut le constater dans ce graphique, à tailles de matrice égales, le meilleur compromis entre le nombre de coefficients nuls de la matrice et la précision sur les résultats est encore obtenu dans le cas de la résolution de matrice creuse sans transformée en ondelettes préalable. Cependant, l’écart reste relativement faible entre les courbes de référence, sans transformée en ondelettes, et les courbes obtenues pour des ondelettes d’interpolation. De plus, cet écart a tendance à se réduire pour des matrices de plus en plus grandes (courbes les plus à droite du graphe), et si l’on considère la plus basse précision. Il reste donc possible d’observer, à partir d’une certaine taille de matrices, une inversion des courbes, avantageant la transformation en ondelettes sur un niveau par rapport aux courbes de références sans transformée.

Par contre, si l’on représente l’erreur relative sur la polarisabilité axiale en fonction du temps de résolution (avec l’algorithme CXML de matrices creuses), la transformée en ondelettes d’interpolations d’ordres 8 et 10 améliore la précision du résultat tout en diminuant legèrement la durée de calcul (cf. Fig. V-12). On observe la même tendance pour toutes les taiiles de matrice testées (de 2835 à 6675).

Fig. V-12 Représentation de l’erreur relative sur la polarisabilité axiale du nanotube en fonction du temps de résolution du système, après transformée en ondelettes, sauf pour le calcul de référence (symboles noirs), pour N = 6675.

L’optimisation des codes de calcul, afin d’accélérer les algorithmes d’une part, et de pouvoir traiter des matrices plus grosses d’autre part, permettrait sans doute d’améliorer de manière significative les deux paramètres que sont le temps de calcul, et la précision des résultats, de manière à rendre la transformation en ondelettes plus efficace… De plus, une décomposition sur plusieurs niveaux permettrait sans doute d’avantager de manière définitive les calculs de transformée en ondelettes. Cela permettrait d’exploiter toutes les échelles caractéristiques présentes dans la matrice.