Written by Edmund Bertschinger, GRAFIC I is part of the more extended package GRAFIC and performs the generation of periodic initial conditions for a given cosmology, boxsize, etc... Combined with GRAFIC 2, zoomed-in initial conditions may be generated from this code.
Articles & Documentation
Versions and Where to find it ?
Grafic 1 can be easily hacked to fit the requirements of a simulation code. Two versions are given here:
The original version. It can be requested directly from E. Bertschinger (edbertmit.edu) or from http://web.mit.edu/edbert/
Straightforward via a Makefile. Does not require any specific librairy.
Written in f77.
Most of the inputs consists in defining the transfer function. The transfert function may be provided by the code ’linger’ (included in the Grafic archive) or be computed by the Grafic 1 code itself via a fitting formula. In the latter case, the user gives interactively the cosmological parameters, the boxsize, the normalisation, etc... Originally the code only provides the BBKS transfert function and assumes omegab=0. Other TFs are included in the ’power.f’ file but should be commented out by hand.
A few parameters should be ’hard coded’ in the ’grafic1.inc’ file:
the number of grid cells (np1,np2,np3)
the amplitude of white noise fluctuations
the offset in positions between baryons and DM particles. Some codes crash if particles are too close and require such an offset. Any change in these parameters requires a re-compilation.
GRAFIC 1 outputs seven files : the density field (1 file, ic_deltab), the velocity field for the baryons (3 files, ic_velbx/y/z) and the velocity field for the dark matter (3 files, ic_velcx/y/z). The code can also outputs the white-noise file. This file may be given to the code as an input in order to study different cosmologies or different boxsize with the same overall structure in the simulation.
IMPORTANT: if the BBKS transfert function is used, the velocity fields of baryons and DM are identical. In order to gain computation time or disk space, the user may want to hack the code to produce only the first four fields.