Skip to content

savila/HALOGEN

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 

======= HALOGEN

HALOGEN is a C program for creating realistic synthetic dark matter halo catalogs in a flash.

It decomposes the problem of generating cosmological tracer distributions (eg. halos) into four steps:

  • Generating an approximate density field;
  • Generating the required number of tracers from a CDF over mass;
  • Placing the tracers on field particles according to a bias scheme dependent on local density;
  • Assigning velocities to the tracers based on velocities of local particles.

It also implements a default set of four models for these steps as:

  • 2LPT density field
  • Tabulated mass function from the literature
  • A single-parameter power-law biasing scheme.
  • A linear transformation of velocities from the sampled DM particle velocities.

For more details on the method, see Avila, S. et al. 2015 -- http://mnras.oxfordjournals.org/cgi/content/abstract/stv711?ijkey=Do3EfS9S1jHUhrv&keytype=ref

Installation

HALOGEN depends only on the libraries FFTW (v2.x only) and GSL. To set these and other specific options for compilation, edit the top part of the Makefile.defs file in the top-level directory. Compilation has been tested with mpicc/gcc, icc and craycc.

Also in the Makefile.defs file are a number of global options for HALOGEN which affect its output in various ways. Please set these as desired.

After modifying Makefile.defs, all (4) executables can be compiled with make (using make halogen, make 2LPT-HALOGEN, make 2LPT and make fit makes each executable individually).

The executables will be compiled into the top-level directory.

To optionally install, save the executable somewhere on the system path, eg. in /usr/bin/.

Usage

The primary usage is by using the fully combined executable, and simply runs as

$ 2LPT-HALOGEN <2LPT.input> <HALOGEN.input>

For details on the parameters in the input files, and how to run the other executables, see the README file in the examples/ directory.

We strongly encourage every user to run through these examples before undertaking any other usage of HALOGEN.

Acknowledgments

If you find this code helpful in your research, please cite Avila, S. et al. 2014 -- http://arxiv.org/abs/1412.5228.

Note that HALOGEN makes use of the pre-existing codes:

Authors

Santiago Avila Perez: santiago.avila@uam.es Steven Murray: steven.murray@uwa.edu.au

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages