当前位置: 首页 > 第一原理 >我在计算热力学,算热膨胀系数的时候遇到问题

我在计算热力学,算热膨胀系数的时候遇到问题

作者 chenxiaoqian
来源: 小木虫 200 4 举报帖子
+关注

我在用VASP计算热膨胀系数,输入./script-qha.sh -r 提交工作给GridEngine工作系统,可是计算特别慢,并且一直处于如图的状态,想知道是什么原因,因为是第一次计算这个,不知道这种情况正常不,求助各位大神~~
PS:我用的是学校的计算中心,一般计算是提交任务,不知道会不会有影响。

我在计算热力学,算热膨胀系数的时候遇到问题
V8R)M}K(2YDACJ7T[{0`R8B.png 返回小木虫查看更多

今日热帖
  • 精华评论
  • zzggbb

    脚本内容不贴出来,没有人会知道怎么回答你的问题。

  • chenxiaoqian

    引用回帖:
    2楼: Originally posted by zzggbb at 2017-09-21 06:23:14
    脚本内容不贴出来,没有人会知道怎么回答你的问题。

    这是script-qha.sh 文件
    [chenq@su01 qha]$ cat script-qha.sh
    #!/bin/bash

    dim="1 1 1"
    pa="0 1/2 1/2 1/2 0 1/2 1/2 1/2 0"
    mp="3 3 3"
    nunit=32

    while getopts ':mrc' opt; do
      case $opt in
        m)
          for i in `/bin/ls QHAPOSCAR*`;do
            qhaname=`echo $i|sed s/POSCAR//`
            mkdir $qhaname
            mv $i $qhaname/POSCAR
            cd $qhaname
            pwd
            phonopy -d --dim="$dim"
            for j in `/bin/ls POSCAR-*`;do
              dispname=`echo $j|sed s/POSCAR/disp/`
              mkdir $dispname
              mv $j $dispname/POSCAR
              cp ../{INCAR,KPOINTS,POTCAR} $dispname
            done
            mkdir perfect
            cp ../{INCAR,KPOINTS,POTCAR} perfect
            cp SPOSCAR perfect/POSCAR
            cd ..
          done
          ;;
        r)
          for i in `/bin/ls -d QHA-*`;do
            cd $i
            pwd
            vol=`echo $i|sed s/QHA-//`
            # For displacements
              for j in `/bin/ls -d disp-*`;do
                cd $j
                pwd
                num=`echo $j|sed s/disp-//`
                sed s/num/$num/ ../../calc.sh|sed s/vol/$vol/|mpirun -np 20 vasp
                cd ..
              done
            # For perfect
            cd perfect
              sed s/num/per/ ../../calc.sh|sed s/vol/$vol/|mpirun -np 20 vasp
            cd ..
            cd ..
          done
          ;;
        c)
          echo "#   cell volume        energy of cell other than phonon" > e-v.dat
          for i in `/bin/ls -d QHA-*`;do
            cd $i
            phonopy -f disp-*/vasprun.xml
            phonopy --mp="$mp" -t --dim="$dim" --pa="$pa" --tmax=2004 --tstep=2
            volume=`grep volume perfect/vasprun.xml|tail -n 1|awk -F'<|>' '{printf("%20.13f", $3)}'`
            energy=`grep e_wo_entrp perfect/vasprun.xml|tail -n 1|awk -F'<|>' '{printf("%20.13f", $3)}'`
            cd ..
            echo `echo "$volume/$nunit"|bc -ls` `echo "$energy/$nunit"|bc -ls` >> e-v.dat
          done
          ;;
      esac
    done
    这是calc.sh文件
    #$ -S /bin/zsh
    #$ -cwd
    #$ -N Sivol-num
    #$ -pe mpi* 8
    #$ -e err.log
    #$ -o std.log

  • 小虫虫LG

    引用回帖:
    3楼: Originally posted by chenxiaoqian at 2017-09-21 09:34:01
    这是script-qha.sh 文件
    $ cat script-qha.sh
    #!/bin/bash

    dim="1 1 1"
    pa="0 1/2 1/2 1/2 0 1/2 1/2 1/2 0"
    mp="3 3 3"
    nunit=32

    while getopts ':mrc' opt; do
      cas ...

    这是你们自己写的吧?如果是,谁会看得明白啊?

  • 卡开发发

    引用回帖:
    3楼: Originally posted by chenxiaoqian at 2017-09-21 09:34:01
    这是script-qha.sh 文件
    $ cat script-qha.sh
    #!/bin/bash

    dim="1 1 1"
    pa="0 1/2 1/2 1/2 0 1/2 1/2 1/2 0"
    mp="3 3 3"
    nunit=32

    while getopts ':mrc' opt; do
      cas ...

    看起来没啥问题,可能是构建的超胞比较大引起的计算速度比较慢。热膨胀本来计算就很慢,需要计算动力学矩阵对体积的差分,而动力学矩阵的获取还需要超胞下计算力的差分或者线性响应来得到,体系很大的话计算量确实惊人。

猜你喜欢
应助之星
下载小木虫APP
与700万科研达人随时交流
  • 二维码
  • IOS
  • 安卓