3. 输入参数说明 ******************************** 3.1. dasp.in模板 =============================== 输入文件 ``dasp.in`` 中的参数可以以下分为五类 * 1. 布尔类型 **bool** - 此类参数仅读取首个字符,若首个字符为T/t,则视为True;其他情况,均视为False。 * 2. 字符串类型 **str** - 此类参数读取所有输入字符,且以str的格式进行处理。若输入数字,将转化为对应字符处理。 * 3. 整形类型 **int** - 此类参数读取所有输入字符,且以int的格式进行处理。输入格式必须为整数,不支持小数。 * 4. 浮点数类型 **float** - 此类参数读取所有输入字符,且以int或float格式进行处理。输入格式支持整数或小数。 * 5. 列表类型 **list** - 此类参数读取所有输入字符,并以 ``space`` 分割为一个或多个值。每个值的类型为I-IV中的一种。 以下为计算某材料的本征缺陷(intrinsic defect)所需设置的dasp.in。以下的示例中仅包括必要参数,未设参数可详见3.2-3.5节。用户可根据实际情况调整参数。 .. code-block:: python ############## Job Scheduling ############## cluster = SLURM # (job scheduling system) node_number = 2 # (number of node) core_per_node = 32 # (core per node) queue = batch # (name of queue/partition) max_time = 24:00:00 # (maximum time for a single DFT calculation) vasp_path_dec = /opt/vasp.5.4.4/bin/vasp_gam # (path of VASP) vasp_path_tsc = /opt/vasp.5.4.4/bin/vasp_std job_name = submit_job # (name of script) potcar_path = /opt/POT/potpaw_PBE # (path of pseudopotentials) max_job = 5 ############## TSC Module ############## database_api = ******************* # (str-list type) ############## DEC Module ############## level = 2 # (level=1: PBE+PBE; level=2: PBE+HSE; level=3: HSE+HSE) min_atom = 190 max_atom = 240 intrinsic = T # (default: T) correction = FNV # (default: none) epsilon = 10.3 Eg_real = 1.45 # (experimental band gap) ############## DDC Module ############## ddc_temperature = 1000 300 ddc_mass = 0.09 0.84 3.2. 任务系统管理相关参数 ================================ 3.2.1. cluster -------------------------------- :guilabel:`cluster` 参数表示队列系统名称,支持PBS和SLURM系统。 :guilabel:`cluster` 的参数类型为 **str** ,无默认值,此为 **必设参数** 。 :guilabel:`cluster` 的参数设置示例: .. code-block:: python # 默认值:无默认值 cluster = # PBS系统 cluster = PBS/pbs/... # 参数值大写后为PBS,均为有效参数 # SLURM系统 cluster = SLURM/slurm/... # 参数值大写后为SLURM,均为有效参数 3.2.2. node_number --------------------------------- :guilabel:`node_number` 参数表示单个计算使用节点数。 :guilabel:`node_number` 的参数类型为 **int** ,无默认值,此为 **必设参数** 。 :guilabel:`node_number` 的参数设置示例: .. code-block:: python # 默认值:无默认值 node_number = # 请勿超过队列中总节点数 # 示例,请自行更改 node_number = 1 3.2.3. core_per_node -------------------------------- :guilabel:`core_per_node` 参数表示每个节点使用的核数。 :guilabel:`core_per_node` 的参数类型为 **int** ,无默认值,此为 **必设参数** 。 :guilabel:`core_per_node` 的参数设置示例: .. code-block:: python # 默认值:无默认值 core_per_node = # 请勿超过队列中单节点的总核数 # 示例,请自行更改 core_per_node = 24 3.2.4. queue -------------------------------- :guilabel:`queue` 参数表示计算使用的队列名称。 :guilabel:`queue` 的参数类型为 **str** ,无默认值,此为 **必设参数** 。 :guilabel:`queue` 的参数设置示例: .. code-block:: python # 默认值:无默认值 queue = # 示例,请自行更改 queue = normal 3.2.5. max_time -------------------------------- :guilabel:`max_time` 参数表示单个计算任务最大时间,若超过设定时间会被队列系统强制结束。 :guilabel:`max_time` 的参数类型为 **str** ,无默认值,此为 **必设参数** 。 :guilabel:`max_time` 的参数设置示例: .. code-block:: python # 默认值:无默认值 max_time = # 格式必须为HH(H...):MM:SS, 且HH >= 0, 0 <= MM < 60, 0 <= SS < 60 # 示例,请自行更改 max_time = 24:00:00 3.2.6. vasp_path_dec, vasp_path_tsc, vasp_path_cdc ----------------------------------------------------- :guilabel:`vasp_path_tsc` 参数表示DASP-TSC模块使用的vasp路径, :guilabel:`vasp_path_dec` 参数表示DASP-DEC模块使用的vasp路径, :guilabel:`vasp_path_cdc` 参数表示DASP-CDC模块计算载流子跃迁矩阵元需要额外调用的vasp路径。 :guilabel:`vasp_path_cdc` 参数在最新版DASP中已弃用。 :guilabel:`vasp_path_tsc` 、 :guilabel:`vasp_path_dec` 和 :guilabel:`vasp_path_cdc` 的参数类型为 **str** ,无默认值,此为 **必设参数** :guilabel:`vasp_path_tsc` 、 :guilabel:`vasp_path_dec` 和 :guilabel:`vasp_path_cdc` 的参数设置示例: .. code-block:: python # 默认值:无默认值 vasp_path_tsc = vasp_path_dec = vasp_path_cdc = # 请确保该路径下安装了vasp # 示例,请自行更改 vasp_path_tsc = /opt/vasp5.4.4/vasp_std vasp_path_dec = /opt/vasp5.4.4/vasp_gam # vasp_path_dec = /opt/vasp5.4.4/vasp_std vasp_path_dec = /opt/vasp_optics/vasp_gam 3.2.7. job_name -------------------------------- :guilabel:`job_name` 参数表示提交计算任务的脚本的名字。 :guilabel:`job_name` 的参数类型为 **str** ,默认值为submit_job,此为可选参数。 :guilabel:`job_name` 的参数设置示例: .. code-block:: python # 默认值: job_name = submit_job # 请勿包含非法字符: " ", "/", "?", "*", "$", "&", "(", ")" # 示例,请自行更改 job_name = job.pbs # job_name = job.sh 3.2.8. potcar_path ---------------------------------- :guilabel:`potcar_path` 参数表示包含所有赝势文件 ``POTCAR`` 的文件夹的路径。 :guilabel:`potcar_path` 的参数类型为 **str** ,无默认值,此为 **必设参数** 。 :guilabel:`potcar_path` 的参数设置示例: .. code-block:: python # 默认值:无默认值 potcar_path = # 请确保该路径下存在赝势文件夹,且有读写权限 # 示例,请自行更改 potcar_path = /home/POT/potpaw_PBE .. note:: **请确保该文件夹存在,且有读和写的权限。请确保在该文件夹下不存在多个相同的赝势文件。** 3.2.9. max_job --------------------------------- :guilabel:`max_job` 参数表示进行缺陷计算时,允许同时在跑的最大任务数。 :guilabel:`max_job` 的参数类型为 **int** ,默认值为5,此为可选参数。 :guilabel:`nax_job` 的参数设置示例: .. code-block:: python # 默认值: max_job = 5 # 示例,请自行更改 max_job = 3 3.3. TSC相关参数 ================================ 3.3.1. database_api ------------------------------- :guilabel:`database_api` 参数为材料基因组数据库Materials Project的应用程序接口(Application Programming Interface ,API)密钥,用于调取计算所需的材料信息。若不设置该参数,则TSC模块将自动访问本地数据库。 :guilabel:`database_api` 的参数类型为 **str** ,无默认值,此为 **可选参数** 。 :guilabel:`database_api` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 database_api = ************************ #api获取步骤:注册并登录Material Project 数据库 --> 主菜单栏选择API --> 跳转页面点击 API Key 链接即可复制获取。 3.3.2. key_phases_recalc ----------------------------- :guilabel:`key_phases_recalc` 参数指定TSC模块是否进行与DEC模块一致的参数进行化学势的计算。若设置为 :guilabel:`False` ,则TSC模块只调用数据库上的总能数据,对目标化合物进行稳定性判断,而不对杂相进行任何DFT计算。 :guilabel:`key_phases_recalc` 的参数类型为 **bool** ,默认值为True,此为可选参数。 :guilabel:`key_phases_recalc` 的参数设置示例: .. code-block:: python # 默认值: key_phases_recalc = True # 示例,请自行更改 key_phases_recalc = False 3.3.3. excluded_phase ------------------------------ :guilabel:`excluded_phase` 参数指定分析目标化合物稳定性时需要排除的杂相。可设定多个需要排除的杂相,不同杂相名称之间用空格分开。 :guilabel:`excluded_phase` 的参数类型为 **list** ,不同的字符串之间需用空格分开,无默认值,此为可选参数。 :guilabel:`excluded_phase` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 excluded_phase = # 示例,请自行更改 excluded_phase = Zn(GaO2)2 Zn2InGaO5 3.3.4. axis_element_x ------------------------------ :guilabel:`axis_element_x` 参数表示目标化合物的二维稳定区域相图中X轴所对应的元素化学势。当前仅对三元或四元半导体材料有效。 :guilabel:`axis_element_x` 的参数类型为 **str** ,无默认值,此为可选参数。 :guilabel:`axis_element_x` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 axis_element_x = # 示例,请自行更改 axis_element_x = Cu 3.3.5. axis_element_y ------------------------------ :guilabel:`axis_element_y` 参数表示目标化合物的二维稳定区域相图中y轴所对应的元素化学势。当前仅对三元或四元半导体材料有效。 :guilabel:`axis_element_y` 的参数类型为 **str** ,无默认值,此为可选参数。 :guilabel:`axis_element_y` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 axis_element_y = # 示例,请自行更改 axis_element_y = Zn 3.3.6. mid_element ------------------------------- :guilabel:`mid_element` 参数表示目标化合物的二维稳定区域相图中其化学势作为中间变量的元素。 :guilabel:`mid_element` 的参数类型为 **str** ,无默认值,此为可选参数。 :guilabel:`mid_element` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 mid_element = # 示例,请自行更改 mid_element = Sn 3.3.7. fixed_chem_potential ---------------------------------- :guilabel:`fixed_chem_potential` 参数表示绘制四元化合物的二维稳定区域相图中其化学势被固定的元素,当前仅对四元半导体材料有效。若施加偏移后元素的化学势超过其稳定区域范围,那么本模块会自动在稳定区域边界附近选择一合适取值。 :guilabel:`fixed_chem_potential` 的参数类型为 **str** ,默认值:根据材料自动选定元素,其化学势相对其平均值的偏移量默认为0。可选值:元素名称及其化学势相对其平均值的偏移量(eV)。 :guilabel:`fixed_chem_potential` 的参数设置示例: .. code-block:: python # 默认值: 程序自动判定 # 示例,请自行更改 fixed_chem_potential = Se:-0.2 # fixed_chem_potential = Se:-0.5 3.3.8. plot_2d ---------------------------------- :guilabel:`plot_2d` 参数指定是否为目标化合物输出二维的稳定区域图像,当前仅支持三元或四元半导体材料。 :guilabel:`plot_2d` 的参数类型为 **bool** ,对于三元或四元半导体,默认值为True,此为可选参数。 :guilabel:`plot_2d` 的参数设置示例: .. code-block:: python # 默认值: plot_2d = True (三元或四元化合物) plot_2d = False (二元或四元以上化合物) # 示例,请自行更改 plot_2d = False 3.3.9. plot_3d ------------------------------------ :guilabel:`plot_3d` 参数指定是否为目标化合物画出三维的稳定区域图。当前仅支持四元半导体材料。 :guilabel:`plot_3d` 的参数类型为 **bool** ,默认值为False,此为可选参数。 :guilabel:`plot_3d` 的参数设置示例: .. code-block:: python # 默认值: plot_3d = False # 示例,请自行更改 plot_3d = True 3.3.10. tsc_only ------------------------------------ :guilabel:`tsc_only` 参数指定是否单独运行TSC模块以快速分析目标化合物的稳定性。若该项设置为 True,则用户还需同时设置 :guilabel:`potcar_path` 。 :guilabel:`tsc_only` 的参数类型为 **bool** ,默认值为False,此为可选参数。 :guilabel:`tsc_only` 的参数设置示例: .. code-block:: python # 默认值: tsc_only = False # 示例,请自行更改 tsc_only = True 3.4. DEC相关参数 ================================ 3.4.1. level -------------------------------- :guilabel:`level` 参数表示DASP对体系总能的计算方法,1: PBE+PBE 2: PBE+HSE 3: HSE+HSE。 :guilabel:`level` 的参数类型为 **int** ,默认值为1,可选值:1,2,3。此为可选参数。 :guilabel:`level` 的参数设置示例: .. code-block:: python # 默认值: level = 1 # level = 1表明原子位置优化采用PBE,总能的计算也采用PBE。level必须为1,2或3 # 示例,请自行更改 level = 2 # level = 2表明原子位置优化采用PBE,总能的计算采用HSE # level = 1/2/3 3.4.2. min_atom ------------------------------------- :guilabel:`min_atom` 参数表示计算缺陷使用的超胞的最小原子数。 :guilabel:`min_atom` 的参数类型为 **int** ,默认值为64,此为可选参数。 :guilabel:`min_atom` 的参数设置示例: .. code-block:: python # 默认值: min_atom = 64 # num_r为refined cell中的原子数,应存在扩胞倍数m使 min_atom <= m * num_r <= max_atom # 示例,请自行更改 min_atom = 96 3.4.3. max_atom -------------------------------------- :guilabel:`max_atom` 参数表示计算缺陷使用的超胞的最大原子数。 :guilabel:`max_atom` 的参数类型为 **int** ,默认值为300,此为可选参数。 :guilabel:`max_atom` 的参数设置示例: .. code-block:: python # 默认值: max_atom = 300 # num_r为refined cell中的原子数,应存在扩胞倍数m使 min_atom <= m * num_r <= max_atom # 示例,请自行更改 max_atom = 96 3.4.4. intrinsic ------------------------------------------ :guilabel:`intrinsic` 参数表示是否计算本征缺陷。 :guilabel:`intrinsic` 的参数类型为 **bool** ,默认值为T,此为可选参数。 :guilabel:`intrinsic` 的参数设置示例: .. code-block:: python # 默认值: intrinsic = T # 示例,请自行更改 intrinsic = F 3.4.5. vacancy ------------------------------------- :guilabel:`vacancy` 参数表示是否计算本征空位缺陷。 :guilabel:`vacancy` 的参数类型为 **bool** ,默认值为T,此为可选参数 。 :guilabel:`vacancy` 的参数设置示例: .. code-block:: python # 默认值: vacancy = T # 示例,请自行更改 vacancy = F 3.4.6. antisite ------------------------------------ :guilabel:`antisite` 参数表示是否计算本征反位缺陷。 :guilabel:`antisite` 的参数类型为 **bool** ,默认值为T,此为可选参数 。 :guilabel:`antisite` 的参数设置示例: .. code-block:: python # 默认值: antisite = T # 示例,请自行更改 antisite = F 3.4.7. interstitial -------------------------------------- :guilabel:`interstitial` 参数表示是否计算本征间隙缺陷。 :guilabel:`interstitial` 的参数类型为 **bool** ,默认值为T,此为可选参数 。 :guilabel:`interstitial` 的参数设置示例: .. code-block:: python # 默认值: interstitial = T # 示例,请自行更改 interstitial = F 3.4.8. doping ----------------------------------- :guilabel:`doping` 参数表示是否计算掺杂缺陷。 :guilabel:`doping` 的参数类型为 **bool** ,默认值为F,此为可选参数。 :guilabel:`doping` 的参数设置示例: .. code-block:: python # 默认值: doping = F # 若需要计算掺杂缺陷,设置doping = T,且必须同时设置impurity参数 # doping决定是否产生掺杂的赝势文件 # 示例,请自行更改 doping = T 3.4.9. impurity ------------------------------------- :guilabel:`impurity` 参数表示掺杂的元素名。 :guilabel:`impurity` 的参数类型为 **str** ,无默认值,此为可选参数 **(当doping = T时为必设参数)** 。 :guilabel:`impurity` 的参数设置示例: .. code-block:: python # 默认值:无默认值 impurity = # 仅当doping = T时有效,impurity设置的值必须为已发现的元素名 # 示例,请自行更改 impurity = H 3.4.10. substitution_doping ------------------------------------------ :guilabel:`substitution_doping` 参数表示是否计算掺杂替位缺陷。 :guilabel:`substitution_doping` 的参数类型为 **bool** ,默认值为T,此为可选参数。 :guilabel:`substitution_doping` 的参数设置示例: .. code-block:: python # 默认值: substitution_doping = T # 示例,请自行更改 substitution_doping = F 3.4.11. interstitial_doping ------------------------------------------ :guilabel:`interstitial_doping` 参数表示是否计算掺杂间隙缺陷。 :guilabel:`interstitial_doping` 的参数类型为 **bool** ,默认值为T,此为可选参数 。 :guilabel:`interstitial_doping` 的参数设置示例: .. code-block:: python # 默认值: interstitial_doping = T # 示例,请自行更改 interstitial_doping = F 3.4.12. num_inter ----------------------------------------- :guilabel:`num_inter` 参数表示产生间隙缺陷(本征或掺杂)的数量。 :guilabel:`num_inter` 的参数类型为 **int** ,默认值为6,此为可选参数。 :guilabel:`num_inter` 的参数设置示例: .. code-block:: python # 默认值: num_inter = 6 # num_inter越多,代表产生的间隙越多,会增加计算量 # 示例,请自行更改 num_inter = 10 3.4.13. inter_host_distance ----------------------------------------- :guilabel:`inter_host_distance` 参数表示产生间隙缺陷时,间隙原子与其他原子的最小距离。 :guilabel:`inter_host_distance` 的参数类型为 **float** ,默认值为1.6,此为可选参数。 :guilabel:`inter_host_distance` 的参数设置示例: .. code-block:: python # 默认值: inter_host_distance = 1.6 # inter_host_distance值越大,产生间隙缺陷速度越慢 # 示例,请自行更改 inter_host_distance = 1.4 .. note:: **请谨慎设置此参数!由于间隙原子通过随机撒点产生,过大的inter_host_distance值可能会导致一直无法找到符合条件的间隙原子的位置,DASP-DEC运行到此部分后无法正常继续运行。使用默认值产生间隙缺陷一般需要几分钟时间,产生时间随着此参数的增大而增大,若长时间(十多分钟)无响应,请重设此参数重新运行DASP-DEC。** 3.4.14. inter_inter_distance --------------------------------------- :guilabel:`inter_inter_distance` 参数表示产生的两个不同间隙缺陷。 :guilabel:`inter_inter_distance` 的参数类型为 **float** ,默认值为0.1,此为可选参数。 :guilabel:`inter_inter_distance` 的参数设置示例: .. code-block:: python # 默认值: inter_inter_distance = 0.1 # inter_inter_distance值越大,产生间隙缺陷速度越慢 # 示例,请自行更改 inter_inter_distance = 0.2 .. note:: **请谨慎设置此参数!由于间隙原子通过随机撒点产生,过大的inter_inter_distance值可能会导致一直无法找到符合条件的间隙原子的位置,DASP-DEC运行到此部分后无法正常继续运行。使用默认值产生间隙缺陷一般需要几分钟时间,产生时间随着此参数的增大而增大,若长时间(十多分钟)无响应,请重设此参数重新运行DASP-DEC。** 3.4.15. correction ----------------------------------------- :guilabel:`correction` 参数表示对带电缺陷的有限尺寸效应的修正。None表示仅做静电势对齐,而不做镜像电荷修正。LZ表示使用静电势对齐+Lany-Zunger镜像电荷修正方案 \ :footcite:p:`lany2008assessment` 。FNV表示采用FNV修正方案(自动包括静电势对齐) \ :footcite:p:`freysoldt2009fully` 。 :guilabel:`correction` 的参数类型为 **str** ,默认值为None,可选值:None,LZ,FNV。此为可选参数。 :guilabel:`correction` 的参数设置示例: .. code-block:: python # 默认值: correction = None # 大写为NONE即可 # LZ修正 correction = LZ/lz/Lz/lZ # FNV修正 correction = FNV/fnv/... # 大写为FNV修正即可 3.4.16. epsilon ----------------------------------- :guilabel:`epsilon` 参数表示带电缺陷修正时所需的静态介电常数大小。 :guilabel:`epsilon` 的参数类型为 **float** ,无默认值,此为可选参数, **(correction = LZ或FNV)时为必设参数** :guilabel:`epsilon` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 epsilon = # 示例,请自行更改 epsilon = 12.6 3.4.17. Eg_real ----------------------------------- :guilabel:`Eg_real` 参数表示实验带隙值(eV),用于计算HSE的交换参数AEXX。 :guilabel:`Eg_real` 的参数类型为 **int** ,无默认值,此为可选参数。 :guilabel:`Eg_real` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 Eg_real = # 此参数仅当 level ≠ 1 时有效 # Eg_real > 0,若不知道实验带隙值,可以不设置, # 程序会使用0.25的交换参数进行后续计算 # 示例,请自行更改 Eg_real = 5.6 3.4.18. distorted_defect ----------------------------------- :guilabel:`distorted_defect` 参数表示想要产生畸变结构的缺陷名,必须与缺陷文件夹名相同(间隙缺陷除外)。间隙缺陷略有不同,例:N_i/random2对应N_i-2。 :guilabel:`distorted_defect` 的参数类型为 **list** ,无默认值,此为可选参数,设置该参数表示要进行畸变结构计算 :guilabel:`distorted_defect` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 distorted_defect = # 示例,请自行更改 distorted_defect = Ga_N2 V_N1 N_i-2 3.4.19. distorted_number ----------------------------------- :guilabel:`distorted_number` 参数表示每种缺陷结构,想要产生的畸变结构数目。 :guilabel:`distorted_number` 的参数类型为 **int** ,默认值为10,此为可选参数。 :guilabel:`distorted_number` 的参数设置示例: .. code-block:: python # 默认值: 10 distorted_number = 10 # 此参数仅当正确地设置distorted_defect参数时有效 # 示例,请自行更改 distorted_number = 6 3.4.20. complex ----------------------------------- :guilabel:`complex` 参数表示需要计算的复合缺陷的类型(目前版本仅支持缺陷对)。 :guilabel:`complex` 参数的类型为 ``str`` ,无默认值,此为可选参数。 :guilabel:`complex` 参数的设置示例: .. code-block:: python # 正常执行dasp 3后,在3dec.out中会输出可能形成的复合缺陷的种类 Possible defect complexes: 1 A_1+B_1 2 A_2+B_1 3 B_2+C_1 ... # 随后设置complex参数,并重新执行dasp 3 # 示例,请自行更改。具体使用方法可以参考应用案例5.7,5.8 complex = A_1+B_1 A_2+B_1 3.5. DDC相关参数 ===================================== 3.5.1. ddc_temperature -------------------------------------- :guilabel:`ddc_temperature` 参数表示材料的生长温度和工作温度,因此必须设置两个数值。 :guilabel:`ddc_temperature` 的参数类型为 **list** ,无默认值,此为 **必设参数** 。 :guilabel:`ddc_temperature` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 ddc_temperature = # 表示材料的生长温度为1000 K,而工作温度(测量温度)为300 K ddc_temperature = 1000 300 # ddc_temperature = 1300 330 3.5.2. ddc_mass -------------------------------------- :guilabel:`ddc_mass` 参数表示材料的电子有效质量和空穴有效质量,填入前应该手动计算载流子有效质量在xyz三个方向的几何平均值。 :guilabel:`ddc_mass` 的参数类型为 **list** ,无默认值,此为 **必设参数**。 :guilabel:`ddc_mass` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 ddc_mass = # 表示材料的电子有效质量为0.1m_0,空穴有效质量为0.9m_0 ddc_mass = 0.1 0.9 3.5.3. ddc_path ------------------------------------------ :guilabel:`ddc_path` 参数表示DDC计算的化学势路径,序号与dasp.in中的化学势一致,须设置两个数值。 :guilabel:`ddc_path` 的参数类型为 **list** ,默认值为 **1 2** ,即默认计算dasp.in中第一个化学势(p1)到第二个化学势(p2)路径的缺陷浓度,为可选参数。 :guilabel:`ddc_path` 的参数设置示例: .. code-block:: python # 默认值: ddc_path = 1 2 # 表示从dasp.in中第4个化学势到第2个化学势的路径上,缺陷浓度的变化 ddc_path = 4 2 3.6. CDC相关参数 ===================================== CDC模块会读取上文已经提及的 :guilabel:`level` 、 :guilabel:`epsilon` 、 :guilabel:`ddc_mass` 三个参数以及下述七个参数。 :guilabel:`vasp_path_cdc` 参数在最新版DASP中已弃用。 3.6.1. cdc_defect -------------------------------------- :guilabel:`cdc_defect` 参数指定需要该模块计算的缺陷。 :guilabel:`cdc_defect` 的参数类型为 **str** ,无默认值,此为 **必设参数**。 :guilabel:`cdc_defect` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 cdc_defect = # 表示计算Cu_Zn1缺陷的性质 cdc_defect = Cu_Zn1 .. note:: **本参数指定的缺陷名称应与dec目录中该缺陷的目录名称一致。** .. note:: **当前仅支持计算dec目录中指定缺陷处于“initialstructure”情况下的性质** 3.6.2. cdc_job -------------------------------------- :guilabel:`cdc_job` 参数表示该模块需要做哪种计算。radiative_rate表示计算缺陷的辐射俘获系数;pl表示计算缺陷的光致发光谱;nonrad_rate表示计算缺陷的非辐射俘获系数。 :guilabel:`cdc_job` 的参数类型为 **str** ,无默认值,可选值:radiative_rate,pl,nonrad_rate。此为 **必设参数**。 :guilabel:`cdc_job` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 cdc_job = # 表示计算缺陷的辐射俘获系数 cdc_job = radiative_rate # 表示计算缺陷的光致发光谱 cdc_job = pl 3.6.3. cdc_temperature -------------------------------------- :guilabel:`cdc_temperature` 参数指定CDC模块计算缺陷性质时材料所处温度。 :guilabel:`cdc_temperature` 的参数类型为 **float** ,无默认值,此为 **必设参数** 。 :guilabel:`cdc_temperature` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 cdc_temperature = # 表示计算材料在温度为300 K下的缺陷性质 cdc_temperature = 300 3.6.4. cdc_charge -------------------------------------- :guilabel:`cdc_charge` 参数表示载流子跃迁前后缺陷态的电荷量。 :guilabel:`cdc_charge` 的参数类型为 **list** ,无默认值,此为 **必设参数**。 :guilabel:`cdc_charge` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 cdc_charge = # 如果缺陷在俘获载流子之前呈电中性, 现在要计算该缺陷俘获空穴的过程,即末态呈正一价,此时 `cdc_charge` 应该设置为: cdc_charge = 0 1 # 如果缺陷在俘获载流子之前呈负一价,现在要计算该缺陷俘获电子的过程,即末态呈负二价,此时 `cdc_charge` 应该设置为: cdc_charge = -1 -2 3.6.5. cdc_band ------------------------------------------ :guilabel:`cdc_band` 参数表示载流子在跃迁前后所处的能带编号。若是空穴跃迁,则缺陷前后空穴分别位于价带顶与缺陷态上;若是电子跃迁,则缺陷前后电子分别位于导带底与缺陷态上 :guilabel:`cdc_band` 的参数类型为 **list** ,无默认值,此为 **必设参数**。 :guilabel:`cdc_band` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 cdc_band = # 1. 首先确认CBM与VBM的能带编号: # 1) 查看HOST计算得到的EIGENVAL文件中VBM与CBM对应的能级的能量 `E_VBM`, `E_CBM` # 2) 查看中性缺陷计算完成后的EIGENVAL文件,此时含缺陷的胞的VBM和CBM对应的能级的能量应该分别与 `E_VBM`, `E_CBM` 相近,由此可以得到含缺陷胞的VBM与CBM的能带编号 # 2. 确认缺陷态的能带编号: # 1) 一般缺陷态处于VBM和CBM之间,如果需要进一步的确认,可以在PROCAR中查看对应能级的局域程度,如果是局域在缺陷附近,则为缺陷态 # 2)确认载流子在跃迁后所处位能带的编号 # 3. 确认载流子俘获前后所处能带的编号: # 1)如果是空穴俘获,则在跃迁前空穴位于VBM,俘获后到缺陷态,则: cdc_band = VBM的能带编号 缺陷态的能带编号 # 2) 如果是电子俘获,则在跃迁前电子位于CBM,俘获后到缺陷态,则: cdc_band = CBM的能带编号 缺陷态的能带编号 # 例1,如果是空穴载流子跃迁过程,跃迁前在第864条能带,即价带顶;跃迁后在第865条能带,即缺陷态。 cdc_band = 864 865 # 例2,如果是电子载流子跃迁过程,跃迁前在第866条能带,即导带底;跃迁后在第865条能带,即缺陷态。 cdc_band = 866 865 .. note:: **若cdc_band对应电子跃迁,cdc_charge也该对应电子跃迁;空穴跃迁情况同理。** 3.6.6. spin_channel -------------------------------------- :guilabel:`spin_channel` 参数表示跃迁载流子的自旋。1对应自旋向上或无自旋极化情况;2对应自旋向下。 :guilabel:`spin_channel` 的参数类型为 **int** ,无默认值,可选值:1,2。此为 **必设参数**。 :guilabel:`spin_channel` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 spin_channel = # 表示自旋向上或无自旋极化情况 spin_channel = 1 # 表示自旋向下 spin_channel = 2 3.6.7. refractive_index -------------------------------------- :guilabel:`refractive_index` 参数表示材料的折射率。 :guilabel:`refractive_index` 的参数类型为 **float** ,无默认值,此为 **必设参数**。 :guilabel:`refractive_index` 的参数设置示例: .. code-block:: python # 默认值: 无默认值 refractive_index = # 表示材料的折射率为2.38 refractive_index = 2.38 3.6.8. dQ_range -------------------------------------- :guilabel:`dQ_range` 参数表示位形图中拟合势能面曲线的数据范围。具体的数字代表初态和末态结构之差(ΔQ,一维振动方向)的比例;例如,3表示沿着该方向的正方向的30%*ΔQ。用于可以自定义范围和精度。 :guilabel:`dQ_range` 的参数类型为 **int** ,默认值是:-5 -4 -3 -2 -1 0 1 2 3 4 5,即势能面曲线左右取值范围[-50%*ΔQ, 50%*ΔQ],此为 **可选参数**。 :guilabel:`dQ_range` 的参数设置示例: .. code-block:: python # 默认值: dQ_range = -5 -4 -3 -2 -1 0 1 2 3 4 5 # 取较大的范围,以下表示左右取值范围是[-80%*ΔQ, 80%*ΔQ]。 dQ_range = -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 # 取更大的范围,更大的精度,且左右不对称,取点不均匀。以下表示左右取值范围是[-200%*ΔQ, 40%*ΔQ]。 dQ_range = -20 -14 -10 -8 -6 -4 -2 0 2 4 .. note:: 用户可以任意更改势能面的拟合范围。若执行完一次CDC计算后,发现位形图的拟合不理想,可以更改dQ_range,重新计算CDC,程序会补算相应的数据。 3.6.9. fitting_method -------------------------------------- :guilabel:`fitting_method` 参数表示势能面曲线的拟合方法。可采用二次函数模型(表示简谐振动),参数为 **parabolic** ;或样条曲线插值(描述非简谐振动),参数为 **spline**。 :guilabel:`fitting_method` 的参数类型为 **str** ,默认值是:**parabolic** ,可选值:parabolic,spline。此为 **可选参数**。 :guilabel:`fitting_method` 的参数设置示例: .. code-block:: python # 默认值: fitting_method = parabolic # 采用非简谐模型: fitting_method = spline 3.6.10. guassian_smearing -------------------------------------- :guilabel:`guassian_smearing` 参数表示采用高斯函数的展宽因子,单位是 :math:`eV` ,此参数将决定不同振动态之间的耦合强度。 :guilabel:`guassian_smearing` 的参数类型为 **float** ,用户一般情况下无需设置,默认值是末态振动能量 :math:`ℏω` 的0.75倍,此为 **可选参数**。 :guilabel:`guassian_smearing` 的参数设置示例: .. code-block:: python # 用户自定义,以下设置表示展宽为0.012 eV。 guassian_smearing = 0.012 3.6.11. el_ph -------------------------------------- :guilabel:`el_ph` 参数表示电声耦合强度,单位是:eV/(amu^1/2 Å)。 :guilabel:`el_ph` 的参数类型为 **float** ,用户一般情况下无需设置,此为 **可选参数**。默认CDC将自动采用PAW进行电声耦合常数的计算,若用户设置此参数,CDC将不会进行电声耦合的计算。 :guilabel:`el_ph` 的参数设置示例: .. code-block:: python # 用户自定义,以下设置表示电声耦合的数值为0.0089 eV/(amu^1/2 Å)。 el_ph =0.0089 eV/(amu^1/2 Å) .. footbibliography::