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

Diff of /FigKernelScripts/build_initial_objects_for_start_predictions.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2, Thu Apr 28 19:07:16 2005 UTC revision 1.6, Fri Aug 5 17:43:53 2005 UTC
# Line 1  Line 1 
 use FIG_Config;  
1    
2  use FIG;  use FIG;
3  my $fig = new FIG;  my $fig = new FIG;
# Line 8  Line 7 
7  @pegs = <STDIN>;  @pegs = <STDIN>;
8  chomp @pegs;  chomp @pegs;
9  # print "NPEGS=", scalar(@pegs), "\n";  # print "NPEGS=", scalar(@pegs), "\n";
 for ($i=0; $i < @pegs; $i++)  # strip off all but peg ids at front  
 {  
     if ($pegs[$i] =~ /(\S+)\t.*/)  
     {  
         $pegs[$i] = $1;  
     }  
 }  
10    
11  foreach $peg (@pegs)  foreach $peg (@pegs)
12  {  {
13        if ($peg =~ /^fig\|\d+\.\d+$/)
14        {
15      $genome = $fig->genome_of($peg);      $genome = $fig->genome_of($peg);
16      $loc = $fig->feature_location($peg);      $loc = $fig->feature_location($peg);
17      # print "$len{$peg}\t$peg\t$loc\n";      # print "$len{$peg}\t$peg\t$loc\n";
# Line 26  Line 20 
20          print STDERR "skipping $peg - do not handle complex locs\n";          print STDERR "skipping $peg - do not handle complex locs\n";
21          next;          next;
22      }      }
23        }
24        elsif ($peg =~ /^(new\|(\d+\.\d+)\.peg\.\d+)\t(\S+)/)
25        {
26            $peg = $1;
27            $genome = $2;
28            $loc = $3;
29        }
30    
31        ($genome && $loc) || confess $peg;
32    
33        my $lnC = $fig->contig_ln($genome,$contig);
34      ($contig,$begin,$end) = $fig->boundaries_of($loc);      ($contig,$begin,$end) = $fig->boundaries_of($loc);
35      if ($begin < $end)      if ($begin < $end)
36      {      {
37          $l = sprintf("%s_%d_%d",$contig,1,$begin-1);          $l = sprintf("%s_%d_%d",$contig,1,$begin-1);
38            if ($end < ($lnC-3))
39            {
40          $end += 3;          $end += 3;
41      }      }
42        }
43      else      else
44      {      {
45          $l = sprintf("%s_%d_%d",$contig,$begin+1,$fig->contig_ln($genome,$contig));          $l = sprintf("%s_%d_%d",$contig,$fig->contig_ln($genome,$contig),$begin+1);
46            if ($end > 3)
47            {
48          $end -= 3;          $end -= 3;
49      }      }
50        }
51    
52      $loc = join("_",($contig,$begin,$end));      $loc = join("_",($contig,$begin,$end));
53      $seq = uc $fig->dna_seq($genome,$loc);      $seq = uc $fig->dna_seq($genome,$loc);
54    
55        if (! $seq)
56        {
57            print STDERR &Dumper($peg,$loc,$seq); die "could not get sequence for $peg";
58        }
59    
60  #   The following hack handles uncertainty about whether SEED gives back the STOP or not  #   The following hack handles uncertainty about whether SEED gives back the STOP or not
61      if (substr($seq,-6,3) =~ /TAA|TAG|TGA/i)      if (substr($seq,-6,3) =~ /TAA|TAG|TGA/i)
62      {      {
# Line 49  Line 65 
65      }      }
66      elsif (substr($seq,-3,3) !~ /TAA|TAG|TGA/i)      elsif (substr($seq,-3,3) !~ /TAA|TAG|TGA/i)
67      {      {
68          die "BAD STOP: $genome $loc $seq\n";          warn "BAD STOP: $peg $genome $loc $seq\n";
69      }      }
70    
71      $loc = join("_",($contig,$begin,$end));      $loc = join("_",($contig,$begin,$end));
# Line 70  Line 86 
86              if (($i-27) > 0)              if (($i-27) > 0)
87              {              {
88                  $pre_orf = substr($pre_peg,$i-27,30);                  $pre_orf = substr($pre_peg,$i-27,30);
89                  my $gs = $fig->org_of($peg);                  my $gs = $fig->genus_species($genome);
90                  my @aliases = grep { $_ =~ /^([NXYZA]P_[0-9\.]+)|(uni\|)|(sp\|)/ } $fig->feature_aliases($peg);                  my @aliases = ();
91                    if ($peg =~ /^fig/)
92                    {
93                        @aliases = grep { $_ =~ /^([NXYZA]P_[0-9\.]+)|(uni\|)|(sp\|)/ } $fig->feature_aliases($peg);
94                    }
95    
96                  print "ID=$peg\n";                  print "ID=$peg\n";
97                  print "GENOME=$gs\n";                  print "GENOME=$gs\n";
98                  if (@aliases > 0)                  if (@aliases > 0)
# Line 79  Line 100 
100                      print "ALIASES=",join(",",@aliases),"\n";                      print "ALIASES=",join(",",@aliases),"\n";
101                  }                  }
102                  print "CONTIG=$contig\n";                  print "CONTIG=$contig\n";
103                  #####print "BEGIN=$begin\n";  
104                  if ($begin < $end)                  if ($begin < $end)
105                  {                  {
106                      print "BEGIN=", $begin-($len_pre_peg-$i-3), "\n";                      print "BEGIN=", $begin-($len_pre_peg-$i-3), "\n";

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.6

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3