Atomsk

Le couteau suisse pour les simulations atomiques

Tutoriel : Défauts Ponctuels

Dans ce tutoriel, vous allez apprendre à insérer des défauts ponctuels comme des lacunes, substitutionnels, et interstitiels.

Pour les besoins de l'exercice, créons une super-cellule de chlorure de sodium NaCl :

atomsk --create rocksalt 5.64 Na Cl -duplicate 10 10 10 NaCl_supercell.xsf

1. Lacunes

Le cas des lacunes a déjà été discuté dans un précédent tutoriel. L'option "-select" permet de sélectionner des atomes suivant différents critères. Ensuite, les atomes sélectionnés peuvent être supprimés grâce à l'option "-remove-atoms".

Par exemple, on peut sélectionner un atome d'un indice donné, et le supprimer pour former une lacune :

atomsk NaCl_supercell.xsf -select 417 -remove-atom select final.cfg

Cela va supprimer l'atome numéro 417, et formera une lacune.

Il est aussi possible de demander à Atomsk de sélectionner des atomes au hasard, avant de les supprimer. Par exemple, pour supprimer au hasard 30 atomes de sodium (Na) du système ::

atomsk NaCl_supercell.xsf -select random 30 Na -remove-atoms select final.cfg

Il est aussi possible de sélectionner une certaine proportion d'atomes d'une espèce donnée, avec le symbole de pourcentage "%". Par exemple, pour sélectionner 1% des atomes de sodium :

atomsk NaCl_supercell.xsf -select random 1% Na -remove-atoms select final.cfg

Notez que l'option "-select random" séctionne vraiment les atomes au hasard, la sélection sera donc différente (et aléatoire) à chaque fois que vous exécuterez cette commande.

L'option "-select" est très puissante, et permet de sélectionner des atomes suivant différents critères. Ensuite, supprimer les atomes sélectionnés résulte dans la formation de lacunes dans le matériau.

2. Substituter des atomes

Au lieu de supprimer les atomes, il est possible de les substituer par des atomes d'une autre espèce, grâce à l'option "-substitute".

Comme premier exemple, remplaçons tous les atomes de sodium (Na) par des atomes d'argent (Ag) :

atomsk NaCl_supercell.xsf -substitute Na Ag final.cfg

Dans ce cas, tous les atomes de sodium ont été remplacés. Souvent, on aplutôt besoin de substituer seulement certains atomes, par exemple pour doper un matériau ou former une solution solide. Comme précédemment, cela peut se faire en sélectionnant d'abord certains atomes, avant d'appliquer l'option "-substitute". Par exemple, sélectionnons l'atome numéro 417, et remplaçons-le par un atome d'argent :

atomsk NaCl_supercell.xsf -select 417 -substitute Na Ag final.cfg

Dans ce cas, seul l'atome 417 est sélectionné, et donc l'option "-substitute" ne s'appliquera qu'à lui ; les autres atomes de sodium resteront les mêmes. Comme vous le voyez, les possibilités offertes par l'option "-select" ne se limitent pas à la suppression d'atomes, mais aux autres options aussi.

Naturellement, il est aussi possible de substituer des atomes au hasard dans la système. Pour y parvenir, sélectionnez des atomes au hasard comme précédemment, puis substituez-les. Par exemple, remplaçons au hasard 30 atomes de sodium par de l'argent :

atomsk NaCl_supercell.xsf -select random 30 Na -substitute Na Ag final.cfg

Comme précédemment, il est aussi possible de sélectionner un certain pourcentage d'atomes avec le symbole "%" :

atomsk NaCl_supercell.xsf -select random 1% Na -substitute Na Ag final.cfg

Dans la pratique, 1% des atomes de sodium seront remplacés par de l'argent, ce qui peut être vérifié en visualisant le système final (les atomes d'argent sont les plus gros) :

En résumé, la combinaison des options "-select" et "-substitute" permet de générer des alliages assez facilement, soit en remplaçant les atomes de votre choix, soit en laissant Atomsk les remplacer au hasard.

3. Insérer de nouveaux atomes

L'option "-add-atom" permet d'insérer de nouveaux atomes dans le système.

L'utilisation la plus simple de cette option consiste à insérer un nouvel atome de l'espèce chimique donnée, à la position (x,y,z) donnée. Par exemple, si vous souhaitez ajouter un atome de silicium (Si) exactement à la position (23,34,45), vous pouvez utiliser :

atomsk NaCl_supercell.xsf -add-atom Si at 23 34 45 final.cfg

Notez que dans cette option, il faut spécifier le symbole chimique de l'atome à ajouter (ici Si), puis le mot-clé "at", et enfin la position du nouvel atome (en angströms).

Alternativement, vous pouvez demander à Atomsk de placer le nouvel atome près d'un atome existant, de telle sorte que le nouvel atome ne soit pas superposé avec les atomes existants. Par exemple, introduisons un nouvel atome de silicium (Si) près de l'atome numéro 417 :

atomsk NaCl_supercell.xsf -add-atom Si near 417 final.cfg

Dans ce cas, Atomsk recherche les voisins, et place le nouvel atome (Si) dans un site tétraédrique près de l'atome 417. Notez que le nouvel atome est toujours placé à la fin de la liste d'atomes, de sorte que les atomes pré-existants conservent leurs indices (dans notre exemple, le nouvel atome ne devient pas le 418, mais est placé tout à la fin de la liste).

Enfin, il est possible d'insérer N nouveaux atomes dans le système, à des positions aléatoires :

atomsk NaCl_supercell.xsf -add-atom Si random 21 final.cfg

Dans cet exemple, 21 nouveaux atomes de Si sont introduits à des positions aléatoires, comme le montre l'image suivante (les atomes de Si apparaissent comme de larges sphères jaunes) :

Comme dans le cas précédent, une recherche de voisins est effectuée, de sorte que chaque nouvel atome est introduit dans une cage tétraédrique, afin de ne pas être superposé avec des atomes pré-existants.

4. Dernières remarques

Atomsk offre de nombreuses possibilités pour introduire des défauts ponctuels, qu'il s'agisse de lacunes, d'atomes substitutionnels ou interstitiels.

Dans les tutoriels suivants, vous pourrez apprendre à insérer des défauts linéaires appelés dislocations, ou des défauts planaires comme des joints de grains.