999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Python在“計算材料學”教學中的應用探索

2021-09-30 04:29:17張亞超鄭珊
教育教學論壇 2021年37期
關鍵詞:實踐教學

張亞超 鄭珊

[摘 要] 以H2分子勢能曲線的密度泛函理論計算為實踐教學案例,探討腳本語言Python在“計算材料學”教學中的可能應用。由于該課程實踐性較強,傳統教學方式既需要兼顧基礎理論內容,又需要花費很大精力講授各種計算軟件的使用,無形中增大了學習難度。提出一種基于Python的計算材料學實驗方案,引導學生通過實際材料計算和提問學習理論方法。Python語法簡單、容易上手,且具備膠水語言的優勢,可以無縫整合材料建模、理論計算、數據分析與可視化等全部過程,大大降低了教學復雜度,有助于提升學生的學習興趣。

[關鍵詞] 密度泛函理論;Python;實踐教學;材料模擬

[作者簡介] 張亞超(1985—),男,河南葉縣人,博士,貴州師范學院貴州省納米材料模擬與計算重點實驗室副教授,主要從事計算材料學研究;鄭 珊(1990—),女,貴州貴陽人,碩士,貴州師范學院化學與材料學院實驗師,主要從事藥物分子篩選與設計研究。

[中圖分類號] G642.0? ?[文獻標識碼] A? ?[文章編號] 1674-9324(2021)37-0137-04? ? [收稿日期] 2021-04-16

隨著理論方法的發展與計算能力的提升,在物質科學相關研究領域,理論、實驗與計算已經形成了三足鼎立的局面。為了適應這種學科發展需求,材料科學與工程專業的教學工作也不斷與時俱進,逐步吸納現代計算機技術[1],將其應用范圍從傳統的實驗數據處理與可視化擴大到材料模擬與設計、材料基因工程等前沿領域。部分高校開設了“計算材料學”課程[2],致力于介紹前沿材料計算技術[3],培養學生的計算思維和動手能力。遺憾的是,該課程涉及多學科交叉和大量的專業軟件使用[4],內容龐雜,操作極其煩瑣,學生很容易在初期就失去信心和興趣。本文提出一種基于Python腳本語言的計算材料實驗設計方案,希望能通過實踐帶動理論課的學習。這種實踐教學方案的實施,一方面為學生提供一個便利的計算材料工具箱,顯著降低上機實踐操作的復雜性,使學生能通過簡單程序編寫完成一般的材料模擬與設計工作,增強課程的趣味性與吸引力;另一方面鼓勵學生通過實際材料模擬“發現”計算方法存在的問題,以更深入地理解該課程所涉及的基礎理論知識。

一、“計算材料學”課程特點與教學改革

“計算材料學”涵蓋較多的理論基礎,涉及凝聚態物理、理論化學、數值分析、計算機編程等多個學科方向,教學難度較大。以作者所在的高校貴州師范學院為例,該課程開設在材料科學與工程專業大三下學期,教學內容包括從頭算波函數理論、密度泛函理論、固體電子結構計算、贗勢平面波方法、經典分子動力學、第一性原理分子動力學及蒙特卡羅模擬等,共48學時,其中理論講授32學時,上機實踐16學時。這要求學生在前五個學期必須系統學習一些必備的基礎理論課程,包括高等數學、線性代數、C語言程序設計、量子力學、材料物理等。然而,在實際教學過程中發現,由于先修課程并未扎實掌握,學生在一個學期內很難完成這樣的高強度學習。該課程的理論方法講授部分涉及大量的公式推導,學生往往會因為一時跟不上進度而失去興趣。上機實踐環節又要求學生掌握較多的專業軟件。例如,材料建模過程依賴商業軟件如GaussView、Materials Studio等,這類軟件往往安裝于Windows系統,而大部分材料計算軟件如SIESTA、Quantum Espresso、VASP等卻在Linux環境下運行。在這種情況下,學生需要同時熟悉不同的操作系統,并需要頻繁完成不同系統之間的數據傳遞。熟練掌握這些操作本身就需要一定的學習時間,學生短時間內極容易在計算環境搭建或命令行操作上遇到困難而陷入迷茫。

