PWscf常見問題解答復(fù)習(xí)過程_第1頁
PWscf常見問題解答復(fù)習(xí)過程_第2頁
PWscf常見問題解答復(fù)習(xí)過程_第3頁
PWscf常見問題解答復(fù)習(xí)過程_第4頁
PWscf常見問題解答復(fù)習(xí)過程_第5頁
已閱讀5頁,還剩63頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Good is good, but better carries it.精益求精,善益求善。PWscf常見問題解答-PWscf常見問題解答常用PWscf幫助文檔及網(wǎng)址UserGuide:/guide.htm官方用戶指南,PWscf的編譯、安裝、使用、常見問題等信息非常全面,通俗易懂。初學(xué)者必讀。結(jié)合examples使用ExamplesPWscf安裝目錄下的Examples包含30多個常見實例,直接將run_example的shell腳本拖入終端即可運行。運行后在results文件夾下可以看對應(yīng)輸入文件和輸出結(jié)果??梢詤⒄帐纠龑懽约旱妮斎胛募?。DocPWscf安裝目錄下的Doc文件夾內(nèi)有許多ht

2、ml文件,內(nèi)容包括各種輸入文件中所有變量和標(biāo)簽的詳細(xì)定義和規(guī)范,在寫輸入文件的時候一定要仔細(xì)閱讀。PWscf郵件列表http:/www.democritos.it/mailman/listinfo/pw_users在Google里搜索PWscf的問題排在第一的往往就是PWscf官方的郵件列表。這里匯集了全球PWscf用戶的常見問題及解答。你的問題往往就在里面。對于常見的小問題這里的答案往往簡單明了,事半功倍。有需要的同學(xué)可以訂閱。大學(xué)及研究所的課件、講義、ppt等(以下譯自PWscf的wikiTutorialsandExamples)Hands-onTutorialofQuantumEspre

3、sso關(guān)于理論背景和計算實例的一些pptSchoolonElectronicStructureCalculationsandtheirapplicationsinMaterialsScience,25April-6May2005,伊朗某大學(xué)關(guān)于計算材料學(xué)的課程的一些lectures3.320AtomisticModelingofMaterials,MIT的課件MSE791KModelingfromthenanoscaletothemacroscale,北卡州立大學(xué)的課件QuantumEspressoSurvivalGuideLecturevideosUIUC計算材料中心2006年夏令營的課件和

4、視頻BuildingNanostructuresBitbyBit康奈爾大學(xué)納米科技中心2006年秋季研討會的講座和指南,包括平面波贗勢法、密度泛函理論、分子動力學(xué)、納米光學(xué)等方面的資料VLabLectures密度泛函理論和實例如何安裝編譯PWscf?單機(jī)安裝簡易版(適用Ubuntu32位操作系統(tǒng))fromSunforever首先安裝編譯環(huán)境,確認(rèn)聯(lián)網(wǎng)并更新了軟件源,在終端下輸入:sudoapt-getinstallgfortransudoapt-getinstallmpich-bin然后去PWscf網(wǎng)站下載免費的源碼包解壓到任意目錄在終端窗口進(jìn)入解壓目錄,方法如下:輸入:cd路徑(可直接把文件

5、夾拖拽進(jìn)終端自動生成路徑)然后輸入./configure等屏幕上一堆字刷完再輸入makeall繼續(xù)等刷屏大概十分鐘以后應(yīng)該就好了測試軟件進(jìn)入解壓目錄下的examples文件夾看到有很多example01example02等目錄隨便進(jìn)一個把run_example文件拖進(jìn)終端窗口看運行是否正常也可以運行examples文件夾下的run_all_examples文件運行所有的示例計算結(jié)果在各自文件夾下的results目錄里要清除計算結(jié)果運行examples下的makeclean文件本教程應(yīng)該適用于32位Ubuntu為基礎(chǔ)的所有衍生版64位Ubuntu源里好像沒有mpich,需要自己下源碼編譯一個臺灣

6、人寫的安裝教程(適用于Ubuntu8.10)轉(zhuǎn)自Hialan的嘴砲天地pwscf-ubuntu8.10安裝筆記前幾天應(yīng)數(shù)所的學(xué)弟玩Linux碰到問題,原來是不會裝這個.PWscf是用來做工程及科學(xué)計算的,PWscf的介紹如下,總之先幫他裝起來吧!PWscf首頁上的介紹:PWscf(Plane-WaveSelf-ConsistentField)isacomputercodeforelectronic-structurecalculationswithinDensity-FunctionalTheoryandDensity-FunctionalPerturbationTheory,usingpse

7、udopotentialsandaplane-wavebasisset.PWscfispartoftheQuantumESPRESSOtheatomicscale.PWscfisreleasedundertheGNUGeneralPublicLicense.distributionofcodesforthequantumsimulationofmatterat因為學(xué)弟的電腦是Ubuntu8.10,我也不知道在其他distribution可不可以依照相同的步驟安裝;這裡列出一些套件,找相對應(yīng)的裝應(yīng)該就差不多了吧。下載PWscfPWscf:/download.phpGUI介面:PWGui:http

