这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
atk:模拟离子轰击单层石墨烯 [2016/09/19 22:06] – [模拟离子轰击单层石墨烯] nie.han | atk:模拟离子轰击单层石墨烯 [2018/03/20 22:15] (当前版本) – [模拟离子轰击单层石墨烯] liu.jun | ||
---|---|---|---|
行 5: | 行 5: | ||
* 学习基于**Virtual NanoLab** (VNL)建立计算所需的基本步骤。 | * 学习基于**Virtual NanoLab** (VNL)建立计算所需的基本步骤。 | ||
* 学习如何手动地在 VNL产生的Python脚本中引入修改。 | * 学习如何手动地在 VNL产生的Python脚本中引入修改。 | ||
- | * 使用**Atomistix ToolKit**(ATK)运行计算。 | + | * 使用**QuantumATK**运行计算。 |
行 41: | 行 41: | ||
===== 设置模拟 ===== | ===== 设置模拟 ===== | ||
+ | |||
+ | 您将使用{{: | ||
+ | * 首先,通过点击{{: | ||
+ | |||
+ | 在**Script Generator**中: | ||
+ | * 添加一个{{: | ||
+ | * 添加两个{{: | ||
+ | * 打开**New Calculator**窗口栏。选择**ATK-Classical calculator**中的// | ||
+ | * 在**IO**部分选择一个合适的输出文件名,然后点击**OK**。 | ||
+ | |||
+ | <WRAP center round important 100%> | ||
+ | **注意!** | ||
+ | |||
+ | Tersoff_SiC_1998势和在[BS12]中使用的势很类似,但并不完全相同。如果您想要使用完全相同的势,您可以在这个脚本中找到:{{ : | ||
+ | </ | ||
+ | |||
+ | 在第一个{{: | ||
+ | {{ : | ||
+ | |||
+ | 在平衡态计算过程中,轰击原子的位置应该固定。所以: | ||
+ | * 点击**Add Constraints**来打开**Constraints**窗口栏。 | ||
+ | * 选中在表面上方的轰击原子并点击**Add tag from Selection**。 | ||
+ | * 设置约束栏为**Fixed**并点击**OK**。 | ||
+ | {{ : | ||
+ | |||
+ | 在第二个{{: | ||
+ | * 选择 NVE Velocity Verlet类型。 | ||
+ | * 设置步长为50000和100的更新间隔(log interval)。 | ||
+ | * 为轨迹键入一个合适的文件名。 | ||
+ | * 设置初始速度为Configuration velocities以在平衡后使用此速度。 | ||
+ | * 点掉Remove center-of-mass momentum复选框。 | ||
+ | * 减小time step为0.05 fs。 | ||
+ | <WRAP center round info 100%> | ||
+ | **提示!** | ||
+ | |||
+ | 在这个模拟中的原子动能将会非常大。这就是为什么有必要选择一个相对小的时间步长(time step)来保证收敛。对于很高的入射能(> | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | * 使用{{: | ||
+ | |||
===== 修改脚本 ===== | ===== 修改脚本 ===== | ||
+ | 为了使轰击原子以想要的动能达到表面,需要在脚本中进行一些修改。 | ||
+ | * 在第二个{{: | ||
+ | |||
+ | <code python> | ||
+ | # Get the velocities from the bulk_configuration | ||
+ | velocities = bulk_configuration.velocities() | ||
+ | # Define the incident energy of the bombardment atom. | ||
+ | incident_energy = 10.0*eV | ||
+ | # Calculate the corresponding velocity and apply it to the last atom. | ||
+ | incident_velocity = ((2.0*incident_energy/ | ||
+ | velocities[-1, | ||
+ | bulk_configuration.setVelocities(velocities) | ||
+ | </ | ||
+ | |||
+ | <WRAP center round info 100%> | ||
+ | **小提示!** | ||
+ | |||
+ | 在本计算中速度矢量被设置为垂直于表面。任意角入射方向可以被视为在脚本中对速度矢量进行修改。 | ||
+ | </ | ||
+ | |||
+ | * 将脚本命名并保存,通过{{: | ||
+ | * 完成模拟之后您可以使用**MovieTool**或者{{: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | |||
===== 参考文献 ===== | ===== 参考文献 ===== | ||
+ | |||
+ | [BS12] (1, 2, 3) Edson P. Bellido and Jorge M. Seminario. Molecular dynamics simulations of | ||
+ | |||
+ | 本文翻译:王吉章 | ||
+ | |||