icemc is a tool to simulate neutrino interactions in the ice.
To compile icemc you (should) only need a working ROOT installation.
Optional extras include the ANITA libraries libRootFftwWrapper and eventReaderRoot libraries. The recommended way to install these is with the anitaBuildTool which downloads and compiles the core ANITA software libraries. (See the ANITA-3 notes section for more information.)
Currently the Makefile tries to figure out whether to compile against the ANITA libraries by looking for the ANITA_UTIL_INSTALL_DIR
environment variable. The Makefile may require some love by uncommenting or commenting out various site specific flags at the top. Makefiles are a dark art so if you need help send an email or message someone in the slack #anita_simulation or #github_commits rooms.
To run icemc you need first to define two environment variables and then add them to your (DY)LD_LIBRARY_PATH, so that icemc knows where to look for its input files:
An example is:
If you use the anitaBuildTool, it's a good practice to add these lines to your setup script.
To run icemc do:
For only running over a single event, the -x {eventNumber}
option can be used.
If parameters are not specified
To produce Anita-like output files, you must have the libRootFftwWrapper and eventReaderRoot libraries installed before compiling icemc.
After that you will need to find and uncomment the site specific flag ANITA3_EVENTREADER=1
in the Makefile. The next time you compile and run icemc, the ANITA-like outputs will be produced automatically. The outputs also include the TruthAnitaEvent tree with the Monte Carlo truth information about the simulated events.
If you want to generate a pure thermal noise sample you should to turn on these flags: