江辰 陳明
摘要:Kekule.js是由作者自主編寫完成的一套基于Web技術的開源化學信息學工具包,其可視化方面的功能可將有機分子的立體模型嵌入網頁中。在有機化學課程的教學中,使用該工具包可制作一系列有關分子立體結構的演示,并利用鼠標或觸摸屏與分子進行交互,進而展示構型、構象等立體概念。此類頁面可直接在瀏覽器內顯示,無需安裝任何額外軟件,使用便捷,也易于與現有的在線課程管理系統結合,既適合課上教師的講解,也利于學生課下的復習。
關鍵詞:Kekule.js;分子可視化;有機化學;分子模型演示
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2018)44-0158-02
一、引言
在大學有機化學課程的初始階段,學習者需要迅速建立起分子空間結構的基本概念,此后的學習中,諸如手性、對映異構、構象分析乃至于反應位阻分析等知識均與分子的立體形象有關。在涉及此類知識的教學中,教師也經常采取各種輔助手段向學習者直觀演示分子的三維形象。目前最常見的做法是借助ChemOffice、VMD、RasMol、JMol等化學信息學軟件,使用鼠標在屏幕或投影上操作虛擬的分子三維模型。此種方式成本較低,遠距離較易觀察,適合課上演示,但需事先安裝相應軟件,學生在課下復習時則有頗多不便之處。隨著互聯網技術的發展,近年來也出現了一批基于Web技術的分子圖形學軟件,我們也自行開發了一套采用JavaScript編寫的開源化學信息學工具包Kekule.js。在教學中,我們利用此工具包展示分子模型,可直接將模型嵌入網頁中,在網絡瀏覽器或其他一些Web程序中顯示、操作,無需預裝軟件,也易于與網上課程管理系統結合。該工具包亦具備良好的跨平臺特性,PC或移動平臺中均可使用。
二、Kekule.js的使用
Kekule.js是一套功能強大的化學信息學工具包,支持多種分子數據格式的輸入輸出、化學結構的2D/3D可視化以及一系列化學信息學算法的實現。我們在開發過程中還利用Emscripten將數個原以C/C++編寫的工具庫編譯為JavaScript并作為附加模塊整合進Kekule.js以提供一些額外功能。如整合OpenBabel后可額外支持數十種化學數據格式的讀寫,并提供一定的分子力學計算能力。此外為方便使用,工具包還封裝了數個可直接嵌入在HTML中的控件用以顯示或編輯化學結構。日常教學中進行分子立體模型演示時,只需使用Kekule.js的很少一部分功能,一般可直接利用Viewer3D控件。首先需在HTML頁面中引入必要的JavaScript與CSS樣式表文件。
href="themes/default/kekule.css" />
而后只需一行代碼即可將Viewer3D控件綁定到普通的HTML元素上。
mol)" data-molecule-display-type="34">
在對映異構的教學段落,我們也特意編制了包含一對Viewer3D控件的演示頁面供學習者課后復習(圖1)。頁面中預置了一系列典型的手性/非手性分子的列表,當用戶自列表中載入分子時,兩個Viewer3D控件將分別顯示分子的實物與鏡像模型。學習者可分別旋轉兩個模型,通過觀察其是否可以重疊來驗證原分子是否具有手性。原先學生往往不易理解一些較復雜的含有手性軸或手性面的分子,引入此頁面后,關于這類內容的學習難度也有了明顯的降低。
教師能夠預先提供的三維分子數據總是有限的,很多時候,學習者也希望能夠查看其他一些分子的立體形象。為此,我們還特制了一個計算分子三維結構的Web程序。用戶可在分子編輯器控件中利用鼠標輸入平面結構,程序在后臺線程中調用OpenBabel附加模塊進行分子力學計算,待計算完畢,即將生成的三維結構顯示在Viewer3D中。由于整個過程均由JavaScript在用戶端瀏覽器中執行,計算時并不額外消耗服務器資源,也易于在各類環境下進行部署。
四、結語
在我們自身的有機化學教學中,基于web技術的Kekule.js工具包充分發揮了它在分子可視化方面的能力,能夠在無需安裝專門軟件的情況下跨平臺地對分子立體模型進行演示。無論在教師授課還是學生的課下預習、復習環節上均取得了不錯的效果。加之Kekule.js是一開源的化學信息學工具包,使用上幾乎無費用與版權問題,也便于進行二次開發以適應個性化的需求,因此在教學上完全可以作為目前常用的ChemOffice、VMD等軟件的替代,具有相當的應用潛力。
參考文獻:
[1]Dori YJ,Barak M.J.Educ.Technol.Soc.2001,4(1):61-74.
[2]唐律,麥裕華,李景寧.大學化學.2008,23(4):47-50.
[3]鄭榮珍,嚴思儀,劉亞男,杜芬芬,蔡開聰.化學教育.2016,37(12):67-70.
[4]Jiang C,Jin X,Dong Y,Chen M.J.Chem.Inf.Model.2016,56(6):1132-1138.
[5]Jiang C,Jin X.J.Chem.Inf.Model.2017,57(10):2407-2412.
Abstract:Kekule.js,developed by the authors,is an open source JavaScript toolkit for cheminformatics.The toolkit can render chemical structure models in Web pages without the help of any other plugins or software. In the teaching of organic chemistry,the toolkit is ideal to help to demonstrate the interactive 3D molecule models and to explain the concept of configuration and conformation of organic compounds.Since those demonstration pages can be viewed in Web browsers directly,they can be integrated with existing lesson management system and be easily used by both teachers and students.
Key words:Kekule.js;molecular graphics;organic chemistry;molecular model presentation