24小时热门版块排行榜    

查看: 1730  |  回复: 8
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

pangrui1985

铜虫 (小有名气)

[交流] 为什么PROJWFC输出的波函数系数都是实数 已有2人参与

在PROJWFC输出文件里面有类似的东西
psi = 0.040*[# 173]+0.039*[#  65]+0.038*[# 221]+0.037*[#  93]+0.037*[# 141]+
。。。。。
|psi|^2 = 0.988
看样子像是波函数的系数,但问题是为什么每一项的系数只有实数?复数的波函数投影到复数的原子波函数上应该不至于都是实数吧。
谁知道这个东西是什么意思?或者为什么会是实数?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

KalaShayminS

铁杆木虫 (著名写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
6楼: Originally posted by pangrui1985 at 2014-08-20 15:30:09
4L是正解吧。proj0里面是复数,不过只记录了一个k点,用了就覆盖了。另外inversion symmetry对应的是周期部分可以是实数,但加上布洛赫因子的话还是复的。...

4L的解释没有问题。但我觉得这没说明顶楼的问题。
类型是复数没有问题,因为这个程序是通用的,不需要单独写个实型的。
Bloch因子在投影的时候是抵消掉的,因此最后就是实函数之间的投影,自然是实数。因此大部分情况下实数不是因为复数取模,而是它就应该是实数。
7楼2014-08-21 21:48:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 9 个回答

yyyu200

金虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
什么版本,楼主是怎么得到PROJWFC的?
2楼2014-08-15 21:52:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pangrui1985

铜虫 (小有名气)

引用回帖:
2楼: Originally posted by yyyu200 at 2014-08-15 21:52:43
什么版本,楼主是怎么得到PROJWFC的?

你装好以后bin里面就有个projwfc.x,可以用它做PDOS,5.0以后的版本都有吧,以前叫PP,现在分开了
3楼2014-08-15 22:44:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yyyu200

金虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
3楼: Originally posted by pangrui1985 at 2014-08-15 22:44:57
你装好以后bin里面就有个projwfc.x,可以用它做PDOS,5.0以后的版本都有吧,以前叫PP,现在分开了...

==== e(  24) =     8.40694 eV ====
     psi = 0.415*[#   2]+0.415*[#   6]+0.079*[#  13]+0.079*[#  26]+0.002*[#  19]+
          +0.002*[#  32]+
    |psi|^2 = 0.995

试了一下,这些系数加起来是0.995,说明系数已经是复数的绝对值平方了。
projwfc.f90里面
proj(nwfc,ibnd,ik)=abs(proj0(nwfc,ibnd))**2
proj0是复数
4楼2014-08-16 08:18:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见