Code Monkey home page Code Monkey logo

piper-nf's Introduction

PIPER-R NF

A pipeline for the detection and mapping of long non-coding RNAs

Quick start

Make sure you have installed the required dependencies listed below. Clone the git repository on your computer with the following command:

$ git clone [email protected]:cbcrg/piper-nf.git

When done, move in the project root folder just created piper-nf, it contains an example dataset in the tutorial folder.

Launch the pipeline execution by entering the following command on your shell terminal:

$ ./nextflow piper.nf

By default the pipeline is executed against the provided example dataset. Check the Pipeline parameters section below to see how enter your data on the program command line.

Pipeline parameters

#####query

  • The query transcripts file in multi-fasta format
  • Example: nextflow piper.nf --query=/some/path/query.fa

#####genomes-file

  • The file listing the full paths to the genomes files
  • Example: nextflow piper.nf --genomes-file=my-genomes.txt

#####genomes-db

  • The location where the BLAST formatted DB are stored
  • Example: nextflow piper.nf --genomes-db=/my/db/path

#####query-chunk-size

  • Number of sequences in each chunck in which is sliced the query file
  • Example: nextflow piper.nf --query-chunk-size=50

#####result-dir

  • The location where the result files are stored.
  • Please note: if the folder exists, the all existing content will be deleted without further notice
  • Example: nextflow piper.nf --result-dir=./my-result/

#####blast-strategy

  • Which BLAST program to be used, ncbi-blast (default) or wu-blast
  • Example: nextflow piper.nf --blast-strategy=wu-blast

Run using Vagrant

To avoid having to install all the pipeline dependencies, you may test the pipeline using the provided Vagrant VM, which downloads and configures all the required pieces of software for you. See http://www.vagrantup.com for more details about Vagrant.

The Vagrant environment uses the Ubuntu Precise 64 virtual machine, if you don't have it in your Vagrant boxes list, it will be downloaded automatically.

To launch the VM move to the pipeline root folder grape-nf and enter the following command:

$ vagrant up 

When it boots up and the configuration steps are terminated, login into the VM instance and move to the Grape pipeline folder

$ vagrant ssh 
$ cd /vagrant

Now you can launch the pipeline as shown:

 $ ./nextflow piper.nf

When finished, stop the VM using the command vagrant halt or vagrant destroy, depending if you want to temporary stop the execution or delete permanently the VM with all its files.

Cluster support

Piper-NF execution relies on Nextflow framework which provides an abstraction between the pipeline functional logic and the underlying processing system.

Thus it is possible to execute it on your computer or any cluster resource manager without modifying it.

Currently the following clusters are supported:

  • Oracle Grid Engine (SGE)
  • SLURM (beta)
  • Platform LSF (beta)

By default the pipeline is parallelized by spanning multiple threads in the machine where the script is launched.

To submit the execution to a SGE cluster create a file named nextflow.config, in the directory where the pipeline is going to be launched, with the following content:

task {
  processor='sge'
  queue='<your queue name>'
}

In doing that, tasks will be executed through the qsub SGE command, and so your pipeline will behave like any other SGE job script, with the benefit that Nextflow will automatically and transparently manage the tasks synchronisation, file(s) staging/un-staging, etc.

Alternatively the same declaration can be defined in the file $HOME/.nextflow/config.

Dependencies

piper-nf's People

Contributors

pditommaso avatar pprieto avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.