
<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.rajkumar.in/index.php?action=history&amp;feed=atom&amp;title=TGICL_assembly</id>
	<title>TGICL assembly - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.rajkumar.in/index.php?action=history&amp;feed=atom&amp;title=TGICL_assembly"/>
	<link rel="alternate" type="text/html" href="https://www.rajkumar.in/index.php?title=TGICL_assembly&amp;action=history"/>
	<updated>2026-07-09T20:31:56Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://www.rajkumar.in/index.php?title=TGICL_assembly&amp;diff=1999&amp;oldid=prev</id>
		<title>Raj: Created page with &#039;Category:Bioinformatics  * Assembling ~50000 ESTs ** Took 3.5 hours under 8 core ** both run and parse scripts are below   &lt;source lang=perl&gt; #! /usr/bin/perl -w  # *********…&#039;</title>
		<link rel="alternate" type="text/html" href="https://www.rajkumar.in/index.php?title=TGICL_assembly&amp;diff=1999&amp;oldid=prev"/>
		<updated>2010-09-19T19:07:10Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;#039;&lt;a href=&quot;/index.php/Category:Bioinformatics&quot; title=&quot;Category:Bioinformatics&quot;&gt;Category:Bioinformatics&lt;/a&gt;  * Assembling ~50000 ESTs ** Took 3.5 hours under 8 core ** both run and parse scripts are below   &amp;lt;source lang=perl&amp;gt; #! /usr/bin/perl -w  # *********…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:Bioinformatics]]&lt;br /&gt;
&lt;br /&gt;
* Assembling ~50000 ESTs&lt;br /&gt;
** Took 3.5 hours under 8 core&lt;br /&gt;
** both run and parse scripts are below&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=perl&amp;gt;&lt;br /&gt;
#! /usr/bin/perl -w&lt;br /&gt;
&lt;br /&gt;
# *************************************************************&lt;br /&gt;
# This Programme does the following in sequence&lt;br /&gt;
# -&amp;gt; Makes a single fasta&lt;br /&gt;
# -&amp;gt; Runs TGICL Program to assemble Ret files&lt;br /&gt;
# -&amp;gt; Contigs and Single&lt;br /&gt;
# Author: Rajkumar (r@rajkumar.in)&lt;br /&gt;
# Release: SEP 2010&lt;br /&gt;
&lt;br /&gt;
# *************************************************************&lt;br /&gt;
&lt;br /&gt;
# Libraries&lt;br /&gt;
	use strict;&lt;br /&gt;
	use Bio::Perl;&lt;br /&gt;
	use Bio::SeqIO;&lt;br /&gt;
	use Parallel::ForkManager;&lt;br /&gt;
&lt;br /&gt;
# At the top: Time Start&lt;br /&gt;
	my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);&lt;br /&gt;
&lt;br /&gt;
# Variables&lt;br /&gt;
	my $path    = &amp;quot;/home/raj/bio&amp;quot;;&lt;br /&gt;
	my $curdir  = &amp;quot;$path/user/rk/castor/unigene&amp;quot;;&lt;br /&gt;
	my $resdir  = &amp;quot;$curdir/result&amp;quot;;&lt;br /&gt;
	my $data   = &amp;quot;$curdir/data/castorEST.txt&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	my $tgicl   = &amp;quot;$path/tgicl/tgicl&amp;quot;;&lt;br /&gt;
	my $cpu     = &amp;quot;8&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	my ($i, $total, $file) = $_;&lt;br /&gt;
	my @files       = @_;&lt;br /&gt;
&lt;br /&gt;
#Multi-threading&lt;br /&gt;
	my $midstop     = &amp;quot;0&amp;quot;; 		&lt;br /&gt;
	my $pm          = new Parallel::ForkManager(1);&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
