Download MARTY
To be notified about the latest news and developments, you can send us an email to marty.uhlrich@gmail.com!
Github repositories
| Latest stable version | https://github.com/docbrown1955/marty-public |
| Test suite (since MARTY-1.4) | https://github.com/docbrown1955/test-suite |
MARTY-1.5 - 30 / 05 / 2022
| MARTY-1.5.tar.xz | (1.6 Mo, Linux / Mac) |
| MARTY-1.5.zip | (2.6 Mo, All OS) |
MARTY-1.4 - 27 / 10 / 2021
| MARTY-1.4.tar.xz | (1.6 Mo, Linux / Mac) |
| MARTY-1.4.zip | (2.6 Mo, All OS) |
MARTY-1.3 - 10 / 05 / 2021
| MARTY-1.3.tar.xz | (4.4 Mo, Linux / Mac) |
| MARTY-1.3.zip | (7.1 Mo, All OS) |
MARTY-1.2.1 - 13 / 02 / 2021
| MARTY-1.2.1.tar.xz | (4.6 Mo, Linux / Mac) |
| MARTY-1.2.1.zip | (8.0 Mo, All OS) |
MARTY-1.2 - 07 / 02 / 2021
| MARTY-1.2.tar.xz | (4.6 Mo, Linux / Mac) |
| MARTY-1.2.zip | (8.0 Mo, All OS) |
MARTY-1.1 - 03 / 12 / 2020
| MARTY-1.1.tar.xz | (4.6 Mo, Linux / Mac) |
| MARTY-1.1.zip | (8.0 Mo, All OS) |
MARTY-1.0 - 05 / 11 / 2020
| MARTY-1.0.tar.xz | (6.6 Mo, Linux / Mac) |
| MARTY-1.0.zip | (12.1 Mo, All OS) |
Build and Install MARTY
The following instructions are meant for Ubuntu / Debian and Mac (since 1.1) users.
For Windows (for sure) or other Linux distros, the installation script setup.sh may not work !
One may however install the dependencies (detailed below), compile the code (this should work on all OS with the required dependencies) and install the headers and libraries where wanted. Support for Ubuntu ≤16.04 is available only since 1.2.
Building and installing MARTY (Ubuntu / Debian, Mac since 1.1)
The first step is to download MARTY. Once done, go in MARTY's
root directory and type the following commands. The path given to setup.sh
must be valid. By default, the path will be /usr/local.
If you choose this path, the installation script will need super-user rights (sudo).
source setup.sh <path-for-marty-installation>
make
make install
If you want the compilation to go faster and that your computer allows it,
you may run the make command in parallel using 4 CPUs for
example:
make -j 4
If one chooses to install MARTY (together with CSL and
GRAFED) in a non standard location (or if /usr/local is
not contained in your default paths), environment variables must be set to help compilers and operating system to find the
libraries (CPATH and C_INCLUDE_PATH may both be used
depending on the compiler and the system):
export PATH=<marty-installation-path>/bin:$PATH # Find the command grafed
export LD_LIBRARY_PATH=<marty-installation-path>/lib:$LD_LIBRARY_PATH # Find libraries at run-time (Linux)
export DYLD_LIBRARY_PATH=<marty-installation-path>/lib:$DYLD_LIBRARY_PATH # Find libraries at run-time (Mac)
export LIBRARY_PATH=<marty-installation-path>/lib:$LIBRARY_PATH # Find libraries at compile-time
export C_INCLUDE_PATH=<marty-installation-path>/include:$C_INCLUDE_PATH # Find headers at compile time
export CPATH=<marty-installation-path>/include:$CPATH # Find headers at compile time
These bash commands together with the definition of C / C++ / Fortran compilers
are generated by the installation script in the file
marty_env.sh. Putting its content in a .bashrc file for example, compiling a C++ program with
MARTY is as simple as:
g++ -std=c++17 main.cpp -o main.x -lmarty
Executing now main.x:
./main.x
One may now start to learn how to use MARTY here.
In case one wants to use custom compilers or versions, different than gcc-7, g++-7, gfortran-7,
it is possible either to change the version by typing:
export MARTY_COMPILER_VERSION=9
for example to use gcc-9, g++-9, gfortran-9, or to set particular compilers
through the usual environment variables CC, CXX, FC for C / C++ / Fortran respectively.
These adjustements must be done before sourcing the setup.sh script. Changing compilers
is however not recommended, in particular for gfortran, to ensure a good compatibility with LoopTools.
Dependencies (Ubuntu / Debian)
In principle the installation script setup.sh should take care of all dependencies for Ubuntu / Debian and Mac users. In case the installation script does not work here is the list of dependencies.
For non Ubuntu / Debian users, the sudo apt-get command will not work,
one then has to find the corresponding equivalent dependencies on the
particular OS used (brew install on Mac for example).
First, the compilers must be up-to-date, at least version
7 for gcc, g++, gfortran. One may for example type:
sudo apt-get install coreutils build-essential gcc-7 g++-7 gfortran-7 -y
GSL is used to diagonalize numerically mass matrices in particle physics models in order to get their spectrum. GSL may be installed on Ubuntu/Debian via:
sudo apt-get install libgsl-dev libgslcblas0
Qt is a C++ framework to create Desktop applications.
GRAFED uses the open-source and free version of Qt. dvipng is a converter
from .dvi to .png files allowing GRAFED to compile and
display labels from Latex source. One may install these
dependencies typing:
sudo apt-get install qt5-default qtcreator dvipng -y
Finally, LoopTools contains numerical values for momentum integrals, used to evaluate one-loop results.

