周悅 海雪 任翠蘭 殷亞茹 商琨琳 雷蕾 懷平,,4
1(上??萍即髮W(xué) 上海 201210)
2(中國科學(xué)院上海應(yīng)用物理研究所 上海 201800)
3(中國科學(xué)院大學(xué) 北京 100049)
4(中國科學(xué)院上海高等研究院 上海 201210)
X射線自由電子激光(X-ray Free-electron Laser,XFEL)峰值亮度比第三代同步輻射光源高8~10個量級,脈沖時間短3~4個量級,并且具備非常好的空間相干性和超高準直性,因此被譽為第四代光源[1-2]。表1列舉了目前國際上已建成或在建的主要XFEL裝置。他們可產(chǎn)生光子能量高達數(shù)十keV的X射線脈沖,飛秒脈沖持續(xù)時間,因此單脈沖能量可達幾毫焦耳。XFEL短脈沖和高功率密度的特點,為科學(xué)研究提供了更好的能力,但也會造成光學(xué)元件薄膜材料的燒蝕、裂痕和剝落等現(xiàn)象,在相對較短的時間內(nèi)導(dǎo)致材料的宏觀性能退化,光學(xué)元件的性能降低、服役壽命縮短,進而影響到整個光學(xué)系統(tǒng)的可靠性和穩(wěn)定性[3]。因此,耐輻照性是XFEL裝置光學(xué)元件材料一個重要的指標,XFEL誘導(dǎo)光學(xué)元件損傷相關(guān)科學(xué)研究也是裝置的研究熱點問題之一。
表1 國際上主要XFEL裝置Table 1 Main XFEL facilities worldwide
國際上已經(jīng)進行了許多實驗研究,探討了光學(xué)元件在XFEL輻照下的損傷現(xiàn)象、損傷閾值,以及材料、激光與損傷之間的關(guān)系。Milov等[4]通過FLASH對釕薄膜損傷點進行非原位分析,揭示了損傷現(xiàn)象隨著激光入射通量增加的變化情況。Koyama等[5]通過SACLA多脈沖輻照過程中X射線反射率退化的原位測量,評估了損傷閾值,并觀測了輻照損傷產(chǎn)生的壓印直徑和坑洞橫截面。20世紀50年代以來,各類材料模擬計算軟件日益成熟,基于分子動力學(xué)(Molecular Dynamics,MD)等跨尺度理論模擬計算方法能夠闡述微觀物理過程,幫助理解實驗上材料的損傷及光與材料相互作用機制[6]。Ivanov等[7]在分子動力學(xué)基礎(chǔ)上耦合雙溫模型,在原子尺度上研究短脈沖激光照射下鎳、金薄膜熔化和損傷的快速非平衡過程,獲得材料損傷的演化過程。
在大規(guī)模的模擬計算過程中,模擬體系材料種類多、參數(shù)可變空間大,科研人員通常需要手動輸入大量重復(fù)命令完成計算任務(wù)的定義與提交、計算結(jié)果的檢查與分析。同時,計算數(shù)據(jù)面臨著發(fā)現(xiàn)難、訪問難、共享難和再利用難的問題。利用工作流、數(shù)據(jù)庫和編程工具可以高效便捷地開展材料模擬計算研究,降低大量計算任務(wù)執(zhí)行、數(shù)據(jù)管理和計算過程控制的復(fù)雜性[8]。Materials Project[9]、AFlow[10-11]等材料研究平臺利用工作流和數(shù)據(jù)庫等組件積累了上億條高質(zhì)量數(shù)據(jù),其數(shù)據(jù)被Google DeepMind團隊利用,進行機器學(xué)習(xí)訓(xùn)練,預(yù)測了220萬種新晶體[12];國內(nèi)的ALKEMIE[13]、MatCloud+[14]支持多尺度、可視化的高通量計算,并對模擬數(shù)據(jù)結(jié)構(gòu)化管理。然而,當前大部分平臺支持VASP(Vienna Ab-initio Simulation Package)等第一性原理計算,對分子動力學(xué)模擬計算軟件LAMMPS[15](Large-scale Atomic/Molecular Massively Parallel Simulator)的支持相對較為有限。從研究體系上,對于激光輻照下材料輻照損傷領(lǐng)域的高通量平臺較為稀缺。因此,高效便捷地開展基于LAMMPS的分子動力學(xué)模擬研究以及科學(xué)管理和利用計算數(shù)據(jù)成為亟待解決的問題。
本文開發(fā)了一種自動化輻照模擬程序AISL(Automatic Irradiation Simulation based on LAMMPS),成功應(yīng)用于XFEL與光學(xué)器件材料的輻照損傷微觀機制研究。該程序基于分子動力學(xué)材料計算軟件LAMMPS和科學(xué)工作流工具Fireworks開發(fā),實現(xiàn)了XFEL輻照損傷模擬計算自動化工作流管道,包括高通量計算任務(wù)的管理和執(zhí)行、模擬計算數(shù)據(jù)庫的建立和計算結(jié)果的后處理等功能,能夠有效提高XFEL輻照損傷模擬計算效率,并且為后續(xù)XFEL光學(xué)元件輻照損傷機理的進一步分析和機器學(xué)習(xí)的應(yīng)用奠定了基礎(chǔ)。
AISL是一個基于Linux系統(tǒng),采用Python編程語言編寫的程序,旨在提供高通量分子動力學(xué)材料輻照模擬計算自動化管道,實現(xiàn)XFEL與金屬材料相互作用的數(shù)據(jù)積累。程序采用分層架構(gòu),包含數(shù)據(jù)層、接口層和應(yīng)用層,框架如圖1所示。數(shù)據(jù)層采用MongoDB的集合(Collection)和分布式文件系統(tǒng)(GridFS)數(shù)據(jù)存儲策略。接口層嵌入并行模擬軟件LAMMPS、數(shù)據(jù)庫MongoDB、工作流Fireworks和可視化軟件Ovito。應(yīng)用層是程序的核心,提供模擬任務(wù)的三大處理模塊,包括任務(wù)模塊、工作流模塊和資源模塊。任務(wù)模塊具備4個基礎(chǔ)功能:模擬體系構(gòu)建、模擬任務(wù)計算、模擬數(shù)據(jù)解析存儲以及后處理。通過工作流模塊的輻照模擬工作流,可以自動串聯(lián)任務(wù)模塊中的基礎(chǔ)任務(wù),實現(xiàn)輻照模擬的自動化。該軟件層還支持大規(guī)模模擬任務(wù)的批量處理,形成高通量XFEL輻照損傷MD模擬計算。
圖1 AISL程序框架圖Fig.1 Framework of the AISL program
分子動力學(xué)是獲得材料輻照損傷熱力學(xué)規(guī)律和微觀結(jié)構(gòu)演化過程的有效手段。LAMMPS[15]是由美國Sandia國家實驗室開發(fā)的分子動力學(xué)模擬軟件,可以模擬材料的熱傳導(dǎo)、形變、斷裂等行為,研究熱力學(xué)性能;模擬電化學(xué)、催化等反應(yīng),研究物理化學(xué)過程;模擬高分子構(gòu)象和運動,研究高分子材料結(jié)構(gòu)和性能。
Fireworks[16]是Materials Project自主研發(fā)的組件,用于實現(xiàn)計算任務(wù)流程的執(zhí)行和管理。它主要由三個部分組成:Firetask、Firework和Workflow。Firetask可以由單個Python函數(shù)或shell腳本構(gòu)成,用于執(zhí)行具體任務(wù)。Firework包含多個Firetasks,其Spec空間包含引導(dǎo)工作流程所需的所有信息。多個Fireworks組成一個Workflow,從而形成完整的工作流。Fireworks之間通過FWAction存儲和傳遞數(shù)據(jù),實現(xiàn)動態(tài)工作流的協(xié)調(diào)和執(zhí)行。選用Fireworks對高性能計算集群上運行的高通量計算工作流進行作業(yè)管理,自動完成材料結(jié)構(gòu)到性質(zhì)數(shù)據(jù)的計算。通過Fireworks提供的GUI(Graphics User Interface)界面,實現(xiàn)可視化實時監(jiān)控。
MongoDB[17]是由MongoDB Inc公司開發(fā)的文檔型數(shù)據(jù)庫,以BSON(Binary JSON)為數(shù)據(jù)模型,支持高達PB級別的數(shù)據(jù)處理需求。同時其具有良好的擴展性,支持分片和集群部署,適合大數(shù)據(jù)存儲需求。MongoDB以其無模式的特性而著稱,容許集合沒有固定的結(jié)構(gòu),可以包含不同格式和類型的文檔對象。
工作流模塊提供了便捷的方式,使用并行模擬軟件LAMMPS實現(xiàn)光學(xué)器件材料在XFEL輻照下的動態(tài)過程計算。本程序約定遵循如圖2所示的輻照模擬計算的一般流程:首先進行模擬體系的建立,包括設(shè)置模擬環(huán)境、構(gòu)建原子模型、選擇合理的力場,并通過能量最小化過程使體系達到穩(wěn)定狀態(tài)。隨后,對金屬材料進行溫度初始化,并在適當?shù)南稻C下進行弛豫處理。接著,引入激光約束條件,啟動體系演化計算,達到熱平衡狀態(tài)停止計算。
圖2 輻照模擬計算的一般流程圖Fig.2 General flow chart of radiation simulation calculations
LAMMPS模擬過程涉及參數(shù)種類多樣、可變條件空間大,輸出結(jié)果往往高達數(shù)百萬條,因此從中提取結(jié)構(gòu)演化特征、揭示損傷微觀機理是一大挑戰(zhàn)。通過這一工作流(圖3所示),只需要用戶提交預(yù)設(shè)條件數(shù)值(如激光能量密度、脈沖寬度、初始溫度等),程序會自動生成輻照損傷模擬工作流。根據(jù)預(yù)設(shè)條件的不同,產(chǎn)生多個模擬任務(wù)。每個模擬任務(wù)會按照預(yù)設(shè)條件生成模擬文件集,包括輸入文件、雙溫模型(Two-Temperature Model,TTM)初始格點溫度文件和參數(shù)文件。自動生成的模擬任務(wù)將根據(jù)配置的計算資源在高性能計算集群上運行LAMMPS。完成計算后,基于這些原始數(shù)據(jù),程序可以展示原子軌跡的動態(tài)圖,繪制電子溫度和晶格溫度演化圖。原子坐標、體系熱力學(xué)信息和日志文件等原始計算數(shù)據(jù)將被自動解析并存儲到輻照模擬數(shù)據(jù)庫中。
圖3 高通量自動化輻照模擬工作流Fig.3 Workflow of high-throughput automated irradiation simulation
此外,本程序還提供了高通量模擬工作流的作業(yè)跟蹤和監(jiān)管功能,通過Fireworks內(nèi)置的GUI界面,實時監(jiān)控輻照模擬計算任務(wù)的狀態(tài),如“等待中”(READY)、“運行中”(RUNNING)、“已完成”(COMPLETED)以及“失敗”(FIZZLED)等。同時提供詳細的任務(wù)執(zhí)行記錄,并支持失敗任務(wù)或子任務(wù)重啟運行。
在高通量計算的場景下,材料數(shù)據(jù)結(jié)構(gòu)松散、數(shù)量高達百萬且事務(wù)性要求不高,因此選擇非關(guān)系型數(shù)據(jù)庫MongoDB來管理輻照損傷模擬數(shù)據(jù)。材料輻照損傷數(shù)據(jù)庫的設(shè)計參考了2019年發(fā)布的全球首個材料基因工程數(shù)據(jù)通則標準以及國家材料科學(xué)數(shù)據(jù)共享網(wǎng)中材料計算數(shù)據(jù)的描述規(guī)范[18-19]。該數(shù)據(jù)庫包括三大類:輻照損傷元數(shù)據(jù)、工作流信息數(shù)據(jù)以及原始文件數(shù)據(jù),詳細的數(shù)據(jù)存儲結(jié)構(gòu)見圖4。其中,輻照損傷元數(shù)據(jù)由自動生成的唯一ID(id)、LAMMPS模擬軟件(simulation_software)、作業(yè)資源(job_info)、輻照模擬輸入(input)、輻照模擬輸出(output)等數(shù)據(jù)模塊組成。材料輻照損傷元數(shù)據(jù)將對輻照模擬參數(shù)進行規(guī)范定義:材料基本參數(shù)(material_basic_information),如材料種類、薄膜厚度、原子質(zhì)量、熔點、晶格結(jié)構(gòu);激光參數(shù)(laser_parameters),如脈沖能量、波長、脈寬、入射角;TTM參數(shù)(TTM_parameters),如格點初始溫度、電子熱容、電聲子耦合系數(shù)等;模擬參數(shù)(simulation_parameters),如周期性邊界條件、勢函數(shù)類型、能量最小化條件;模擬計算產(chǎn)生的原始數(shù)據(jù)(log)和后處理數(shù)據(jù)(dump),包括溫度演化數(shù)據(jù)、壓力演化數(shù)據(jù)、能量演化數(shù)據(jù)、原子坐標等。工作流信息數(shù)據(jù)詳細記錄了每個工作流及子任務(wù)的運行狀態(tài)、序號和名稱等關(guān)鍵信息,同時還包括每個流程的輸入和輸出數(shù)據(jù)。材料模擬產(chǎn)生的原始文件和圖片存儲于MongoDB的分布式文件系統(tǒng)GridFS中。
圖4 輻照損傷模擬數(shù)據(jù)庫模型Fig.4 Database model for radiation damage simulation
在XFEL裝置的強輻照環(huán)境下,K-B鏡、波帶片、單色器、布拉格反射鏡等光學(xué)元件必須采用耐輻照材料,如低Z材料C、SiC和B4C等[20],具有高反射率和高損傷閾值的優(yōu)點,適用于真空窗口和束流閘;或高Z涂層材料銠Rh、金Au、釕Ru、鎳Ni等[21],具有更大的臨界角,從而在有限空間內(nèi)獲得更大的數(shù)值孔徑。例如在European-XFEL的SPB/SFX設(shè)備中,選用了低Z材料B4C(3~7.5 keV)、高Z材料Ru(7.5~16 keV)[21]。本文開發(fā)的軟件可適用于各類光學(xué)元件材料的模擬研究,下文將以金屬材料為例展示其主要功能。
為了克服傳統(tǒng)的經(jīng)典分子動力學(xué)無法計算電子效應(yīng)的局限性,本文結(jié)合1974年Anisimov等[22]提出的TTM模型,用于研究輻照損傷過程中電子與晶格能量交換的過程,解決金屬熱傳導(dǎo)過程中電子、晶格系統(tǒng)不平衡問題,進一步使用AISL程序?qū)崿F(xiàn)高通量計算過程和數(shù)據(jù)管理。電子溫度和晶格溫度的時間和空間變化可以通過一維雙溫?zé)醾鲗?dǎo)方程進行描述[22]:
式中:C和K分別為熱容和熱導(dǎo)率;下標e和l分別代表電子和晶格系統(tǒng)相應(yīng)物理量;G是電子-晶格耦合系數(shù);t是時間;z是材料表面垂直向里的長度;S(z,t)是激光項。雙溫模型將電子系統(tǒng)與晶格系統(tǒng)看成兩個分立的準傅里葉熱傳導(dǎo)系統(tǒng),并通過耦合項實現(xiàn)兩個系統(tǒng)的能量交換。
本文為驗證AISL程序的功能可用性和高效性,以XFEL輻照金屬薄膜為例進行模擬測試。光學(xué)元件薄膜材料選取金,XFEL激光選取單脈沖,測試了不同激光能量密度、脈沖寬度下X射線自由電子激光與金的相互作用的演化結(jié)果,模擬體系主要參數(shù)詳見表2。使用AISL程序,可一鍵提交包括15種激光能量密度和11種脈沖寬度在內(nèi)的共計26種條件的輻照模擬任務(wù)。每個模擬任務(wù)均包含4個步驟:模擬體系構(gòu)建、模擬任務(wù)計算、模擬數(shù)據(jù)解析存儲以及后處理。用戶根據(jù)個人關(guān)心的時間段,通過靈活的演化時間選取窗口,查看對應(yīng)的演化圖。通過Fireworks的GUI界面直觀地監(jiān)控模擬任務(wù)、遠程跟蹤任務(wù)狀態(tài)、查看任務(wù)工作流的詳情信息,并實時統(tǒng)計不同狀態(tài)的工作流總量,詳見圖5。在終端中使用命令,例如lpad pause_fws、lpad add、lpad resume、lpad set_priority,可以分別實現(xiàn)工作流的取消、添加、重啟以及設(shè)置優(yōu)先級的操作,從而滿足實際模擬的需求。
圖5 輻照損傷工作流狀態(tài)的實時可視化界面(綠色:已完成,黃色:運行中,藍色:等待中)(彩圖見網(wǎng)絡(luò)版)Fig.5 Real-time visualization interface of the radiation damage workflow state (Green: COMPLETED , Yellow: RUNNING, Blue:READY) (color online)
表2 XFEL輻照模擬體系主要參數(shù)Table 2 Primary parameters of the XFEL irradiation simulation system
針對以上不同模擬任務(wù)的結(jié)果,經(jīng)過后處理模塊繪制了在不同激光能量密度、脈沖寬度下的金材料電子-晶格溫度演化圖,分別如圖6~7所示。其中實線表示電子溫度,虛線表示晶格溫度。插圖描述了激光加載初期電子溫度躍變細節(jié)。在單個模擬過程中,電子吸收激光能量進行熱傳導(dǎo),通過電聲子耦合項實現(xiàn)電子和晶格之間的能量交換。由于電子溫度下降,晶格溫度則相應(yīng)升高。最終,體系在數(shù)十皮秒的時間尺度內(nèi)實現(xiàn)了熱平衡,其溫度明顯高于初始溫度水平。AISL程序的模擬結(jié)果和變化趨勢與Mo等實驗結(jié)果一致[24]。
圖6 在脈沖寬度為0.13 ps、不同激光能量密度的飛秒激光加載下,金膜的電子-晶格溫度演化(彩圖見網(wǎng)絡(luò)版)Fig.6 Evolution of electron-lattice temperature in the gold film depicted under femtosecond laser loading with a pulse width of 0.13 ps and various laser energies (color online)
圖7 在激光能量密度為0.18 MJ·kg-1、不同脈沖寬度的激光加載下,金膜的電子-晶格溫度演化(彩圖見網(wǎng)絡(luò)版)Fig.7 Evolution of electron-lattice temperature in the gold film depicted under laser loading with a laser energy density of 0.18 MJ·kg-1 and various pulse widths (color online)
圖8展示了隨著激光能量密度增加,金膜的最大電子溫度、電子-晶格平衡溫度以及電子-晶格溫度耦合時間均呈現(xiàn)增加的趨勢,達到最大電子溫度的時間增加趨勢緩慢。激光能量密度的提高導(dǎo)致電子吸收更多的能量,從而使最大電子溫度升至更高的水平。隨著更多能量傳遞給晶格,電子和晶格之間的能量耦合需要更長的時間來完成。最終,系統(tǒng)在達到平衡后的溫度也相應(yīng)上升。
圖8 不同激光能量密度的飛秒激光加載下,金膜的最大電子溫度和達到最大電子溫度的時間(a)、電子-晶格平衡溫度和耦合時間(b)Fig.8 Under femtosecond laser loading at various laser energies, the maximum electron temperature (Temax) and time to reach Temax (a), and the electron-lattice equilibrium temperature and coupling time (b)
圖9 展示了隨著脈沖寬度增加,電子溫度達到的最大值減小、時間越長,電子-晶格平衡溫度變化不顯著,電子-晶格溫度耦合時間增加趨勢較為緩慢。激光脈沖寬度的減小會導(dǎo)致電子在短時間內(nèi)吸收更多能量,從而使電子溫度在短時間內(nèi)迅速達到峰值,整體溫度的升高和達到平衡會加快。
圖9 不同脈沖寬度的激光加載下,金膜的最大電子溫度和達到最大電子溫度的時間(a)、電子-晶格平衡溫度和耦合時間(b)Fig.9 Under laser loading at various pulse widths, the maximum electron temperature (Temax), and time to reach Temax (a), the electronlattice equilibrium temperature and coupling time (b)
AISL程序成功實現(xiàn)了通過交互式輸入方式創(chuàng)建和提交多條件的輻照模擬任務(wù)。在單個模擬計算中,僅需1 s即可對數(shù)十萬條電子和晶格溫度數(shù)據(jù)進行分析繪圖。同時將數(shù)據(jù)解析、存儲到數(shù)據(jù)庫也只需1 s。相對于傳統(tǒng)手動建立輸入文件和進行處理分析所需的時間,這些時間可以忽略不計。數(shù)據(jù)庫按照預(yù)設(shè)模型進行清晰而完整地記錄,無須用戶參與,符合科學(xué)數(shù)據(jù)的FAIR(Findable,Accessible,Interoperable,Reusable)原則。規(guī)整的模擬數(shù)據(jù)可直接用于基于機器學(xué)習(xí)的材料挖掘,避免了繁瑣的數(shù)據(jù)清洗和預(yù)處理步驟。這證實了程序的可用性和高效性,使得進行輻照模擬研究變得更加便捷。在計算資源、存儲空間不受限制的情況下,該程序具備執(zhí)行上千個模擬任務(wù)的能力。
依托于GitLab倉庫管理平臺對程序進行軟件備份和版本控制,并且實現(xiàn)了快速部署功能。輻照損傷模擬數(shù)據(jù)庫采用三節(jié)點分布式部署方案,搭建“一主一副本一仲裁”副本集,實現(xiàn)多臺服務(wù)器之間異步同步,提供高可用能力。
架構(gòu)部署如圖10所示,當網(wǎng)絡(luò)故障、硬件磁盤損壞或者其他原因造成主服務(wù)器宕機時,無須人為干預(yù),自動切換備份服務(wù)器作為主服務(wù)器工作,實現(xiàn)故障自動恢復(fù)功能。將副本服務(wù)器設(shè)為只讀,分流讀請求至副本,實現(xiàn)讀寫分離,提升讀取性能和負載能力。同時,對副本集進行安全認證配置,要求客戶端在連接到副本集時需進行身份驗證,以確保數(shù)據(jù)的安全性。經(jīng)各節(jié)點故障模擬測試表明,系統(tǒng)具有良好的自動故障恢復(fù)能力。
圖10 三節(jié)點高可用架構(gòu)部署圖Fig.10 Schematic of three-node high-availability architecture deployment
本文提供了一種基于Python語言的自動化輻照模擬程序AISL,以支持采用分子動力學(xué)方法開展XFEL對材料的輻照損傷模擬研究。從應(yīng)用結(jié)果來看,該程序可以滿足科研人員便捷開展高通量輻照模擬計算時自動化提交和管理多個任務(wù)的需求,能夠顯著提高基于LAMMPS的輻照損傷模擬計算效率。同時在此過程中形成的輻照損傷模擬數(shù)據(jù)庫,為后續(xù)進一步利用機器學(xué)習(xí)方法進行數(shù)據(jù)挖掘和下一代光學(xué)元件材料篩選奠定基礎(chǔ)。
本文已經(jīng)走出探索的第一步。由于光學(xué)器件結(jié)構(gòu)的復(fù)雜性、激光參數(shù)和材料種類的多樣性,未來將進一步優(yōu)化完善程序,如適應(yīng)低Z材料模擬,在模擬時考慮器件的異質(zhì)結(jié)、多層薄膜以及多脈沖激光的影響,提高任務(wù)智能糾錯能力,引入更強大的計算集群等,以實現(xiàn)更加卓越的使用體驗。同時,將實驗數(shù)據(jù)整合至輻照損傷數(shù)據(jù)庫,打造更為綜合和全面的輻照數(shù)據(jù)集。
致謝感謝史武軍副研究員在硬件上提供的幫助。
作者貢獻聲明周悅負責(zé)程序開發(fā)、整體測試和調(diào)試以及論文撰寫和修改;海雪、殷亞茹負責(zé)輻照損傷研究采用的TTM-MD的LAMMPS模擬程序、模擬體系和相關(guān)參數(shù)的提供,以及程序的自動化模擬測試方案的設(shè)計指導(dǎo);任翠蘭負責(zé)輻照模擬理論指導(dǎo)和論文修改;商琨琳負責(zé)程序修復(fù)和資源監(jiān)管;雷蕾負責(zé)技術(shù)研發(fā)、程序設(shè)計以及論文研究方案的提出與修改;懷平負責(zé)自動化輻照模擬的總體目標制定、規(guī)劃和指導(dǎo),論文修改指導(dǎo)。