Les outils d'analyse

A l'acquisition des données fait suite leur analyse. Aux TPA les étudiants peuvent avoir accès aux programmes d'analyse utilisés actuellement par la communauté scientifique au CERN. En particulier l'utilisation de PAW (Physics Analysis Workstation ) est fortement conseillée.

Un manuel d'utilisation est à disposition dans la salle des ordinateurs et le programme est accessible soit à partir d'un PC (MS DOS) soit via l'une des stations SUN (UNIX).

Il est clair que la meilleure façon de se familiariser avec un programme est de jouer avec, cependant afin de faciliter une première approche avec PAW quelques notions de base vous sont fournies ci-dessous.


PAW

PAW est un outil interactif permettant de visualiser et de manipuler vos données. Les points forts de ce programme réside dans le fait qu'il permet une utilisation facile et rapide des routines des librairies du CERN.

Les opérations les plus fréquemment réalisées lors des TP avec PAW sont:

  • Manipulation de vecteurs de données (plot, corrélations,...)
  • Analyser des histogrammes
  • Ajuster des modèles sur des données expérimentales
  • Mise en page de vos résultats graphiques.

    Les objets sur lesquels on peut travailler sont soit des vecteurs, soit des histogrammes soit des ntuples. Ces derniers sont une façon propre à PAW de présenter un set de variables concernant un même événement.

    Maintenant tapez PAW sur votre clavier et ... amusez vous bien!!!!!!

     LES VECTEURS:

    La plus part du temps vos programmes d'acquisition sauvent les données sous forme de fichiers ASCII (i.e. fichiers texte). Ceux-ci sont directement lisibles par PAW qui peut mémoriser les valeurs sous forme de vecteurs. Tapez "help vect" pour un manuel online sur toutes les opérations possibles avec des vecteurs.

    Opérations les plus fréquemment utilisées avec des vecteurs:

  • CRÉATION D'UN VECTEUR
    vect/cre V(n) I/R values

    V : nom du vecteur
    n : dimension du vecteur
    I/R : Type de variables contenues dans le vecteur I = Integer; R = Real
    values : Le contenu du vecteur peut être rentre a la main, dans le cas contraire, toutes les composantes du vecteur sont mises a zéro.

    Exemple:
    vect/cre prime(4) I 2 4 6 8
    est le commande pour la création du vecteur nommé 'prime', de 4 valeurs intiers, qui sont 2,4,6 et 8.

  • LECTURE A PARTIR D'UN FICHIER
    vect/read V1,V2,...Vn fname

    V1, V2,...Vn : noms des vecteurs
    fname : nom du fichier ASCII contenant les vecteurs

    Si votre fichier contient n colonnes de chiffres, cette commande lit les colonnes et met le contenu dans les vecteurs V1, V2,...Vn . Si ces vecteurs n'ont pas été crées au préalable alors ils sont crées par cette commande avec le bon nombre de lignes.

  • DESSINER UN VECTEUR
    vect/plot V : Montre un histogramme de fréquence des valeurs du vecteur.
    vect/draw V : Montre le vecteur comme une sucession de valeurs

  • Les vecteurs peuvent être à une ou plusieurs dimensions.

     LES HISTOGRAMMES:

    Si vous désirez travailler sur des distributions de valeurs pour une variable quelconque de votre expérience, alors vous serez portés à travailler avec des histogrammes. Ceux-ci peuvent être établis soit à partir des valeurs contenues dans une NTUPLE soit à partir des vecteurs. Pour ce qui concerne les NTUPLES, elles ne sont pas forcement très utilisées aux TP. Elles sont indispensables à partir du moment ou on est portes a manipuler un très grand nombre de variables pour un même événement, c'est pourquoi nous ne nous attarderons pas sur ces objets.

  • CRÉATION D'UN HISTOGRAMME
    histo/create/1 ID 'titre' nbins min max

    ID : Numéro d'identification de l'histogramme
    titre : Titre de l'histogramme
    nbins : nombre de bins contenus dans l'histogramme
    min, max: Bornes.

    dans le cas ou vous créez un histo à 2 dimensions, alors la commande sera:
    histo/create/2 ID 'titre' nbins1 min1 max1 nbins2 min2 max2
    (nbins, min et max doivent être rentrés pour les deux axes)

  • h/plot ID Dessine l'histogramme ID

  • vect/hfill vname ID Remplit l'histogramme ID avec le contenu du vecteur vname. L'histogramme doit etre deja existant.

     LES MACROS:

    Vous serez probablement portés à effectuer plusieurs fois un même set de commandes. Pour éviter de rentrer à chaque fois vos instructions de façon interactive, il est possible de créer un fichier contenant un set d'instructions.L'extension du nom du fichier doit impérativement être .kumac ( .kum sur PC ).

    exemple: contenu d'un fichier nommé plot.kumac

    vect/cre v1(10) R 1 2 3 4 5 5 4 3 2 1
    vect/draw v1
    histo/create/1 100 'test' 5 1. 6.
    vect/hfill v1 100
    h/plot 100 b
    creation d'un vecteur
    graphique du vecteur
    creation d'un histogramme
    remplissage de l'histogramme avec les valeurs du vecteur
    graphique de l'histogramme

    dans votre session PAW, vous pouvez alors lancer ces commandes par:
    PAW> exec plot

    Vous pouvez avoir plusieurs macros dans un même fichier. Dans ce cas le fichier aura la structure:

    macro nom1
    ....
    ....
    return

    macro nom2
    ....
    ....
    return

    dans votre session PAW, vous pouvez alors lancer la macros nommée 'nom2' par:
    PAW> exec plot#nom2 (exécute la macro nom2 du fichier plot.kumac)

     FAIRE LES FITS AVEC PAW

    Les options:

  • opt fit Les résultats du fit seront montrés sur le graphique
    ( avec opt nfit ils ne seront pas montrés)

  • set fit x1 x2 x3 Choix des résultats à montrer:
    x1 :  2
    x2 : erreurs sur les paramètres
    x3 : les paramètres
    le choix est fait par 0=non ou 1=oui
    (exemple: set fit 011 montre les paramètres et leurs erreurs, mais ne montre pas le  2 )

    Faire le fit d'un Histogramme

  • histo/fit ID func ! p par

    ID = numéro de l'histogramme
    func = fonction qu'on veut utiliser: elle peut etreg = fonction de Gauss
    Pn = polynôme du nieme degré
    e = fonction exponentielle
    ! = place pour des options spéciales,
    avec ! on va prendre les options standard
    p = nombre de paramètres à déterminer
    par = nom du vecteur dans lequel on va écrire
    les valeurs des paramètres
    Exemple : histo/fit 10 g ! 3 par fait le fit de l'histogramme 10 avec une fonction de Gauss et écrit les 3 paramètres dans le vecteur 'par'.

    * Le calcul pour choisir la meilleure courbe est fait avec la méthode des moindres carrées, l'erreur sur chaque point ( chaque canal de l'histogramme ) est calculé comme la racine carré du numéro d'occupation.

    * Si on veut considérer seulement une partie de l'histogramme:
    ID(min:max) Fait le fit seulement a partir du canal 'min' jusqu'à le canal 'max'.
    Exemple:histo/fit 10(15:90) g ! 3 par

    * On peut aussi utiliser des combinaisons des fonctions disponibles
    Exemple: histo/fit 10 g+P1 ! 5 par fait le fit avec une fonction de Gauss + une droite ( notez que les paramètres sont maintenant 3+2=5 ). Dans ce cas le vecteur 'par' doit exister déjà et il doit contenir les valeurs initiales (approximatives) des paramètres.

    Faire le fit d'un Vecteur

  • vect/fit Vx Vy errVy func ! p v

    Vx = nom du vecteur des abscisse
    Vy = nom du vecteur des ordonnée
    errVy = nom du vecteur des erreurs des ordonnées

    Les autres options sont les mêmes que pour histo/fit. Notez qu'il y a en plus la possibilité de définir les erreurs sur chaque point ( si au lieu du vecteur errVy on écrit '!' , les erreurs sont choisies comme la racine carrée, comme d'abitude ).


    Tout ceci ne constitue qu'un set très restreint de commandes utilisables avec PAW. Vous aurez toute l'information désirée en tapant help.

    Vous pouvez aussi consulter la version online ici