8、:/www-k3.ijs.si/kokalj/pwgui/安裝pwscf1.預(yù)先安裝套件,請安裝下列套件,或sudoapt-getinstall套件名稱即可編譯環(huán)境:build-essentialFFT:fftw-double-devfftw-single-devMPI:libmpich1.0-devSSH:sshFortran:gfortran2.設(shè)定MPICH,我們需要的是ssh自動登入,把其中設(shè)定ssh自動登入的步驟列舉如下基本步驟摘要(只用於一臺):打cd/.ssh(注意ssh前面有一個點)進(jìn)入使用者個人隱藏的ssh設(shè)定目錄(在UNIX下凡是名稱以一點作為開始的檔案及目錄,都會隱藏,只

9、用ls看不見,要用ls-a才看得見)。打ssh-keygen產(chǎn)生ssh的鑰匙,它會問要輸入passphrase,給不給都可以,之後你在目錄下看會到id_rsa及id_rsa.pub兩個檔案。把id_rsa.pub拷貝為檔名叫作authorized_keys的檔案。/.ssh底下的id_rsa、id_rsa.pub、authorized_keys等檔案,都要chmod成為群組(g)與其他(o)皆不可讀與寫。chmodg-wfilename、chmodg-rfilename,比較快的方法是chmod500filename?,F(xiàn)在可以試著以sshusernamehostname(遠(yuǎn)端)或sshloca

10、lhost(本機(jī))試著用ssh以不需要密碼的方式登入遠(yuǎn)端或本機(jī)系統(tǒng),如果不需要密碼可以登入,則表示設(shè)定成功。設(shè)置多臺ssh可進(jìn)入之免密碼機(jī)器組觀念是,遠(yuǎn)端的那臺機(jī)器上之使用者的.ssh子目錄下之a(chǎn)uthorized_keys檔案之中要有記載想免密碼近端機(jī)器之公鑰匙。按上面的方法,先在近端機(jī)器的使用者目錄下產(chǎn)生.ssh子目錄以及其下相關(guān)檔案。把其中id_rsa.pub傳送到遠(yuǎn)端,並利用catid_rsa.pubauthorized_keys(注意是兩個大於號,代表追加)來把其內(nèi)容加入到遠(yuǎn)端機(jī)器的authorized_keys檔案中。測試從近端到遠(yuǎn)端以ssh登入,看是否需要密碼。3.打開終端機(jī),c

11、despresso-4.0.44./configure5.makeall安裝pwgui6.tarzxvfPWgui-4.1CVS.tgz7.cdPWgui-4.1CVS8.執(zhí)行PWGui:./pwgui註:後來發(fā)現(xiàn)pwscf的目錄裡本來就帶有pwgui了,或許可以直接執(zhí)行./pwgui測試看看可不可以使用。設(shè)定pwgui設(shè)定pwgui可執(zhí)行檔的路徑如下圖,此例中pwscf被解壓縮在這個目錄下:/home/labpc/PWgui/espreso-4.0.4/測試pwscfpwscf已經(jīng)提供非常多example在原始碼裡面,在我們的路徑下為:/home/labpc/PWgui/espreso-4.

12、0.4/examples/以example01為例:cd/home/labpc/PWgui/espreso-4.0.4/(此為解開之後的路徑)cdexample01./run_example計算的結(jié)果會存在results/目錄下面如何從MS中導(dǎo)出原子坐標(biāo)?bySunforever首先,在MS中完成建模然后用castep進(jìn)行運算,參數(shù)隨便,只要run一下就可以了,開始計算后馬上把任務(wù)停掉去硬盤上你的計算任務(wù)路徑下的/Documents目錄,在文件夾選項里設(shè)置“顯示隱藏文件”,找到.cell文件,用記事本打開打開后就可以看到原子坐標(biāo)了。這里的坐標(biāo)單位是晶胞長,坐標(biāo)值是晶胞尺寸的分?jǐn)?shù)。在PWscf中

13、使用時要把單位改成crystalC0.50837246033890250.49485365985706610.3224282293666403C0.50837246033890250.49485365985706610.8224282293666402O0.16666666666666670.33333333333333330.1912999999999997O0.33333333333333330.16666666666666670.4412999999999997O0.66666666666666660.33333333333333330.1912999999999997O0.833333

14、33333333340.16666666666666690.4412999999999997O0.16666666666666670.83333333333333330.1912999999999997O0.33333333333333330.66666666666666670.4412999999999997O0.66666666666666660.83333333333333340.1912999999999997O0.83333333333333340.66666666666666670.4412999999999997O0.16666666666666670.3333333333333

