Wiki

Clone wiki

DICE / Running DICE

DICE uses ascii files as inputs. There is three kind of files to consider:

  • DICE configuration files, which are the only argument you should give to DICE.
  • Galaxy parameters files, which list all the physical parameters of each galaxy you want to build.
  • Stream parameters files, which list all the physical parameters of each stream you want to build.

Calling DICE should look like this:

$ dice dice.config

Configuration file

The DICE configuration file list the galaxy parameters file which should be used as inputs. Additionally, DICE is able to compute a keplerian orbit when two galaxies are involved in the initial conditions. The following parameters can be specified in the configuration file:

Variable name Default value Type Description Unit
Galaxy string, 8*double Name of a galaxy parameters file, x, y, z, vx, vy, vz, spin incl kpc, kpc, kpc, km/s, km/s, km/s, deg, deg
Stream string, 6*double Name of a stream parameters file, x, y, z, spin, incl kpc, kpc, kpc, deg, deg
Kepler 5*double, 3*int Keplerian trajectories parameter: initial distance, pericenter, eccentricity, phi, theta, galaxy 1 index, galaxy 2 index, galaxy center index kpc, kpc, -, deg, deg, -, -, -
Circular 3*double, 3*int Circular orbits trajectories parameter: initial distance, phi, theta, galaxy 1 index, galaxy 2 index, galaxy center index kpc, deg, deg, -, -, -
Nthreads 4 int Number of OpenMP threads to create
MeanPartDist 0 int Trigger for computing the mean distance between particles
MaxCompNumber 10 int Maximum number of components per galaxy or stream
OutputRz 0 int Generate an ascii file for each galaxy with various quantities in the r-z plane (velocities,potential,density,etc.)
Filename string Trigger for computing the Keplerian trajectory of two galaxies
ICformat string File format of the IC file [Gadget1 or Gadget2]
H0 67.77 double Hubble constant km/s/Mpc
OmegaL 0.691391 double Dark energy density parameter
OmegaM 0.30712 double Matter density parameter
OmegaK 0.0 double Spatial curvature density parameter
GaussianRejectIter 10000 int Gaussian rejection maximum iterations
NormMassFact 1 int Normalise the sum of component mass fractions
GslWorkspaceSize 1000000 int Size of the GSL integration workspace
GslIntegrationScheme 3 int GSL integration scheme [1=gsl_qag][2=gsl_qagiu][3=gsl_qng]
UnitMass 1.989e43 double Mass unit g
UnitLength 3.085678e21 double Length unit cm
UnitVelocity 1e5 double Velocity unit cm/s

Galaxy parameters

There is two distinct parts in a galaxy parameter file: global parameters and component parameters.

Global parameters

The parameters that does not require to be defined for each component of the galaxy are the following:

Variable name Default value Type Description Unit
v200 double Virial velocity of the galaxy km/s
m200 double Virial mass of the galaxy [overrides v200 if defined] 1e10 Msol
redshift double Redshift of the galaxy
lambda double Dark matter halo spin parameter
level_coarse int Refinement level of the coarse gravitational potential grid
level_grid_mid_dens 7 int Refinement level of the mid-plane density grid
level_grid_turb 7 int Refinement level of the velocity turbulence grid
level_grid_dens_fluct 7 int Refinement level of the gaussian fluctuations grid
level_grid_jeans_mixed 7 int Refinement level of the Jeans dispersions grid (sigma[rz]_model=-2 only)
boxsize1 double Physical size of the coarse gravitational potential grid kpc
boxsizeN double For N>1: physical size of the nested gravitational potential grids centered on (0,0,0). Requires (boxsizeN+1)<(boxsizeN). The nested grid with a size boxsizeN will be refined at the level level_coarse+(N-1) kpc
dens_fluct_sigma 0.0 double Gaussian fluctuations dispersion
dens_fluct_scale_inj 0.5 double Fluctuations physical injection scale kpc
dens_fluct_scale_diss 0.5 double Fluctuations physical dissipation scale kpc
dens_fluct_seed 111111 long Seed for the random number generator producing the gaussian density fluctuations
seed int Seed for the random number generator
mcmc_ntry int Number of proposal per chain element in the MCMC algorimth
hydro_eq_niter 6 int Number of iterations to reach hydrostatic equilibrium (0 to deactivate)

Components parameters

In DICE, you can define as many components in your galactic model as you need. Here are listed all the available parameters of a component. To distinguish between two components, it is required to specify the numer of the component at the end of the keyword. For example, to define the number of particles npart present in the component 1, the actual keyword to use is npart1. Here is the list of available keywords:

Variable name Default value Type Description Unit
mass_frac double Fraction of the virial mass in the component
npart int Number of particles for the component
part_mass 0.0 double Targeted final particle mass Msol
npart_pot int Number of particles for the potential computation
part_mass_pot 0.0 double Targeted initial particle mass (higher resolution for Poisson solver) Msol
type int Particle type [0=Gas][1=Halo][2=Disk][3=Bulge][4=Stars]
model int Density model for the component [1=Exponential disk+sech-z][2=Myamoto-Nagai][3=Exponential disk+exponential-z][4=Hernquist][5=Plummer][6=Jaffe][7=Isothermal][8=NFW][9=Burkert][10=Einasto][11=Mestel][12=Kalnajs][13=Sersic][14=Toomre-Kuzmin][15=Uniform][16=Pseudo-isothermal]
scale_length double Scale length of the density profile [computed from spin conservation if equal to zero] kpc
concentration 0.0 double Concentration parameter of an NFW halo with a mass m200*mass_frac [overrides scale_length if defined positive]
cut r200 double Component radial density cut kpc
cut_hydro_eq cut double Component radial density cut in the hydrostatic equilibrium loop kpc
cut_in 0.0 double Component inner radial density cut kpc
sigma_cut 0.05 double Typical width of the cut function scale_length
sigma_cut_in 0.05 double Typical width of the inner cut function scale_length
flatx double Flattening along x axis in the center
flaty double Flattening along y axis in the center
flatz double Flattening along z axis in the center
flatx_cut double Flattening along x axis of the cut ellipsoid
flaty_cut double Flattening along y axis of the cut ellipsoid
flatz_cut double Flattening along z axis of the cut ellipsoid
flatx_out double Flattening along x axis at the cut radius
flaty_out double Flattening along y axis at the cut radius
flatz_out double Flattening along z axis at the cut radius
flatx_rt double Turnover radius of the x-flattening
flaty_rt double Turnover radius of the y-flattening
flatz_rt double Turnover radius of the z-flattening
flatx_st double Turnover sigma of the x-flattening
flaty_st double Turnover sigma of the y-flattening
flatz_st double Turnover sigma of the z-flattening
mcmc_step double Gaussian step for the MCMC Metropolis-Hasting particle positioning algorithm scale_length
vmax_esc double Maximum velocity for the component particles in expressed in units of escape velocity v_esc
vmax_circ double Maximum velocity for the component particles in expressed in units of maximal circular velocity max(v_c)
stream_fraction 0.0 double Azimuthal streaming fraction of the component
radius_nfw -1.0 double Radius at which the density profile should have the exact same density value as the NFW profile defined by concentration and v200 kpc
Q_lim 0.0 double Minimum value for the the Toomre parameter of the component
Q_boost 0.0 double Shift the Toomre parameter with a constant value in the component
Q_fixed 0.0 double Fix the Toomre parameter to a constant value in the component
epicycle 0 int Use the epicycle approximation
jeans_mass_cut 1 int Truncate density function in the Jeans equations
SFR 0.0 double Mean Star Formation Rate of the stellar component Msol/yr
min_age 100.0 double Minimum age of the particles Myr
metal 0.0 double Mean metallicity of the particles Zsol
metal_gradient 1 int Metallicity follows density gradient
dens_fluct 0 int Trigger for gaussian density fluctuations
t_init 1e4 double Initial temperature of the particles at the density dens_init K
dens_init 1. double Density of the particles at the temperature t_init H/cc
gamma_poly 1. double Polytropic index for the gas component (P=K*dens^gamma)
turb_gradient 0 int Turbulent velocity field intensity following density km/s
turb_sigma 0.0 double Initial turbulent velocity dispersion km/s
turb_scale_inj 0.0 double Physical injection scale of the initial turbulence field kpc
turb_scale_diss 0.0 double Physical dissipation scale of the initial turbulence field kpc
turb_seed 111111 long Seed for the random number generator producing the initial turbulent velocity field
turb_frac 0.0 double Fraction of the initial thermal energy to put in turbulent velocities
age_sigma 0.0 double Stellar age gaussian dispersion Myr
age_scale 0.0 double Physical scale of the stellar age gaussian fluctuations kpc
age_seed 111111 long Seed for the random number generator producing the stellar age gaussian fluctuations
hydro_eq 0 int Enable hydrostatic equilibrium iterative computation
hydro_eq_mode 0 int Recompute midplane gas density to have the surface density peaking at the center
spherical_hydro_eq 0 int Compute hydrostatic equilibrium for a spherical component
mcmc_step_hydro 1.0 double Gaussian step for the MCMC algorithm to compute the vertical hydrostatic equilibrium
thermal_eq 0 int Trigger for computing the thermal equilibrium of the component
alpha_struct 1.0 double Structural parameter specific to the Einasto density profile
beta_struct 1.0 double Structural parameter specific to the Sersic density profile
theta_sph 0.0 double Spherical coordinates polar angle degrees
phi_sph 0.0 double Spherical coordinates azimuthal angle degrees
compute_vel 1 int Enable velocities computation
excavate 0 int Subtract density from the specified component
spiral_theta_out 0. double Spiral winding angle deg
spiral_r_in 0. double Start of the spiral structure kpc
spiral_r_out 0. double End of the spiral structure kpc
spiral_alpha 0. double Spiral power parameter
warp_scale 0. double Warp scale height at r=rcut scale_height
warp_mode 2 int Warp harmonic mode
jeans_dim 2 int Number of integral of motion for the Jeans equations
jeans_anisotropy_model 2 int Model for the anisotropy parameter in the spherically symmetric Jeans equations (jeans_dim=1) [0->beta=0][1->beta=1][2->beta=-0.15-0.2dln(rho)/dln(r)]
sigmar_model 0 int r-dispersion profile model (0=isothermal sheet, >0 is similar to model)
sigmaz_model 0 int z-dispersion profile model (0=isothermal sheet, >0 is similar to model)
sigmar_radius 0. double r-dispersion radius kpc
sigmaz_radius 0. double z-dispersion radius kpc
sigmar 0. double r-dispersion value at sigmar_radius (sigmar_model>0 only) km/s
sigmaz 0. double z-dispersion value at sigmaz_radius (sigmaz_model>0 only) km/s
jeans_f_sigma 0. double sigmar=f_sigma*sigmaz (jeans_dim=3 only)
k_stream 0. double vstream=k_stream*sqrt(<v^2theta>-sigmar)
delete 0 int delete the component before writing the output file
softening 0.05*scale_length double Gravitational softening for the Poisson solver kpc
ggd_beta 2.0 double Generalized Gaussian Distribution beta shape parameter (2.0=Gaussian)
rcore 0.0 double Core radius in the density profile rho(r<rcore)=rho(rcore) kpc
accept_min 0.80 double Minimum acceptance for the N-try MCMC algorithm
accept_max 0.95 double Minimum acceptance for the N-try MCMC algorithm
stream_method 1 int Method for the computation of the streaming velocity [1=Following the cumulative mass profile (Bullock 2001)][2=Following the rotation curve of the considered component (Springel 1999)][3=Solid body rotation][4=Following the circular velocity] the streaming velocities are scaled with the stream_fraction paramter
rc_entropy 0.0 double Size of the entropy core
alpha_entropy 0.0 double Index of the entropy power law
imf_model 0 int Initial Mass Function model [0= no IMF][1=Salpeter][2=Miller-Scalo][3=Chabrier][4=Kroupa]
mstar_min 1.0 double Minimum stellar mass when modelling the IMF Msol
mstar_max 120.0 double Maximum stellar mass when modelling the IMF Msol
mcmc_step_mass 0.01 double Gaussian step for the MCMC Metropolis-Hasting IMF computation mstar_max-mstar_min

Updated