Main»Documentation

Documentation

Documentation

Installation

In order to install cyntenator on linux, simply type

>make

this will create a binary executable named cyntenator. The Makefile uses the g++ compiler,
in general it should be possible to compile the program on windows but this was not tested.

Usage

If cyntenator is called without any arguments, a help message is printed on standard output

  >./cyntenator 
  program -t guide-tree -h homology_type ...  
  guide-tree: 
          -t "((rat.txt mouse.txt ) human.txt)" 
  Homology: 
          -h id 
          -h blast [file] 
          -h orthologs [file] 
          -h phylo [file] [weighted_tree] 
   
  Alignment Parameters: 
          -thr    threshold (4) 
          -gap    gap (-2) 
          -mis   mismatch (-3) 
   
  Filter options: 
         -filter [int] best alignments or only unique assignments n=0 (100) 
          -coverage [int] each gene may occur only c times in alignments (2) 
          -length [int] minimum alignment length treshold (1) 
          -last prints only the alignments at the last step 
   
  Output: 
          -o output file 

Obligatory arguments are the guiding tree which specifies the order in which genomes are
aligned. It can be specified by a notation in parantheses (e.g. "((rat.txt mouse.txt )
human.txt)"). In this example rat.txt, mouse.txt, and human.txt are the gene annotation
files for the respective species.

The second argument which is needed is the type of homology and a corresponding
similarity file. The type id assigns a match, whenever two IDs (GENE Symbols, transcription
factor binding sites or any other Marker) are equal. The "orthology" type assigns matches
for pair of genes that are given in a correspondance file, furthermore correspondances can
be assigned simililarity scores like BLAST bitscores, this is the
option, that we used in the Syntenator approach. In order to weight matches by sequence
similarity and phylogenetic distance, in addition to the BLAST file, a weighted species tree
has to be defined with weights specified by [:WEIGHT] after each closing bracket
(e.g. "((HSX.txt:1.2 MMX.txt:1.3):0.5 CFX.txt:2.5):1" ). The final weight at the root note can
be omitted.

Alignment paramters can be modified via the options thr gap and mis.

File Formats

There are three possible input formats which can be used as annotation files. The format
has to be specified in the first row of the file:

 #genome
 #sequence
 #alignment

genome is the standard format for alignment of genomes. Annotations can be obtained
from the EnsEMBL database and should contain whitespace
separated gene coordinates (ID,CHROMOSOME,START,END,STRAND, see HSX.txt as example).
The same is true for the sequence format which should be used for alignment using
IDs as similarity measure. The only difference is that the genome format requires unique
IDs and merges redundant gene annotations which come from different transcripts.

The alignment format is the output format of cyntenator. In the header the original
annotation files are enlisted. The following lines show all computed alignments, sorted
by score and uniqueness. An Alignment starts with the word Alignment followed by a number
and then a score. Each following line starts with a score for this row and the
aligned genes with their orientation. "-" characters denote gaps.

  #alignment CFX.txt HSX.txt MMX.txt 
  Alignment 1 9.18021 
  0.348995  ENSCAFG00000016080  (+)  ENSG00000184205  (+)  ENSMUSG00000041096  (+)  
  1.89445   ENSCAFG00000016133  (-)  ENSG00000126012  (-)  ENSMUSG00000025332  (-)  
  0.348995  -                   (.)  ENSG00000204349  (+)  -                   (.)  
  1.36421   ENSCAFG00000016179  (-)  ENSG00000124313  (-)  ENSMUSG00000041115  (-) 
  2.88981   ENSCAFG00000016241  (-)  ENSG00000072501  (-)  ENSMUSG00000041133  (-)   
  3.3294    ENSCAFG00000016274  (+)  ENSG00000158423  (+)  ENSMUSG00000025257  (+)  
  3.77215   ENSCAFG00000016277  (-)  ENSG00000072506  (-)  ENSMUSG00000025260  (-)  
  5.3176    ENSCAFG00000016311  (-)  ENSG00000086758  (-)  ENSMUSG00000025261  (-)  
  6.71358   ENSCAFG00000016389  (-)  ENSG00000172943  (-)  ENSMUSG00000041229  (-)  
  5.16812   -                   (.)  -                (.)  ENSMUSG00000067230  (+)  
  6.57727   ENSCAFG00000016414  (-)  ENSG00000184083  (-)  ENSMUSG00000025262  (-)  
  5.03181   -                   (.)  -                (.)  ENSMUSG00000072901  (+)  
  6.57727   ENSCAFG00000016427  (-)  ENSG00000196632  (-)  ENSMUSG00000041245  (-)  
  6.86235   ENSCAFG00000016440  (+)  ENSG00000158526  (+)  ENSMUSG00000025264  (+)  
  8.19742   ENSCAFG00000016444  (-)  ENSG00000102302  (-)  ENSMUSG00000025265  (-)  
  9.18021   ENSCAFG00000016455  (+)  ENSG00000130119  (+)  ENSMUSG00000025266  (+)  

It is possible to compute pairwise alignments parallel and then compute the multiple
genome alignments by specyfing the alignment output files as input. The following 2 runs
are test runs to see, whether cyntenator can read pairwise alignments

PART 1: compute pairwise, read pairwise, compute tripple

  ./cyntenator -t "(HSX.txt MMX.txt)" -h phylo HSCFMM.blast    
  "((HSX.txt:1.2 MMX.txt:1.3):0.5 CFX.txt:2.5)" > human_mouse

  ./cyntenator -t "(human_mouse CFX.txt)" -h phylo HSCFMM.blast    
  "((HSX.txt:1.2 MMX.txt:1.3):0.5 CFX.txt:2.5)" > test1.txt 

PART 2: compute pairwise, compute tripple

  ./cyntenator -last -t "((HSX.txt MMX.txt) CFX.txt)" -h phylo HSCFMM.blast   
  "((HSX.txt:1.2 MMX.txt:1.3):0.5 CFX.txt:2.5)" > test2.txt

test1.txt and test2.txt will contain the same alignments in the end. Not, that the -last
option is used in the second example in order to report only the alignments created from
the HSX-MMX vs CFX multiple species comparison.

License

This software was written by Christian Rödelsperger and is distributed under GNU General
Public License (GPL)