Cartesian Chemical Coordinate File (.xyz)
計算化學的實質標準 標準Cartesian Chemical Coordinate File (XYZ) 是計算化學與分子建模的標準,透過原子元素與 3D 空間座標來描述分子幾何形狀和化學反應模擬。
檢查與中繼資料
作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 XYZ 檔案:
位元組層級標頭簽章(檔案簽章)
作業系統與檔案分析工具透過檢查開頭的二進位位元組序列來識別 XYZ 檔案:
十六進位簽章(偏移量 0):
31 2D 39 0AASCII 表示法: N\n
標準化: 計算化學的實質標準
技術規格
| 容器架構 | 第 1 行:原子數 N;第 2 行:註解/標題;後續 N 行:元素符號後接以埃(Å)為單位的 X、Y、Z 座標 |
| 壓縮 | 未壓縮純文字 |
| 位元組序 | UTF-8 / ASCII 文字串流 |
| 色彩空間 | CPK 著色慣例(碳=黑/灰、氫=白、氧=紅、氮=藍) |
| 色版與結構 | 原子位置、元素類型以及選用的分子動力學動畫影格 |
| 最大尺寸 | 無限制的原子座標空間(以埃為單位:10^-10 公尺) |
| 透明度 | 無 |
| 串流與漸進式 | 多影格軌跡串流:用於分子動力學影片的多個連續影格 |
技術比較矩陣:XYZ 對比競爭格式
| 技術屬性 | XYZ (目前) | PLY | OBJ | STL |
|---|---|---|---|---|
| 領域 | 計算化學與物理 | 科學雷射掃描 / 點雲 | 一般 3D 電腦圖形 | 3D 列印與製造 |
| 資料表示法 | 化學元素與埃座標 | 頂點、面、自訂屬性 | 頂點、法向量、紋理 UV | 三角形表面小平面 |
| 化學連通性 | 由鍵結半徑動態計算 | 非化學 | 非化學 | 非化學 |
| 軌跡動畫 | 原生串聯多影格支援 | 無 | 無 | 無 |
常見損壞模式與十六進位修復指南
分子檢視器錯誤:「Premature end of file while reading atoms」。
根本原因: 第 1 行的原子計數整數與檔案中實際的座標行數不符。
修復: 使用 File2File.app 化學轉換器修正第 1 行的原子計數整數。
安全性分析與解析器攻擊向量
XYZ 解析器會讀取 ASCII 元素數量與字串標記(token),必須防範堆疊緩衝區溢位。
已知攻擊向量
- 將原子行讀取到固定長度字元陣列時發生堆疊緩衝區溢位。
- 在 atom_count * sizeof(Atom) 記憶體配置期間發生整數溢位。
- 透過虛構的十億原子宣告進行阻斷服務攻擊。
防禦最佳實務: 在配置分子座標緩衝區之前,根據實體檔案行數驗證原子計數。
歷史起源與里程碑
2000XYZ 座標檔案用於分子建模與量子化學套件;支援情況因套件而異。
1995針對分子動力學模擬標準化的多影格軌跡擴充功能。
1989建立於明尼蘇達超級電腦研究所(Minnesota Supercomputer Institute),用於 XMol 分子視覺化套件。
主要優勢與優點
- 極其簡單的架構:第 1 行是原子數,第 2 行是註解,其餘各行則是元素 X、Y、Z 座標。
- XYZ 座標檔案用於分子建模與量子化學套件;支援情況因套件而異。
- 支援多影格軌跡動畫:只需串聯數千個影格即可建立分子動力學影片。
技術限制與缺點
- 沒有原生化學鍵結資訊:分子視覺化工具必須根據原子間距離猜測化學鍵。
- 若沒有自訂註解行擴充功能,則缺少晶體學單位晶胞參數(晶格向量)。
- 沒有部分原子電荷或力場原子類型的標準支援。
有趣的技術冷知識
- XYZ 格式沒有單一的正式規格,且座標單位會因變體而異;請檢查檔案來源與軟體文件。常見的分子 XYZ 檔案使用埃(ångström)。
- 水(H2O)只需 5 行文字即可描述於 XYZ 檔案中。
- 蛋白質摺疊的分子動力學模擬經常會產生涵蓋數百萬個時間步數的多 GB XYZ 軌跡檔案。
常見技術問題
什麼是 XYZ 檔案?
XYZ 檔案是用於化學和物理學中的簡單純文字格式,用以記錄分子或晶體中原子的 3D 位置。
什麼軟體可以開啟 XYZ 檔案?
Avogadro、PyMOL、VMD、Jmol、Chemcraft 和 File2File.app 可以檢視與轉換 XYZ 分子模型。
我可以將 XYZ 分子轉換為可 3D 列印的 STL 檔案嗎?
可以。File2File.app 可以從 XYZ 座標產生分子球棒模型表示法,並將其匯出為可 3D 列印的 STL 或 GLB 模型。