15、3330.6912999999999997O0.33333333333333330.16666666666666670.9412999999999998O0.66666666666666660.33333333333333330.6912999999999997O0.83333333333333340.16666666666666690.9412999999999998O0.16666666666666670.83333333333333330.6912999999999997O0.33333333333333330.66666666666666670.9412999999999998O0.6

16、6666666666666660.83333333333333340.6912999999999997O0.83333333333333340.66666666666666670.9412999999999998Zn0.16666666666666670.33333333333333330.0000000000000001Zn0.33333333333333330.16666666666666670.2500000000000000Zn0.66666666666666660.33333333333333330.0000000000000001Zn0.83333333333333340.1666

17、6666666666690.2500000000000000Zn0.16666666666666670.83333333333333330.0000000000000001Zn0.33333333333333330.66666666666666670.2500000000000000Zn0.66666666666666660.83333333333333340.0000000000000001Zn0.83333333333333340.66666666666666670.2500000000000000Zn0.16666666666666670.33333333333333330.500000

18、0000000001Zn0.33333333333333330.16666666666666670.7500000000000000Zn0.66666666666666660.33333333333333330.5000000000000001Zn0.83333333333333340.16666666666666690.7500000000000000Zn0.16666666666666670.83333333333333330.5000000000000001Zn0.33333333333333330.66666666666666670.7500000000000000Zn0.666666

19、66666666660.83333333333333340.5000000000000001Zn0.83333333333333340.66666666666666670.7500000000000000PWscf輸入文件原子坐標(biāo)部分示例如下:ATOMIC_POSITIONScrystalC0.50837246033890250.49485365985706610.3224282293666403C0.50837246033890250.49485365985706610.8224282293666402O0.16666666666666670.33333333333333330.191299

20、9999999997O0.33333333333333330.16666666666666670.4412999999999997O0.66666666666666660.33333333333333330.1912999999999997O0.83333333333333340.16666666666666690.4412999999999997O0.16666666666666670.83333333333333330.1912999999999997O0.33333333333333330.66666666666666670.4412999999999997O0.666666666666

21、66660.83333333333333340.1912999999999997O0.83333333333333340.66666666666666670.4412999999999997O0.16666666666666670.33333333333333330.6912999999999997O0.33333333333333330.16666666666666670.9412999999999998O0.66666666666666660.33333333333333330.6912999999999997O0.83333333333333340.16666666666666690.9

22、412999999999998O0.16666666666666670.83333333333333330.6912999999999997O0.33333333333333330.66666666666666670.9412999999999998O0.66666666666666660.83333333333333340.6912999999999997O0.83333333333333340.66666666666666670.9412999999999998Zn0.16666666666666670.33333333333333330.0000000000000001Zn0.33333

23、333333333330.16666666666666670.2500000000000000Zn0.66666666666666660.33333333333333330.0000000000000001Zn0.83333333333333340.16666666666666690.2500000000000000Zn0.16666666666666670.83333333333333330.0000000000000001Zn0.33333333333333330.66666666666666670.2500000000000000Zn0.66666666666666660.8333333

24、3333333340.0000000000000001Zn0.83333333333333340.66666666666666670.2500000000000000Zn0.16666666666666670.33333333333333330.5000000000000001Zn0.33333333333333330.16666666666666670.7500000000000000Zn0.66666666666666660.33333333333333330.5000000000000001Zn0.83333333333333340.16666666666666690.750000000

25、0000000Zn0.16666666666666670.83333333333333330.5000000000000001Zn0.33333333333333330.66666666666666670.7500000000000000Zn0.66666666666666660.83333333333333340.5000000000000001Zn0.83333333333333340.66666666666666670.7500000000000000就這么簡單運行castep那一步是為了生成cell文件,所以只要運行一下下就好感謝Cutie同學(xué)的指導(dǎo)如何進(jìn)行結(jié)構(gòu)優(yōu)化?轉(zhuǎn)自:/user1

26、/11542/archives/2006/1578700.shtml在pwscf中提供了兩種優(yōu)化方法對原子位置進(jìn)行馳豫:a)BFGSquasi-newtonalgorithm,b)最速下降法(quick-minVerlet)。除非初始位置很接近平衡位置,一般采用BFGS準(zhǔn)牛頓算法比較快。在結(jié)構(gòu)優(yōu)化時,calculation需設(shè)置為relax,下面相關(guān)的參數(shù)有時也需要設(shè)置:一、在&control./中設(shè)置優(yōu)化的收斂標(biāo)準(zhǔn)參數(shù)、步數(shù)等nstep:優(yōu)化的最大步數(shù);tstress:設(shè)置True,表示要計算體系的應(yīng)力;tprnfor:設(shè)置為True,表示要計算原子所受的力,在calculation=rel

