[Bio] / FigKernelScripts / relevant_pchsG.pl Repository:
ViewVC logotype

Annotation of /FigKernelScripts/relevant_pchsG.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (view) (download) (as text)

1 : overbeek 1.1
2 :     use FIG;
3 :     my $fig = new FIG;
4 :    
5 :     use DBrtns;
6 :     my $dbh = $fig->db_handle;
7 :    
8 :     $usage = "usage: relevant_pchs Genome";
9 :    
10 :     (
11 :     ($genome = shift @ARGV)
12 :     )
13 :     || die $usage;
14 :    
15 : olson 1.3 if ($genome =~ /^\d+\.\d+$/)
16 :     {
17 :     my $mg = $fig->map_genome_to_id($genome);
18 :     print STDERR "Mapped $genome to $mg\n";
19 :     $genome = $mg;
20 :     }
21 :     elsif ($genome =~ /^\d+$/)
22 :     {
23 :     my $g = $fig->map_id_to_genome($genome);
24 :     print STDERR "Using mapped genome $g\n";
25 :     }
26 :     else
27 :     {
28 :     die "Invalid genome identifier\n";
29 :     }
30 :    
31 :    
32 : olson 1.2 my $qry = qq(SELECT r1.g1, r1.p1,
33 :     r1.g2, r1.p2,
34 :     r2.g2, r2.p2,
35 :     r3.g2, r3.p2,
36 :     r2.iden, r3.iden, r2.paraN, r3.paraN
37 :     FROM close_pegs r1, condensed_sims r2, condensed_sims r3, close_pegs r4
38 :     WHERE (r1.g1 = $genome AND
39 :     r1.g1 = r2.g1 AND
40 :     r1.p1 = r2.p1 AND
41 :    
42 :     r1.g2 = r3.g1 AND
43 :     r1.p2 = r3.p1 AND
44 :    
45 :     r4.g1 = r2.g2 AND
46 :     r4.p1 = r2.p2 AND
47 :    
48 :     r4.g2 = r3.g2 AND
49 :     r4.p2 = r3.p2)
50 :     );
51 :    
52 :     if (($res = $dbh->SQL($qry)) &&
53 : overbeek 1.1 (@$res > 0))
54 :     {
55 : olson 1.2 foreach $x (sort { ($a->[0] <=> $b->[0]) or ($a->[1] <=> $b->[1]) or ($a->[2] <=> $b->[2]) or
56 :     ($a->[3] <=> $b->[3]) or ($b->[8] <=> $a->[8]) } @$res)
57 : overbeek 1.1 {
58 :     print join("\t",@$x),"\n";
59 :     }
60 :     }

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3