Welcome to the deepBlockAlign web page

[Download]


[Programs and datasets]


The directory 'deepBlockAlign_v*' contains following programs and datasets
1. deepBlockAlign.x: program to align two or more RNA-seq read block profiles 2. deepBlockAlign.c: source code of deepBlockAlign 3. plotdeepBlockAlign.pl: wrapper program to deepBlockAlign. Also output alignments in graphical format 4. plotblockAlign.r: accessory R program to plotdeepBlockAlign.pl 5. test_suite/human_eb.blockGroups: Benchmark dataset used in current study

[Installation]


To install deepBlockAlign, download deepBlockAlign.tar.gz and unpack it
tar -zxvf deepBlockAlign.tar.gz A directory, deepBlockAlign will be created, now execute
make or make all which compiles deepBlockAlign and creates an executable
deepBlockAlign.x

[Usage]


deepBlockAlign.x is called with the following parameters

deepBlockAlign.x -q <query file> -s <subject file> [ARGUMENTS]

Available options are:

==========================================================
                     DeepBlockAlign
a tool for aligning RNA-seq profiles of read block patterns
==========================================================

usage: deepBlockAlign.x -q <file> -s <file> [ARGUMENTS]

[INPUT]
 -q  <file>   query file (blockbuster output)
 -s  <file>   subject file (blockbuster output)

[ARGUMENTS: Block Group Alignment]
 -d  <double> distance weight (default: 6.0)
 -b  <double> block similarity weight (default: 1.0)
 -g  <double> gap penalty (default: -1.0)
 -a  <int>    print alignment 1=on (default: 0)
 -l  <file>   create file containing alignment score of all blocks against all blocks
 -f  <file>   create file necessary to plot block group alignment
 -p  <int>    only align pairs of block groups e.g 1 with 1, 2 with 2 etc (default:0)

[ARGUMENTS: Block Alignment]
 -c  <int>    gap initialization penalty (default: -2)
 -e  <int>    gap extension penalty for (default: -1)
 -t  <double> threshold for expression difference between two blocks (default: 1.0)
 -m  <int>    match score (default: 1)
 -n  <int>    mismatch score (default: -1)
 -z  <int>    profile shape difference penalty (default: 1)
 -h           this helpful message

[VERSION]
 v1.3 (Oct 15, 2014)

plotdeepBlockAlign.pl is called with the following parameters.

plotdeepBlockAlign.pl -i <query file> -j <subject file>

Available options are:

Program: plotdeepBlockAlign.pl (align and visualize the alignment of read profiles)
Author: University of Copenhagen, Denmark
Version: 1.0
Contact: sachin@rth.dk
Usage: plotdeepBlockAlign.pl -i <file> -j <file> [OPTIONS]
 -i <file>     [first block group file]
 -j <file>     [second block group file]
 -f <id>       [first block group id]
 -s <id>       [second block group id]
 -p <dir>      [directory with programs (deepblockalign.x etc)]
 -o <dir>      [directory with output files]
 -x <string>   [prefix for temporary files, useful when running on queue]
 -l            [output in HTML format]
 -a <string>   [path to hyperlink alignment images from the HTML format]
 -q            [output in plain text format]
 -k            [keep the block and block group alignment files]
 -v <string>   [first block group title (default: first)]
 -w <string>   [second block group title (default: second)]
[OPTIONS: Block Group Alignment]
 -d <double>   [distance weight (default: 1.0)]
 -b <double>   [block similarity weight (default: 1.0)]
 -g <double>   [gap penalty (default: -1.0)]
[OPTIONS: Block Alignment]
 -c  <int>     [gap initialization penalty (default: -2)]
 -e  <int>     [gap extension penalty (default: -1)]
 -t  <double>  [threshold for expression difference between two blocks (default: 1.0)]
 -m  <int>     [match score (default: 1)]
 -n  <int>     [mismatch score (default: -1)]
 -z  <int>     [profile shape difference penalty (default: 1)]

[Example]


An usage example of deepBlockAlign is shown below. Example Block groups shown in the manuscript are provided with the downloads along with complete benchmark dataset.

$./deepBlockAlign.x -q testsuite/snoRNA-HACA-E3.example -s testsuite/hsa-mir-9-1.example
# deepBlockAlign.x v1.3 started at Thu Dec  4 16:25:12 2014
# query: testsuite/snoRNA-HACA-E3.example
# subject: testsuite/hsa-mir-9-1.example
# parameters (block group alignment)
#  distance weight: 1.0; block similarity weight: 1.0; gap penalty: -1.0
# parameters (block alignment)
#  match: 1; mismatch: -1; threshold: 1; shape difference penalty: 1
#  gap penalty (initialization): -2; gap penalty (extension): -1
>cluster_929|E3|chr3:187987781-187987842(+)   >cluster_30|hsa-mir-9-1|chr1:154656768-154656831(-) 0.554014

An usage example of plotdeepBlockAlign.pl is shown below

$./plotdeepBlockAlign.pl -i testsuite/human_eb.blockGroups -j testsuite/human_eb.blockGroups \
-f cluster_176 -s cluster_531 -p .
# plotdeepBlockAlign started at Thu, 04 Dec 2014 16:27:37 +0100
# first block group: cluster_176
# first file: testsuite/human_eb.blockGroups
# second block group: cluster_531
# second file: testsuite/human_eb.blockGroups
computing alignment....done (score: 0.72)
aligning blocks...done
aligning block groups...lsdone (cluster_176_n-a--cluster_531_hsa-mir-424.pdf)
creating final output file...
done (./cluster_176_n-a--cluster_531_hsa-mir-424_FINAL.pdf)

An example output file from plotdeepBlockAlign.pl looks like this

[Input Data Format]


deepBlockAlign takes the input data in the blockbuster output format. blockbuster is a program to define block groups based on the mapping pattern of short reads. A typical input comprises

a) Header section (11 tab delimited fields)

>cluster_929   chr3   187987781   187987842   +   306.50   194   2   E3   snoRNA   Intron

b) Reads section (7 tab delimited fields)

chr3   187987783   187987809   morin_EB_685629   0.500000   +   1
chr3   187987783   187987806   morin_EB_685761   0.500000   +   1
.
.
.
chr3   187987783   187987806   morin_EB_685630   0.500000   +   1

Important Note: The header section from blockbuster consists of eight fields (id, chr, start, end, strand, #reads, #tags, #blocks). Before providing it as an input to deepBlockAlign, three additional fields (name, annotation, locus) needs to be added. The information in these fields is required for most downstream analysis. If not available, user can put a "." in place of these fields.

a) Header section (8 tab delimited fields)

>cluster_929   chr3   187987781   187987842   +   306.50   194   2

All the example files provided by us are already in 11 tab delimited fields format.

[Details]


For details, please refer to

    1. deepBlockAlign publication
    2. blockbuster publication