27、ax時,默認(rèn)為.True.;etot_conv_thr:用來控制原子位置優(yōu)化時,總能變化收斂的標(biāo)準(zhǔn);默認(rèn)值為1.0D-4Ha;forc_conv_thr:用來控制原子位置優(yōu)化時,原子所受力的收斂標(biāo)準(zhǔn),默認(rèn)值為1.0D-3Ha/a.u,只有當(dāng)etot_conv_thr和forc_conv_thr的標(biāo)準(zhǔn)都滿足時,優(yōu)化才停止;二、在&IONS./中設(shè)置優(yōu)化方法中的相關(guān)參數(shù)在calculation=relax時,ion_dynamics設(shè)置為bfgs表示用BFGS準(zhǔn)牛頓算法來進(jìn)行優(yōu)化,設(shè)置為damp表示用最速下降法來進(jìn)行優(yōu)化。pot_extrapolation:用來控制優(yōu)化或電子迭代過程中勢的混合方式

28、,在原子位置優(yōu)化時,最好設(shè)置為second_order,表示采用二階方式來進(jìn)行混合;wfc_extrapolation:用來控制優(yōu)化或電子迭代過程中波函數(shù)的混合方式,在原子位置優(yōu)化時,最好設(shè)置為second_order,表示采用二階方式來進(jìn)行混合;當(dāng)設(shè)置了采用BFGS準(zhǔn)牛頓算法來優(yōu)化后,下面的參數(shù)需設(shè)置:upscale:用來控制conv_thr在結(jié)構(gòu)優(yōu)化過程中最可能的縮小值,在優(yōu)化快接近收斂時,conv_thr會自動減小以保證所計算的力仍然很精確,但是conv_thr并不會減小到conv_thr/upscale;bfgs_ndim:用來控制有多少個舊的力和位移矢量會用在殘差矢量的Pulay混合

29、中,其中殘差矢量是基于BFGS算法中的Hessian矩陣的逆來得到的。設(shè)置為1,就是標(biāo)準(zhǔn)的BFGS準(zhǔn)牛頓算法;trust_radius_max:離子優(yōu)化過程中,離子每一步最大移動量;默認(rèn)值為0.8D0;trust_radius_min:離子優(yōu)化過程中,當(dāng)trust_radius小于trust_radius_min時,離子每一步最小移動量;默認(rèn)值為1.D-3;trust_radius_ini:默認(rèn)值為0.5D0,在原子位置優(yōu)化計算中初始的離子位移量;w_1,w_2:用在基于Wolfe條件的線性搜索方法中的參數(shù)。例子1:優(yōu)化CO分子&CONTROLcalculation=relax,prefix=

30、CO,pseudo_dir=./,outdir=./,tprnfor=.true.forc_conv_thr=1.0D-4/&SYSTEMibrav=1,celldm(1)=12.D0,nat=2,ntyp=2,ecutwfc=24.D0,ecutrho=144.D0,/&ELECTRONSconv_thr=1.D-7,mixing_beta=0.7D0,/&IONSion_dynamics=bfgs,pot_extrapolation=second_order,wfc_extrapolation=second_order,/ATOMIC_SPECIESO1.00O.LDA.US.RRKJ3.

31、UPFC1.00C.pz-rrkjus.UPFATOMIC_POSITIONSbohrC2.2560.00.0O0.0000.00.0000K_POINTSGamma如何進(jìn)行自洽計算?PWSCF程序包(早期的叫法),或稱為ESPRESSO程序(改名后的叫法),它包括了多幾個計算模塊,主要的是電子自洽計算模塊pw.x,晶格動力學(xué)計算模塊(ph.x,phcg.x,dynmat.x,d3.x等),后續(xù)數(shù)據(jù)處理模塊pp.x,電子輸運性質(zhì)計算模塊pwcond.x,分子動力學(xué)模塊cp.x等一、自洽計算例子:fccCu的自洽計算&controlcalculation=scfrestart_mode=from

32、_scratch,pseudo_dir=./,outdir=./prefix=cutstress=.true.tprnfor=.true./&systemibrav=2,celldm(1)=6.73,nat=1,ntyp=1,ecutwfc=25.0,ecutrho=300.0occupations=smearing,smearing=gaussian,degauss=0.02/&electronsdiagonalization=davidconv_thr=1.0e-8mixing_beta=0.7/ATOMIC_SPECIESCu63.55Cu.pz-d-rrkjus.UPFATOMIC_P

33、OSITIONSCu0.00.00.0K_POINTS(automatic)888000解釋:在電子自洽計算中需設(shè)置以下幾個方面的參數(shù):1)控制計算的部分,也就是要設(shè)置&control.第一個/之間的關(guān)鍵詞。關(guān)鍵詞calculation賦值為scf表示此計算是進(jìn)行自洽電荷密度計算;restart_mode表示是否是接著上一次的計算而繼續(xù)的計算,賦值為from_scratch意味著是進(jìn)行一次全新的計算開始;pseudo_dir用來設(shè)置贗勢文件所在的目錄,賦值為./表示贗勢文件放在當(dāng)前計算目錄;outdir用來設(shè)置計算過程中輸出文件(比如波函數(shù)、電荷密度以及勢)輸出到哪個目錄中。賦值為./表示這些

