• 編譯NBO5.0獨立運行版和嵌入Gaussian03 C02版的方法

    編譯NBO5.0獨立運行版和嵌入Gaussian03 C02版的方法

    文/Sobereva @北京科音   2012-May-30


    NBO程序有兩種運行模式,一種是獨立運行版,稱GENNBO,也叫standalone版。一種是作為模塊嵌入進其它大型量子化學程序的版本,稱ESS(electronic structure system)版NBO,例如Gaussian的l607模塊就是其免費的3.1版。ESS版可以實現更多功能,如自然化學屏蔽(NCS)、NBO Deletion、NEDA能量分解。然而,有很多重要功能都是在免費的NBO 3.x之后才加入NBO程序的。這里介紹收費的,功能已經比較全面的NBO5.0的Linux獨立版本和嵌入Gaussian03 C02的版本(也叫NBO5.G)的編譯方法,這兩種版本的編譯過程互不相干。

    NBO5的源文件只有nbo_5g.src和enable.f兩個,后者用來設定編譯模式。

     

    ======編譯獨立運行版本的方法=======


    編譯平臺:RHEL6 64bit,Q6600,Root,ifort 12.0.0

    將nbo_5g.src的1~25125行保存為NBO_5GA.SRC
    將nbo_5g.src的25126行~末尾保存為NBO_5GB.SRC
    ifort -o enable enable.f
    ./enable
    依次選
    (1) 32-bit Unix   UNIX/LINUX  //無論是否系統是64bit,都要選32bit,否則運行不正常
    (1) GEN      GENNBO  (standalone)
    第三步直接敲回車,得到gennbo.f

    在gennbo.f里搜索IF(MORB.EQ.0.AND.NAMEAT(IATNO(NCTR.NE.'gh'), 改為IF(MORB.EQ.0.AND.NAMEAT(IATNO(NCTR).NE.'gh'))
    再搜索IF(MORB.EQ.0.AND.NAMEAT(IATNO(NCTR).NE.'gh'),改為IF(MORB.EQ.0.AND.NAMEAT(IATNO(NCTR).NE.'gh'))

    最后ifort -o gennbo gennbo.f -diag-disable 8290即得到可執行程序gennbo。
    運行時輸入比如./gennbo < AC.47即可,這里AC.47是GENNBO的輸入文件。


    ======編譯G03 C.02的l607版本方法=======

     

    嚴格按照《Fedora7-64bit下編譯Gaussian03-C02》(http://www.shanxitv.org/2)的方法先編譯一遍32bit g03 C.02版并設定好運行環境,確保編譯到了/sob/g03下面。如果你的軟件平臺、目錄和文中不一樣,筆者不保證能按文中的方法編譯成功。

    將nbo_5g.src的1~25125行保存為NBO_5GA.SRC
    將nbo_5g.src的25126行~末尾保存為NBO_5GB.SRC
    將這兩個文件連同enable.f都拷進/sob/NBO5,并進入此目錄,運行
    ifort -o enable enable.f          //這步也可以用別的fortran編譯器
    ./enable
    選擇32-bit Unix,然后選G03,然后直接回車

    在新生成的g03nbo.f里面搜索IF(MORB.EQ.0.AND.NAMEAT(IATNO(NCTR.NE.'gh'), 改為IF(MORB.EQ.0.AND.NAMEAT(IATNO(NCTR).NE.'gh'))
    再搜索IF(MORB.EQ.0.AND.NAMEAT(IATNO(NCTR).NE.'gh'),改為IF(MORB.EQ.0.AND.NAMEAT(IATNO(NCTR).NE.'gh'))

    將g03目錄下l607.a刪掉,將l607.exe改名為l607old.exe,l607.F改名為l607old.F作為備份。
    將g03nbo.f復制到g03目錄下作為l607.F文件。

    進入csh環境,source /sob/g03/bsd/g03.login,并進入/sob/g03下
    make -f bsd/i386.make l607.exe
    一會兒,l607.exe就在g03目錄下生成了。

    對應NBO5.0的l607.F和編譯好的l607.exe可以從這里下載:/usr/uploads/file/20150610/20150610212517_49774.zip
    對于其它版本g03這個編譯好的版本應該是不兼容的。

    久久精品国产99久久香蕉