針對這種情況,筆者探索一種實踐主導的教學模式,不再花費大量時間集中講授理論方法,而是以一系列實驗項目為切入點,通過開展計算機模擬和集體討論來推進理論課學習。舉例來說,通過“H2分子勢能曲線的第一性原理計算”了解以Hartree-Fock理論為基礎的從頭算波函數方法的精度和計算量,熟悉分子體系計算所常用的原子軌道線性組合(LCAO)框架;通過“銳鈦礦TiO2(101)表面電子結構計算”學習固體能帶理論,掌握平面波(PW)展開和倒空間積分等重要概念,了解第一性原理贗勢;通過“N2分子在Cu(111)表面的吸附解離”認識第一性原理分子動力學對化學過程模擬的重要性;通過“二維磁性材料相變的蒙特卡羅模擬”熟悉蒙特卡羅方法的基本原理。

這些實驗項目全部通過Python腳本直接在遠程Linux工作站上完成,容易引起學生的學習興趣。Python運行環境和必備的計算模塊已經事先在Linux工作站上部署好,學生在實驗過程中可以專注于材料計算本身,而不必分心去解決技術困難。學生在動手編程調用計算模塊的過程中,能夠對計算參數的選擇和收斂性測試有更細致的了解。通過比較不同方法的計算精度能夠對理論方法所涉及的近似有更深刻的認識,這有助于激發學生的求知欲。這種化被動為主動的實踐教學方式,將會提升學生的整體學習效率。

二、Python在材料模擬中的優勢

Python作為一種簡潔卻強大、實用的腳本語言,特別適合于化學、物理和材料類專業的科研教學工作[5]。此處選用Python作為編程語言主要是基于它的以下幾點明顯優勢:(1)語法簡單,前期學過C語言的學生可以快速完成簡單Python腳本的編寫,學習成本很低。(2)完全免費,不用擔心版權問題。(3)科學計算庫比較豐富,如NumPy、SciPy、pandas、scikit-learn等,利于開展常規的數值分析工作,如插值與擬合、數值積分、微分方程求解、矩陣運算、數據挖掘與機器學習等。另外,采用matplotlib庫可以直接實現計算結果的可視化,從圖中分析結果的變化趨勢比直接看數據直觀得多。(4)Python是“膠水語言”,可將材料建模、電子/分子結構計算、材料性質提取與數據分析整合到一個腳本,一次運行便可獲得結果,大大降低了材料模擬復雜度。例如,調用原子模擬環境軟件包ASE(Atomic Simulation Environment),可以在統一框架下輕松實現原子尺度的材料模擬,包括結構優化、分子動力學模擬、研究化學過程勢壘的NEB(Nudged Elastic Band)計算等。這類計算模塊的開發為實現高通量材料模擬奠定了良好的基礎。(5)Python有非常強大的軟件包管理工具pip,僅用一個命令即可完成計算模塊的在線安裝或升級,自動解決各種計算庫的依賴問題。

值得一提的是,盡管Python的計算速度與編譯型語言C/C++和FORTRAN相比差距明顯,這個問題很大程度上可以通過C語言擴展來解決:將速度較慢的模塊用C語言實現,然后封裝成庫供Python調用。這種Python與C語言的有機結合既保證了計算速度,又保留了腳本語言的靈活性,有助于開展復雜的材料模擬。另外,基于Python面向對象的語言特性,更容易設計出可維護性強的計算程序。

三、具體教學案例

本部分以“H2分子勢能曲線的密度泛函理論計算”為具體教學案例,展示這種教學方式的優勢與可行性。根據實驗目的,需要得到H2分子的結合能隨H-H鍵長的變化關系。為了計算結合能Eb,必須先求出孤立H原子與H2分子的電子能量。此時,Eb=E(H2)-2E(H),其中原子能量E(H)與分子能量E(H2)通過密度泛函理論(DFT)計算獲取。在Python腳本中,計算Eb的過程可以通過定義一個函數來方便地實現。此項目所用的Python代碼如圖1所示。該腳本僅僅利用30行代碼就實現了H原子與H2分子的超胞模型構建、0.2~3.5A(步長0.05A)鍵長范圍的DFT計算(采用三種不同泛函:LDA, PBE和PBE0),以及勢能曲線作圖。計算結果表明,無論(半)局域泛函還是雜化泛函,均無法正確描述H2分子的解離行為(圖2)。當鍵長大于2.25A時,三種泛函所得勢能曲線均越過零線(Eb=0水平線),意味著原子之間存在排斥作用。從物理上講,當兩個H原子相距足夠遠時,H-H之間化學鍵被打斷,原子之間不再有相互作用,因此勢能曲線應該趨近于零線。

通過這個項目,可以引導學生思考以下兩個問題:(1)擬合勢能曲線,計算H2分子的平衡鍵長re及解離能De,與實驗結果(re=0.74A,De=4.52 eV)進行比較,討論不同泛函的計算精度;(2)造成勢能曲線尾部越過零線的原因是什么,如何改進?第二個問題實質上是理論化學領域著名的靜態電子關聯問題,根源在于DFT框架下多電子波函數的單Slater行列式表達。在實際計算中,針對這類問題往往需要采用高精度波函數方法,如多參考態組態相互作用(MRCI)方法[6]。

學生通過這個實驗項目能學到什么東西呢?首先,在技術層面,學生通過練習可以學會如何調用ASE模塊搭建分子模型、控制特定的結構參數,如原子間距,學習如何調用GPAW程序進行DFT計算,并利用Python提取計算結果完成結合能的計算,以及如何調用matplotlib庫進行作圖。其次,通過分析計算結果,了解DFT目前在處理靜態相關問題上的局限,由此認識到在復雜材料計算中也可能存在這樣的誤差。另外,還可以借此理解波函數方法的優勢,即通過增大多電子波函數基組,提高對電子相關的描述精度。學有余力的學生甚至可以通過查閱文獻,思考如何在DFT框架下解決這個問題。一個常用的辦法是引入對稱性破缺波函數:控制兩個H原子的自旋取向,一個向上,另一個向下,這實際上是一種單重態與三重態的混合態。然后采用自旋極化的DFT計算將能夠得到趨近零線的勢能曲線。

四、結論與展望

本文以H2分子勢能曲線的DFT計算為例探討了Python腳本語言在“計算材料學”實踐教學中的應用。由于材料模擬的復雜性與前沿交叉特點,傳統的理論講授為主、上機實踐為輔的教學模式不再適用于該課程的教學。本研究提出一種實踐教學方案,將整個課程分解為一系列實驗項目,引導學生在Linux工作站上編寫Python腳本來完成實驗。Python的“膠水語言”特點,有助于整合材料建模、計算與數據可視化,在材料模擬領域優勢巨大?;赑ython的編程實踐有助于激發學生進一步的探索熱情,為系統學習相關理論方法打下良好的基礎。這種教學方式同樣也適用于“計算化學”“計算生物學”等需要具備一定編程經驗的課程。

參考文獻

[1]高慧玲,李蕓玲,劉露,等.《計算機在材料科學中的應用》課程教學探索[J].廣東化工,2021,48(6):197-198.

[2]江建軍,繆靈,梁培,等.計算材料學:設計實踐方法[M].北京:高等教育出版社,2010:1-44.

[3]張躍,谷景華,尚家香,等.計算材料學基礎[M].北京:北京航空航天大學出版社,2007:160-190.

[4]戴振翔,鄭贛鴻,馬永青.《材料結構設計與計算》課程的教學改革[J].教育教學論壇,2018(29):130-131.

[5]王浩,劉紅瑜,韋淼今.Python在分析化學實驗設計中的應用[J].大學化學,2020,35(9):198-204.

[6]楊傳路,黃鈺珺,張鑫,等.MRCI方法研究H2分子基態勢能曲線和解析勢能函數[J].魯東大學學報(自然科學版),2004,20(1):10.

Application of Python in Computational Materials Science Teaching

ZHANG Ya-Chaoa, ZHENG Shanb

(a. Guizhou Provincial Key Laboratory of Computational Nano-Material Science; b. School of Chemistry and Materials Science, Guizhou Education University, Guiyang,Guizhou 550018, China)

