化學檔案格式

本文討論了一些常見的分子檔案格式,以及它們之間的使用和轉換。

區分這些格式 編輯

化學資訊通常以檔案(stream)的形式提供,人們已經建立了許多格式,分別具有不同詳細程度的文件。格式通過以下三種方式表示(參見 "Chemical MIME" 部分)

  • 副檔名(通常為 3 個字母)。這不是十分可靠,因為包括非化學檔案在內的許多檔案類型共用這些常見的字尾,例如「.mol」和「.dat」。
  • 檔案中包含格式資訊的自描述檔案。例如CIF和CML。
  • 可以傳輸化學資訊的伺服器傳輸的Chemical/MIME流。

化學標記式語言(CML) 編輯

化學標記式語言(CML) 是一種用於表示分子和其他化學數據的開源格式。其開源專案包含XML Schema、用於解析和使用CML數據的一整套原始碼以及一個活躍的社區。許多工具都相容CML數據檔案,包括JChemPaint、Jmol、XDrawChem和MarvinView。

蛋白質資料庫(PDB) 編輯

PDB格式通常用於蛋白質,但也可用於其他類型的分子。它最初的設計為固定列寬格式,因此具有最大原子數、殘基數和鏈數的限制;這導致較大的結構(例如核糖體)需要被拆分為多個檔案。但是也有許多工具可以讀取超出這些限制的檔案。例如,E.coli 70S核糖體 在 2009 年被分割為 4 個PDB檔案: 3I1M頁面存檔備份,存於互聯網檔案館)、3I1N頁面存檔備份,存於互聯網檔案館)、3I1O和 3I1P,在2014 年又被合併為一個檔案4V6C頁面存檔備份,存於互聯網檔案館) 。

一些PDB檔案擁有描述原子連接性和位置的可選功能。因為這些檔案有時用於描述大分子組裝體或在顯式溶劑中表示的分子,所以它們的體積會非常大且被壓縮。一些工具,例如Jmol和KiNG, [1]可以讀取 .gz格式的PDB檔案。 wwPDB制定並維護PDB及其XML替代方案PDBML的規範。 2007 年 8 月,PDB格式規範(版本 3.0)發生了相當大的變化,並且修復了現有資料庫中的許多檔案問題。 [2] PDB檔案的典型副檔名是.pdb ,一些較舊的檔案也可能使用.ent.brk 。一些分子建模工具根據自己的需要調整基本格式為非標準的PDB樣式檔案。

GROMACS 編輯

GROMACS系列檔案格式是為與分子模擬軟件套件GROMACS一起使用而建立的。它與PDB格式非常相似,但允許額外的數值精度,並可選擇保留有關粒子速度以及模擬軌跡中給定點的位置的資訊。這是因為它被設計用於儲存分子動力學模擬的輸出。GROMACS不允許儲存連接資訊,這些資訊是從單獨的分子和系統拓撲檔案中獲得的。 GROMACS檔案的典型副檔名是.gro

CHARMM 編輯

CHARMM分子動力學軟件套件[3]可以讀寫多種標準的化學和生化檔案格式;但CARD(coordinate, 坐標)和PSF(Protein Structure File, 蛋白質結構檔案)幾乎是CHARMM獨有的。 CARD格式是固定列寬的,類似於PDB格式,專門用於儲存原子坐標。 PSF檔案包含原子連接資訊(即描述原子之間的鍵),這在在開始分子動力學模擬之前是必需的。使用的典型副檔名分別是.crd.psf

GSD(General Simulation Data) 編輯

通用模擬數據(General Simulation Data, GSD)格式用於高效地讀取和寫入主要來自(但不限於)HOOMD-blue的粒子模擬數據。該軟件套件包含的一個python模組可以以易於使用的語法讀取和寫入HOOMD模式的gsd檔案。 [1]

Ghemical 編輯

Ghemical軟件可以使用OpenBabel匯入和匯出多種檔案格式,預設使用GPR格式。該檔案由幾個部分組成,由 !Header !Info !Atoms !Bonds !Coord !PartialCharges !End 分隔。

這種格式的推薦MIME類型為application/x-ghemical

SYBYL線性字串(SYBYL Line Notation,SLN) 編輯

SYBYL線性字串(SYBYL Line Notation, SLN)是一種用字串表示化學結構的方法。因其基於SMILES,所以包含用於特定相對立體化學的完整表示方式。 SLN具有豐富的查詢語法,允許查詢Markush結構,還支援ChemDraw組合庫的規範。

例:

SLN字串
C[1]H:CH:CH:CH:CH:CH:@1
丙氨酸 NH2C[s=n]H(CH3)C(=O)OH
要求顯示R側鏈 R1[hac>1]C[1]:C:C:C:C:C:@1
酰胺/磺胺 NHC=M1{M1:O,S}

簡化分子線性輸入規範(SMILES) 編輯

Simplified Molecular Input Line Entry Specification(簡化分子線性輸入規範,SMILES)[4]用一串字元描述分子。 SMILES字串包括連接情況,但不包括 2D和 3D坐標。

氫原子會被略去,原子用在方括號內的化學元素符號表示,例如[Au]表示「」。有機物中的CNOPSBrClI等原子可以省略方括號,其他元素必須包括在方括號之內。離子用方括號括起,用元素符號和電荷表示,"+"表示正電荷、"-"表示負電荷,電荷數跟在正負號之後。如果該原子與氫原子相連,氫原子寫在元素符號後面。

符號「=」表示雙鍵,「#」表示三鍵。 () 表示分支。如果結構中有環,則要打開。斷開處的兩個原子用同一個數字標記,表示原子間有鍵相連。

芳環中的COSN原子分別用用小寫字母c,o,s,n表示。如表示為c1ccccc1

例:

名稱 化學式 SMILES字串
甲烷 CH4 C
乙醇 C2H6O CCO
C6H6 C1=CC=CC=C1 or c1ccccc1
乙烯 C2H4 C=C

XYZ 編輯

XYZ是一種簡單的格式,通常在第一行給出原子數,在第二行給出註釋,然後是幾行原子符號(或原子序數)和坐標參數。

MDL編號 編輯

MDL編號包含每個反應和變化的唯一標識號。格式為RXXXnnnnnnnn。 R表示一個反應(reaction),XXX表示哪個資料庫包含反應記錄。數字部分nnnnnnnn是一個 8 位數字。

其他常見格式 編輯

最广泛使用的工业标准之一是化学表格文件({{tsl|en|Chemical_table_file|Chemical_table_file|Chemical table file}})格式,例如結構數據格式(Structure Data Format,SDF) 檔案。這些文字檔案遵循着嚴格格式,用於表示多個化學結構和相關數據。該格式最初由Molecular Design Limited (MDL) 開發和發佈。 MOL是MDL的另一種檔案格式。它記錄在CTfile格式的第 4 章中。 [5]

PubChem還有XML和ASN1 格式,是PubChem線上資料庫的匯出選項。二者均基於文字(ASN1 通常是二進制格式)。

下表列出了大量其他格式

格式轉換 編輯

OpenBabel和JOELib是免費提供的開源工具,專門被設計用來將檔案在各種格式之間轉換。他們的化學專家系統(chemical expert systems)支援大型的檔案轉換。

OpenBabel的基本命令是

babel -i input_format input_file -o output_format output_file

例如,要將SDF中的 腎上腺素.sdf 檔案轉換為CML格式:

babel -i sdf epinephrine.sdf -o cml epinephrine.cml

生成的檔案是 腎上腺素.cml

IOData頁面存檔備份,存於互聯網檔案館)是一個免費的開源Python庫,用於解析、儲存和轉換量子化學、分子動力學和平面波密度泛函理論軟件程式常用的各種檔案格式。它還能為各種軟件套件生成匯入檔案的靈活框架。有關支援格式的完整列表,請訪問https://iodata.readthedocs.io/en/latest/formats.html

許多用於檢視和編輯分子結構的工具能夠讀取多種格式的檔案並以其他格式輸出。例如:JChemPaint(基於Chemistry Development Kit)、XDrawChem(基於OpenBabel)、Chime、Jmol、Mol2mol [6] 和Discovery Studio。

化學MIME專案 編輯

「化學MIME」是一種將化學資訊流附加到MIME類型的方法。

該專案於 1994 年 1 月開始,並於 1994 年 5 月在CERN舉行的第一屆WWW國際會議的化學研討會上首次宣佈。……草案的第一個版本在 1994 年 5 月至 10 月期間發佈,第二個修訂版在 1995 年 4 月至 9 月期間發佈。在 1996 年 8 月的IUPAC會議上提交給CPEP(印刷和電子出版物委員會)的論文尚待商榷。 [7]

1998年該檔案在JCIM上正式發表。 [8]

檔案拓展名 MIME類型 全名 備註
alc chemical/x-alchemy Alchemy格式
csf chemical/x-cache-csf CAChe MolStruct CSF
cbin, cascii, ctab chemical/x-cactvs-binary CACTVS格式
cdx chemical/x-cdx ChemDraw eXchange檔案
cer chemical/x-cerius MSI Cerius II格式
c3d chemical/x-chem3d Chem3D格式
chm chemical/x-chemdraw ChemDraw檔案
cif chemical/x-cif 晶體學資訊文件,晶體學資訊框架 由國際晶體學聯合會頒佈
cmdf chemical/x-cmdf CrystalMaker數據格式
cml chemical/x-cml 化學標記式語言 基於XML化學標記式語言
cpa chemical/x-compass Compass program of the Takahashi
bsd chemical/x-crossfire Crossfire檔案
csm, csml chemical/x-csml 化學特色標記式語言Chemical Style Markup Language
ctx chemical/x-ctx Gasteiger group CTX格式
cxf, cef chemical/x-cxf Chemical eXchange格式
emb, embl chemical/x-embl-dl-nucleotide EMBL Nucleotide格式
spc chemical/x-galactic-spc 光譜學和色譜學的SPC格式
inp, gam, gamin chemical/x-gamess-input GAMESS輸入格式
fch, fchk chemical/x-gaussian-checkpoint Gaussian檢查點格式
cub chemical/x-gaussian-cube Gaussian Cube (Wavefunction) 格式
gau, gjc, gjf, com chemical/x-gaussian-input Gaussian輸入格式
gcg chemical/x-gcg8-sequence Protein Sequence格式
gen chemical/x-genbank ToGenBank格式
istr,ist chemical/x-isostar 分子間反應的IsoStar Library
jdx, dx chemical/x-jcamp-dx JCAMP光譜學數據交換格式
kin chemical/x-kinemage Kinetic (蛋白質結構) 圖像; Kinemage
mcm chemical/x-macmolecule MacMolecule格式
mmd, mmod chemical/x-macromodel-input MacroModel分子機理
mol chemical/x-mdl-molfile MDL Mol檔案
smiles, smi chemical/x-daylight-smiles 簡化分子線性輸入規範 對分子的線性字元描述
sdf chemical/x-mdl-sdfile 結構數據檔案
el chemical/x-sketchel SketchEl分子檔案
ds chemical/x-datasheet SketchEl XML數據表
inchi chemical/x-inchi IUPAC國際化學標識
jsd, jsdraw chemical/x-jsdraw JSDraw原生檔案格式
helm, ihelm chemical/x-helm Pistoia Alliance HELM字串 對生物化學分子的線性字元描述
xhelm chemical/x-xhelm Pistoia Alliance XHELM XML檔案 基於XML大分子分級編輯語言 ,包含單體的結構

化學數據來源 編輯

以下是部分免費提供的分子數據來源。互聯網上的資源比此處列出的要多得多。下面的參考資料中給出了這些來源的連結。

  1. 美國國家衛生研究院PubChem資料庫是一個巨大的化學數據來源。所有數據都是二維的。數據包括SDF、SMILES、PubChem XML和PubChem ASN1 格式。
  2. 全球蛋白質資料庫(wwPDB頁面存檔備份,存於互聯網檔案館))[9]是蛋白質和核酸分子坐標數據的極好來源。數據是三維的,以蛋白質資料庫(PDB)格式提供。
  3. eMolecules是一個用於分子數據的商業資料庫。數據包括每個化合物的二維結構圖和微笑字串。 eMolecules支援基於部分分子結構的快速子結構搜尋。
  4. ChemExper是用於分子數據的商業資料庫。搜尋結果包括許多化合物的二維結構圖和摩爾檔案。
  5. 紐約大學 3-D分子結構圖書館頁面存檔備份,存於互聯網檔案館)。
  6. 美國環境保護署的分散式結構可搜尋毒性(DSSTox)資料庫網絡是EPA計算毒理學計劃的一個專案。該資料庫提供SDF分子檔案,重點關注致癌物質和其他有毒物質。

另請參見 編輯

參考文獻 編輯

  1. ^ Chen, V.B.; et al. KING (Kinemage, Next Generation): A versatile interactive molecular and scientific visualization program. Protein Science. 2009, 18 (11): 2403–2409. PMC 2788294 . PMID 19768809. doi:10.1002/pro.250. 
  2. ^ Henrick, K.; et al. Remediation of the protein data bank archive. Nucleic Acids Research. 2008, 36 (Database issue): D426–D433. PMC 2238854 . PMID 18073189. doi:10.1093/nar/gkm937. 
  3. ^ Brooks, B.M.; et al. CHARMM: A program for macromolecular energy, minimization, and dynamics calculations. J. Comput. Chem. 1983, 4 (2): 187–217. doi:10.1002/jcc.540040211. 
  4. ^ Weininger, David. SMILES, a Chemical Language and Information System: 1: Introduction to Methodology and Encoding Rules. Journal of Chemical Information and Modeling. 1988, 28 (1): 31–36. doi:10.1021/ci00057a005. 
  5. ^ MDL Information System 2005
  6. ^ Mol2mol homepage. [2022-03-24]. (原始內容存檔於2021-02-28). 
  7. ^ The Chemical MIME Home Page頁面存檔備份,存於互聯網檔案館) (accessed 2013-January-24)
  8. ^ Rzepa, H. S.; Murray-Rust, P.; Whitaker, B. J. The Application of Chemical Multipurpose Internet Mail Extensions (Chemical MIME) Internet Standards to Electronic Mail and World Wide Web Information Exchange. Journal of Chemical Information and Modeling. 1998, 38 (6): 976. doi:10.1021/ci9803233. 
  9. ^ Berman, H.M.; et al. Announcing the worldwide Protein Data Bank. Nature Structural Biology. 2003, 10 (12): 980. PMID 14634627. doi:10.1038/nsb1203-980.