# RiboProP - A Probabilistic Ribosome Positioning Algorithm for Ribosome Profiling

This is the implementation of the algorithm proposed in the publication entitled "RiboProP: A Probabilistic Ribosome Positioning Algorithm for Ribosome Profiling". Please read through the instructions below.

This tool was developed at The Ohio State University by Dengke Zhao and Ralf Bundschuh

## Getting Started

RiboProP project is a computational method that combines statistical modeling and high-throughput bacteria Ribo-Seq data to calculate the ribosome density profile on a per gene level. It aims to overcome the difficulty in assigning a precise location to a translating ribosome in the presence MNase bias.

### Prerequisites

The RiboProP was implemented in Julia language version 0.3.12.

### Installation

Download the source files to a directory on a Linux based machine and add execution permissions to the scripts

```
chmod +x *.jl
```

## Usage

### Overivew

There are two separate scripts

* [RiboProP-Fit] - This script optimizes the model's fitting parameters using high-throughput Ribo-Seq data
* [RiboProP-Recon] - This script calculates the theoretical ribosome density profile given the optimized model paramters and the sequence of a gene.


### RiboProP-Fit

One needs to provide the pool of the reads (both sequence and counts) that are located at the end of genes in the following format

```
# sequence counts
ATTTGGCCATT 55
TTGGCCATT 23
ATTGCATT 12
...
```

One also needs to set the initial searching point for the optimization algorithm to get the model parameters. Please read the comments in the script for more details. The initial searching point is a six-element parameter list in the order of [a, b, sAt, sTt, sGt, sCt].

### RiboProP-Recon

One needs to set the real 3' read coverage profile of the gene, the sequence and length of the gene and optimized model paramters. Please read the comments in the script.
