AlignAid is a Perl module that easily run sequence alignments locally or on a cluster.
# create an AlignAid object
# a single, locally run blast job is the default
my $job = AlignAid->new( db => 'my_blast_db', dir => $dir,
fasta => 'my_query.fa',
prog_args => 'V=20 -nonnegok' );
# run the job on the current host
my $return_value = $job->submit(outfile => 'my_results.out');
# create an AlignAid cross_match object
# specify the alignment program and the queue to override the defaults
my $job2 = AlignAid->new( program => 'cross_match',
db => 'my_db.fa', dir => $dir,
fasta => 'my_query_seqs.fa', queue => 'LSF');
# submit the cross_match jobs to an LSF queue (of compute nodes)
my $return_value2 = $job2->submit(outfile => 'my_output');
# kill the queued jobs
my $return_value3 = $job2->kill_all;
AlignAid is designed to make it easy to run the sequence alignment programs Blast and cross_match. AlignAid can accept a large number of query sequences. If a compute cluster queue such as LSF or PBS is available, AlignAid can automatically split the queries into multiple queue jobs.
Likewise, if you want to run the alignments locally on a single host, a single change is all that is necessary -- AlignAid will take care of how to invoke the alignment programs and manage the output.
AlignAid also has rudimentary support for LSF queue job control; it is possible to kill jobs through AlignAid's interface.
What's New in This Release: