如何用berry phase计算铁电极化
答案:2 悬赏:0 手机版
解决时间 2021-02-14 10:29
- 提问者网友:轻浮
- 2021-02-14 00:00
如何用berry phase计算铁电极化
最佳答案
- 五星知识达人网友:一叶十三刺
- 2021-02-14 01:36
可能大家都知道根据定义,Berry phase 算极化是用铁电相的极化(包含离子项+电子项)减去对应中心对称相的极化, 但是,这个方法过于粗糙,而且会遇到至少两个问题:
1.中心对称相可能不绝缘,导致无法使用Berry phase, 这时会报错:Error in subroutine BERRY: did not find all determinants(可能不是这句话,记不清了)。有时+U可以让体系绝缘,但某些情况再怎么+U都不能绝缘,比如BiFeO3 四方中心对称相P4/mmm;
2.铁电相和中心对称相的离子项差异可能会非常大,导致二者差值也远超过正常的极化值。
这两个问题曾经困扰了我一段时间,后来我发邮件请教了一位大牛Ederer,他传授给我一套正确的计算步奏:
1.首先我们需要构建一系列的中间过渡相。假设铁电相中各个原子,相对于中心对称相的对应原子,位移为100%, 那么需要构建比如原子位移为90%,80%。。。。。10%这一系列的中间过渡相。注意这里中间过渡相建立好之后,原子位置应当固定,不需要再弛豫。
2. 然后计算100%,90%,80%。。。这一系列相的极化,保证DOPOL设置一样。 但在计算中我们可能发现,比如,从50%到0%体系不绝缘了,那么这些相没法计算极化了,也不需要计算。
3.以P(100%),P(90%), P(80%)......为y轴,百分比为x轴 (参照PHYSICAL REVIEW B 71, 014113)作图,即使中间缺失了从50%到0%的点(假设它们不绝缘无法计算),只要其余的点是有一个很好的trend变化,然后那条曲线一直延伸到原点就好了。 注意,原点处P(0%)不一定是0!而是polarization quantum (eR/V) 的整数(或整数+1/2)倍,所取的P(0%)应当是最为符合那条曲线trend的值。大功告成,极化值就是P(100%)-P(0%)。
4.假如那些点没有一个好trend,中间有的点有跳跃,那么一定是由于polarization quantum 造成的,这时候需要适当加减polarization quantum的倍数,让那些跳跃的点回到那条有trend的曲线上来。
利用此方法,可以顺利求出R3C BiFeO3的极化值,而且从100%的R3c 到 0%的R-3c, 中间所有过渡相都是绝缘。 也可以顺利求出四方相P4mm的极化,但是从100%的P4mm到0%的P/4mmm中间有些相是不绝缘的,那些相的极化值缺失,但是没有关系,需用剩余的点足以得到一条曲线。BaTiO3的极化计算更为简单,我印象中都是所有相都是绝缘的,而且没有polarization quantum 造成的跳跃。
1.中心对称相可能不绝缘,导致无法使用Berry phase, 这时会报错:Error in subroutine BERRY: did not find all determinants(可能不是这句话,记不清了)。有时+U可以让体系绝缘,但某些情况再怎么+U都不能绝缘,比如BiFeO3 四方中心对称相P4/mmm;
2.铁电相和中心对称相的离子项差异可能会非常大,导致二者差值也远超过正常的极化值。
这两个问题曾经困扰了我一段时间,后来我发邮件请教了一位大牛Ederer,他传授给我一套正确的计算步奏:
1.首先我们需要构建一系列的中间过渡相。假设铁电相中各个原子,相对于中心对称相的对应原子,位移为100%, 那么需要构建比如原子位移为90%,80%。。。。。10%这一系列的中间过渡相。注意这里中间过渡相建立好之后,原子位置应当固定,不需要再弛豫。
2. 然后计算100%,90%,80%。。。这一系列相的极化,保证DOPOL设置一样。 但在计算中我们可能发现,比如,从50%到0%体系不绝缘了,那么这些相没法计算极化了,也不需要计算。
3.以P(100%),P(90%), P(80%)......为y轴,百分比为x轴 (参照PHYSICAL REVIEW B 71, 014113)作图,即使中间缺失了从50%到0%的点(假设它们不绝缘无法计算),只要其余的点是有一个很好的trend变化,然后那条曲线一直延伸到原点就好了。 注意,原点处P(0%)不一定是0!而是polarization quantum (eR/V) 的整数(或整数+1/2)倍,所取的P(0%)应当是最为符合那条曲线trend的值。大功告成,极化值就是P(100%)-P(0%)。
4.假如那些点没有一个好trend,中间有的点有跳跃,那么一定是由于polarization quantum 造成的,这时候需要适当加减polarization quantum的倍数,让那些跳跃的点回到那条有trend的曲线上来。
利用此方法,可以顺利求出R3C BiFeO3的极化值,而且从100%的R3c 到 0%的R-3c, 中间所有过渡相都是绝缘。 也可以顺利求出四方相P4mm的极化,但是从100%的P4mm到0%的P/4mmm中间有些相是不绝缘的,那些相的极化值缺失,但是没有关系,需用剩余的点足以得到一条曲线。BaTiO3的极化计算更为简单,我印象中都是所有相都是绝缘的,而且没有polarization quantum 造成的跳跃。
全部回答
- 1楼网友:枭雄戏美人
- 2021-02-14 02:27
期待看到有用的回答!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