CUBE
cube 文件包含了标题、平移矢量、原子坐标、格点数据这四个段落。记录的是标量数据,每个格点位置上只有一个数值。但还有一种特殊的 cube 文件,它多了分子轨道编号段落,允许在格点数据段落同时记录多条分子轨道波函数数值。 下面通过一个水分子的 cube 文件的开头部分来介绍具体格式。注意所有坐标、平移矢量单位都是 bohr 而不是埃。
Generated by Multiwfn //标题行,内容任意
Total 531440 grids //标题行,内容任意
3 -6.000000 -7.424912 -6.867160 //原子数(如果是记录分子轨道的cube文件则原子数为负值);格点数据原点的X/Y/Z坐标
73 0.165751 0.000000 0.000000 //第一个平移矢量方向上有73个数据点;平移矢量x,y,z分量
91 0.000000 0.165751 0.000000 //第二个平移矢量方向上有91个数据点;同上
80 0.000000 0.000000 0.165751 //第三个平移矢量方向上有80个数据点;同上
8 8.000000 0.000000 0.000000 0.216790 //第一个原子的原子序号(氧);原子核的有效电荷数(等于实际计算时原子的电子数);X/Y/Z坐标。注意在使用赝势的时候由于一部分内核电子和核电荷的效果被赝势所代替,因此原子核的有效电荷数将小于原子序数
1 1.000000 0.000000 1.424912 -0.867160 //第二个原子的原子序号(氢);同上
1 1.000000 0.000000 -1.424912 -0.867160 //第三个原子的原子序号(氢);同上
//若是分子轨道cube文件(原子数为负值),这里会有分子轨道信息。第一个数字为此cube文件包含的分子轨道的数目,接下来是每个分子轨道的序号。比如此处有一行3 1 5 7就代表cube文件含3个分子轨道,分别是1、5、7号MO。分子轨道信息内容中每10个数字换一行
8.97452E-19 1.68963E-18 3.12519E-18 5.67888E-18 1.01380E-17 1.77805E-17 //每个格点位置上的数值,每六个换一行,1PE13.5格式,后同。
3.06365E-17 5.18606E-17 8.62458E-17 1.40910E-16 2.26177E-16 3.56662E-16
5.52546E-16 8.40976E-16 1.25748E-15 1.84723E-15 2.66590E-15 3.77982E-15
5.26502E-15 7.20496E-15 9.68649E-15 1.27939E-14 1.66014E-14 2.11635E-14
2.65054E-14 3.26125E-14 3.94217E-14 4.68156E-14 5.46196E-14 6.26051E-14
...(直到格点数据写完为止)假设我们将三个平移矢量的 x,y,z 分量分别写为 v1x, v1y, v1z、v2x, v2y, v2z、v3x, v3y, v3z,把三个平移矢量方向的数据点编号用 i,j,k 表示,把坐标原点写为 orgx,orgy,orgz,那么 (i,j,k)点的 x 坐标=orgx+(i-1)*v1x+(j-1)*v2x+(k-1)*v3x (i,j,k)点的 y 坐标=orgy+(i-1)*v1y+(j-1)*v2y+(k-1)*v3y (i,j,k)点的 z 坐标=orgz+(i-1)*v1z+(j-1)*v2z+(k-1)*v3z
通常使用的 cube 文件是立方型的,也就是三个平移矢量分别平行于 x,y,z 轴,正如上面这个 cube 文件的例子。那么就可以简化写成
(i,j,k)点的 x 坐标=orgx+(i-1)*v1x (i,j,k)点的 y 坐标=orgy+(j-1)*v2y (i,j,k)点的 z 坐标=orgz+(k-1)*v3z
其中 i 的范围是从 1~73,j 是 1~91,k 是 1~80。因此,(1,1,1)的位置就是(orgx,orgy,orgz) 格点数据部分记录顺序是先循环 k,再循环 j,之后循环 i。每次将 k 循环完一遍后,即便那行未满 6 个数据,也会换一行。
对于记录多条分子轨道的 cube 文件,其循环顺序和上面一致,但是每个数据值被扩展为 nmo 个,nmo 是记录的分子轨道数目。比如记录了三条分子轨道,则第一次循环 k 的段落可示意为 MO1(1,1,1) MO2(1,1,1) MO3(1,1,1) MO1(1,1,2) MO2(1,1,2) MO3(1,1,2) MO1(1,1,3) MO2(1,1,3) MO3(1,1,3) MO1(1,1,4) MO2(1,1,4) MO3(1,1,4) ...