24小时热门版块排行榜    

CyRhmU.jpeg
查看: 2126  |  回复: 43

刘仕晨

木虫 (正式写手)

引用回帖:
20楼: Originally posted by gemucai at 2012-09-27 08:04:53
看来我总结一下:

1.出现warning: symmetry operation #  3 not compatible with FFT grid,说明晶格类型不匹配,需要改成ibrav=8

2.如果改晶格类型之后,出现warning: symmetry operation #  3 not allowed ...

您好,又要麻烦您了,我在测试ecut和K点的时候遇到了新的问题,我是这样做的,分别设ecut=30 40 50 60 70 80 90 100 110 120,然后在每个ecut值下面慢慢增加K点,但是奇怪的是,在ecut=50 60和70的时候自洽运算会出现对称性操作丢失的警告:
    warning: symmetry operation #  3 not allowed.   fractional translation:
       0.5000000 -0.5000000  0.5000000  in crystal coordinates
     warning: symmetry operation #  4 not allowed.   fractional translation:
      -0.5000000  0.5000000  0.5000000  in crystal coordinates
     warning: symmetry operation #  7 not allowed.   fractional translation:
      -0.5000000  0.5000000 -0.5000000  in crystal coordinates
     warning: symmetry operation #  8 not allowed.   fractional translation:
       0.5000000 -0.5000000 -0.5000000  in crystal coordinates
     warning: symmetry operation # 11 not allowed.   fractional translation:
      -0.5000000  0.5000000 -0.5000000  in crystal coordinates
     warning: symmetry operation # 12 not allowed.   fractional translation:
       0.5000000 -0.5000000 -0.5000000  in crystal coordinates
     warning: symmetry operation # 15 not allowed.   fractional translation:
       0.5000000 -0.5000000  0.5000000  in crystal coordinates
     warning: symmetry operation # 16 not allowed.   fractional translation:
      -0.5000000  0.5000000  0.5000000  in crystal coordinates
我看到小木虫上有说通过增加ecut可以解决,可是为什么30 和40又能跑呢?这个问题怎么解决,我同时贴出我的IN文件:
&CONTROL
                 calculation = 'scf' ,
                restart_mode = 'from_scratch' ,
                      outdir = '/home/liushichen/work/pwscf/tmp/' ,
                  pseudo_dir = '/home/liushichen/tools/codes/espresso-4.3.2/pseudo/' ,
                      prefix = 'CrO2' ,
/
&SYSTEM
                       ibrav = 0,
                         nat = 6,
                        ntyp = 2,
                     ecutwfc = 50 ,
                     ecutrho = 200 ,
                 occupations = 'smearing' ,
                     degauss = 0.02 ,
                    smearing = 'gaussian' ,
                       nspin = 2 ,
   starting_magnetization(1) = 0.5,
                  lda_plus_u = .true. ,
                Hubbard_U(1) = 3,
/
&ELECTRONS
                    conv_thr = 1.0e-10 ,
                 mixing_beta = 0.7 ,
/
CELL_PARAMETERS cubic
     8.350300000    0.000000000    0.000000000
     0.000000000    8.350300000    0.000000000
     0.000000000    0.000000000    5.502600000
ATOMIC_SPECIES
   Cr   52.00000  Cr.pz-hgh.UPF
    O   16.00000  O.pz-hgh.UPF
ATOMIC_POSITIONS crystal
   Cr      0.000000000    0.000000000    0.000000000   
   Cr      0.500000000    0.500000000    0.500000000   
    O      0.303000000    0.303000000    0.000000000   
    O      0.697000000    0.697000000    0.000000000   
    O      0.803000000    0.197000000    0.500000000   
    O      0.197000000    0.803000000    0.500000000   
K_POINTS automatic
  6 6 9   0 0 0
