Introduction Au VASP : Calcul De La Densité D'états Et Des Bandes Passantes Dans Le Silicium
1. Introduction au tutoriel
* Tutoriel vidéo :[Tutoriel de démarrage VASP] Calcul de la densité d'états et des bandes d'énergie du silicium
Introduction à VASP
VASP (package de simulation ab initio de Vienne) Il s'agit d'un programme informatique pour la modélisation de matériaux à l'échelle atomique à partir de principes de base, tels que les calculs de structure électronique et la dynamique moléculaire de la mécanique quantique.
VASP est capable de calculer des solutions approximatives à l'équation de Schrödinger à plusieurs corps, soit en résolvant l'équation de Kohn-Sham dans la théorie de la fonctionnelle de la densité (DFT), soit l'équation de Roothaan dans l'approximation de Hartree-Fock (HF). Des fonctionnelles hybrides qui mélangent la méthode Hartree-Fock avec la théorie de la fonctionnelle de la densité sont également implémentées. De plus, les méthodes de fonction de Green (quasiparticules GW et ACFDT-RPA) et la théorie des perturbations à plusieurs corps (Møller-Plesset du second ordre) sont disponibles dans VASP.
Dans VASP, les quantités centrales telles que les orbitales électroniques individuelles, la densité de charge électronique et le potentiel local sont représentées à l'aide d'ensembles de base d'ondes planes. Les interactions entre électrons et ions sont décrites à l'aide de méthodes de conservation de la norme ou de pseudopotentiels ultra-doux ou d'ondes augmentées par projecteur.
Pour déterminer l'état fondamental électronique, VASP utilise des techniques efficaces de diagonalisation de matrice itérative telles que la méthode de minimisation résiduelle avec sous-espace itéré à inversion directe (RMM-DIIS) ou l'algorithme de Davidson par blocs. Ceux-ci sont combinés avec des schémas de mélange de densité Broyden et Pulay efficaces pour accélérer la boucle auto-cohérente.
Contenu du tutoriel
- Optimisation structurelle
- Calculs auto-cohérents (densité d'états)
- Calcul de la bande énergétique
Grâce à ce tutoriel, vous comprendrez les fonctions des quatre fichiers d'entrée de base de vasp : INCAR (fichier de contrôle de fonction vasp), POSCAR (fichier de structure), POTCAR (fichier de pseudopotentiel) et KPOINTS (points de réseau réciproques), et apprendrez à écrire vous-même des fichiers d'entrée.
2. Fichier d'entrée
Tout d’abord, permettez-moi de vous présenter les fichiers d’entrée requis pour ce tutoriel.
1. Optimisation structurelle
INCAR
ISTART = 1 (读取初始波函数 WAVECAR 文件)
ISPIN = 1 (本次计算为不考虑自旋的 DFT 计算)
# ICHARG = 11 (非自洽计算:用于计算能带本征值)
LREAL = .FALSE. (不在实空间投影计算)
LWAVE = .TRUE. (计算完毕输出并保存 WAVECAR)
LCHARG = .TRUE. (计算完毕输出并保存 CHGCAR)
ADDGRID= .TRUE. (增加格点密度加速收敛)
NSW = 300 (最多运行 300 步离子步)
ISMEAR = -5 (采用 Blöchl 修正的 tetrahedron 方法)
IBRION = 2 (采用 2-CG 算法进行收敛)
ISIF = 3 (优化期间原胞形状、体积和内部原子位置都将发生变化)
EDIFFG = -1.5E-02 (离子步收敛条件 eV/A)
POSCAR
Si #(体系名称)
1.0 #(放大系数 下面 3 行对应 3 个晶格矢量 )
0.0 2.75 2.75
2.75 0.0 2.75
2.75 2.75 0.0
Si #(元素)
2 #(对应元素原子数)
Direct #(采用分数坐标,下列为 2 个原子的分数坐标)
0 0 0
0.25 0.25 0.25
KPOINTS
K-Spacing Value to Generate K-Mesh: 0.020 #采用 GAMMA 方法取样
0
Gamma
16 16 16
0.0 0.0 0.0
#取 16x16x16 个格点
POTCAR
La combinaison pseudopotentielle des éléments correspondants du système, ici le pseudopotentiel de Si
2. Calcul auto-cohérent (calcul de densité d'état)
INCAR
ISTART = 1 (读取初始波函数 WAVECAR 文件)
ISPIN = 1 (本次计算为不考虑自旋的 DFT 计算)
# ICHARG = 11 (非自洽计算:用于计算能带本征值)
LREAL = .FALSE. (不在实空间投影计算)
LWAVE = .TRUE. (计算完毕输出并保存 WAVECAR)
LCHARG = .TRUE. (计算完毕输出并保存 CHGCAR)
ADDGRID= .TRUE. (增加格点密度加速收敛)
ISMEAR = -5 (采用 Blöchl 修正的 tetrahedron 方法)
NELM = 60 (SCF 自洽步数最多为 60 步)
EDIFF = 1E-08 (SCF 能量收敛条件)
POSCAR
Utilisez la sortie CONTCAR de l'étape précédente « 1. Optimisation structurelle » et renommez-la en POSCAR
KPOINTS
Identique à « 1. Optimisation structurelle »
POTCAR
Identique à « 1. Optimisation structurelle »
3. Calcul de la bande énergétique
INCAR
ISTART = 1 (读取初始波函数 WAVECAR 文件)
ISPIN = 1 (本次计算为不考虑自旋的 DFT 计算)
ICHARG = 11 (非自洽计算:用于计算能带本征值)
LREAL = .FALSE. (不在实空间投影计算)
LWAVE = .TRUE. (计算完毕输出并保存 WAVECAR)
LCHARG = .TRUE. (计算完毕输出并保存 CHGCAR)
ISMEAR = 0 (能带计算需要使用高斯方法)
SIGMA = 0.05 (高斯展宽)
NELM = 60 (SCF 自洽步数最多为 60 步)
EDIFF = 1E-08 (SCF 能量收敛条件)
POSCAR
Identique à « 2. Calcul auto-cohérent (calcul de densité d'état) »
KPOINTS
K-Path Generated by VASPKIT.
20 #k 点之间的间隔
Line-Mode
Reciprocal
0.0000000000 0.0000000000 0.0000000000 GAMMA
0.5000000000 0.0000000000 0.5000000000 X
0.5000000000 0.0000000000 0.5000000000 X
0.6250000000 0.2500000000 0.6250000000 U
0.3750000000 0.3750000000 0.7500000000 K
0.0000000000 0.0000000000 0.0000000000 GAMMA
0.0000000000 0.0000000000 0.0000000000 GAMMA
0.5000000000 0.5000000000 0.5000000000 L
0.5000000000 0.5000000000 0.5000000000 L
0.5000000000 0.2500000000 0.7500000000 W
0.5000000000 0.2500000000 0.7500000000 W
0.5000000000 0.0000000000 0.5000000000 X
POTCAR
Identique à « 1. Optimisation structurelle »
3. Étapes pratiques de l'opération
Commençons maintenant l’opération pratique. Ce tutoriel a préparé le package open source requis (tutorials.zip). Vous pouvez cloner directement le conteneur. D'autres fichiers pseudopotentiels doivent être téléchargés et chargés conformément au didacticiel pour des raisons de droits d'auteur.
1. Cloner et démarrer le conteneur
Une fois le conteneur chargé, cliquez sur Ouvrir l'espace de travail

2. Télécharger le fichier d'entrée
2.1 Ouvrir le terminal

2.2 Décompressez le paquet
unzip tutorials.zip
2.3 Entrer dans le répertoire
cd tutorials
2.4 Télécharger le pseudopotentiel de silicium préparé
Ici, vous pouvez utiliser l'exemple de « site Web officiel » :https://www.vasp.at/wiki/images/d/d1/5_4_Si_bandstructure.tgz POTCAR pseudopotentiel
Mettez le pseudopotentiel dans 1_str.

3. Exécutez vasp
Définition des paramètres openmp
export OMP_NUM_THREADS=1
3.1 Optimisation structurelle
Entrez 1_str
cd 1_str
mpirun -n 2 --allow-run-as-root vasp_std
Une fois l'opération terminée, copiez POTCAR, WAVECAR, CHGCAR et CHG dans 2_scf
Et copiez CONTCAR dans 2_scf et changez-le en POSCAR
cp POTCAR WAVECAR CHG* ../2_scf
cp CONTCAR ../2_scf/POSCAR
Entrez dans le répertoire ../2_scf
cd ../2_scf
3.2 Calcul auto-cohérent (calcul de la densité d'états)
Entrez le code suivant pour exécuter :
mpirun -n 2 --allow-run-as-root vasp_std
À ce stade, vasp lira WAVECAR et CHGCAR copiés à l'étape 3.1.
Une fois l'opération terminée, copiez POSCAR, POTCAR, WAVECAR, CHGCAR et CHG sur 3_band
cp POSCAR POTCAR WAVECAR CHG* ../3_band
Entrez dans le répertoire ../3_band
cd ../3_band
3.3 Calcul de la bande énergétique
Entrez le code suivant pour exécuter :
mpirun -n 2 --allow-run-as-root vasp_std
À ce stade, vasp lira WAVECAR, CHGCAR et CHG copiés à l'étape 3.2 et effectuera le calcul des valeurs propres.
Retourner au répertoire principal du fichier d'entrée
cd ..
4. Installez vaspkit
4.1 Installer les dépendances Python
pip install numpy scipy matplotlib
4.2 Configurer vaspkit
chmod 777 setupvk.sh
./setupvk.sh
source ~/.bashrc
cd tutorials
5. Utilisez vaspkit pour traiter les données
5.1 Représentation graphique de la densité des états
Entrez 2_scf
cd 2_scf
Utilisez vaspkit pour traiter les données et tracer
vaspkit
111
1
Le diagramme de densité d'état sera généré dans 2_scf

Retour au sommaire
cd ..
5.2 Dessiner des diagrammes de bandes d'énergie
Entrez 3_band
cd 3_band
Utilisez vaspkit pour traiter les données et tracer
vaspkit
211
1
Vous pouvez voir que le diagramme de bande sera généré en 3_band
