This is the README file for the constrained initial condition generator Copyright(c) 2005. Guilhem Lavaux.
0) What is ICgen ?
ICgen is builds cosmological initial condition for gadget. Constraints can be put on the initial density field. At the moment it is possible to constrain the velocity field and the density field. However if requested it can be enhanced to support more constraints quite easily (once you know the relationship between the gravitational field and the constraint). The memory is nearly fully shared across nodes except for one thing: the matrix of the constraints which holds N^2 doubles where N is the number of contraints.
Type make. You must have fftw 2 and mpi libraries directly accessible. In the other case you will have to adapt the LIBS variable in Makefile.
The configuration file potin.conf holds the information necessary to tweak the parameters of the initial condition generator.
Type: mpirun -np X ./potin_mpi CONFIGURATION_FILE
where X is the number of processors. A file called LinGrowthLCDM.text must be present in the directory. It has been generated for the cosmology which is set by default in potin.conf. It is statically generated for the moment (by another program) and its format is the following:
1st column: z initial (must be a great number) 2nd column: z current is the current redshift for the following parameter. 3rd column: relative growth factor between z initial and z current. 4th column: growth speed.
4) Output files
Some filenames can be parametrized into potin.conf. However for debugging purpose a few other files are generated by default:
* gadget input data files.
* displacement.N.txt (N = processor number) holds the array of the displacement field. The format is the following:
1st line: Nx Ny Nz kzstart Nkz kzstart is the first kz for the processor which has dumped this file. Nkz is the number of kz lines for this processor.
other lines: dx dy dz
dx,dy,dz are the components of the displacement field. It is stored in the following order: x is increasing the most rapidly, then y, then z.
* potent.N.txt holds a slice of the displacement potential. The format is the following:
Columns: x y value
It has no special interest but was needed at the beginning of the development.