34、輸出文件將放到當(dāng)前計算目錄中;prefix用來定義當(dāng)前計算作業(yè)的標(biāo)題名,它將是一些主要輸出文件的文件名。賦值為cu用來標(biāo)記當(dāng)前計算作業(yè)是對Cu進(jìn)行計算;tstress用來設(shè)置在自洽計算過程中是否計算體系的應(yīng)力,設(shè)置為.true.表示在自洽計算過程中要計算體系的應(yīng)力;tprnfor用來設(shè)置在自洽計算過程中是否計算體系中原子所受的力,設(shè)置為.true.表示在自洽計算過程中要計算體系中原子所受的力;2)、描述所計算的體系(包括它的晶格類型、晶格常數(shù)或結(jié)構(gòu)參數(shù)、原胞基矢、原胞中原子的類型數(shù)目和總的原子數(shù)目)、平面波的切斷動能(也就是在展開KS軌道或晶體波函數(shù)的平面波切斷動能;另外,還包括在計算電荷密度

35、時,展開的平面波的切斷動能)、確定電子占有數(shù)的方法及相關(guān)的參數(shù)。也就是由&system.第二/之間的關(guān)鍵詞來設(shè)置。ibrav用來歸屬體系所屬的晶格類型,賦值為2表示所計算的體系是fcc結(jié)構(gòu);celldm(1)用來設(shè)置體系的第一個晶格常數(shù),因為所計算的體系是fcc結(jié)構(gòu),只需設(shè)置celldm(1),相當(dāng)于指定晶格常數(shù)a的值;nat用來指明體系的原胞中原子的總共數(shù)目,賦值為1表示所計算的原胞中只有一個原子;ntyp用來指明體系中原子類型的數(shù)目,賦值為1表示所計算的體系只有一種類型的原子;occupations用來設(shè)置確定電子占有數(shù)的方法,賦值為smearing表示采用smearing的方法來確定電子

36、的占有數(shù),隨后須設(shè)置smearing和degauss關(guān)鍵詞;smearing用來指明確定電子占有數(shù)的一種具體的smearing方法,賦值為gaussian表示采用Gaussian函數(shù)來確定電子占有數(shù);degauss用來確定smearing方法中有關(guān)函數(shù)的展寬參數(shù),賦值為0.02表示上面Gaussian函數(shù)中的展寬參數(shù)為0.02。3)、設(shè)置電子自洽計算中本征矢量(波函數(shù))和本征值的計算算法,自洽收斂的標(biāo)準(zhǔn)。也就是&electrons.和第三個/之間的關(guān)鍵詞來設(shè)置。diagonalization用來設(shè)置在求KS方程的本征矢量和本征值時,采用具體的什么算法,賦值為david表示采用Davidsoni

37、terativediagonalizationwithoverlapmatrix方法;conv_thr用來設(shè)置自洽收斂標(biāo)準(zhǔn),賦值為自洽循環(huán)過程總能的變化小于1.0e-8的化,那自洽計算就停止;mixing_beta用來設(shè)置自洽計算過程中前后兩次電荷密度混合的參數(shù)。4)、指明體系中原子的元素名,原子量以及所采用的贗勢,即ATOMIC_SPECIES后面的設(shè)置,它們的順序要和后面原子的坐標(biāo)一一對應(yīng)起來。Cu63.55Cu.pz-d-rrkjus.UPF表示所計算的體系中原子是Cu,它的原子量為63.55,它的贗勢文件為Cu.pz-d-rrkjus.UPF。5)、給出體系原胞中原子的坐標(biāo)位置,也就是

38、ATOMIC_POSITIONS后面的設(shè)置:Cu0.00.00.0表示原胞中第一個原子是Cu,它位于原胞的原點。6)、k點取樣的設(shè)置,也就是K_POINTS后面的設(shè)置:K_POINTS(automatic)表示由程序采用M-P方法自動確定k點,需給出k點取樣網(wǎng)格的大小,以及是否在產(chǎn)生k點后對這些點進(jìn)行平移。888000表示采用8x8x8的網(wǎng)格來確定k點,而且不對k點進(jìn)行平移。如何計算能帶結(jié)構(gòu)?轉(zhuǎn)自:/user1/11542/archives/2006/1573345.shtml計算fccCu的能帶結(jié)構(gòu)&controlcalculation=bandspseudo_dir=./,outdir=.

39、/,prefix=cu/&systemibrav=2,celldm(1)=6.73,nat=1,ntyp=1,ecutwfc=25.0,ecutrho=300.0,nbnd=8/&electronsdiagonalization=david/ATOMIC_SPECIESCu63.55Cu.pz-d-rrkjus.UPFATOMIC_POSITIONSCu0.00.00.0K_POINTS280.00.00.01.00.00.00.11.00.00.00.21.00.00.00.31.00.00.00.41.00.00.00.51.00.00.00.61.00.00.00.71.00.00.00

40、.81.00.00.00.91.00.00.01.01.00.00.00.01.00.00.00.00.00.00.00.00.00.00.01.01.01.00.00.00.01.01.01.01.01.01.0解釋:在進(jìn)行能帶計算時,calculation須設(shè)置為bands,而且在此之前須進(jìn)行一次相應(yīng)的自洽計算,而且要有上一步計算得到輸出文件供能帶計算時讀入。另外最好在&system中設(shè)置nbnd,以指定計算多少條能帶。在計算能帶時要自己先選定一些高對稱點,并產(chǎn)生這些高對稱點之間其他點。在這個例子中,計算沿G-X-L點之間的高對稱線上的能帶。在產(chǎn)生所要計算的特殊k點時,可以采用下面簡單的f

41、77程序來實現(xiàn):c+-cForgeneratingk-pointsalongthehigh-symmetrylinesincBrillouinzoneandforcalculateband-structures!c+-C-syml-c6:nhighkc2020201020:ndiv(i)cX0.50.00.5:labhk(1),phighk(1,1),.cG0.00.00.0cLcW5cK0.3750.3750.75cG0.00.00.0cdirect&reciprocallatticevectorsoveremin,emaxlineC-cmaxk-points=200programgkimp

42、licitreal*8(a-h,o-z)character*2labhkdimensiontkpt(200,3),pk(200,3),phighk(10,3)dimensiondisk(200),dish(10),labhk(10)dimensionndiv(10)copen(5,file=syml,status=old)open(7,file=inp.kpt)cread(5,*)nhighkread(5,*)(ndiv(i),i=1,nhighk-1)doi=1,nhighk-1ntkp=ntkp+ndiv(i)enddontotkpt=ntkp+1if(nhighk10)thenwrite

43、(*,*)Numberofhigh-symmetrykpointsmust200)thenwrite(*,*)Totalnumberofkpointsmust=200!STOPendifdoi=1,nhighkread(5,*)labhk(i),(phighk(i,j),j=1,3)enddowrite(*,*)(labhk(i),i=1,nhighk)cc-generatingk-pointsalonghighsymmetriclines-ccpk(1,1)=phighk(1,1)pk(1,2)=phighk(1,2)pk(1,3)=phighk(1,3)ii=1doi=2,nhighkde

