Aperçu des programmes

Voici une liste des principaux programmes inclus dans MyCGR, avec pour chacun leurs fonctionnalités principales.

Manipulation de séquences

mycgr_seq.x permet de

  • générer des séquences i.i.d. ou markoviennes, selon une loi et une longueur données en paramètre,
  • calculer les fréquences empiriques des nucléotides dans une séquence,
  • découper une sequence en plusieurs sous-séquences d'une longueur inférieure donnée.
Calcul de la CGR

mycgr_square.x effectue différents calculs sur les points Xn de la CGR dans le carré:

  • calcul et affichage des coordonnées des points de la CGR, à partir d'une séquence donnée,
  • comptage des points de la CGR dans différentes zones indiquées en paramètre, à partir d'une séquence donnée,
  • calcul des différentes statistiques de tests.

Différentes options permettent de modifier le comportement du programme, par exemple en prenant des séquences déjà existantes pour faire les tests plutôt qu'en regénérer à chaque simulation. Cette option permet de comparer les différents tests en les appliquants aux mêmes séquences. On peut également indiquer des paramètres pour le cache afin d'optimiser les calculs dans certains cas. Les programmes mycgr_segment.x et mycgr_tetra.x offrent les mêmes fonctionnalités pour les points de la CGR sur le segment et dans le tétraèdre.

Distances

mycgr_square_dist.x implémente le calcul des distances entre séquences, par la généralisation dans la CGR du profil d'abondance relative de dinucléotides. Il existe plusieurs options pour le calcul de ces distances, en particulier on peut choisir de calculer les valeurs absolues ou les carrés des différences. De plus, on peut éventuellement regrouper les distances par espèces. Les résultats peuvent être générés aux formats Graphviz, Newick [1], PHYLIP, LaTeX. Les calculs sur plusieurs centaines de longues séquences et pour des partitions comportant de nombreuses zones prennent du temps. Pour pallier à ce problème, le programme peut les lancer en parallèle sur plusieurs machines en plaçant tous les fichiers sur un système de fichiers commun (NFS par exemple). Le cluster de l'INRIA Rocquencourt a ainsi été utilisé pour divisé par 15 les temps des longs calculs. Une base de données peut également être utilisée pour stocker plus efficacement les calculs intermédiaires. Les programmes mycgr_segment_dist.x et mycgr_tetra_dist.x offrent les mêmes services pour la CGR sur le segment et dans le tétraèdre.

Dessin

mycgr_square_draw.x dessine la CGR dans le carré. Il lit les coordonnées des points à dessiner sur son entrée standard (ces coordonnées sont générées par le programme mycgr_square.x). Plusieurs options permettent:

  • d'afficher une grille de taille donnée,
  • de dessiner une partition décrite dans un fichier en paramètre,
  • de montrer la construction des points avec des flèches,
  • de cacher les coordonnées et/ou les lettres correspondants aux coins,
  • d'afficher, plutôt que les points, les fréquences de points dans des sous-carrés de taille donnée. La couleur des sous-carrés est d'autant plus foncée que la fréquence des points y est élevée.

Les fichiers générés sont au format PostScript ou Embedded-PostScript.

Tests de structure de séquences

mycgr_square_test_markov.x permet d'évaluer empiriquement le niveau et la puissance des tests de structure markovienne d'ordre m. En paramètre, on choisir le nombre d'expériences, la ou les partitions, les longueurs et les types (i.i.d., markoviennes, markoviennes mixées) de séquences que l'on veut tester. On peut également faire ces simulations avec la méthode de Bonferroni [2]. Les résultats sont générés au format LaTeX. Les programmes équivalents existent pour la CGR sur le segment (mycgr_segment_test_markov.x) et dans le tétraèdre (mycgr_tetra_test_markov.x).

mycgr_square_vn.x évalue empiriquement le niveau et la puissance du test d'indépendance, en choisissant le nombre d'expériences, les partitions, les longueurs et les types (i.i.d., markoviennes, markoviennes mixées) de séquences que l'on veut tester. Ce programme permet également de faire ces simulations avec la méthode de Bonferroni. Les résultats sont générés au format LaTeX. Les programmes équivalents existent pour la CGR sur le segment (mycgr_segment_vn.x) et dans le tétraèdre (mycgr_tetra_vn.x).

Construction de zones et partitions

mycgr_square_zones.x génère des fichiers de zones ou partitions sur le carré unité. Il peut s'agir de zones correspondant à des mots, ou à des subdivisions régulières ou aléatoires du carré. On peut aussi générer des rectangles et des cercles aléatoires, sachant qu'il est toujours possible, pour faire une partition, d'indiquer l'une des zones comme étant le complémentaire des autres. Enfin, il est également possible de définir une partition en découpant le carré regulièrement ou aléatoirement en une multitude de zones et de les grouper en n ensembles, éventuellement de façon non équiprobable. Les programmes équivalents existent pour la CGR sur le segment (mycgr_segment_zones.x) et dans le tétraèdre (mycgr_tetra_zones.x).

Utilisation cohérente, convention de nommage

Du fait des nombreuses expériences menées sur différentes tailles de séquences avec différentes zones et différentes méthodes de calcul des distances, des conventions de nommage des fichiers sont devenues nécessaires. Tous les fichiers sont donc placés dans une arborescence de répertoires dont la racine (meta_root) est un paramètre de compilation. On organise alors les fichiers de la manière suivante:
meta_root/sequences contient les séquences originales.
meta_root/size contient les séquences de taille size isolées à partir des séquences originales.
meta_root/cache contient les fichiers de cache.
meta_root/zones/segment contient les fichiers de partitions sur le segment.
meta_root/zones/square contient les fichiers de partitions dans le carré.
meta_root/zones/tetra contient les fichiers de partitions dans le tétraèdre.
meta_root/results/size/dists contient les fichiers de résultats de calculs de distances avec des séquences de la taille size. Dans ce répertoire, les noms des fichiers suivent également une convention de nommage pour indiquer la méthode de calcul de distance utilisée, le fichier de partition utilisé, si le complément inversé a été ajouté aux séquences, et si la CGR était sur le segment, le carré ou le tétraèdre.

Le programme mycgr_meta.x permet de lancer les autres programmes de MyCGR en ajoutant les options et les noms de fichiers nécessaires pour respecter les conventions de nommage. Cela simplifie les commandes à lancer pour utiliser les programmes et ranger les résultats aux bons endroits.

mycgr.x offre une interface graphique donnant accès aux principales fonctionnalités des autres outils, tout en respectant lui-aussi les conventions de nommage des fichiers:

  • gestion des séquences originales et extraction de séquences plus petites pour les utiliser dans les simulations,
  • affichage de la CGR sur le carré pour une séquence sélectionnée, ou un fichier de partition donné; on peut également superposer les deux représentations et ainsi visualiser la fréquence des points dans les zones d'une partition. L'utilisateur peut sauvegarder le résultat dans un fichier image,
  • gestion des fichiers de zones définis pour le segment, le carré, le tétraèdre,
  • parcours des résultats déjà obtenus et affichage des fichiers par l'outil correspondant (qui peut être paramétré),
  • lancement du calcul des distances entre espèces, pour une longueur de séquence donnée et autres paramètres.

Cliquer sur les images pour voir les captures d'écran de mycgr.x:

MyCGR screenshotMyCGR screenshot
[1] C'est notamment le format en entrée du programme NJPLOT utilisé pour dessiner les arbres non enracinés.
[2] Y. Baraud, S. Huet, et B. Laurent. Adaptive tests of linear hypotheses by model selection. Ann. Statist., 31(1) :225251, 2003. ISSN 0090-5364.C