CosmoBox
Integrated development virtual machine for CAMB and CosmomMC

Demo Movie


CosmoBox is a fully configured virtual machine, with everything you need to build and debug in Fortran 90, set up to go with CAMB and CosmoMC. The box is Ubuntu Linux, using the Photran development environment and gfortran. It will run on almost any Windows, Mac or Linux, using VirtualBox, with only small speed overhead compared to running natively. The Photran environment allows you to trace through code, view variable values, set breakpoints, navigate quickly to variable and function definitions, view file contents, and most (but not all) of the other things you'd expect for a modern easy-to-use development system.

Installation instructions:

The demo movie shows how to navigate to variable/function definitions, start a debug run, view variable names, step over and into code and see local variable values change.

Notes:

Configuration

Current configuration is based on

If you need it the password is 1ubuntu (username ubuntu), but it will log you in automatically by default. Note that WMAP is not installed, so you'll have to download and install that separately if you want to run CosmoMC with WMAP (setting the WMAP path in the Makefile).

It is also linked to the git repository for easy updates, and the gitk git gui is installed for browsing version history.

Workspace and new machines

You don't need any of this to use the virtual machine. It's mainly to remind me what's going on.

Let me know if you'd like just the workspace (and/or zip of eclipse installation) to set up in your own machine, or a different virtual machine setup. Rough steps in linux to get this working on new installation (last two not needed if you don't want git or mpi, and some may already be installed):

sudo apt-get install make
sudo apt-get install gfortran
sudo apt-get install liblapack-dev
sudo apt-get install openjdk-7-jre
sudo apt-get install openmpi-bin libopenmpi-dev
Then install Eclipse IDE for Parallel Application Developers. Note that Photran's automake does not work, so you have to write your own Makefiles. Most of the work is in getting Photran and debugging set up to work with your project.

Additional non-core software (last two not installed in current download):

sudo apt-get install gitk
sudo apt-get install libgsl0-dev
sudo apt-get install octave

VirtualBox config

Install VirtualBox guest additions to easily re-size the window or enable seamless mode (so Photran appears like any other window in the host OS). If you want to use auto-mounted shared folders need to do sudo usermod -a -G vboxsf username to grant username access from within linux.

Many components can be uninstalled to make a smaller virtual machine using e.g.

 sudo apt-get autoremove gnome-games-common gbrainy bluez* cups libreoffice
 sudo apt-get clean
But then virtual machine must be shrunk, see instructions, and then cloned using e.g. VBoxManage clonehd clone.vmdk clone.vdi -format VDI to actually free the disk space.


Thanks to Mohammed Ansari for work setting up the virtual machine. Maintained by Antony Lewis.