Nicole Drakos

Research Blog

Welcome to my Research Blog.

This is mostly meant to document what I am working on for myself, and to communicate with my colleagues. It is likely filled with errors!

This project is maintained by ndrakos

Installing and Running MUSIC

I will be running some cosmological simulations with a high number of time outputs for various applications. This will require generating initial conditions, which I plan to do using MUSIC which can be downloaded here. Here are my notes on getting it running.

Installation (debugging notes)

I am installing the package on my laptop (macOS Catalina) according to the User’s Guide. Here are the issues I ran into:

Problem 1

clang: error: unsupported option '-fopenmp'

This seems to be a problem on my Mac. For now, I just turned off MULTITHREADFFTW in the Makefile.

Problem 2

fatal error: 'fftw3.h' file not found

I ran brew install fftw and now this is fine (I had already followed the instructions in the User’s Guide for installing fftw3, but guess I missed something).

Problem 3

A bunch of errors with cmath that look like:

Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/cmath:327:9: error: no member named 'islessequal' in the global
      namespace

When installing AHF I ran into similar problems and fixed it by changing the compiler in the Makefile from gcc to gcc-9 (I don’t remember why I had to did this). So anyway, changing from g++ to g++-9 seems to fix things. Bonus: it also fixes Problem 1, so now I can turn multi-threading back on.

Running the Code

The code comes with an example ics_example.conf. I un-commented the lines corresponding to gadget-2 output and ran:

./MUSIC ics_example.conf

and it all seems to work fine!

Configuration Parameters

There are numerous parameters that you can set in the config file. Here I’ll try and go through what seem to be the more important ones (and ignore the ones that seem fine to leave as default).

Setup

For the given simulation, you need to specify: boxlength, zstart (and baryons if including those)

use_2LPT: I will set this to yes since second-order lagrangian perturbation theory is more accurate (Jenkins 2010).

For unigrid simulations, set levelmin = levelmax. This value should be \(\log_2 N^3\), where \(N^3\) is the number of particles.

In principle, levelmin_TF could be set higher than levelmin, but I will just keep it equal.

Cosmology

Specify cosmological parameters Omega_m, Omega_L, Omega_b, H0, sigma_8 and nspec

Transfer function: I’ll use the eisenstein option

Random

Can specify seeds. Doesn’t matter for my purposes.

Output

Specify format and filename

Poisson

This I will leave to the default values…

Next Steps

As far as I can tell, I have MUSIC working on my machine. Next I’ll run a small simulation and check everything looks right. I should also get all of this working on Pleiades.


Simulation Parameters »