2,第二个问题是:我发现计算结果的out文件中的原子位置的Z方向有移动,但是我没有relax阿,我只是跑的自洽阿,这是为什么,贴出那部分文件:
Cartesian axes

     site n.     atom                  positions (alat units)
         1           Cr  tau(   1) = (   0.0000000   0.0000000   0.0000000  )
         2           Cr  tau(   2) = (   0.5000000   0.5000000   0.3294852  )
         3           O   tau(   3) = (   0.3030000   0.3030000   0.0000000  )
         4           O   tau(   4) = (   0.6970000   0.6970000   0.0000000  )
         5           O   tau(   5) = (   0.8030000   0.1970000   0.3294852  )
         6           O   tau(   6) = (   0.1970000   0.8030000   0.3294852  )
麻烦帮我看下,谢谢!
21楼2013-03-27 15:47:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gemucai

木虫 (正式写手)

引用回帖:
21楼: Originally posted by 刘仕晨 at 2013-03-27 15:47:38
您好,又要麻烦您了,我在测试ecut和K点的时候遇到了新的问题,我是这样做的,分别设ecut=30 40 50 60 70 80 90 100 110 120,然后在每个ecut值下面慢慢增加K点,但是奇怪的是,在ecut=50 60和70的时候自洽运算会出 ...

这个正常,不用担心,如果你不涉及到对称性的计算,完全可以忽略。

有个设置,nr1,nr2,nr3分别代表实空间x,y,z方向的FFT网格的格点数,它的大小与ecutrho有关。
如果非要消除这种警告,那么在&system里面设置nr1,nr2,nr3等于1/0.5的倍数,即2的倍数即可。
因为警告是这样的:warning: symmetry operation #  3 not allowed.   fractional translation:
       0.5000000 -0.5000000  0.5000000  in crystal coordinates
就是说,你的实空间FFT网格是奇数,有些原子不能位于FFT网格格点上,他怕会丢失一些平移对称操作给出警告。

至于nr1,nr2,nr3到底取多少,请看输出文件里的FFT grid:后面到底是多少,就取偶数值。
22楼2013-03-27 20:46:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

刘仕晨

木虫 (正式写手)

引用回帖:
22楼: Originally posted by gemucai at 2013-03-27 20:46:54
这个正常,不用担心,如果你不涉及到对称性的计算,完全可以忽略。

有个设置,nr1,nr2,nr3分别代表实空间x,y,z方向的FFT网格的格点数,它的大小与ecutrho有关。
如果非要消除这种警告,那么在&system里面设 ...

那我直接改变ecutrho也是可以的吧,我试着修改过了,在ecut=50和60的时候,把ecutrho改为ecut的8倍可以解决,在等于70的时候改为12倍,可以解决,其他的用默认的4倍就可以,但是手册上说模守恒的势时ecutrho要为ecutwfc的4倍,不知道我改为8倍和12倍的时候影不影响结果,我可能要计算看看。
还有我的第二个问题呢,能帮忙解决下么?谢谢
23楼2013-03-27 22:20:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gemucai

木虫 (正式写手)

引用回帖:
23楼: Originally posted by 刘仕晨 at 2013-03-27 22:20:30
那我直接改变ecutrho也是可以的吧,我试着修改过了,在ecut=50和60的时候,把ecutrho改为ecut的8倍可以解决,在等于70的时候改为12倍,可以解决,其他的用默认的4倍就可以,但是手册上说模守恒的势时ecutrho要为ec ...

改变ecutrho就会改变nr1,nr2,nr3,它们的关系如下:


因为是不对称的系数0.5,你总有一半的机会能够消除这种警告。

第二个问题,它只不过是给你换了坐标而已,三个方向都以8.3503波尔为单位,其实结构没变。
24楼2013-03-28 08:57:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

刘仕晨

木虫 (正式写手)

引用回帖:
24楼: Originally posted by gemucai at 2013-03-28 08:57:57
改变ecutrho就会改变nr1,nr2,nr3,它们的关系如下:


因为是不对称的系数0.5,你总有一半的机会能够消除这种警告。

第二个问题,它只不过是给你换了坐标而已,三个方向都以8.3503波尔为单位,其实结构没变。...