44、lx=(phighk(i,1)-phighk(i-1,1)/float(ndiv(i-1)dely=(phighk(i,2)-phighk(i-1,2)/float(ndiv(i-1)delz=(phighk(i,3)-phighk(i-1,3)/float(ndiv(i-1)doj=1,ndiv(i-1)ii=ii+1pk(ii,1)=pk(ii-1,1)+delxpk(ii,2)=pk(ii-1,2)+delypk(ii,3)=pk(ii-1,3)+delzenddoenddoc10format(A34)weight=1.d0doi=1,ntotkptwrite(7,200)pk(i,1)

45、,pk(i,2),pk(i,3),weightenddo200format(3F10.6,F6.2)stopendc-end-它的輸入文件為syml,輸出文件為inp.kpt。其中syml輸入文件的格式如下:815151515151515G0.00.00.0K-0.333333333330.66666666666670.000000000H-0.333333333330.66666666666670.500000000A0.00.00.5G0.00.00.0M0.00.50.0L0.00.50.5A0.00.00.5第一行用來標(biāo)記有多少個特殊k點,下面是這些特殊k點之間每個要分多少個k點,接著

46、就是這些特殊k點的坐標(biāo)。產(chǎn)生的inp.kpt可以之間拷貝到pw.x在計算能帶時的輸入文件中。如何畫能帶圖?轉(zhuǎn)自:/user1/11542/archives/2007/1651378.shtmlpwscf附帶了band.x和plotband.x的工具,前者是將計算出來k點坐標(biāo)以及相應(yīng)的本征值從out文件中收集起來(或取出)專門存儲到一個文件中,以便后一個工具plotband.x進(jìn)行處理。在計算能帶時,先設(shè)置k點網(wǎng)格進(jìn)行一次自洽計算,然后自己輸入要計算的特殊k點并進(jìn)行一次非自洽計算,得到這些特殊k點的本征值。再用band.x和ploband.x進(jìn)行處理。1).band.x的輸入文件格式&input

47、ppprefix=sioutdir=./tmpfilband=sibands.datspin_component=1/其中prefix設(shè)置所計算體系的標(biāo)題,以及輸入文件的文件名(不包括擴(kuò)展名,也就是.dot后面的);outdir用來設(shè)置上一步非自洽計算中的輸出文件的目錄;filband用來設(shè)置這一步band.x處理出來的k點和本征值的輸出文件(也就是將這些k點-本征值放到哪個文件中);spin_component為1表示處理的是非自旋極化計算的本征值,如果是2表示處理的是自旋極化計算的本征值。band.x的輸出文件(fiband所設(shè)置的)的格式為:&plotnbnd=8,nks=36/0.50

48、00000.5000000.500000-3.418-0.8225.0295.0297.8149.5979.59713.8380.4000000.4000000.400000-3.891-0.1025.1025.1027.9009.6799.67913.9590.3000000.3000000.300000-4.6591.4045.3195.3198.1389.8039.80313.845。與在聲子計算中matdyn.x得到的q點與本征值的文件的格式是一樣的。第一行中nbnd告訴了每個有多少個本征值,本征值單位是eV。nks告訴了總共有多少k點。第2行是k點的坐標(biāo),第3行是該k點對應(yīng)的本征值。

49、下面的與2、3兩行類似。2)、plotband.x的輸入文件格式sibands.dat-6.010sibands.xmgrsibands.ps6.2551.06.255第一行是band.x處理得到的k點本征值文件此例子中是sibands.dat;第二行是在這一步中輸出的ps文件中縱坐標(biāo)(本征值能量)刻度的最小值與最大值;第三行是用來設(shè)置所出輸出xmgr格式的文件的文件名;第四行是用來設(shè)置所輸出文件ps格式的文件名;第五行是費米能級的值,這個在自洽計算的out文件中可以找到;第六行中第一個數(shù)是用來設(shè)置輸出ps格式文件縱坐標(biāo)(能量)刻度的大小,第二個數(shù)是用來設(shè)置標(biāo)出費米能級的位置,它與第五行中的數(shù)

50、相同。同樣ploband.x也可以用來處理聲子本征值文件。如何計算態(tài)密度?轉(zhuǎn)自:/user1/11542/archives/2006/1575092.shtml例子,計算Cu的態(tài)密度一、自洽計算(見前一個例子)二、非自洽計算,增加k點,并采用四面體方法來確定電子的占有數(shù)&controlcalculation=nscfprefix=cu,pseudo_dir=./,outdir=./&systemibrav=2,celldm(1)=6.73,nat=1,ntyp=1,ecutwfc=25.0,ecutrho=300,nbnd=8,occupations=tetrahedra/&electrons

51、conv_thr=1.0e-8mixing_beta=0.7/ATOMIC_SPECIESCu63.55Cu.pz-d-rrkjus.UPFATOMIC_POSITIONSCu0.00.00.0K_POINTSautomatic121212000三、采用dos.x計算總態(tài)密度&inputppoutdir=./prefix=cufildos=cu.dos,Emin=-5.0,Emax=25.0,DeltaE=0.1/四、采用projwfc.x來計算分波態(tài)密度&inputppoutdir=./prefix=cuEmin=-5.0,Emax=25.0,DeltaE=0.1ngauss=1,degau

52、ss=0.02/在計算態(tài)密度的步驟就是如上面所述:a),先進(jìn)行自洽計算,保留輸出的勢、電荷密度和波函數(shù);b),然后讀入上一步自洽計算得到的勢或電荷密度或波函數(shù),進(jìn)行非自洽計算,其中增加k點網(wǎng)格,并采用四面體方法來確定電子占有數(shù);c),采用dos.x計算總態(tài)密度;d),采用projwfc.x計算分波態(tài)密度。在自洽計算中occupations關(guān)鍵詞的賦值已設(shè)置為tetrahedra表示采用四面體方法確定電子占有數(shù)和費米能級。另外,K_POINTSautomatic下面的k點設(shè)置已增密,設(shè)置為12x12x12,為使得計算的態(tài)密度光滑,有可能需設(shè)置的更密些。在采用dos.x總態(tài)密度計算中,輸入文件中由

53、&inputpp和/來之前的關(guān)鍵詞來設(shè)置,它的關(guān)鍵詞有:outdir用來設(shè)置計算上非自洽計算輸出文件的目錄,設(shè)置為./表示是當(dāng)前目錄;prefix用來標(biāo)記當(dāng)前所計算的體系,也確定了上一步非自洽計算輸出的勢或電荷密度或波函數(shù)的文件的名稱,此例子中設(shè)置為cu,注意它們的賦值應(yīng)該與上一步的非自洽計算中的一致。fildos用來指明所計算的總態(tài)密度將寫到哪個文件中,此例子中賦值為cu.dos,表示總態(tài)密度將寫到cu.dos文件;Emin用來設(shè)置計算態(tài)密度時,能量范圍的最小值,賦值為-5.0,表示將從E=-5.0eV開始輸出對應(yīng)的態(tài)密度值;Emax用來設(shè)置計算態(tài)密度時,能量范圍的最大值,賦值為25.0,表

