M | T | W | T | F | S | S |
---|---|---|---|---|---|---|
23 | 24 | 25 | 26 | 27 | 28 | 1 |
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 | 1 | 2 | 3 | 4 | 5 |
GRAFIC 1 outputs the files via the unformatted Fortran file format. In these files, the seven fields (ic_deltab, ic_velbx/y/z, ic_velcx/y/z) are described on a regular grid.
The seven outputs follows the same structure:
np1,np2,np3
: 3 integers(kind=4) describing the size of the grid along the 3 directions.dx
: the size of a grid element in Mpc/h (real*4)x1o,x2o,x3o
: the coordinates of the grid’s origin (real*4). astart
: the initial scale factor (real*4) omegam, omegav
: and (real*4). h0
: the hubble constant (real*4)np3
reccords of np1*np2
matrix, i.e. ICs are organised in layers along the z-direction. This feature can be easily used to spare memory usage when these files are manipulated, since layers can be uploaded sequentially in memory. Velocities are in km/s while density is expressed in terms of density contrast.The following fortran example shows how to read such files:
open(10,file=filename(i_file),form='unformatted')
read (10)np1,np2,np3,dx,x1o,x2o,x3o,astart,omegam,omegav,h0
allocate(f(np1,np2,np3))
do i3=1,np3
read(10) ((f(i1,i2,i3),i1=1,np1),i2=1,np2)
enddo
White Noise files follow the same data structure, with a different header format. The header stands as a single record which contains the following variables:
np1,np2,np3
: 3 integers(kind=4) describing the size of the grid along the 3 directions.iseed
: the seed of the random generator, integer (kind=4).Subsequent layers are organised in the same way as the density and velocities fields.