# Running the TGICL&lt;br /&gt;
	if (-e &amp;quot;$resdir&amp;quot;) {`rm -fr $resdir`;}&lt;br /&gt;
	if (! -e &amp;quot;$resdir&amp;quot;) {`mkdir $resdir`;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# Getiing into the folder&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	my $in  = Bio::SeqIO-&amp;gt;new(-file =&amp;gt; &amp;quot;$data&amp;quot;, -format =&amp;gt; &amp;#039;Fasta&amp;#039;);&lt;br /&gt;
	my ($identifier, $sequence) = $_;&lt;br /&gt;
 	while ( my $seq = $in-&amp;gt;next_seq() ) {&lt;br /&gt;
		$identifier = $seq-&amp;gt;id;&lt;br /&gt;
  		$sequence = $seq-&amp;gt;seq;&lt;br /&gt;
		$identifier =~ s/\|/_/g;&lt;br /&gt;
&lt;br /&gt;
		my $fasta = &amp;quot;&amp;gt;&amp;quot;.$identifier.&amp;quot;\n&amp;quot;.$sequence.&amp;quot;\n&amp;quot;;&lt;br /&gt;
			&lt;br /&gt;
		open (F, &amp;quot;&amp;gt;&amp;gt;&amp;quot;.$resdir.&amp;quot;/castorEST.fa&amp;quot;);&lt;br /&gt;
		print F &amp;quot;$fasta&amp;quot;;&lt;br /&gt;
		close F;&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	# TGILC&lt;br /&gt;
&lt;br /&gt;
	chdir &amp;quot;$resdir&amp;quot;;&lt;br /&gt;
	`$tgicl $resdir/castorEST.fa -c $cpu -l 40 -p 94 -M`;&lt;br /&gt;
			# -l miminum overlap length (default 40)&lt;br /&gt;
			# -M ignore lower-case masking in &amp;lt;fasta_db&amp;gt; sequences&lt;br /&gt;
			# -p minimum percent identity for overlaps &amp;lt;PID&amp;gt; (default 94)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# At the End: Time Calculation&lt;br /&gt;
	my ($sec_,$min_,$hour_,$mday_,$mon_,$year_,$wday_,$yday_,$isdst_) = localtime(time);&lt;br /&gt;
	my $days = $mday_-$mday;&lt;br /&gt;
	my $hours = $hour_-$hour;&lt;br /&gt;
	my $mins = $min_-$min;&lt;br /&gt;
	my $secs = $sec_-$sec;&lt;br /&gt;
	print &amp;quot;\n------------------------\nDuration: &amp;quot;;&lt;br /&gt;
	if ($days&amp;gt;0) { print &amp;quot;$days days&amp;quot;;}&lt;br /&gt;
	if ($hours&amp;gt;0) { print &amp;quot;: $hours hours&amp;quot;;}&lt;br /&gt;
	if ($mins&amp;gt;0) { print &amp;quot;: $mins mins&amp;quot;;}&lt;br /&gt;
	if ($secs&amp;gt;0) { print &amp;quot;: $secs secs&amp;quot;;}&lt;br /&gt;
	print &amp;quot;\n------------------------\n&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
# END&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#! /usr/bin/perl -w&lt;br /&gt;
&lt;br /&gt;
# *************************************************************&lt;br /&gt;
# This Programme does the following in sequence&lt;br /&gt;
# -&amp;gt; Open a results folder of TGICL&lt;br /&gt;
# -&amp;gt; parse the contigs and singlets&lt;br /&gt;
# -&amp;gt; Output as multifasta of single file&lt;br /&gt;
# Author: Rajkumar &amp;lt;r@rajkumar.in&amp;gt;&lt;br /&gt;
# Release SEP 2010 | For Rajendrakumar&lt;br /&gt;
# *************************************************************&lt;br /&gt;
&lt;br /&gt;
# Libraries&lt;br /&gt;
	use strict;&lt;br /&gt;
	use Bio::Perl;&lt;br /&gt;
	use Bio::SeqIO;&lt;br /&gt;
	use Parallel::ForkManager;&lt;br /&gt;
&lt;br /&gt;
# At the top: Time Start&lt;br /&gt;
	my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);&lt;br /&gt;
&lt;br /&gt;
# Variables&lt;br /&gt;
	my $path      = &amp;quot;/home/raj/bio&amp;quot;;&lt;br /&gt;
	my $curdir    = &amp;quot;$path/user/rk/castor/unigene&amp;quot;;&lt;br /&gt;
	my $resdir    = &amp;quot;$curdir/result&amp;quot;;&lt;br /&gt;
	my $data      = &amp;quot;$resdir/castorEST.fa&amp;quot;;&lt;br /&gt;
	my $pardir    = &amp;quot;$curdir/parsed&amp;quot;;&lt;br /&gt;
	my $cdbyank = &amp;quot;$path/tgicl/bin/cdbyank&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	my ($i, $total, $file) = $_;&lt;br /&gt;
	my @files       = @_;&lt;br /&gt;
&lt;br /&gt;
#Multi-threading&lt;br /&gt;
	my $midstop     = &amp;quot;0&amp;quot;; 		&lt;br /&gt;
	my $pm          = new Parallel::ForkManager(4);&lt;br /&gt;
&lt;br /&gt;
# making the parsed folder&lt;br /&gt;
&lt;br /&gt;
	if (-e &amp;quot;$pardir&amp;quot;) {`rm -fr $pardir`;}&lt;br /&gt;
	if (! -e &amp;quot;$pardir&amp;quot;) {`mkdir $pardir`;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# getting into the results folder&lt;br /&gt;
&lt;br /&gt;
	opendir (DIR, &amp;quot;$resdir&amp;quot;) or die $!;&lt;br /&gt;
	@files = readdir(DIR);&lt;br /&gt;
	close(DIR);&lt;br /&gt;
	&lt;br /&gt;
	my $c_files = @files - 2;&lt;br /&gt;
&lt;br /&gt;
	$i = 0;	&lt;br /&gt;
	foreach my $file(@files) {&lt;br /&gt;
		next if ($file eq &amp;quot;.&amp;quot; or $file eq &amp;quot;..&amp;quot;);&lt;br /&gt;
		next if ($file !~ m/^asm/);		&lt;br /&gt;
		#print &amp;quot;$file&amp;quot;;&lt;br /&gt;
		#next if (! -e &amp;quot;$resdir/$file/contigs&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
		$i++;&lt;br /&gt;
&lt;br /&gt;
		# Getting the contigs		&lt;br /&gt;
		my $in  = Bio::SeqIO-&amp;gt;new(-file =&amp;gt; &amp;quot;$resdir/$file/contigs&amp;quot;, -format =&amp;gt; &amp;#039;Fasta&amp;#039;);&lt;br /&gt;
		my ($identifier, $sequence) = $_;&lt;br /&gt;
	 	while ( my $seq = $in-&amp;gt;next_seq() ) {&lt;br /&gt;
			$identifier = $seq-&amp;gt;id;&lt;br /&gt;
	  		$sequence = $seq-&amp;gt;seq;&lt;br /&gt;
			&lt;br /&gt;
			my $count_seq = length($sequence);&lt;br /&gt;
			my $fasta = &amp;quot;&amp;gt;&amp;quot;.$identifier.&amp;quot;_Size:&amp;quot;.$count_seq.&amp;quot;bp\n&amp;quot;.$sequence.&amp;quot;\n&amp;quot;;&lt;br /&gt;
			&lt;br /&gt;
			open (F, &amp;quot;&amp;gt;&amp;gt;&amp;quot;.$pardir.&amp;quot;/contigs&amp;quot;);&lt;br /&gt;
			print F &amp;quot;$fasta&amp;quot;;&lt;br /&gt;
			close F;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	# Fetching singlets&lt;br /&gt;
	`$cdbyank $data.cidx &amp;lt;$data.singletons &amp;gt;$pardir/singlets.fa `;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# At the End: Time Calculation&lt;br /&gt;
	my ($sec_,$min_,$hour_,$mday_,$mon_,$year_,$wday_,$yday_,$isdst_) = localtime(time);&lt;br /&gt;
	my $days = $mday_-$mday;&lt;br /&gt;
	my $hours = $hour_-$hour;&lt;br /&gt;
	my $mins = $min_-$min;&lt;br /&gt;
	my $secs = $sec_-$sec;&lt;br /&gt;
	print &amp;quot;\n------------------------\nDuration: &amp;quot;;&lt;br /&gt;
	if ($days&amp;gt;0) { print &amp;quot;$days days&amp;quot;;}&lt;br /&gt;
	if ($hours&amp;gt;0) { print &amp;quot;: $hours hours&amp;quot;;}&lt;br /&gt;
	if ($mins&amp;gt;0) { print &amp;quot;: $mins mins&amp;quot;;}&lt;br /&gt;
	if ($secs&amp;gt;0) { print &amp;quot;: $secs secs&amp;quot;;}&lt;br /&gt;
	print &amp;quot;\n------------------------\n&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
# END				&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Raj</name></author>
	</entry>
</feed>