Télécharger le fichier pdf d’un mémoire de fin d’études
Méthodes basées sur la densité électronique
Contrairement aux méthodes décrites précédemment, la DFT se base sur la connaissance de la densité électronique plutôt que sur la connaissance de la fonction d’onde. Cette méthode basée sur des concepts nés à la fin des années 1920, laissée de côté puis réapparue dans les années 1960 est aujourd’hui la méthode la plus utilisée en chimie théorique. Dans cette partie, nous allons présenter les développements historiques de la DFT depuis le modèle de Thomas-Fermi [131, 132] en 1927 en passant par les théorèmes de Hohenberg et Kohn [133] en 1964 jusqu’au formalisme de Kohn-Sham [134] sur lequel repose la grande majorité des méthodes de DFT employées par les chimistes théoriciens. Ensuite nous présenterons deux déclinaisons de la DFT que nous avons employées dans ces travaux de thèse : l’ADFT et la SCC-DFTB.
Théorèmes de Hohenberg et Kohn
Le premier théorème d’Hohenberg et Kohn stipule que pour un système de particules en interaction, la connaissance de la densité de l’état fondamental permet à elle seule de déterminer n’importe quelle propriété de ce système et de déduire la fonction d’onde de son état fondamental ainsi que de tous ses états excités. Ceci implique qu’il existe une unique fonctionnelle F [ρ(r)] de la densité, indépendante du système considéré, telle que : E[ρ(r)] = T [ρ(r)] + Vee[ρ(r)] + Vext(r)ρ(r)dr = F [ρ(r)] + Vext(r)ρ(r)dr (1.25)
où E[ρ(r)] est l’énergie totale du système qui est donc une fonctionnelle de la densité, T [ρ(r)] correspond à l’énergie cinétique des électrons, Vee[ρ(r)] exprime le potentiel d’interaction entre les électrons et Vext(r)ρ(r)dr représente le potentiel d’interac-tion coulombien entre les électrons et les noyaux.
Le second théorème stipule quant à lui que toute densité électronique ap-prochée d’un état fondamental non dégénéré donne lieu à une borne supérieure de l’énergie exacte de ce système. Par conséquent, le principe des variations peut être appliqué relativement à ρ(r) pour déterminer l’énergie de l’état fondamental du système. On notera respectivement ρ0(r) et E0 la densité et l’énergie de l’état fon-damental. En appliquant le principe variationnel à l’équation (1.25) on peut trouver la densité électronique de l’état fondamental ρ0(r) à partir de laquelle on a vu que n’importe quelle propriété était calculable. Encore une fois, le problème réside dans l’absence d’une forme analytique des termes T [ρ(r)] et Vee[ρ(r)] pour un système de particules en interaction.
Fonctionnelles d’échange-corrélation
Depuis que le formalisme de Kohn-Sham a été établi en 1965, de nombreuses fonctionnelles d’échange-corrélation ont été développées pour pouvoir répondre à toute sorte de problèmes physico-chimiques. Chaque fonctionnelle présente ses avan-tages et ses défauts et on les groupe généralement en trois grandes familles :
• les fonctionnelles LDA (pour Local Density Approximation en anglais). Ces fonctionnelles sont les premières à avoir été proposées. Elles se basent sur le gaz uniforme d’électron pour lequel on connaît la forme analytique de l’énergie d’échange. L’énergie de corrélation quant à elle n’est pas connue analytique-ment mais elle peut être approximée par des méthodes numériques de chimie quantique. En dépit du caractère local de ce type de fonctionnelles, elles ont donné lieu à des résultats satisfaisants, notamment sur des systèmes dans les-quels la distribution électronique est relativement homogène comme les métaux par exemple.
• les fonctionnelles GGA (pour Generalized Gradient Approximation en an-glais). Dans cette approximation, on introduit le gradient de densité ∇ρ(r) afin de prendre en compte les variations locales de la densité électronique. Ces fonctionnelles donnent de meilleurs résultats que les fonctionnelles LDA pour les systèmes présentant de fortes variations de densité, comme les molécules par exemple. Parmi les nombreuses combinaisons de fonctionnelles GGA que l’on peut trouver, nous avons utilisé la fonctionnelle BLYP (fonctionnelle d’échange GGA B88 [136] et fonctionnelle de corrélation LYP [137, 138, 139]) dans ces travaux. Il existe aussi les fonctionnelles meta-GGA qui prennent en compte le laplacien de la densité en plus du gradient.
• les fonctionnelles hybrides. Ces fonctionnelles introduisent une partie ou la totalité de l’énergie d’échange Hartree-Fock dans l’expression de l’énergie d’échange-corrélation. Dans ces travaux, nous avons utilisé la fonction-nelle PBE0 [140, 141], qui contrairement à la grande majorité des fonction-nelle hybrides, ne fait apparaître aucun paramètre empirique dans sa définition.
Théorie de la fonctionnelle de la densité auxiliaire
L’ADFT est une méthode dérivée de la DFT utilisant une densité approximée, la densité auxiliaire, afin de réduire le temps d’un calcul DFT. Dans cette section, nous allons présenter brièvement les différentes approximations qui permettent d’accélérer considérablement le calcul de l’énergie DFT sans pour autant diminuer la précision des résultats. Nous nous limiterons aux principales approxi-mations existantes dans le programme deMon2k, programme que nous avons utilisé pour réaliser les calculs de DFT dans nos travaux.
Formalisme ADFT dans le code deMon2k
Dans la plupart des méthodes de chimie théorique, le goulot d’étranglement d’un calcul ab-initio réside dans le calcul des intégrales électroniques à quatre centres que l’on retrouve dans l’interaction coulombienne, l’interaction d’échange et l’interaction de corrélation. Nous avons vu qu’en DFT, l’interaction d’échange et l’interaction de corrélation sont prises en compte dans la fonctionnelle d’échange-corrélation et ne génèrent donc pas de calcul d’intégrales électroniques à quatre centres, elles n’inter-viennent que dans l’interaction coulombienne La méthode d’ajustement de densité (DF pour Density fitting en anglais) permet de réduire les intégrales à quatre centres dans le potentiel de Coulomb (aussi appelée intégrales de répulsion électronique ou ERIs pour Electronic Repulsion Integrals en anglais) en intégrales à trois centres.
Cette méthode consiste à décomposer la densité orbitalaire ρ(r) sur des fonctions auxiliaires en minimisant l’énergie : ε = drdr′ 2 |r − r′| 1 [ρ(r) − ρ˜(r)][ρ(r′) − ρ˜(r′)] (1.33).
Mécanique moléculaire et champ de force
La mécanique moléculaire (MM) permet de calculer l’énergie potentielle d’un système atomique en décrivant les interactions interatomiques par la mécanique classique. Cette méthode est conceptuellement différente des méthodes que l’on vient de décrire car elle ne traite pas les électrons de manière explicite et ne nécessite donc pas de résoudre l’équation de Schrödinger. Par conséquent, son coût de calcul est
nettement plus faible que les méthodes basées sur la fonction d’onde ou sur la densité électronique. Elle peut donc être utilisée pour traiter des systèmes atomiques beaucoup plus gros pouvant aller jusqu’à des milliards d’atomes ou pour réaliser des dynamiques moléculaires de l’ordre de la milliseconde. Dans ce qui suit, nous allons présenter les équations de la MM telle qu’elle est implémentée dans le code deMon2k. L’énergie totale d’un système atomique s’exprime comme suit : Ecovalentes Enon−covalentes Etotal = Eliaison + Eangle + EU rey + Etors + Eitors + EV W + ECoulomb(1.48)
Dynamique moléculaire classique
La dynamique moléculaire (MD pour Molecular Dynamics en anglais) est une méthode qui permet de modéliser l’évolution temporelle d’un système atomique.
En MD, les noyaux peuvent être traités comme des particules classiques, c’est à dire comme des masses ponctuelles chargées positivement. On parle dans ce cas de dynamique moléculaire classique par opposition à la dynamique quantique. L’évolution du système est alors régie par les équations de Newton. La dynamique quantique quant à elle consiste à résoudre l’équation de Schrödinger dé-pendante du temps (équation (1.1)). Toutes les méthodes présentées dans ce qui suit sont des méthodes de dynamique classique. Le premier travail mentionnant la MD a été réalisé en 1957 par Berni Julian Alder et Thomas Everette Wainwright [150] qui ont étudié la transition de phase d’un système de sphères solides. Depuis, la MD a permis de résoudre un grand nombre de problèmes dans les domaines de la chimie, biochimie, physique, biophysique ou de l’ingénierie. La MD permet de calculer des propriétés dynamiques telles que la diffusion [151, 152, 153] ou la vis-cosité [152, 154, 155, 156] mais aussi spectroscopiques [157, 158, 159, 160, 161], thermodynamiques [162, 163, 164, 165, 166] ou structurales [167, 168, 169, 170].
Pour pouvoir propager les positions atomiques selon les équations de Newton, il faut pouvoir calculer l’énergie du système en fonction de ces positions. Cela peut être réalisé à l’aide d’une des méthodes présentées dans la section 1.2. Dans le cas où l’ énergie est calculée à partir d’une méthode de type champ de force (voir sec-tion 1.2.4), les noyaux et les électrons ne sont pas distinguables et constituent une seule et même particule. Comme nous l’avons dit précédemment, cette méthode a l’avantage d’être rapide et permet donc d’atteindre des temps de simulation longs pour des systèmes contenant de nombreux atomes. En revanche, elle ne permet pas de traiter des problèmes électroniques comme par exemple des réactions chimiques au sein desquelles des créations et/ou ruptures de liaison ont lieu. La MD basée sur les champ de force est par exemple très utilisée en biochimie pour étudier le repliement des protéines [171, 172, 173, 174]. Lorsque le calcul de l’énergie se fait par la résolu-tion de l’équation de Schrödinger électronique, on parle alors de dynamique molé-culaire ab-initio. La dynamique moléculaire Born-Oppenheimer (BOMD) est une méthode de MD ab-initio dans laquelle la propagation des degrés de liberté des noyaux et des électrons sont découplés. Il existe d’autres méthodes, telle que la dynamique moléculaire de Car-Parrinello (CPMD pour Car-Parrinello Mole-cular Dynamics en anglais) dans laquelle les degrés de liberté électroniques et les degrés de liberté nucléaires sont propagés de manière couplée [175].
Dynamique moléculaire Parallel-Tempering
Pendant le temps d’une mesure expérimentale, le système étudié se trouve sta-tistiquement dans toutes les configurations disponibles à la température d’étude. En dynamique moléculaire, les temps de simulation accessibles sont beaucoup plus courts (voir figure 3), même pour les méthodes les moins coûteuses en temps de cal-cul. Or les surfaces d’énergie potentielle sont souvent très complexes et présentent de nombreux minima locaux et cela d’autant plus que le nombre de degrés de liberté du système est élevé. Parfois, ces minima sont séparés par des barrières énergétiques élevées qui ne peuvent pas être franchies à basse température ou alors sur des temps de simulation beaucoup trop longs pour être accessibles. Cela engendre des simula-tions non ergodiques à partir desquelles il n’est pas possible d’extraire de résultat statistique. En général, les barrières franchissables à une température donnée sont de l’ordre de kbT . La figure 1.3 permet de visualiser ce concept. Sur cette figure sont représentées en (a) les zones d’une PES accessibles selon la température de simulation et en (b) la densité d’état pour différentes températures. Admettons que le système se trouve initialement au fond du puits de potentiel le plus profond. À basse température (bleu), le système ne peut que visiter le fond de ce puits. A tem-pérature intermédiaire (violet), le système pourrait se trouver dans les deux puits de potentiels. Cependant il ne possède pas assez d’énergie pour pouvoir franchir la barrière d’énergie potentielle séparant les deux puits. A haute température (rouge), le système peut facilement passer la barrière d’énergie potentielle et visiter les deux puits de potentiel.
La méthode Parallel Tempering (PT) consiste à simuler le même système à différentes températures et à échanger périodiquement les ré-pliques entre les différents ensembles visités. Originellement nommée Replica Exchange ou Markov Chain, elle a été appliquée pour la première fois par Robert H. Swendsen et Jian Sheng Wan en 1986 afin d’obtenir les différents minima d’un système de verre de spin [225]. Dans cette étude, l’échange de répliques n’était pas combiné à la MD mais à la méthode Monte-Carlo. On parle alors de Markov Chain Monte-Carlo (MCMC). La méthode MCMCs a ensuite été massivement étu-diée et améliorée dans les années 90 [226, 227, 228, 229]. La première application de cette méthode à un système moléculaire a été réalisée en 1999 par Marco Fal-cioni et Michael W. Deem pour l’étude structurelle de zéolithes [230].
Extraction de propriétés issues de dynamiques molécu-laires
Comme nous venons de le voir, la MD permet d’échantillonner un ensemble thermodynamique. Il est donc possible de calculer des moyennes d’ensemble à partir des états échantillonnés au cours de la dynamique. Dans cette dernière section, nous allons voir comment calculer une distribution d’isomères, la capacité calorifique et les spectres d’absorption IR à partir de simulations de MD.
Distribution d’isomères
Pour faire le lien entre les changements de conformation et les changements de pente dans les courbes de capacité calorifique lors de transitions de phase dans les agrégats d’eau, nous avons analysé les distributions des isomères de plus basse énergie en fonction de la température. Pour cela, il faut disposer d’un ensemble de configurations géométriques à différentes températures. Ces conformations peuvent être obtenues à l’aide d’une simulation PTMD. Les structures de plus basse énergies sont obtenues en optimisant un grand nombre de géométries issues de trajectoires réalisées à différentes températures. En ordonnant les structures ainsi obtenues par énergie croissante, il est possible de discriminer différents isomères. Concernant les agrégats d’eau que nous avons étudiés ((H2O)6 et (H2O)8), nous avons décidé de caractériser les isomères par le nombre de cycles O−O et leur taille. Par taille nous entendons ici le nombre d’atomes d’oxygène par cycle. Pour définir les cycles, nous avons utilisé l’algorithme de Xianglong Yuan et Alistair N. Cormak [250]. Cet algo-rithme est basé sur la méthode des cycles primitifs. Il permet de faire une analyse topologique de systèmes cycliques dans lesquels les atomes sont traités comme des nœuds et les liaisons chimiques comme des liens entre ces nœuds. Pour cela, il faut définir la taille maximum d’un lien. Dans toutes les distributions d’isomères que nous avons étudiées, nous avons choisi une distance O−O limite de 3,25 Å.
Il existe d’autres méthodes telles que la méthode des arbres binaires enracinés qui a été employée pour décrire les réseaux de liaisons hydrogènes dans des agrégats d’eau protonés [251, 252, 253, 254] ou la méthode SOAP (pour Smooth Overlap of Atomic Positions en anglais) [255].
Capacité calorifique
L’étude de la capacité calorifique C en fonction de la température permet de caractériser les transitions de phase. En effet,s lors d’une transition de phase (ou d’une isomérisation dans le cas d’agrégats moléculaires) la pente de la courbe de capacité calorifique change. Dans cette thèse, les capacités calorifiques ont été cal-culées à l’aide de la méthode des histogrammes multiples développée par Pierre Labastie et Robert L. Whetten [256, 257]. Cette méthode consiste a évaluer la ca-pacité calorifique a une température donnée en fonction de la probabilité pour que le système étudié se trouve à une certaine énergie. Cette probabilité est calculée à partir de l’échantillonnage de la PES à différentes température. Cela peut être fait en réalisant des simulations de MD à différentes températures ou à l’aide de la mé-thode PTMD. La distribution d’énergie se présente sous la forme d’un histogramme comme ceux de la figure 1.3 (b). À partir de cette probabilité, on peut calculer l’entropie puis la fonction de partition. du système La fonction de partition donne accès à l’énergie interne U . La capacité calorifique C est définie comme la dérivée de l’énergie interne par rapport à la température et se calcule par : ∂U NdegkB E2− E2C(T) = = + kB T 2 ∂T 2 (1.109) où E est l’énergie potentielle du système.
Calcul de tenseurs d’écrantage magnétique par la méthode ADFT-GIAO
La spectrocopie par résonnance magnétique nucléaire (RMN) compte parmi les méthodes les plus courramment employées par les expérimentateurs pour obtenir une decription de la structure des molécules. Les paramètres d’écrantage obtenues en RMN donnent une information précise sur la distribution de la den-sité électronique aux abords des noyaux étudiés à partir desquelles il est possible d’extraire des propriétés structurales et électroniques. Le calcul théorique de ces pa-ramètres d’écrantage est fondamental pour pouvoir comparer des résultats obtenus en simulations aux résultats expérimentaux. Dans cette section nous expliquerons les principales équations de la méthode ADFT-GIAO telle qu’elle est implémentée dans le code deMon2k. La méthode GIAO (pour gauge-including atomic orbital en anglais) a initialement été développée par Fritz London en 1937 pour étudier les relations de courant annulaire dans des composés aromatiques [258], puis a en-suite été développée par d’autres personnes [259, 260, 261, 262, 263, 264, 265]. La première combinaison de la méthode GIAO avec la DFT a été réalisées en 1990 par Karlheinz Friedrich et al. [266] en se basant sur la formulation GIAO de Robert Dit-chfield [267] puis a été amélioré par Georg Schreckenbach et Tom Ziegler [268].
La méthode ADFT-GIAO repose sur l’utilisation d’orbitales atomiques indépendantes de jauge (GIAO pour Gauge-Invariant Atomic Orbitals en an-glais). L’utilisation de ce type d’orbitales rend les résultats indépendants de l’origine de jauge. Ainsi, les orabitales atomiques µ(r) et ν(r) dans l’équation (1.36) sont remplacées par des orbitales GIAO qui s’écrivent comme une combinaison linéaire d’orbitales atomiques de type gaussienne contractée : φa(r, H) = a(r)e− i H·(A−G)×r (1.111) où H représente le champ magnétique externe, a(r) une orbitale atomique qui ne dépend pas du champ magnétique externe, et A et G représentent respectivement les vecteurs positions de l’atome A sur lequel l’orbitale a(r) est centrée et de l’origine de jauge.
Division des communicateurs MPI dans de-Mon2k
Dans cette section, nous allons présenter l’implémentation de la structure parallèle MPI en deux couches qui nous a ensuite permis d’implémenter l’algo-rithme PTMD. Nous avons développé en 2019 une première architecture et implé-menté la méthode PTMD dans la version 6.0.2 de deMon2k. Ce travail a été présenté lors du 19th deMon developper Workshop le 28 mai 2019 à Fréjus. Les discussions fructueuses qui ont suivi nous ont ensuite motivé à développer une nouvelle version de cette architecture parallèle en deux couches dans la version 6.0.8 de deMon2k en collaboration avec Gerald Geudtner et Andreas M. Köster du CINVESTAV à Mexico. Gerald Geudtner est notamment à l’origine de la parallélisation MPI de de-Mon2k. Pour bien rendre compte de l’intégralité de la démarche et du travail fourni, nous présenterons dans ce qui suit les deux versions bien que seule la 2nde ait été retenue pour apparaître dans la version officielle de deMon2k. Dans ce qui suit, pour faciliter la lecture, le nom des routines est indiqué en minuscule alors que celui des communicateurs ou variables fortran est indiqué en majuscule. Tous les noms qui commencent par « MPI_ » désignent les routines ou variables intrin-sèques MPI alors que ceux qui commencent par « mp_ » désignent les routines deMon2k d’interface vers les routines intrinsèques MPI.
Structure MPI de deMon2k avant la création de la se-conde couche MPI
Lorsque nous avons commencé à implémenter l’algorithme PTMD dans la ver-sion 6.0.2 de deMon2k, certaines parties du programme étaient d’ores et déjà paral-lélisées à l’aide de librairies MPI. C’est le cas des routines d’algèbre linéaire et des routines dédiées au calcul de la structure électronique. Comme mentionné plus haut, l’implémentation de l’algorithme PTMD a nécessité une modification de cette struc-ture MPI du code. Afin de mieux expliciter ces modifications, nous allons d’abord présenter la structure MPI qui précédait celle que nous avons mis en place.
Comme on peut le voir sur la Figure 2.2, avant toute chose, le programme initialise la structure MPI du code dans la routine mp_start. Cette routine fait appelle aux trois principales routines nécessaires à l’initialisation d’un programme MPI. La routine mpi_init initialise les processus MPI. Le nombre de processus MPI correspond au nombre de CPUs alloués lors de la soumission du calcul. La routine mpi_comm_size attribue quant à elle un communicateur à tous ces processus. Dans la structure MPI originale de deMon2k il s’agit du commu-nicateur MPI_COMM_WORLD qui est le communicateur par défaut des librairies MPI. Enfin, mpi_comm_rank attribue un rang à chaque processus au sein de ce communicateur. Voici comment sont appelées ces trois routines dans le code :
CALL MPI_COMM_SIZE(MPI_COMM_WORLD,NCPU,IERRS).
CALL MPI_COMM_RANK(MPI_COMM_WORLD,ME,IERRR).
A ce stade, MPI_COMM_WORLD est le seul communicateur employé dans tout le code. Cela signifie qu’à chaque fois qu’une tâche est parallélisée, tous les processus MPI travaillent de concert à la réalisation de cette tâche. Par exemple, si un processus appelle la commande mpi_bcast, tous les autres processus recevront la donnée envoyée. Si cette parallélisation fonctionne efficacement pour accélérer le calcul de l’énergie d’un système, elle ne permet pas d’avoir une implémentation parallèle du PTMD. En effet, dans ce cas, il faut que l’énergie de chacune des N répliques soit calculée en parallèle mais indépendamment des autres répliques, ce qui n’est pas possible quand tous les processus communiquent ensemble au tra-vers d’un seul communicateur MPI. Une implémentation parallèle de l’algorithme PTMD nécessite donc une modification de l’architecture parallèle du code deMon2k. Une solution élégante et efficace qui permet de ne pas avoir à modifier toute les parties parallèles du code consiste à subdiviser le communi-cateur qui contient tous les processus MPI, ici MPI_COMM_WORLD, en sous-communicateurs.
Première version de la structure MPI en 2 couches
L’idée principale de notre modification de l’architecture MPI consiste à créer une seconde couche de parallélisation afin de ne pas avoir à intervenir dans la struc-ture MPI précédant notre implémentation. Pour ce faire, il nous faut diviser le nombre total de processus MPI requis par un calcul en groupes de proces-sus MPI indépendants les uns des autres. Chacun de ces groupes de processus se verra ensuite assigner une des températures de l’algorithme PTMD sans modifi-cation des routines de calcul de la structure électronique. Un groupe additionnel de processus créé à partir des processus maîtres de ces premiers groupes servira pour les échanges de réplique entre les différentes températures.
Duplication de MPI_COMM_WORLD dans mp_start
On souhaite que les routines de deMon2k servant d’interface vers les li-brairies MPI fonctionnent indifféremment si l’on réalise une simulation PTMD ou un autre type de simulation. Le soucis, c’est que ces routines d’interface ne prennent pas le communicateur MPI comme argument, elles utilisent toutes MPI_COMM_WORLD par défaut. Pour remédier à ce problème, à la fin de la routine mp_start, après l’initialisation des processus MPI, le communicateur MPI_COMM_WORLD est dupliqué en COMM_TEMPWORLD à l’aide de la routine mpi_comm_dup. Il faut ensuite dimensionner et classer ce nouveau communicateur avec mpi_comm_size et mpi_comm_rank. On remarquera que les communicateurs COMM_TEMPWORLD et MPI_COMM_WORLD ont la même dimension, décrite par l’entier NCPU, et que les rangs des processus, décrits par l’entier ME, est le même dans ces deux communicateurs. Voici les commandes im-pliquées :
CALL MPI_COMM_DUP(MPI_COMM_WORLD,COMM_TEMPWORLD,IERR).
CALL MPI_COMM_SIZE(COMM_TEMPWORLD,NCPU,IERRS).
CALL MPI_COMM_RANK(COMM_TEMPWORLD,ME,IERRR).
En remplaçant MPI_COMM_WORLD par COMM_TEMPWORLD dans toutes les routines d’interfaces vers les routines intrinsèques MPI, le fonctionnement du code est inchangé.
Création de groupes de processus dans mp_group
Nous avons créé la routine mp_group afin de gérer la création de nou-veaux groupes de processus et de nouveaux communicateurs MPI. Le programme appelle cette routine uniquement dans le cas d’une simulation PTMD. C’est cette routine qui est en charge de la mise en place de l’architecture pa-rallèle MPI en deux couches. Son fonctionnement est décrit dans ce qui suit. A l’issu de l’appel à cette routine, trois communicateurs MPI seront créés :
• COMM_ALLWORLD au travers duquel tous les processus pourront com-muniquer.
• COMM_TEMPWORLD au travers duquel seuls les processus en charge de la dynamique à une température donnée pourront communiquer.
• COMM_PARENTWORLD au travers duquel les processus maîtres au sein de COMM_TEMPWORLD pourront communiquer pour réaliser les échanges de réplique.
La structure parallèle MPI en deux couches qui résulte de la création de ces sous-groupes est représentée de façon schématique sur la Figure 2.3. Expliquons maintenant son fonctionnement en détails.
Comme les rangs et rôles des processus (esclave ou maître) vont être amenés à changer dans les nouveaux communicateurs MPI, il faut commence par sauvegar-der leurs attributs dans le communicateur actuel (COMM_TEMPWORLD) de la manière suivante :
NCPU_TOT = NCPU.
MPGREATMASTER = MPMASTER.
MPGREATSLAVE = MPSLAVE.
|
Table des matières
1 Méthodes et outils de simulation
1.1 Équation de Schrödinger et approximation de Born-Oppenheimer
1.1.1 Équation de Schrödinger et Hamiltonien moléculaire
1.1.2 Approximation de Born-Oppenheimer
1.2 Calcul de la structure électronique
1.2.1 Fonctions monoélectroniques, polyélectroniques et déterminant de Slater
1.2.2 Méthodes basées sur la fonction d’onde
1.2.3 Méthodes basées sur la densité électronique
1.2.4 Mécanique moléculaire et champ de force
1.2.5 Méthodes hybrides QM/MM
1.3 Dynamique Moléculaire
1.3.1 Notion de surface d’énergie potentielle
1.3.2 Dynamique moléculaire classique
1.3.3 Dynamique moléculaire basée sur les intégrales de chemin
1.3.4 Dynamique moléculaire Parallel-Tempering
1.3.5 Extraction de propriétés issues de dynamiques moléculaires
2 Implémentation de la méthode Parallel-Tempering Molecular Dynamics dans deMon2k et application à l’étude d’agrégats d’eau
2.1 Introduction
2.2 Division des communicateurs MPI dans deMon2k
2.2.1 Structure MPI de deMon2k avant la création de la seconde couche MPI
2.2.2 Première version de la structure MPI en 2 couches
2.2.3 Seconde version de la structure MPI en 2 couches
2.3 Implémentation de l’algorithme PTMD dans deMon2k v. 6.0.8
2.3.1 Préparation des communicateurs MPI et initialisation de l’algorithme PTMD
2.3.2 Routine en charge des échanges de répliques
2.3.3 Échanges asynchrones
2.4 Application à l’étude du changement de phase dans l’hexamère d’eau (H2O)6
2.4.1 Méthodes employées et paramètres de calcul
2.4.2 Résultats et discussion
2.5 Application à l’étude du changement de phase dans l’octamère d’eau (H2O)8
2.5.1 Méthodes employées et paramètres de calcul
2.5.2 Résultats et discussion
2.6 Conclusions et perspectives
3 Impact des effets quantiques nucléaires sur l’écrantage isotrope 13C de carboxylates linéaires
3.1 Introduction
3.2 Implémentation de l’interface entre deMon2k et i-PI
3.2.1 Fonctionnement du programme i-PI
3.2.2 Implémentation de l’interface entre i-PI et deMon2k
3.3 Méthodes employées et paramètres de calcul
3.4 Validation des méthodes
3.4.1 Validation de la méthode QM/MM
3.4.2 Convergence des NQEs
3.4.3 Convergence statistique
3.5 Résultats et discussion
3.5.1 Discussion sur les valeurs absolues de 13C σiso
3.5.2 Discussion sur les valeurs relatives de 13C σiso
3.6 Conclusions et perspectives
4 Impact des effets quantiques nucléaires sur la distribution d’isomères dans les agrégats d’eau (H2O)6 et (H2O)8
4.1 Introduction
4.2 Méthodes employées et paramètres de calcul
4.3 Résultats et discussion
4.4 Conclusions et perspectives
5 Impact des effets quantiques nucléaires sur les spectres d’absorption infrarouge de systèmes (H2O)n/Ar et (PAH)(H2O)/Ar
5.1 Introduction
5.2 Méthodes employées et paramètres de calcul
5.2.1 Configurations initiales
5.2.2 Calcul de la structure électronique
5.2.3 Exploration de la surface d’énergie potentielle
5.2.4 Calcul des spectres d’absorption IR
5.3 Résultats et discussion
5.3.1 Comparaison des spectres IR de (H2O)n/Ar en MD et TRPMDGLE
5.3.2 Comparaison des spectres IR de C24H12/Ar et (C24H12)(H2O)σ/Ar en MD et TRPMD-GLE
5.3.3 Comparaison des spectres IR de C20H10/Ar et (C20H10)(H2O)/Ar en MD et TRPMD-GLE
5.4 Conclusions et perspectives
Conclusion générale
Annexes
Bibliographie
Télécharger le rapport complet