Gauss Küp Dosyalar

The source-page: http://paulbourke.net/dataformats/cube/

Tarafından yazıldı Paul Bourke

Giriş

Küp dosyası, Gauss yazılım paketinden kaynaklanan, hacimsel verilerin yanı sıra atomu pozisyonları tarif eder. Dosya hacimsel veri atomu bilgileri ve boyutu gibi yönünü içeren bir başlıktan meydana gelmektedir. Bu hacimsel veri, voksel elemanı başına bir skaler ile takip edilir. Dosyanın tüm yönleri metni (okunabilir insan), aslen sayısal değerler (ilk sonra) her başlık satırı başladı tamsayılar için 5 genişti ve kayan nokta değerleri 6 ondalık basamakla, yani 12 karakter genişliğinde 12.6 biçimlendirilmiş bulunmaktadır.

Başlık

Başlığın ilk iki satırı genellikle ayrıştırma paketleri tarafından ihmal veya iki varsayılan etiket olarak kullanılan, yorum bulunmaktadır.

Üçüncü hat hacimsel verinin köken konumuna ve ardından dosyasında bulunan atomların sayısına sahiptir.

Sonraki üç hat eksen vektörü ardından her bir eksen (x, y, z) boyunca voksellerin sayısını verir. Gerçekten de, aynı zamanda en volumetrik paketler bu destek olmaz, ancak bu makaslanmış anlamına gelir, bu hacim koordinat ekseni ile hizalanmış olması gerekmez anlamına gelir edin. Her bir vektör uzunluğu bu şekilde olmayan kübik hacimleri izin vokselin yan uzunluğudur. Bir boyutta voksellerin sayısının işareti pozitif ise, birimler Bohr negatif sonra angström, eğer vardır.

başlığında son bölümde ilk atom numarası ikinci (?), son üç atom merkezi x, y ve z koordinatları olan, 5 sayı oluşan her atomu için bir çizgidir.

Volumetrik veri

Hacimsel veriler her hacimsel elemanı için basit bir kayan noktalı sayıdır. Orijinal Gauss formatı örneğin aşağıda gösterilen biçimde değerleri düzenlenmiş en ayrıştırma programları ayrılmış biçimi herhangi bir boşluk okuyabilir. Geleneksel olarak ızgara, örneğin, dış döngü ve bir iç döngü olarak z ekseni olarak, x ekseni ile düzenlenmiş olarak yazılır.

   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");
      }
   }

Örnek

Aşağıdaki örnekte hacimsel veriler her bir voksel, 0.283459 adet geniş ve hacim koordinat ekseni ile hizalanır, 40 ızgara tarafından 40 ile 40. Üç atom vardır.

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
      :             :             :           :            :            :
      :             :             :           :            :            :
      :             :             :           :            :            :
        Bu durumda 40 x 40 x 40 kayan nokta değerleri olacaktır
      :             :             :           :            :            :
      :             :             :           :            :            :
      :             :             :           :            :            :