晶体如何参与反应?

这本是一个非常基本的概念问题,但仍然有不少同学不懂,因此大致阐述一下。如果对“周期性”理解不纯熟、充分,请务必阅读:周期边界条件

晶体

在分子动力学、固体物理学中,晶体并不是一颗盐那样的颗粒,而是一个在XYZ三个方向无限大,遍满宇宙的事物。至于为什么要这样?是因为分子动力学和固体物理学的理论,只能通过无限“周期性”来解决问题,但无限周期性,就意味着无限大。而宏观的一颗盐,对微观的原子尺度的视角来看,几乎就是无限大的,因为 10$^8$Å 和无穷 Å,在理论上是非常好的近似。除此之外,目前没有其他更好的理论方法,来描述晶体。

那么晶体如何参加反应?当你在一个晶体里面添加一个分子,妄图让晶体与分子参加反应,那么首先就意味着,你这个分子,放到了晶体的内部,因为晶体是无穷大的,无论你放在什么地方,都在晶体内部。那么晶体内部,原子之间的距离很近,可能只有1.5 Å左右,你放得下吗?

晶体参与反应,除了特殊情况,例如Li离子扩散到晶体内部,大部分情况就是在晶体的表面发生反应,而不是在晶体内部发生反应。例如一块金属,作为催化剂,催化剂与反应物肯定是在金属的表面发生反应!

那么“晶体表面”是什么?

晶体表面

在分子动力学、固体物理学中,晶体表面是指将XYZ三个方向都无限大的这样一个体系,中间剖开,只保留2个方向上的无限大,在第三个方向就成为了有限大小,即有一定厚度的这样一个Slab。但是从什么方向切割,经过哪个原子?就是一个值得注意的问题,因为裸露在真空的原子是不是稳定?这是非常关键的问题,是由自己的研究体系、研究目的决定的,例如你研究食盐表面的反应,食盐表面实际上是什么样子?你的表面的模型需要接近真实。

Slab有两种对待方式:

两种Slab模型的建模,分别参考:

晶体颗粒

也就是从三维无限大的体系中,切割出一个没有周期性的团簇(所谓切割,不过就是删除其他原子,只保留一个颗粒,然后Main → Periodicity改为None),如此则以类似于“大分子”去对待即可。但是仍然要注意裸露在表面的原子的情况,是否合理。