Galacticus‎ > ‎Documentation‎ > ‎

What's New in v0.9.0

A full run-down of what's new in v0.9.0 of Galacticus compared to v0.0.1:

What's New in Galacticus v0.9.0?

In addition to numerous bug fixes and optimizations:
  • Updated/New Physics
    • Allows the critical overdensity for halo collapse to be mass dependent - useful for non-CDM scenarios.
    • Allows arbitrary piecewise power-law IMFs.
    • Updates Cloudy cooling function calculations to use version c10.00 of Cloudy.
    • Adds cooling functions from Mappings III.
    • Adds a Sérsic profile spheroid component.
    • Significantly extends the physics of black holes. Galaxies can now contain multiple black holes, which migrate through the galaxy (and eventually merge) due to dynamical friction, scattering of stars and emission of gravitational waves. Binary mergers can lead to black holes being ejected due to gravitational wave recoil. Ejection can also happen as the result of triple black hole interactions.
    • Adds a simple black hole component implementation. The black hole mass grows at a rate proportional to the spheroid star formation rate. Feedback physics is implemented in a simple way with fixed efficiencies.
    • Allows for the structure of the disk to be solved for using a run-time specified radius (rather than always solving for the structure at the scale radius). Also allows the Cole et al. (2000) option of adjusting the specific angular momentum of the disk to account for differences between spherical and disk mass distributions.
    • Adds a component to record galaxy merger statistics: the time of the last major galaxy merger and times of last major node merger and node formation times.
    • Adds a cooling rate algorithm which mimics that of Cole et al. (2000).
    •  Adds freefall radius calculations for dark matter halo profiles.
    • Adds a virial orbits implementation which uses fixed orbital parameters for all orbits. Useful for testing/debugging.
    • Adds the Wetzel (2010) satellite halo virial orbital parameter distribution functions.
    • Adds a component which supports tracking of halo formation times, along with an event trigger than can perform arbitrary tasks when a formation event occurs.
      • Adds an option to return all outflowed gas to the hot halo reservoir on halo formation events in the standard hot halo component.
      • Adds an option to reset satellite orbits on halo formation events.
      • Adds a time available for cooling method based on the formation timeof the halo.
    • Adds methods for setting the core radius of cored isothermal hot gas density profiles. Includes two specific implementations and documentation.
    • Adds implementations of expulsive supernova feedback (i.e. feedback which ejects gas from the halo entirely).
    • Adds a virial density contrast method that implements a fixed value density contrast.
    • Adds a merger mass movements implementation which mimics the logic of Baugh et al. (2005).
    • Adds the Baugh et al. (2005) top-heavy IMF.
    • Adds a satellite merging timescale method based on the specific implementation of Cole et al. (2000) which uses the Lacey & Cole (1993) algorithm but with a specific parameterization of orbital dependence based on the results of Tormen (1997).
    • Adds the NFW 1996 halo concentration algorithm.
    • Adds a method for mass loss rate from satellite nodes. Includes a null (zero mass loss rate) implementation and the van den Bosch et al. (2005) algorithm.
    • Updates to v2.2 of the FSPS population synthesis code.
    • Adds a delta function distribution for dark matter halo spins - useful for testing purposes primarily.
    • Adds an implementation of Einasto profiles for dark matter halo density profiles.
      • Includes new "dark matter profile" component implementation which tracks a shape parameter in addition to a scale.
      • Adds Gao et al. (2008) implementation of Einasto profile shape parameters.
    • Adds the Munoz-Cuartas et al. (2011) dark matter profile concentration  algorithm.
    • Introduces the Zhao et al. (2009) mass accretion history as a new option.
    • Adds the Zhao et al. (2009) dark matter halo concentration algorithm.
    • Added Sutherland & Dopita (1993) cooling functions.
    • Adds the Covington et al. (2008) method for computing merger remnant sizes.
    • Adds additional stellar population spectra (from Bruzual & Charlot  2003 and Maraston 2005) data files, together with the scripts that were used to generate these from their sources.
    • Adds three new star formation timescale methods for disks, all based on the surface density profile. These are the classic Kennicutt-Schmidt, the extended Schmidt law, the Biltz & Rosolowsky method and the Krumholz-McKee-Tumlinson method.
  • Output Quantities
    • Adds support for constructing redshift surveys directly from Galacticus outputs.
    • Adds a module which automates running of Grasil to compute SEDs and fluxes of galaxies including dust extinction and re-emission.
    • Adds a module that tracks the masses of the main branch progenitor galaxies in each tree.
    • Adds outputs for star formation rate and stellar density split by disks and spheroids to the globalHistory output group.
    • Adds a module that outputs the status of each node with respect to the main branch of its merger tree (i.e. whether or not it is the main progenitor of the final halo).
    • Adds functionality to record and output star formation histories for arbitrary components of galaxies.
    • Adds a module to output properties of nodes at specified density contrasts. Currently outputs the radius enclosing a specified density contrast and the mass enclosed within that radius.
    • Adds functionality to perform calculations of galaxy clustering using  the halo model. Outputs:
      • Linear power spectrum of matter;
      • Growth factor (and derivative) at each output;
      • Fourier space density profiles for all isolated halos;
      • Host halo index for all nodes to all construct of halo occupation distribution.
  • Under the Hood
    • Updated to work with GSL v1.15.
    • Adds an improved implementation of multiple instances of components (e.g. multiple black holes in a single node), which makes for a more symmetric treatment of the first and any subsequent  instances. Includes code to permit multiple black holes in a node as an example of how this can work.
    • Adds a tree construction method which stores/restores the entire internal state of a merger tree to/from a file. Intended primarily for debugging purposes.
    • Adds ability to store the virial radius-crossing orbital parameters of satellites. Allows consistent orbits to be used for multiple calculations.
    • Adds functionality to the Run_Galacticus.pl script to launch multiple threads or to submit jobs to a Condor cluster.
    • Adds a merger tree pre-processing filter which interpolates tree  branches onto a fixed grid of timesteps. Intended for studying convergence in galaxy formation calculation when using N-body merger trees derived from simulations with limited numbers of snapshots.
    • Adds a module for pruning merger trees by hierarchy depth. Useful, for example, in studies of subhalos when you don't want sub-subhalos etc.
    • Adds real functionality to the radiation object:
      • Define components (e.g. CMB, intergalactic background);
      • Set components (automatically for a given node);
      • Query radiation field (temperature, flux, integral over cross-section).
      • Defines null, cosmic microwave background and intergalactic background light radiation components.
      • Intergalactic background light radiation component can be read from file:
        • Includes Haardt & Madau (2005) model tabulations.
      • Updates molecular hydrogen network to include radiative processes.
    • Adds functionality to track molecular species and, specifically, a molecular hydrogen cooling function:
      • Adds a database of "molecules" (including atoms and atomic and molecular ions) and infrastructure for reading and querying the data.
      • Adds functions to compute reaction rates for molecular species (with a specific implementation for a molecular hydrogen network).
      • Updates the cooling time and cooling function routines to accept as input a structure giving the abundances of molecular species.
      • Adds a new cooling function based on the calculation of Galli & Palla for molecular hydrogen.
    • Adds a merger tree pre-evolution task that prunes branches of the tree, i.e. nodes below a specified mass threshold are removed from the tree prior to any evolution. Includes documentation.
    • Adds a new and improved implementation of merger trees read from file:
      • Includes support for positions/velocities of galaxies;
      • Includes support for bound mass history of subhalos, halo spins and concentrations;
      • Includes definition of new universal file format for merger trees;
      • Includes code for generating merger tree files in required format from ASCII data, with specific example for the Millennium Simulation.
    • Adds ability to nest sets of parameter variations in the files fed to the Run_Galacticus.pl to run grids of models. Documentation updated.
    • Adds a new HDF5 interface module:
      • Object oriented (to the extent possible with GFortran v4.4)
      • Automatic dereferencing of scalar references.
      • Automatic allocation of arrays being read.
      • Support for scalar and 1D attributes.
      • Supports long (8-byte) integers.

What to Expect in Galacticus v0.9.1?

  • Parallelism under both OpenMP and MPI
  • Improved support for multiple instances of components in individual nodes.
  • Multiple instantiation of functions to allow fallback to alternative calculations as necessary.
  • More extensive support for C/C++ interoperability.
  • Ability to output galaxy data on a lightcone.
  • Semi-deterministic algorithms for halo concentration and spin.
  • Additions of updated physics in many other areas.

Comments