| 5 | 1/1 | 返回列表 |
| 查看: 6264 | 回復(fù): 22 | |||||||||
| 【獎(jiǎng)勵(lì)】 本帖被評(píng)價(jià)10次,作者lmylmy增加金幣 8 個(gè) | |||||||||
| 本帖產(chǎn)生 1 個(gè) 模擬EPI ,點(diǎn)擊這里進(jìn)行查看 | |||||||||
| 當(dāng)前只顯示滿足指定條件的回帖,點(diǎn)擊這里查看本話題的所有回帖 | |||||||||
[資源]
Windows下編譯安裝MuSic code
|
|||||||||
|
最近學(xué)習(xí)了版主ghcacj關(guān)于Music的帖子,受益良多,終于成功的在Linux下重復(fù)了Tina主頁提供的IRMOF1吸附甲烷的例子,在此對(duì)版主ghcacj的無私奉獻(xiàn)表示感謝。 安裝過程中發(fā)現(xiàn),最新的Intel Fortran XE用了編譯Music是有點(diǎn)問題的,不可避免的出現(xiàn)了“段錯(cuò)誤”,所以不推薦使用,我最終是用來11.0的版本才解決了“段錯(cuò)誤”的問題。 我最初曾經(jīng)嘗試過在windows下編譯安裝Music code,那時(shí)候經(jīng)驗(yàn)不多,后來放棄了。但是經(jīng)過此次在linux下的安裝經(jīng)驗(yàn),終于解決了原先的一些問題,F(xiàn)在可以正常的在Windows7操作系統(tǒng)下編譯運(yùn)行Music了,也成功的重復(fù)了IRMOF1吸附甲烷的例子。 現(xiàn)將在windows下安裝的一些經(jīng)驗(yàn)分享給大家,這也是對(duì)版主ghcacj帖子的一個(gè)小小補(bǔ)充。這對(duì)于一些不熟悉linux的網(wǎng)友還是有可取之處的。Music中的每個(gè)文件的具體內(nèi)容和含義,請(qǐng)參見版主ghcacj的帖子,這里只描述具體的安裝編譯過程。 1. 所需程序 (1)Visual Studio 2008: 只需要安裝其中的C++組件即可(如果你不需要其他的應(yīng)用,完全安裝需要很大的磁盤空間)。VS2008可以用學(xué)校的郵箱在微軟網(wǎng)頁上申請(qǐng)到免費(fèi)的版本,目前應(yīng)該是VS2010了,具體的可以在網(wǎng)上查找一下; (2)Intel Visual FORTRAN Complier 11.0.072:最新的XE版有點(diǎn)小問題,會(huì)出現(xiàn)段錯(cuò)誤,不建議使用。11.0這個(gè)版本網(wǎng)上也很容易找到; (3)Windows下的perl:strawberry-perl-5.12.3.0,用來運(yùn)行makemake,生產(chǎn)編譯用的makefile文件?梢詮钠涔俜骄W(wǎng)頁下載,是免費(fèi)的 (http://strawberryperl.com/ ); (4)Windows下的Make:GNUwin32 Make-3.81,用了執(zhí)行makefile文件,可以從其官方網(wǎng)頁下載,也是免費(fèi)的 (http://gnuwin32.sourceforge.net/packages.html )。 GNUMake和perl都是很小的軟件,安裝之后,可以在系統(tǒng)環(huán)境變量中path中添加C:\strawberry\perl\bin;C:\Program Files\GnuWin32\bin這兩條路徑,注意用分號(hào)與原先的項(xiàng)隔開,這樣可以避免運(yùn)行的時(shí)候輸入完整的路徑。這里給的路徑是默認(rèn)安裝的路徑,如果選擇了其他路徑,要做相應(yīng)的修改。 2. 編譯 (編譯過程和版主ghcacj介紹的在linux下的方法類似,只是稍有不同。) (1)MuSic源代碼的獲。褐苯訌腟nurr Research Group的主頁下載,下載之前先需要先給Snurr教授發(fā)封郵件。http://zeolites.cqe.northwestern.edu/software.php ; (2)將MuSic源代碼解壓到D:\music目錄下,(或者你喜歡的工作目錄),解壓之后其中應(yīng)該包含[ctrlfiles], [drivers], [src], [tests]和[utils] 5個(gè)目錄以及GPL和license 2個(gè)文件; (3)編輯makemake文件 首先需要修改 [scr]目錄中的makemake文件,修改項(xiàng)如下(假設(shè)你用的是UltraEdit編輯器,可以顯示行號(hào),此處的行號(hào)指的是修改之前的行號(hào)): 第120行: FC = defaultCompiler >>> FC = ifort (! 設(shè)定ifort為默認(rèn)編譯器) 第149行:F90FLAGS = -g -debug all -check all # -O3 # -DSPME # untested options >>> F90FLAGS = /heap-arrays:64 /fpp /fpe:3 /fast /debug:full /check:noarg_temp_created /O3 # -DSPME # untested options 第150行:F77FLAGS = # -O3 >>> F77FLAGS = /heap-arrays:64 /fpp /fpe:3 /fast /debug:full /check:noarg_temp_created /O3 (!添加適當(dāng)?shù)木幾g選項(xiàng)) 第209行:%.o : %.F90 >>> %.obj : %.F90 (!windows下編譯過程中的目標(biāo)文件為*.obj,linux下的為*.o) 第211行:%.o : %.F >>> %.obj : %.F 第221行:$objectfile =~ s/(.*?\.)F90/$1o/i; >>> $objectfile =~ s/(.*?\.)F90/$1obj/i; 第222行:$objectfile =~ s/(.*?\.)F/$1o/; >>> $objectfile =~ s/(.*?\.)F/$1obj/; 第235行:$(FC) $(DEBUG_FLAGS) $(OFLAGS) $(LINKERFLAGS) $(OBJECTS) -o ../$(CMD) >>> $(FC) $(DEBUG_FLAGS) $(OFLAGS) $(LINKERFLAGS) $(OBJECTS) /o ../$(CMD) 第238行:$(FC) $(DEBUG_FLAGS) $(OFLAGS) $(OBJECTS) -o ../$(CMD) >>> $(FC) $(DEBUG_FLAGS) $(OFLAGS) $(OBJECTS) /o ../$(CMD) 第241行:/bin/rm -f *.o *.i *.il *.mod a.out make.log >>> /bin/rm -f *.obj *.i *.il *.mod a.out make.log 第244行:rm -f *.o *.i >>> rm -f *.obj *.i 第266行:$objfile = $rootname.".o"; >>> $objfile = $rootname.".obj"; 第270行:print OUTFILE (" $$sortedfiles[$f]{modarray}[$i].o" ; >>>print OUTFILE (" $$sortedfiles[$f]{modarray}[$i].obj" ; 另外從第157至199行的內(nèi)容可以刪除,對(duì)我們沒什么用處,保留也可以,沒有影響。 (4)編譯 (編譯了tinu網(wǎng)頁上給出的5個(gè)代碼:music_mapmaker.F90, music_mapdisplay.F90, music_md.F90, music_gcmc.F90, music_post.F90) 以music_mapmaker.F90為例: 從[drivers]中將music_mapmaker.F90復(fù)制到[src]中,將文件名改為music.F90,網(wǎng)頁上說明F必須大寫,這可能與linux下實(shí)施區(qū)分字母大小有關(guān)。 從開始--程序--intel fortran的目錄中進(jìn)入帶fortran編譯環(huán)境的命令提示符窗口(cmd窗口),我用的是IA-32模式。 在此cmd窗口中進(jìn)入工作目錄,比如 d:\music\src 輸入 perl makemake 回車 (!生產(chǎn)一個(gè)新的makefile文件) 輸入 make 回車,編譯開始 編譯結(jié)束后在music目錄中會(huì)生成一個(gè)post.exe文件,將其重新命名為mapmaker.exe。至此,完成一個(gè)完整的編譯過程。 將[src]目錄中的music.F90以及編譯過程中生存*.obj *.mod文件全部刪除,按照以上的步驟編譯下一個(gè)代碼。 最終得到mapmaker.exe,mapdisplay.exe,md.exe,gcmc.exe和post.exe 這5個(gè)可執(zhí)行文件。 3. 運(yùn)行 首先從tinu的主頁上下載IRMOF1吸附CH4的例子 Pmap make : http://www.see.ed.ac.uk/~tduren/ ... orial/make_pmap.tar gcmc : http://www.see.ed.ac.uk/~tduren/research/music/Tutorial/gcmc.tar (1)將make_pmap.tar解壓到 d:\make_pmap, 在其中發(fā)現(xiàn)4個(gè)文件夾[atoms], [molecules], [pmaps]和 [run], 新開一個(gè)cmd窗口,進(jìn)入 d:\make_pmap\run 設(shè)置環(huán)境變量 windows下與linux少有不同,就是將set_path中的內(nèi)容稍加修改: set ATOMSDIR=d:\make_pmap\atoms 回車 set MOLSDIR=d:\make_pmap\molecules 回車 set PMAPDIR=d:\make_pmap\pmaps 回車 如果不想逐條輸入,也可以建一個(gè)*.bat的批處理文件將上面的內(nèi)容寫進(jìn)去,然后執(zhí)行。 環(huán)境變量設(shè)定好之后,就可以開始運(yùn)行,生產(chǎn)Pmap文件,將mapmaker.exe復(fù)制到[run],然后在cmd中執(zhí)行: mapmaker.exe ctr.map.IRMOF1.CH4 > pmap.log (!> pmap.log 會(huì)生成一個(gè)記錄文件,其中包含了一些有用的信息,不加也行,建議加上) 運(yùn)行結(jié)束后會(huì)生成IRMOF1.CH4.UFF.pmap文件,~50M,備用。 (2)將gcmc.tar解壓到 d:\gcmc, 其中也包含4個(gè)文件夾[atoms], [molecules], [pmaps]和 [run], 將先前得到的IRMOF1.CH4.UFF.pmap文件復(fù)制到 [pmaps]中,將gcmc.exe和post.exe復(fù)制到[run]中。 新開一個(gè)cmd窗口,進(jìn)入 d:\gcmc\run 設(shè)置環(huán)境變量: set ATOMSDIR=d:\gcmc\atoms 回車 set MOLSDIR=d:\gcmc\molecules 回車 set PMAPDIR=d:\gcmc\pmaps 回車 然后執(zhí)行g(shù)cmc.exe gcmc.Methane.IRMOF1 > gcmc.log 運(yùn)行結(jié)束后,生產(chǎn)各15個(gè)*.res和*.con文件。 (3)繼續(xù)進(jìn)行post得到isotherm數(shù)據(jù) d:\gcmc\run 中的post.ctr文件有個(gè)小錯(cuò)誤,要修改一下 第8行:IRMOF.Methane.con # basename for config files >>> IRMOF1.Methane.con # basename for config files 繼續(xù)在先前的cmd窗口中執(zhí)行(若新開cmd窗口,要再次設(shè)定環(huán)境變量) post.exe post.ctr > post.log 運(yùn)行結(jié)束后會(huì)得到isotherm.Methane文件,其中包含了isotherm的信息。 至此全部運(yùn)行結(jié)束,至于將吸附數(shù)值由total轉(zhuǎn)換成excess,可以在excel中完成,可參見版主ghcacj的相關(guān)帖子。 ************************** 歡迎討論! [ Last edited by lmylmy on 2011-7-14 at 01:25 ] |
材料計(jì)算模擬實(shí)用技巧 | 多孔材料 | 有機(jī)場效應(yīng)晶體管及有機(jī)太陽能電池 | MS & VASP |
condensed matter physics | 感興趣的問題 | xp經(jīng)典收藏 |
榮譽(yù)版主 (著名寫手)
榮譽(yù)版主 (著名寫手)
|
用版主ghcacj 提供的MFI吸附CO2例子,對(duì)在win下和linux下的計(jì)算時(shí)間做了進(jìn)一步比較 比較的結(jié)果: 系統(tǒng)(原生): Windows7 SP1 Ubuntu 11.04 CPU: AMD Athlon 64 X2 5000+ 2.6 GHz 計(jì)算體系: MFICO2 時(shí)間: 2.5 h 7.5 h 好像還是Win下快些,個(gè)人猜測(cè)win下的intel fortran對(duì)代碼進(jìn)行了優(yōu)化,linux下的免費(fèi)版可能沒做優(yōu)化。 |

感謝分享!
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 298求調(diào)劑 +3 | 種圣賜 2026-03-28 | 3/150 |
|
|---|---|---|---|---|
|
[考研] 22408 359分調(diào)劑 +4 | Qshers 2026-03-27 | 5/250 |
|
|
[考研] 本科新能源科學(xué)與工程,一志愿華理能動(dòng)285求調(diào)劑 +7 | AZMK 2026-03-28 | 11/550 |
|
|
[考研] 求調(diào)劑一志愿海大,0703化學(xué)學(xué)碩304分,有大創(chuàng)項(xiàng)目,四級(jí)已過 +7 | 幸運(yùn)哩哩 2026-03-22 | 11/550 |
|
|
[考研] 一志愿中南大學(xué)化學(xué)0703總分337求調(diào)劑 +5 | niko- 2026-03-27 | 5/250 |
|
|
[考研] 材料與化工(0856)304求B區(qū)調(diào)劑 +8 | 邱gl 2026-03-27 | 8/400 |
|
|
[考研] 一志愿南京航空航天大學(xué)材料學(xué)碩求調(diào)劑 +3 | @taotao 2026-03-28 | 3/150 |
|
|
[考研] 292求調(diào)劑 +14 | 鵝鵝鵝額額額額?/a> 2026-03-25 | 15/750 |
|
|
[考研]
|
孅華 2026-03-22 | 17/850 |
|
|
[考研] 308求調(diào)劑 +7 | 墨墨漠 2026-03-27 | 7/350 |
|
|
[考研] 材料與化工085600,總分304,本科有兩篇sci參與,求調(diào)劑 +10 | 幸運(yùn)的醬醬 2026-03-22 | 12/600 |
|
|
[考研] 315調(diào)劑 +4 | 0860求調(diào)劑 2026-03-26 | 5/250 |
|
|
[考研] 276求調(diào)劑。有半年電池和半年高分子實(shí)習(xí)經(jīng)歷 +10 | 材料學(xué)257求調(diào)劑 2026-03-23 | 11/550 |
|
|
[考研] 317求調(diào)劑 +7 | 蛋黃咸肉粽 2026-03-26 | 7/350 |
|
|
[考研] 【雙一流院校新能源、環(huán)境材料,材料加工與模擬招收大量調(diào)劑】 +4 | Higraduate 2026-03-22 | 8/400 |
|
|
[考研] 07化學(xué)303求調(diào)劑 +5 | 睿08 2026-03-25 | 5/250 |
|
|
[考研] 282求調(diào)劑 +3 | wcq131415 2026-03-24 | 3/150 |
|
|
[考研] 上海電力大學(xué)材料防護(hù)與新材料重點(diǎn)實(shí)驗(yàn)室招收調(diào)劑研究生(材料、化學(xué)、電化學(xué),環(huán)境) +4 | 我愛學(xué)電池 2026-03-23 | 4/200 |
|
|
[考研] 求調(diào)劑一志愿武漢理工大學(xué)材料工程(085601) +5 | WW.' 2026-03-23 | 7/350 |
|
|
[論文投稿] 急發(fā)核心期刊論文 +3 | 賢達(dá)問津 2026-03-23 | 5/250 |
|