ROOT

Au LAL, ROOT est utilisable sur toutes les machines Unix exécutant une version de SL5 ou plus récente (par exemple lx2 ou lx3). On peut obtenir la list des versions installées en effectuant la commande :

ls /lal/root

Attention : depuis le 9/2/2014, les nouvelles versions de ROOT fonctionnent uniquement sur SL6. Sur SL5, il faut utiliser soit la version /lal/root/sl5/pro ou une version antérieure à 5.34.

Pour chaque version de ROOT installée, il existe un lien qui correspond à la version majeure de ROOT correspondante. C'est le nom qu'il est recommandé d'utiliser si on désire une version particulière de ROOT. Par exemple, si on souhaite utiliser la version 5.34 de ROOT, quelque soit la release (patch) 5.34, il faut utiliser la version de ROOT installée en /lal/root/5.34.

La version officiellement considérée comme version de production (voir le
site ROOT) est accessible en /lal/root/pro. Ce lien 'pro' est régulièrement mis à jour et la version majeure de ROOT associée peut changer.

De même, la version en cours de développement (souvent appelée trunk) est accessible en /lal/root/trunk. Elle est mise à jour périodiquement, normalement toutes les semaines. Elle permet de tester de nouvelles fonctionnalités mais son bon fonctionnement n'est pas garanti. Elle ne doit être utilisée que par des utilisateurs avertis pour des besoins particuliers.

Une version beta de ROOT6 est disponible en /lal/root/6.0.

Avant de pouvoir utiliser une version de ROOT donnée, il faut configurer son environnement en exécutant le script de setup se trouvant dans le répertoire de la version. Il en existe un par famille de shell :

  • csh/tcsh : setup.csh
  • autre : setup.sh

Par exemple en tcsh : source /lal/root/pro/setup.csh

Une fois exécuté le script de setup, pour exécuter ROOT, il faut taper la commande :
root

Note : sous csh/tcsh, il n'est pas possible de mettre la commande 'source ...' dans son .login. La commande doit être exécutée une fois connectée.

Les versions ROOT installées au LAL sont configurées pour permettre l'utilisation des ressources disponibles au LAL, en particulier les fichiers stockés sur la grille. Pour ouvrir dans ROOT un fichier sur la grille dans GRIF (l'accès direct à un fichier se trouvant sur un autre site grille n'est généralement pas possible) se fait en utilisant une des formes d'URL pour le nom de fichier :

gfal:srm://nom.du.serveur/nom/du/fichier

ou bien

gfal:lfn:/nom/du/fichier

ou bien

gfal:guid:file-guid

ou bien (attention au // entre le serveur et le nom, c'est très important)

root://nom.du.serveur//nom/du/fichier

Les exemples ci-dessous illustrent différentes façons d'ouvrir le même fichier à partir soit du nom d'un replica particulier du fichier (srm: ou xroot:), soit de son nom logique (nom de catalogue, lfn:), soit de son identifiant unique (guid:) :

f=TFile::Open("gfal:srm://grid05.lal.in2p3.fr/dpm/lal.in2p3.fr/home/vo.lal.in2p3.fr/generated/2010-05-01/fileeb554880-d825-406b-bad4-b0cb9096080b")
f=TFile::Open("gfal:lfn:/grid/vo.lal.in2p3.fr/generated/2010-05-01/file-170dc910-6a43-45a8-9b5e-6907646ea678")
f=TFile::Open("gfal:guid:729cfd36-ee0d-4e03-9808-27b5deaff309")
f=TFile::Open("root://grid05.lal.in2p3.fr//dpm/lal.in2p3.fr/home/atlas/atlasdatadisk/data09_900GeV/ESD/r988/data09_900GeV.00142192.physics_BPTX.recon.ESD.r988_tid101617_00/ESD.101617._000001.pool.root.1")

Il est aussi possible d'utiliser le protocole rfio: plutot que gfal: mais cela est plutot déconseillé car RFIO est un protocole obsolète en voie d'abandon. En lecture, le protocole recommandé est root://.

Note : l'accès aux fichiers stockés sur la grille nécessite d'avoir acquis un proxy (commande voms-proxy-init) avant d'exécuter ROOT.

Pour plus d'information sur ROOT, veuillez consulter le site ROOT ou contacter le support informatique du LAL. En particulier, n'hésitez pas à contacter le support informatique du LAL si vous avez besoin d'une version de ROOT qui n'est pas installée.