File: rrna.pm

package info (click to toggle)
alien-hunter 1.7-10
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 268 kB
  • sloc: perl: 962; java: 358; sh: 32; makefile: 9
file content (116 lines) | stat: -rw-r--r-- 2,479 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
=head1 NAME

PAI_scripts::rrna

=head1 SYNOPSIS

Annotates alien_hunter predictions that overlap with a 16s 102bp rRNA motif;
This motif comes from a consensus of 16s rRNA alignment from:

Ecoli		223771:225312 forward
Mycobacterium	1341144:1342692 forward
Neisseria	198339:199883 reverse
Pseudomonas	722096:723631 forward
Rhizobium	2750005:2751465 reverse
Ricketsia	772263:773769 reverse
Salmonella	287479:289020 forward
Staph		514251:515805 forward
Streptococcus	17043:18549 forward
Thermotoga	188968:190526 forward
Vibrio		53823:55357 forward
Bacillus	9809:11361 forward
Chlamydia	856874:858423 forward
Clostridium 	8715:10223 reverse
Corynebacterium	76643:78166 forward
Campylobacter	39249:40761 forward
Mycoplasma	170007:171525 forward

=head1 AUTHOR

George Vernikos <gsv(at)sanger.ac.uk>


=head1 LICENSE

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

=cut


package PAI_scripts::rrna;
use Exporter;
@ISA = ("Exporter");
@EXPORT = qw (&rrna &overlapRNA);
	
sub rrna{
	
	$GenSeq=$_[0];
	$GenSeq=uc($GenSeq);
	
	
	#forward strand:
	$_=$GenSeq;
 	while(/(ACA..GG.ACTGAGA.AC.G.CC..ACTC.{0,1}TACGGGAGGC.GCAGT.G.GAAT.TT...CAATG...G.AA...TGA...AGC.A..CCG.GTG...GA.GA)/g){
	$to=pos($_);
	
	$len=length($1);
	$from=$to-$len+1;
	$loc{$from}=$to;
	print " possible rRNA signature: $from..$to\n";		
	}
	
	#reverse strand:
	$_=$GenSeq;
 	while(/(TC.TC...CAC.CGG..T.GCT...TCA...TT.C...CATTG...AA.ATTC.C.ACTGC.GCCTCCCGTA.{0,1}GAGT..GG.C.GT.TCTCAGT.CC..TGT)/g){
	$to=pos($_);
	
	$len=length($1);
	$from=$to-$len+1;
	$loc{$from}=$to;
	print " possible rRNA signature: $from..$to\n";		
	}		

	
return();	
}
1;
	
		
	sub overlapRNA{
	$from=$_[0];
	$to=$_[1];
	$check=0;
			foreach $k (keys %loc){
				if(($k>=$from) & ($k<$to)){
				$check=1;
				}
				elsif(($loc{k}>$from) & ($loc{k}<=$to)){
				$check=1;
				}
			}
		
		
	return($check);
	}
	1;