• 真人游戏-真人游戏平台-真人游戏网>資料手冊>計算軟件
    VASP 5.4.1+VTST編譯安裝
    2017-03-30

    中國科學技術大學超級計算中心 李會民<hmli@ustc.edu.cn>2017-03-29

    原文:http://hmli.ustc.edu.cn/doc/app/vasp.5.4.1-vtst.htm

    VTST(Transition State Tools for VASP)是VASP的過渡態工具,可以免費獲?。?A _fcksavedurl="http://theory.cm.utexas.edu/vtsttools/index.html">http://theory.cm.utexas.edu/vtsttools/index.html真人游戏-真人游戏平台-真人游戏网。里面還有VTST Scripts: vtstscripts.tgz,安裝時不需要真人游戏-真人游戏平台-真人游戏网,使用時需要。

    VASP及VTST安裝無需root權限真人游戏-真人游戏平台-真人游戏网,普通用戶即可安裝。

    1. 解壓縮VASP源碼包:
      tar xvf vasp.5.4.1.tar.bz2
      解壓縮后的目錄為vasp.5.4.1。
    2. 進入vasp.5.4.1目錄:
      cd vasp.5.4.1
    3. 查看vasp.5.4.1目錄下有何內容:
      ls -l
      輸出類似:
      drwxr-xr-x 2 hmli nic  4096 3月  29 08:17 arch
      drwxr-xr-x 2 hmli nic  4096 3月  29 08:16 bin
      drwxr-xr-x 2 hmli nic  4096 2月  26 20:59 build
      -rw-r--r-- 1 hmli nic   371 9月  30 11:51 makefile
      -rw-r--r-- 1 hmli nic 12263 9月  30 11:51 README
      drwxr-xr-x 4 hmli nic 20480 9月  30 11:51 src
      查看說明:
      more README
      從說明中我們得知從5.4.1開始目錄結構及編譯方式變化為如下方式:
      vasp.X.X.X (root directory)
                            |
         ---------------------------------------
        |              |          |             |
       arch           bin       build          src
                                                |
                                           ----------
                                          |          |
                                         lib       CUDA
      說明:
      • vasp.X.X.X:解壓縮后的根目錄
      • arch:針對不同架構的Makefile模板真人游戏-真人游戏平台-真人游戏网,如里面含有makefile.include.linux_intel
      • bin:編譯后的可執行程序文件
      • build:編譯時自動復制src目錄內源碼后執行編譯的目錄
      • src:源碼目錄
      • lib:庫目錄,對應以前的vasp.lib目錄
      • CUDA:GPU CUDA代碼目錄
    4. 設置VTST:
        下載:
        wget http://theory.cm.utexas.edu/code/vtstcode.tgz
        解壓縮:
        tar xvf vtstcode.tgz
        之后會生成vtstcode-171目錄,此目錄內包含以下文件:
        bbm.F
        bdr_changes
        bfgs.F
        cg.F
        chain.F
        dimer.F
        dynamic.F
        dynmat.F
        fire.F
        instanton.F
        lanczos.F
        lbfgs.F
        mkbdrpro.pl
        neb.F
        opt.F
        qm.F
        sd.F
        vasp-5.3.2-main.patch
        vasp-5.3.2-mpmd.patch
        vasp-5.4.1-mpmd.patch
      根據官方安裝說明http://theory.cm.utexas.edu/vtsttools/installation.html
      • 需要將這些文件復制到src目錄中:
        • 因為src目錄下存在chain.F,建議先備份chain.F(可選):
          cp src/chain.F src/chain.F-org
        • vtstcode-171目錄下文件復制到src下:
          cp vtstcode-171/* src/
      • 修改src/main.F源碼:

        將(第3233行)

        CALL CHAIN_FORCE(T_INFO%NIONS,DYN%POSION,TOTEN,TIFOR, &
             LATT_CUR%A,LATT_CUR%B,IO%IU6)

        變為(注意后兩行):

        CALL CHAIN_FORCE(T_INFO%NIONS,DYN%POSION,TOTEN,TIFOR, &
              TSIF,LATT_CUR%A,LATT_CUR%B,IO%IU6)
        !     LATT_CUR%A,LATT_CUR%B,IO%IU6)
      • 修改編譯配置src/.objects真人游戏-真人游戏平台-真人游戏网,在chain.o前(大概第67行)添加如下內容:
        bfgs.o dynmat.o instanton.o lbfgs.o sd.o cg.o dimer.o bbm.o \
        fire.o lanczos.o neb.o qm.o opt.o \
      注意\后不能有空格真人游戏-真人游戏平台-真人游戏网。
    5. 查看所用的編譯器:
      which ifort
      輸出類似:
      /opt/intel/composer_xe_2015.1.133/bin/intel64/ifort
      如顯示不存在,那么可以類似下面設置下Intel編譯器環境(具體路徑與你所使用的系統有關):
      . /opt/intel/composer_xe_2015.1.133/bin/compilervars.sh intel64
    6. 查看Intel MKL環境:
      echo $MKLROOT
      輸出類似:
      /opt/intel/composer_xe_2015.1.133/mkl
      如顯示不存在,那么可以類似下面設置下Intel MKL環境(最好與編譯器版本一致):
      . /opt/intel/composer_xe_2015.1.133/mkl/bin/mklvars.sh intel64
    7. 查看Intel MPI環境(最好與編譯器版本一致):
      which mpiifort
      如顯示不存在,那么可以類似下面設置下Intel MPI環境:
      . /opt/intel/impi/5.0.2.044/bin64/mpivars.sh intel64
      查看是否存在/opt/intel/composer_xe_2015.1.133/mkl/interfaces/fftw3xf/libfftw3xf_intel.a,如沒存在,那么可以在自己目錄下編譯生成libfftw3xf_intel.a
      mkdir -p ~/local/interfaces
      cp -a /opt/intel/composer_xe_2015.1.133/mkl/interfaces/fftw3xf ~/local/interfaces
      cd ~/local/interfaces/fftw3xf
      make libintel64
      順利的話,將在此目錄下生成libfftw3xf_intel.a。
    8. 采用arch/makefile.include.linux_intel做為模板(在vasp.5.4.1目錄下,未考慮CUDA):
      cp arch/makefile.include.linux_intel makefile.include
    9. 修改makefile.include

      必要時修改OBJECTS那,將

      $(MKLROOT)/interfaces/fftw3xf/libfftw3xf_intel.a
      修改為(假如使用~/local/interfaces/fftw3xf):
      $(HOME)/local/interfaces/fftw3xf/libfftw3xf_intel.a

      其它參數,請見VASP官方說明。

    10. 為防止以前編譯好的.o和.a文件與新修改的編譯配置沖突,建議清除以前編譯文件:
      make veryclean
    11. 執行編譯,可以默認編譯或分開編譯:
      • 默認編譯(將編譯生成std、gam和ncl版):
        make
      • 分開編譯:
        • 編譯標準std版:
          make std
        • 編譯gamma-only版:
          make gam
        • 編譯non-collinear版:
          make ncl

      編譯完成后將在bin目錄下生成對應的版本的可執行程序:vasp_gam、vasp_ncl、vasp_std。

    12. 錯誤處理:

      如果有錯,請注意看錯誤信息,然后根據信息進行處理。

    Copyright 2009 中國科學技術大學超級計算中心 All Rights Reserved
    真人游戏-真人游戏平台-真人游戏网