以ZrH2为例.
1.
post-processing:
计算linewidth at different q-points:
phono3py --fc3 --fc2 --dim="2 2 2" --loglevel=2 --mesh="64 64 64" -c POSCAR-unitcell --ga="0 0 0 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7 8 8 8 9 9 9 10 10 10 11 11 11 12 12 12 13 13 13 14 14 14 15 15 15 16 16 16 17 17 17 18 18 18 19 19 19 20 20 20 21 21 21 22 22 22 23 23 23 24 24 24 25 25 25 26 26 26 27 27 27 28 28 28 29 29 29 30 30 30 31 31 31 32 32 32" --lw --bi="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18"
这样会对BZ取64*64*64个点,然后算ga中每三个数值决定的一个q点.
画出phonon linewidth 分布图:
1 #!/usr/bin/env python 2 3 import os 4 import sys 5 import numpy as np 6 import matplotlib.pyplot as plt 7 8 lw_dir = "linewidth" 9 freq_file = "m646464.out" 10 temp = 10 # temperature 11 lw_factor = 10.0 # magnified factor 12 13 def readOutput(file_name): 14 with open(file_name, 'rb') as f: 15 all_lines = f.readlines() 16 17 all_found = 0 18 for i in