#! /usr/bin/perl -w
# *************************************************************
# This Programme does the following in sequence
# -> Assembles ITC and TOEA ESTs
# -> Multicored
# Author : Rajkumar (itc@rajkumar.in)
# Release: APR 2010
# *************************************************************
# Libraries
use strict;
use Bio::Perl;
use Bio::SearchIO;
use Parallel::ForkManager;
# At the top: Time Start
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
# Variables
my $path = "/home/raj/bio";
my $datadir = "$path/tobacco/data";
my $est = "$datadir/est.fa";
my $resdir = "$datadir/unigene_result";
my $pm = new Parallel::ForkManager(16);
my $tgicl = "$path/tgicl/tgicl";
my $cpu = "16";
my ($i) = $_;
my (@files)= @_;
# Clear the Files
if (-e "$resdir") {`rm -fr $resdir`;}
if (! -e "$resdir") {`mkdir $resdir`;}
# Parsing the Contigs
chdir "$path/tgicl";
`$tgicl $est -c $cpu -l 40 -p 94 -M`;
# -l miminum overlap length (default 40)
# -M ignore lower-case masking in <fasta_db> sequences
# -p minimum percent identity for overlaps <PID> (default 94)
print "\n\tAll Done!\n\n";
# At the End: Time Calculation
my ($sec_,$min_,$hour_,$mday_,$mon_,$year_,$wday_,$yday_,$isdst_) = localtime(time);
my $days = $mday_-$mday;
my $hours = $hour_-$hour;
my $mins = $min_-$min;
my $secs = $sec_-$sec;
print "\n------------------------\nDuration: ";
if ($days>0) { print "$days days";}
if ($hours>0) { print ": $hours hours";}
if ($mins>0) { print ": $mins mins";}
if ($secs>0) { print ": $secs secs";}
print "\n------------------------\n";
# END