Installing Vevacious
To fully evaluate a parameter point with Vevacious
and the connected tools, you need a Linux or MacOS system with …
- …a
C++
compiler such as gcc - …the
Python
environment, at least version 2.7.1 - …the python-dev headers (
Python.h
) for gcc or the equivalent – this is important! (MacPorts for OSX automatically installsPython.h
as part of the installation of Python 2.7)
If you want to create new input files using SARAH, you need at least Mathematica 7. To compile SPheno to create the numerical input for Vevacious, a Fortrancompiler such as gfortran or ifort is needed.
Vevacious
makes use of several public tools. We give here only a brief introduction to the installation of these tools but refer to the corresponding references and authors for more information.
We assume in this descrption that all codes are downloaded and extracted in the same directory. The placeholder for the path to this directoy is called $VPATH
in the following.
-
HOM4PS2
-
Download
HOM4PS2
from http://www.math.nsysu.edu.tw/~leetsung/works/HOM4PS_soft_files/HOM4PS_Linux.htm -
Extract the tar-file > tar -xf HOM4PS2_64-bit.tar.gz
which should create
$VPATH/HOM4PS2/
. -
No compilation is necessary but now would be a good point to check that
HOM4PS2
works with one of its examples.
-
-
MINUIT
andPyMinuit
Detailed instructions about the installation and compilation ofPyMinuit
andMINUIT
are given at https://code.google.com/p/pyminuit/wiki/HowToInstall We summarize only briefly the main steps-
Download
MINUIT
from http://code.google.com/p/pyminuit/. ChooseMinuit-1_7_9-patch1.tar.gz
. -
Extract the tarball > tar -xf Minuit-1_7_9-patch1.tar.gz
which should create
$VPATH/Minuit-1_7_9/
. -
Configure and compile
MINUIT
> cd Minuit-1_7_9 > ./configure --prefix=$VPATH/Min/ > make > make installwhich should create
$VPATH/Min/
. -
Download
pyminuit-1.2.1.tar.gz
or a more recent version from http://code.google.com/p/pyminuit/ -
Extract
PyMinuit
> tar -xf pyminuit-1.2.1.tar.gzwhich should create
$VPATH/pyminuit/
. -
Run the setup of
PyMinuit
stating the location ofMINUIT
where`` ``the
.o
files`` ``are
, so$VPATH/Minuit-1_7_9/
rather than$VPATH/Min/
> cd pyminuit-1.2.1 > python setup.py install --home=$VPATH/pym/ --with-minuit=$VPATH/Minuit-1_7_9/which should create
$VPATH/pym/
(with the second command broken over two lines to fit on the page).
-
- Make sure that you have properly exported
PYTHONPATH
(which should include the path tominuit.so
, in$VPATH/pym/lib/python/
in our example) andLD_LIBRARY_PATH
(which should include the path toliblcg_Minuit.a
, in$VPATH/Min/lib/
in our example). Now would be a good time to check thatPyMinuit
works by running the following test program >>> import minuit >>> def f( x, y ): return ( ( x2 + y2 )2 - 0.5 * x2 ) >>> m = minuit.Minuit( f ) >>> m.values = { 'x': 0.1, 'y': 0.2 } >>> m.migrad() >>> m.values, m.fval
Note, the support of PyMinuyt
has stopped: One can use alternatively IMinuit
. The instructions for IMinuit
are available at https://pypi.python.org/pypi/iminuit, and is a much easier install than that for PyMinuit
.
-
Ensure that the Python packages
Numpy
andSciPy
are installed (if not, please use your favorite Internet search engine to find out how to install them on your system) -
Download
CosmoTransitions_package_v1.0.2.zip
or a more recent version fromhttp://chasm.uchicago.edu/cosmotransitions
-
unzip the archive > unzip CosmoTransitions_package_v1.0.2.zip
which should create
$VPATH/CosmoTransitions_package_v1.0.2/
-
Download
LHPC
from http://www.hepforge.org/downloads/lhpc/ -
Extract the files from the compressed tarball (change the version number appropriately) > tar -xf LHPC-0.8.5.tar.gz
-
Enter the
LHPC
directory and compile it > cd LHPC-0.8.5 > make
-
Download the most recent version from http://www.hepforge.org/downloads/vevacious/
-
Extract the files from the compressed tarball and compile
Vevacious
stating the path toLHPC
> tar -xf Vevacious-1.0.7.tar.gz > cd Vevacious-1.0.7 > make LHPCDIR=$VPATH/LHPC-0.8.5/Now would be a good time to check that
Vevacious
works. Edit$VPATH/Vevacious-1.0.7/bin/VevaciousInitialization.xml
to correctly set all the paths, then run> ./bin/Vevacious.exe --input=./bin/VevaciousInitialization.xml
which should produce the result file with the name given in the initialization file.
For example, in Debian -based Linux distribution one can ensure that the paths are properly set by adding the following to .bashrc
:
export PYTHONPATH=$VPATH/pym/lib/python/:$PYTHONPATH
export PYTHONPATH=$VPATH/CosmoTransitions_package_v1.0.2/cosmoTransitions/:$PYTHONPATH
export LD_LIBRARY_PATH=$VPATH/Min/lib/:$LD_LIBRARY_PATH
To get the input for a point, you can use a spectrum generator based on SPheno based on the corresponding Vevacious output of SARAH