Giter Club home page Giter Club logo

farm_blast's Introduction

Farm_blast

Run blast+ or blastall in parallel on an LSF compute farm.

Build Status
License: GPL v3 .
Docker Build Status
Docker Pulls
codecov

Contents

Introduction

Python3 module to run blast+ or blastall in parallel on an LSF compute farm.

Installation

Farm_blast has the following dependencies:

Required dependencies

Optional dependencies

  • blastall

Details for installing Farm_blast are provided below. If you encounter an issue when installing Farm_blast please contact your local system administrator. If you encounter a bug please log it here or email us at [email protected].

Using pip

pip3 install farm_blast

Running the tests

The test can be run from the top level directory:
python3 setup.py test

Usage

Compare a query and a reference using blast+ blastn:

farm_blast reference.fasta query.fasta

Compare a query and a reference using blastall blastn:

farm_blast --blastall reference.fasta query.fasta

Run blast+ megablast:

farm_blast --blast_type megablast reference.fasta query.fasta

Run blastall tblastx:

farm_blast --blast_type tblastx --blastall reference.fasta query.fasta

Set the e-value and word length and do not filter the query sequence:

farm_blast --no_filter -e 0.1 -W 30 reference.fasta query.fasta

To get all the options, use --help:

farm_blast --help

License

Farm_blast is free software, licensed under GPLv3.

Feedback/Issues

Please report any issues to the issues page

farm_blast's People

Contributors

martinghunt avatar seretol avatar andrewjpage avatar ssjunnebo avatar aslett1 avatar

Stargazers

YHY avatar

Watchers

 avatar Nishadi De Silva avatar  avatar James Cloos avatar Jacqui Keane avatar Ben Taylor avatar bbb avatar  avatar Jorge Soares avatar Florent Lassalle avatar Alexandr "Nil" Shchelov avatar  avatar  avatar

farm_blast's Issues

Subprocesses call 'small' queue

I've installed farm_blast on our LSF cluster and used the -q flag to specify a queue name that exists here, but subprocesses in the code submit jobs to a 'small' queue, which we don't have so it throws exceptions. Could the -q flag be amended to apply to all queues submitted to?

$ farm_blast -q short-eth --act RP62A.fasta CH16_S36normalized_scaffolds.fasta
small: No such queue. Job not submitted.
Traceback (most recent call last):
File "/gpfs/home/bxj16cvu/.local/lib/python3.5/site-packages/farmpy/lsf.py", line 110, in run
bsub_out = subprocess.check_output(cmd, shell=True).decode('utf-8')
File "/gpfs/software/python/anaconda/4.2/anaconda3/lib/python3.5/subprocess.py", line 626, in check_output
**kwargs).stdout
File "/gpfs/software/python/anaconda/4.2/anaconda3/lib/python3.5/subprocess.py", line 708, in run
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command 'bsub -q small -E 'test -e /gpfs/home/bxj16cvu' -o 02.run_array.sh.o -e 02.run_array.sh.e -J farm_blast:/gpfs/home/bxj16cvu/maite/Farm_blast.RP62A.fasta.CH16_S36normalized_scaffolds.fasta.blast_plus.blastn.out.start_array -w 'done(315514)' bash 02.run_array.sh' returned non-zero exit status 255

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/gpfs/software/python/anaconda/4.2/anaconda3/bin/farm_blast", line 18, in
blast_pipeline.run()
File "/gpfs/home/bxj16cvu/.local/lib/python3.5/site-packages/farm_blast/pipeline.py", line 313, in run
self.start_array_job.run()
File "/gpfs/home/bxj16cvu/.local/lib/python3.5/site-packages/farmpy/lsf.py", line 112, in run
raise Error('Error in bsub call. I tried to run:\n' + str(self))
farmpy.lsf.Error: Error in bsub call. I tried to run:
bsub -q small -E 'test -e /gpfs/home/bxj16cvu' -o 02.run_array.sh.o -e 02.run_array.sh.e -J farm_blast:/gpfs/home/bxj16cvu/maite/Farm_blast.RP62A.fasta.CH16_S36normalized_scaffolds.fasta.blast_plus.blastn.out.start_array -w 'done(315514)' bash 02.run_array.sh

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.