我在ecut=140的按您的方法试了下,它输出的FFT dimensions: (  64,  64,  45),我在输入文件里设置了64 64 46,这样就不会有警告了,那么如果我这样设置的话会影响结果么?还有手册上说模守恒的势时ecutrho要为ecutwfc的4倍,那我能设成其他的倍数么,对结果有影响么?
25楼2013-03-28 15:50:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gemucai

木虫 (正式写手)

引用回帖:
25楼: Originally posted by 刘仕晨 at 2013-03-28 15:50:40
我在ecut=140的按您的方法试了下,它输出的FFT dimensions: (  64,  64,  45),我在输入文件里设置了64 64 46,这样就不会有警告了,那么如果我这样设置的话会影响结果么?还有手册上说模守恒的势时ecutrho要为ecu ...

FFT网格取密不会影响结果,肯定是越密就越准确,但是算得也就越慢。
一般都设置成4倍,既然ecutrho=140的话,那么直接把ecutwfc设为35就行了,这样就是4倍了。
26楼2013-03-28 16:24:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

刘仕晨

木虫 (正式写手)

引用回帖:
26楼: Originally posted by gemucai at 2013-03-28 16:24:12
FFT网格取密不会影响结果,肯定是越密就越准确,但是算得也就越慢。
一般都设置成4倍,既然ecutrho=140的话,那么直接把ecutwfc设为35就行了,这样就是4倍了。...

谢谢,我是模守恒的势,所以ecutwfc=140,然后ecutrho=4*ecutwfc,有那个警告出来,我看out文件中,FFT dimensions: (  64,  64,  45),就按照你的方法输入文件里设置了64 64 46,不过发现结果的out文件中,FFT dimensions: (  64,  64,  48),它好像会自动帮你调整的是吧,我这样修改对么,把45变成46?
27楼2013-03-28 16:44:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gemucai

木虫 (正式写手)

啊,你用的是新版的pwscf?这么智能了
如果换成以前,他会告诉你说nr3设置得不正确,你就要一个个试,现在给你自动调整,挺好的。
有些数字因为约数比较少,开发者可能觉得不太保险,不能保证FFT格点上都有原子,所以尽量使用约数多的数,比如说48的约数有2,3,4,6,8,12,24,而46只有2和23两个约数,所以他把46自动变成了48。

whatever,45改46是没问题的,只会算得更加精确。
28楼2013-03-28 16:56:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

刘仕晨

木虫 (正式写手)

引用回帖:
26楼: Originally posted by gemucai at 2013-03-28 16:24:12
FFT网格取密不会影响结果,肯定是越密就越准确,但是算得也就越慢。
一般都设置成4倍,既然ecutrho=140的话,那么直接把ecutwfc设为35就行了,这样就是4倍了。...

奇怪了,我用ecuwfc=130,ecutrho=4*ecutwfc,这样结果文件中的Dense  grid:    76835 G-vectors     FFT dimensions: (  64,  64,  40)是这样的,总能量为:!    total energy              =    -167.61719836 Ry
那我尝试着在IN 文件中设置了nr1 = 64  nr2 =64  nr3 = 46 ,加大了一点点,nr3之所以写46,是因为写40-46之间都是会警告的,然后发现结果文件中Dense  grid:    76835 G-vectors     FFT dimensions: (  64,  64,  48),!    total energy              =    -167.61717253 Ry,这个能量反而升高了,我觉得是应该增加了FFT,算的更精确了,应该能量低一点阿?
29楼2013-03-28 16:57:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gemucai

木虫 (正式写手)

引用回帖:
29楼: Originally posted by 刘仕晨 at 2013-03-28 16:57:50
奇怪了,我用ecuwfc=130,ecutrho=4*ecutwfc,这样结果文件中的Dense  grid:    76835 G-vectors     FFT dimensions: (  64,  64,  40)是这样的,总能量为:!    total energy              =    -167.61719836 Ry
...

不知道你有没有做过ecut的测试,到最后会有幅度较小的震荡,这是正常的,这时候我们认为它已经收敛。
30楼2013-03-28 17:00:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 cj4566 的主题更新
信息提示
请填处理意见