双腿间已经湿成一片,亚洲啪啪综合AV一区,厨房的春潮A片,日本一道久久高清国产

    快捷下單入口 關(guān)于 合作 招聘 新人手冊(cè) 會(huì)員中心

    熱線:400-152-6858

    測試狗科研服務(wù)

    預(yù)存 免費(fèi)試測 登錄
    Document
    當(dāng)前位置:文庫百科 ? 文章詳情
    ASE原子環(huán)境模擬之原子構(gòu)建和計(jì)算單元
    來源: 時(shí)間:2022-12-16 16:33:54 瀏覽:2459次

    ASE允許指定不同的計(jì)算代碼作為原子尺度的計(jì)算單元。在這個(gè)入門練習(xí)中,我們通過ASE的基本概念和工作流程,最終計(jì)算N2的結(jié)合曲線。

    這些教程經(jīng)常使用電子結(jié)構(gòu)代碼GPAW。使用其他受支持的代碼也可以很好地完成它們,但需要稍作調(diào)整。




    Python


    在ASE中,通過編寫和運(yùn)行Python腳本來執(zhí)行計(jì)算。在ASE文檔中可以找到一個(gè)非常簡短的Python入門教程。如果你是Python新手,最好了解一下基本語法、數(shù)據(jù)類型和導(dǎo)入之類的東西。




    Atoms


    我們建立一個(gè)分子,進(jìn)行DFT計(jì)算。我們可以手動(dòng)輸入原子的化學(xué)符號(hào),并且猜測原子的坐標(biāo)(以?ngstr?m為單位),來建立簡單分子。比如N2:

    
    

    from ase import Atoms

    atoms = Atoms('N2', positions=[[0, 0, -1], [0, 0, 1]])

    為了防止錯(cuò)誤,我們使用ASE GUI可視化我們的分子:

    
    

    from ase.visualize import view

    view(atoms)

    同樣地,我們以某種格式保存原子,通常是ASE自己的trajectory格式:

    
    

    from ase.visualize import view

    view(atoms)

    然后在終端上運(yùn)行GUI:

    
    

    ase gui myatoms.traj

    ASE支持相當(dāng)多的不同格式。對(duì)于完整的列表,運(yùn)行:

    $ ase info --formats



    Calculators


    接下來讓我們進(jìn)行一個(gè)電子結(jié)構(gòu)計(jì)算。ASE使用calculators模塊進(jìn)行計(jì)算。calculators模塊為進(jìn)行實(shí)際計(jì)算的不同后端提供抽象接口。通常,calculators通過調(diào)用外部電子結(jié)構(gòu)代碼或力場代碼來工作。要運(yùn)行計(jì)算,我們必須首先創(chuàng)建一個(gè)calculator,然后將其附加到Atoms對(duì)象。這里我們使用GPAW并設(shè)置一些計(jì)算參數(shù):

    from gpaw import GPAW

    calc = GPAW(mode='lcao', basis='dzp', txt='gpaw.txt', xc='LDA')

    atoms.calc = calc

    不同的電子結(jié)構(gòu)軟件具有不同的輸入?yún)?shù)。GPAW可以使用實(shí)空間網(wǎng)格(mode='fd')、平面波(mode='pw')或局部原子軌道(mode='lcao')來表示波函數(shù)。在這里,我們調(diào)用更快但不太精確的LCAO模式,以及標(biāo)準(zhǔn)雙zeta極化基組('dzp')。GPAW和許多其他代碼也需要一個(gè)基本原胞(或模擬盒子)。因此,我們把原子放在一個(gè)盒子的正中間,在每個(gè)原子周圍留下3  ?的空間:

    atoms.center(vacuum=3.0)

    print(atoms)

    輸出將顯示模擬框(或cell)的坐標(biāo),該框也可以在GUI中看到。

    一旦Atoms有了一個(gè)具有適當(dāng)參數(shù)的計(jì)算器,我們就可以計(jì)算能量和力:

    
    

    e = atoms.get_potential_energy()

    print('Energy', e)

    f = atoms.get_forces()

    print('Forces')

    print(f)

    這就給出了以eV為單位的能量eV和以eV/?為單位的力。(ASE還提供了atoms.get_kinetic_energy()來表示原子運(yùn)動(dòng)時(shí)的動(dòng)能。在DFT計(jì)算中,我們通常只需要Kohn-Sham基態(tài)能量,也就是計(jì)算器提供的“勢能”。)

    調(diào)用get_potential_energy()get_forces()會(huì)觸發(fā)一個(gè)自洽計(jì)算,并輸出大量的輸出文本。檢查gpaw.txt文件,可以查看選擇了哪些計(jì)算參數(shù)。請(qǐng)注意get_forces()調(diào)用實(shí)際上并沒有觸發(fā)新的計(jì)算—力是根據(jù)已經(jīng)計(jì)算過的基態(tài)得到的,因此我們只運(yùn)行了一次計(jì)算。




    結(jié)合曲線


    ASE的優(yōu)點(diǎn)是可以編寫腳本。atoms.positions是表示原子位置的numpy數(shù)組:

    print(atoms.positions)

    我們可以通過在數(shù)組元素中添加或賦值來移動(dòng)原子。然后,我們可以再次調(diào)用atoms.get_potential_energy()atoms.get_forces()來觸發(fā)新的計(jì)算。

    這樣我們就可以實(shí)現(xiàn)任何一系列的計(jì)算。當(dāng)運(yùn)行多個(gè)計(jì)算時(shí),我們通常希望將它們寫入一個(gè)文件。我們可以使用標(biāo)準(zhǔn)的軌跡格式來編寫多種計(jì)算(原子和能量),如下所示:

    
    

    from ase.io.trajectory import Trajectory

    traj = Trajectory('mytrajectory.traj', 'w')

    ...

    traj.write(atoms)

    練習(xí):編寫一個(gè)循環(huán),以小的步長移動(dòng)N2分子的其中一個(gè)原子,得到體系能量對(duì)距離的曲線。將每一步的構(gòu)型存盤并且可視化。平衡距離是多少呢?

    注意原子不要太靠近模擬盒子的邊緣(否則電子會(huì)擠壓盒子,增加能量和/或破壞計(jì)算)。

    如果我們忘記編寫軌跡,我們還可以在gpaw.txt文件上運(yùn)行ASE GUI,盡管它的輸出精度是有限的。

    盡管GUI將為我們繪制能量曲線,但發(fā)布高質(zhì)量的曲線通常需要一些手工修改。ASE提供兩個(gè)函數(shù)來讀取軌跡或其他文件:

    • ase.io.read()讀取并返回最后一個(gè)構(gòu)型,如果指定了index關(guān)鍵字,則可能是一組構(gòu)型。 

    • ase.io.iread()讀取多個(gè)構(gòu)型,一次一個(gè)。

    使用ase.io.iread()讀取構(gòu)型,例如:

    
    

    for atoms in iread('mytrajectory.traj'):

       print(atoms)

    練習(xí):使用matplotlib繪制結(jié)合曲線(能量對(duì)距離的函數(shù))。你將需要搜集隨著軌跡循環(huán)的計(jì)算中每一步能量和距離。如果剛才已經(jīng)計(jì)算過能量,那么atoms就已經(jīng)包含能量,所以調(diào)用atoms_get_potential_energy()可以簡單地獲得能量而不需要再做計(jì)算。

    選做練習(xí):為了計(jì)算更加正確的結(jié)合能,設(shè)置一個(gè)孤立的N原子并計(jì)算它的能量。然后計(jì)算由原子到分子的分子結(jié)合能:E_結(jié)合 = E_N2 - 2E_N。你可以在計(jì)算開始之前設(shè)置atoms.set_initial_magnetic_moments([3])來告訴GPAW你的原子是具有自旋極化的。




    練習(xí)答案


    from ase import Atoms

    from ase.io import Trajectory

    from gpaw import GPAW

    atoms = Atoms('N2', positions=[[0, 0, -1], [0, 0, 1]])

    atoms.center(vacuum=3.0)

    calc = GPAW(mode='lcao', basis='dzp', txt='gpaw.txt')

    atoms.calc = calc

    traj = Trajectory('binding_curve.traj', 'w')

    step = 0.05

    nsteps = int(3 / step)

    for i in range(nsteps):

       d = 0.5 + i * step

       atoms.positions[1, 2] = atoms.positions[0, 2] + d

       atoms.center(vacuum=3.0)

       e = atoms.get_potential_energy()

       f = atoms.get_forces()

       print('distance, energy', d, e)

       print('force', f)

       traj.write(atoms)



    import matplotlib.pyplot as plt

    from ase.io import iread

    energies = []

    distances = []

    for atoms in iread('binding_curve.traj'):

       energies.append(atoms.get_potential_energy())

       distances.append(atoms.positions[1, 2] - atoms.positions[0, 2])

    ax = plt.gca()

    ax.plot(distances, energies)

    ax.set_xlabel('Distance [?]')

    ax.set_ylabel('Total energy [eV]')

    plt.show()



    from ase import Atoms

    from gpaw import GPAW

    atoms = Atoms('N')

    atoms.center(vacuum=3.0)

    atoms.set_initial_magnetic_moments([3])

    calc = GPAW(mode='lcao', basis='dzp')

    atoms.calc = calc

    atoms.get_potential_energy()


    計(jì)算狗·模擬計(jì)算

    評(píng)論 / 文明上網(wǎng)理性發(fā)言
    12條評(píng)論
    全部評(píng)論 / 我的評(píng)論
    最熱 /  最新
    全部 3小時(shí)前 四川
    文字是人類用符號(hào)記錄表達(dá)信息以傳之久遠(yuǎn)的方式和工具。現(xiàn)代文字大多是記錄語言的工具。人類往往先有口頭的語言后產(chǎn)生書面文字,很多小語種,有語言但沒有文字。文字的不同體現(xiàn)了國家和民族的書面表達(dá)的方式和思維不同。文字使人類進(jìn)入有歷史記錄的文明社會(huì)。
    點(diǎn)贊12
    回復(fù)
    全部
    查看更多評(píng)論
    相關(guān)文章

    【科研干貨】電化學(xué)表征:循環(huán)伏安法詳解(上)

    2019-10-25

    晶體結(jié)構(gòu)可視化軟件 VESTA使用教程(下篇)

    2021-01-22

    手把手教你用ChemDraw 畫化學(xué)結(jié)構(gòu)式:基礎(chǔ)篇

    2021-06-19

    【科研干貨】電化學(xué)表征:循環(huán)伏安法詳解(下)

    2019-10-25

    基礎(chǔ)理論丨一文了解XPS(概念、定性定量分析、分析方法、譜線結(jié)構(gòu))

    2020-05-03

    Zeta電位的基本理論、測試方法和應(yīng)用

    2020-08-24

    項(xiàng)目推薦/Project
    第一性原理-電荷密度

    第一性原理-電荷密度

    第一性原理-擴(kuò)散能壘

    第一性原理-擴(kuò)散能壘

    熱門文章/popular

    【科研干貨】電化學(xué)表征:循環(huán)伏安法詳解(上)

    晶體結(jié)構(gòu)可視化軟件 VESTA使用教程(下篇)

    手把手教你用ChemDraw 畫化學(xué)結(jié)構(gòu)式:基礎(chǔ)篇

    電化學(xué)實(shí)驗(yàn)基礎(chǔ)之電化學(xué)工作站篇 (二)三電極和兩電極體系的搭建 和測試

    【科研干貨】電化學(xué)表征:循環(huán)伏安法詳解(下)

    基礎(chǔ)理論丨一文了解XPS(概念、定性定量分析、分析方法、譜線結(jié)構(gòu))

    微信掃碼分享文章

    意見反饋

    有獎(jiǎng)舉報(bào)

    商務(wù)合作

    ...

    更多

    公眾號(hào)

    關(guān)注我們 了解更多

    小程序

    隨時(shí)預(yù)約 掌握進(jìn)度

    舉報(bào)有獎(jiǎng)

    TEL: 191-3608-6524

    如:在網(wǎng)絡(luò)上惡意使用“測試狗”等相關(guān)關(guān)鍵詞誤導(dǎo)用戶點(diǎn)擊、惡意盜用測試狗商標(biāo)、冒稱官方工作人員等情形,請(qǐng)您向我們舉報(bào),經(jīng)查實(shí)后,我們將給予您獎(jiǎng)勵(lì)。

    舉報(bào)內(nèi)容:

    200

    上傳附件:
    文件格式不正確,請(qǐng)重新上傳文件格式不正確,請(qǐng)重新上傳文件格式不正確,請(qǐng)重新上傳
    文件格式:jpg、jpeg、png、gif、tif、doc、docx、ppt、pptx、xls、xlsx、pdf、zip、rar
    聯(lián)系方式
    姓名
    電話
    提交意見

    意見反饋

    Suggestions

    您可以在此留下您寶貴的意見,您的意見或問題反饋將會(huì)成為我們不斷改進(jìn)的動(dòng)力。

    意見類型
    測試服務(wù)
    網(wǎng)站功能
    財(cái)務(wù)報(bào)賬
    其他類型
    意見內(nèi)容

    200

    聯(lián)系方式
    姓名
    電話
    提交意見

    收起

    01

    專屬信用額度,先測后付0元下單

    02

    下單享高額積分,萬千好禮免費(fèi)兌

    200
    200元無門檻優(yōu)惠券
    立即激活 立即下單
    已使用
    已作廢

    全流程在線可視化,便捷高效觸手可及

    如下單過程中有任何疑問或需要幫助,請(qǐng)隨時(shí)咨詢專屬顧問~
    9
    9折無門檻優(yōu)惠券

    支付一筆訂單后可領(lǐng)取

    立即領(lǐng)取 立即下單
    已使用
    已作廢

    免費(fèi)測+驚喜盲盒+高額福利,多重福利大放送

    新人免費(fèi)測

    雙雙開盲盒(100%中獎(jiǎng))

    邀請(qǐng)人專享

    受邀人專享

    創(chuàng)建/加入團(tuán)隊(duì),解鎖定制化權(quán)益

    01

    1500元團(tuán)隊(duì)專屬優(yōu)惠券

    02

    萬元大額信用額度,享先測后付

    03

    團(tuán)隊(duì)成員統(tǒng)一開票報(bào)銷;

    04

    專業(yè)工程師課題專屬服務(wù)

    領(lǐng)取成功,請(qǐng)下單
    請(qǐng)您支付一筆訂單后才可以領(lǐng)取優(yōu)惠券
    Document
    關(guān)于我們 新手幫助 測試干貨 商務(wù)合作 基金查詢 相關(guān)資質(zhì) 模擬計(jì)算 現(xiàn)場測試 服務(wù)項(xiàng)目 科研繪圖 同步輻射 電池行業(yè)

    聯(lián)系方式/contact

    400-152-6858

    工作時(shí)間/work time

    09:00-18:00

    測試狗公眾號(hào)

    關(guān)注我們 了解更多

    測試狗小程序

    隨時(shí)預(yù)約 掌握進(jìn)度

    蜀公網(wǎng)安備51010602000648號(hào)

    蜀ICP備17005822號(hào)-1

    成都世紀(jì)美揚(yáng)科技有限公司

    Copyright@測試狗·科研服務(wù)

    温宿县| 太仆寺旗| 叙永县| 思南县| 泸西县| 类乌齐县| 古丈县| 丹阳市| 兴和县| 普格县| 建宁县| 大石桥市| 滦南县| 万宁市| 遵化市| 明水县| 深圳市| 嘉义县| 宜兴市| 丹巴县| 玛曲县| 洛隆县| 攀枝花市| 永胜县| 巧家县| 措勤县| 澄江县| 罗定市| 枣庄市| 汾阳市| 汽车| 灌阳县| 新余市| 太和县| 黑河市| 永昌县| 延津县| 宕昌县| 左云县| 龙门县| 肃南|