Abstract: This paper explores possible application of Python scripting in computational materials science teaching, using density functional calculations of potential curve for H2 as a practical case. Due to strong practice orientation of this course, traditional training process is largely devoted to cover both theoretical methods and the usage of various computational packages, making it difficult to understand. Here, we propose a Python based experiment scheme, to encourage students to learn about theoretical methods through experience and by asking proper questions. Python is simple and easy to pick up. As a glue language, it is easily adapted for an seamless integration of materials model setup, computation, as well as data analysis and visualization. Thus, it will considerably simplify the complicated teaching activities and would also improve student interests.

Key words: density functional calculations; Python; practice teaching; materials simulations

猜你喜歡
實踐教學
茶學專業校企合作實踐教學探索
考試周刊(2016年79期)2016-10-13 23:35:16
《電氣工程畢業設計》 課程的教學設計
考試周刊(2016年79期)2016-10-13 23:26:02
研究型學習在傳熱學實踐教學中的應用
大學教育(2016年9期)2016-10-09 08:34:10
思想政治理論課實踐教學研究述評
大學教育(2016年9期)2016-10-09 08:17:37
高職院校商務禮儀課程教學改革探索芻議
大學教育(2016年9期)2016-10-09 08:12:01
《數據庫高級應用》教學創新方法研究
科技視界(2016年20期)2016-09-29 11:25:15
主站蜘蛛池模板: 久久精品人妻中文视频| 免费av一区二区三区在线| 亚洲综合经典在线一区二区| 美女免费黄网站| 婷婷五月在线视频| 久草中文网| 亚欧成人无码AV在线播放| 亚瑟天堂久久一区二区影院| 91在线丝袜| 8090午夜无码专区| 精品撒尿视频一区二区三区| 日本人妻丰满熟妇区| 亚洲一区黄色| 国产精品亚洲综合久久小说| 午夜无码一区二区三区| 国产嫩草在线观看| 色悠久久久久久久综合网伊人| 久久久久88色偷偷| 狠狠色综合久久狠狠色综合| 国产男女XX00免费观看| 刘亦菲一区二区在线观看| 噜噜噜久久| 国产一级毛片高清完整视频版| 国产自无码视频在线观看| a色毛片免费视频| 国产91丝袜在线播放动漫 | 欧美成人第一页| 亚洲综合专区| 国产人人射| 人人爽人人爽人人片| 亚洲av无码久久无遮挡| 亚洲国产91人成在线| 国产成人超碰无码| 精品国产一二三区| 五月婷婷综合色| 国产亚洲欧美日韩在线观看一区二区| 喷潮白浆直流在线播放| 在线播放国产一区| 91九色国产在线| 国产精品99久久久久久董美香| 久久天天躁狠狠躁夜夜躁| 日本黄色不卡视频| 久久99热这里只有精品免费看| 国产拍揄自揄精品视频网站| 92精品国产自产在线观看| 成人午夜福利视频| 福利在线不卡| 国产亚洲视频播放9000| 伊人天堂网| 色天堂无毒不卡| 国产一区二区三区在线观看免费| 91在线无码精品秘九色APP | 国产成人久久综合777777麻豆| 色婷婷亚洲综合五月| 国产小视频a在线观看| 青青草国产免费国产| 精品一区二区三区波多野结衣 | 40岁成熟女人牲交片免费| 亚洲精品国产乱码不卡| 一级一级一片免费| 久久天天躁夜夜躁狠狠| 精品久久香蕉国产线看观看gif | 精品国产成人三级在线观看| 亚洲乱码在线视频| 无码日韩视频| 久热精品免费| 国产精品手机视频一区二区| av手机版在线播放| 色哟哟国产精品| 欧美中文字幕一区二区三区| 亚洲人成电影在线播放| 无码日韩人妻精品久久蜜桃| 欧美黄色a| 一级全黄毛片| 无码免费的亚洲视频| 色欲综合久久中文字幕网| 在线色国产| 亚洲日本www| 1024你懂的国产精品| www.日韩三级| 再看日本中文字幕在线观看| 精品撒尿视频一区二区三区|