dezembro 2003
Introdução O arquivo de cubo descreve dados volumétricos bem como as posições atômicas, ela se origina a partir do pacote de software Gaussian. O arquivo consiste de um cabeçalho que inclui o átomo de informação e o tamanho, bem como a orientação dos dados volumétricos. Isto é seguido pelos dados volumétricos, um elemento escalar por voxel. Todos os aspectos do arquivo são texto (legível), originalmente os valores numéricos foram 5 ampla para inteiros que começaram cada linha de cabeçalho (após o primeiro) e os valores de ponto flutuante foram formatados 12,6, ou seja, 12 caracteres de largura, com 6 casas decimais. Cabeçalho As duas primeiras linhas do cabeçalho são comentários, eles são geralmente ignorados pelos pacotes de análise ou usado como duas etiquetas padrão. A terceira linha tem o número de átomos incluídos no ficheiro seguido pela posição da origem dos dados volumétricos. As próximas três linhas dar o número de voxeis ao longo de cada eixo (x, y, z), seguido pelo vector eixo. Nota isto significa que o volume não precisa ser alinhado com o eixo de coordenadas, na verdade, isso também significa que ele pode ser cortado, embora a maioria dos pacotes volumétricos não vai apoiar isso. O comprimento de cada vector é o comprimento do lado do voxel, permitindo assim volumes não cúbicos. Se o sinal do número de voxeis em uma dimensão for positivo, então as unidades são Bohr, se for negativo, então Angstroms. A última seção no cabeçalho é uma linha para cada átomo, composto por 5 números, o primeiro é o número de átomos, em segundo lugar (?), Os três últimos são os x, y, z coordenadas do centro do átomo. Dados volumétricos Os dados volumétrica é, um número de ponto flutuante simples para cada elemento volumétrico. O formato Gaussian originais dispostos os valores no formato mostrado abaixo no exemplo, a maioria dos programas de análise pode ler qualquer espaço em branco formato separado. Tradicionalmente, a grade é providenciado com o eixo x como a espira externa e o eixo Z como o circuito interno, por exemplo, como escrito for (ix=0;ix<NX;ix++) { for (iy=0;iy<NY;iy++) { for (iz=0;iz<NZ;iz++) { printf("%g ",data[ix][iy][iz]); if (iz % 6 == 5) printf("\n"); } printf("\n"); } } Exemplo No exemplo a seguir os dados volumétrico é de 40 por 40 por 40 grade, cada voxel é 0.283459 unidades de largura e o volume está alinhado com o eixo de coordenadas. Há três átomos. CPMD CUBE FILE. OUTER LOOP: X, MIDDLE LOOP: Y, INNER LOOP: Z 3 0.000000 0.000000 0.000000 40 0.283459 0.000000 0.000000 40 0.000000 0.283459 0.000000 40 0.000000 0.000000 0.283459 8 0.000000 5.570575 5.669178 5.593517 1 0.000000 5.562867 5.669178 7.428055 1 0.000000 7.340606 5.669178 5.111259 -0.25568E-04 0.59213E-05 0.81068E-05 0.10868E-04 0.11313E-04 0.35999E-05 : : : : : : : : : : : : : : : : : : In this case there will be 40 x 40 x 40 floating point values : : : : : : : : : : : : : : : : : : |