54、示將到E=25.0eV為止輸出對應(yīng)的態(tài)密度;DeltaE用來設(shè)置計算態(tài)密度時,按多大的能量間隔輸出態(tài)密度,這里設(shè)為0.1eV輸出態(tài)密度。在采用projwfc.x計算態(tài)密度時,&inputpp和/來之前的關(guān)鍵詞來設(shè)置,它的關(guān)鍵詞與dos.x的輸入文件中的關(guān)鍵詞差不多:ngauss用來設(shè)置態(tài)密度時展寬的方法,這樣是為了使得所計算的態(tài)密度看起來光滑,可以賦值:0,表示采用簡單的高斯函數(shù)1,表示采用一階Methfessel-Paxton函數(shù)-1,表示采用Marzari-Vanderbilt“冷離散“方法,其實就是一種函數(shù)形式-99,表示采用Fermi-Dirac函數(shù)degauss用來設(shè)置展寬函數(shù)中的展

55、寬系數(shù)。如何計算晶體的聲子色散曲線和態(tài)密度?轉(zhuǎn)自:/user1/11542/archives/2007/1647197.shtmlpwscf是采用線性響應(yīng)的方法來進(jìn)行晶格動力學(xué)性質(zhì)的計算。在計算晶體的聲子色散和態(tài)密度時的步驟:i)用pw.x進(jìn)行自洽計算;ii)用ph.x對小的q點網(wǎng)格進(jìn)行計算,得到這些q點的動力學(xué)矩陣元;iii)用q2r.x計算出實空間中的力常數(shù)矩陣;iv)用matdyn.x計算聲子色散曲線;v)用matdyn.x計算聲子態(tài)密度。下面以Sc為例子并針對pwscf的最新版本3.2.1來說明(早期版本在計算聲子色散曲線較麻煩,因為它不能自動處理q點網(wǎng)格,然后對每個q點一次性計算,而

56、是需要手動產(chǎn)生這些點,一個個計算)。1)用pw.x進(jìn)行電子密度的自洽計算&controltitle=Sc,hexagonalcellcalculation=scfrestart_mode=from_scratch,prefix=sc,pseudo_dir=./,outdir=./tmptprnfor=.true./&systemibrav=4,celldm(1)=6.05606,celldm(3)=1.71298,nat=2,ntyp=1,nbnd=30,ecutwfc=30.0,occupations=smearing,degauss=0.01smearing=mp/&electronsdi

57、agonalization=cgdiago_cg_maxiter=60mixing_mode=plainmixing_beta=0.5conv_thr=1.0d-6/ATOMIC_SPECIESSc44.955910Sc.pw91-nsp-van.UPFATOMIC_POSITIONS(crystal)Sc0.33333333333332860.66666666666667140.2500000000000000Sc0.66666666666667140.33333333333332860.7500000000000000K_POINTS(automatic)886000注意Sc是金屬,在此例

58、子中,我們選用MP方法來確定電子的占有數(shù)(見occupations=smearing,smearing=mp),這里未經(jīng)測試而選用了展寬系數(shù)為0.01Ry(見degauss=0.01)。在進(jìn)行聲子色散曲線的計算時,不必需對calculation設(shè)置為phonon,在新版本中,直接設(shè)置為scf。這一步計算產(chǎn)生勢以及電荷密度供一下的計算中利用到。2)用ph.x對小的q網(wǎng)格點進(jìn)行動力學(xué)矩陣元的計算phononforSc&inputphtr2_ph=1.0d-10,prefix=sc,fildvscf=scdv,amass(1)=44.955910,outdir=./tmp,fildyn=sc.dyn

59、,elph=.false.,trans=.true.,ldisp=.true.nq1=4,nq2=4,nq3=2/注意這里trans和ldisp必須設(shè)置為.true.。其中trans為.true.表示要計算聲子相關(guān)的性質(zhì),ldisp設(shè)置為.true.表示要計算聲子色散曲線。另外prefix和outdir的設(shè)置盡量與上一步自洽計算中的設(shè)置一致,以能讀入上一步計算得到的數(shù)據(jù)。另外nq1,nq2和nq3是用來設(shè)置q網(wǎng)格點的。為了得到實空間的力常數(shù)矩陣,這里采用的是先計算出q空間中小的q網(wǎng)格點的動力矩陣元,然后采用fft變換得到實空間的力常數(shù)矩陣。因此在這一步計算中需設(shè)置小的q網(wǎng)格點的網(wǎng)格大小。3)用

60、q2r.x計算實空間力常數(shù)矩陣&inputzasr=simple,fildyn=sc.dyn,flfrc=Sc444.fc,la2F=.false./在q2r.x的輸入文件中需指定fildyn:用來設(shè)置包含了q網(wǎng)格點的動力學(xué)矩陣元的文件,與上一步的fildyn設(shè)置一致;flfrc:用來設(shè)置輸出力常數(shù)矩陣的文件;la2F:用來設(shè)置是否計算出實空間中電-聲耦合系數(shù);針對計算材料的超導(dǎo)性質(zhì);zasr:如何處理聲學(xué)支求和規(guī)則“,該規(guī)則是用在處理Born有效電荷的,要求Born有效電荷的總和是零。可賦的值有:no,表示不處理聲學(xué)支求和問題simple,表示通過對力常數(shù)矩陣的對角元素進(jìn)行修正來考慮3支聲學(xué)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論