Gaussian Kub Filer
Inledning kub-fil beskriver – data samt atom-positioner, det kommer från den Gaussiska programpaketet. Filen består av en rubrik som innehåller atom information och storlek och orientering – data. Detta är följt av – data, en skalär per voxel element. Alla aspekter av filen i text (human readable), ursprungligen den numeriska värden var 5 bred för heltal som började varje rad i huvudet (efter den första) och flyttal var formaterad 12.6, som är 12 tecken som är brett med 6 decimaler. Rubrik De två första raderna i huvudet är kommentarer, de är i allmänhet ignoreras genom att analysera paket eller användas som två standard etiketter. Den tredje raden har antalet atomer som ingår i filen, följt av positionen för den ursprung – data. De kommande tre linjer ger antalet voxlar längs varje axel (x, y, z), följt av axel vektor. Observera att detta innebär att volymen behöver inte vara i linje med koordinataxel, ja det innebär också att det kan vara klippt även om de flesta – paket inte kommer att stödja det. Längden på varje vektor är längden på den sida av voxel vilket gör att icke kubiska volymer. Om tecken på antalet voxlar i en dimension är positivt då enheterna är Bohr, om de är negativa då Ångström. Den sista delen i rubriken är en rad för varje atom består av 5 siffror, den första är den atom nummer, andra (?), de tre sista är x -, y -, z-koordinater atom center. – data – data är enkel, en flytande punkt nummer för varje – element. Den ursprungliga Gaussian format ordnas värdena i det format som visas nedan i exempel, de flesta analysera program kan läsa alla vita separerade med mellanslag format. Traditionellt nätet är arrangerade med x-axeln som den yttre loopen och z-axeln som den inre slingan, till exempel, skrivs som 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"); } } Exempel I följande exempel – data är en 40 40 40 nätet, varje voxel är 0.283459 enheter brett och volymen är i linje med koordinataxeln. Det finns tre atomer. 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 : : : : : : : : : : : : : : : : : : |