ms-sequest 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History +5 -0
- data/lib/ms/sequest.rb +1 -1
- data/lib/ms/sequest/srf.rb +11 -11
- metadata +2 -2
    
        data/History
    CHANGED
    
    | @@ -1,3 +1,8 @@ | |
| 1 | 
            +
            == 0.0.6 / 2009-06-26
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            * fixed bug affecting only version 0.0.5 in srf reader affecting any file where print_duplicate_references was less than the number of protein references found for a peptide, but also > 0.
         | 
| 4 | 
            +
            * so, the srf reader now robustly supports reading srf files regardless of print_duplicate_references setting.
         | 
| 5 | 
            +
             | 
| 1 6 | 
             
            == 0.0.5 / 2009-06-22
         | 
| 2 7 |  | 
| 3 8 | 
             
            * fixed handling of files with print_duplicate_references = 0
         | 
    
        data/lib/ms/sequest.rb
    CHANGED
    
    
    
        data/lib/ms/sequest/srf.rb
    CHANGED
    
    | @@ -149,6 +149,7 @@ class Ms::Sequest::Srf | |
| 149 149 | 
             
                opts = { :filter_by_precursor_mass_tolerance => true, :link_protein_hits => true}.merge(opts)
         | 
| 150 150 | 
             
                params = Ms::Sequest::Srf.get_sequest_params(filename)
         | 
| 151 151 | 
             
                dup_references = 0
         | 
| 152 | 
            +
                dup_refs_gt_0 = false
         | 
| 152 153 | 
             
                if params
         | 
| 153 154 | 
             
                  dup_references = params.print_duplicate_references.to_i
         | 
| 154 155 | 
             
                  if dup_references == 0
         | 
| @@ -164,8 +165,11 @@ print_duplicate_references > 0. HINT: to capture all duplicate references, | |
| 164 165 | 
             
            set the sequest parameter 'print_duplicate_references' to 100 or greater.
         | 
| 165 166 | 
             
            *****************************************************************************
         | 
| 166 167 | 
             
            END
         | 
| 168 | 
            +
                  else
         | 
| 169 | 
            +
                    dup_refs_gt_0 = true
         | 
| 167 170 | 
             
                  end
         | 
| 168 171 | 
             
                else
         | 
| 172 | 
            +
                  warn "no params file found in srf, could be truncated file!"
         | 
| 169 173 | 
             
                end
         | 
| 170 174 |  | 
| 171 175 | 
             
                File.open(filename, "rb") do |fh|
         | 
| @@ -182,7 +186,7 @@ END | |
| 182 186 | 
             
                              end
         | 
| 183 187 | 
             
                  @dta_files, measured_mhs = read_dta_files(fh,@header.num_dta_files, unpack_35)
         | 
| 184 188 |  | 
| 185 | 
            -
                  @out_files = read_out_files(fh,@header.num_dta_files, measured_mhs, unpack_35,  | 
| 189 | 
            +
                  @out_files = read_out_files(fh,@header.num_dta_files, measured_mhs, unpack_35, dup_refs_gt_0)
         | 
| 186 190 | 
             
                  if fh.eof?
         | 
| 187 191 | 
             
                    #warn "FILE: '#{filename}' appears to be an abortive run (no params in srf file)\nstill continuing..."
         | 
| 188 192 | 
             
                    @params = nil
         | 
| @@ -210,9 +214,6 @@ END | |
| 210 214 | 
             
                    pep_hit[11] = pep_hit[0] - mass_measured  # real - measured (deltamass)
         | 
| 211 215 | 
             
                    pep_hit[12] = 1.0e6 * pep_hit[11].abs / mass_measured ## ppm
         | 
| 212 216 | 
             
                    pep_hit[18] = self  ## link with the srf object
         | 
| 213 | 
            -
                    if pep_hit.first_scan == 5719
         | 
| 214 | 
            -
                      puts [pep_hit.sequence, pep_hit.xcorr].join(' ')
         | 
| 215 | 
            -
                    end
         | 
| 216 217 | 
             
                  end
         | 
| 217 218 | 
             
                end
         | 
| 218 219 |  | 
| @@ -260,10 +261,10 @@ END | |
| 260 261 |  | 
| 261 262 | 
             
              # filehandle (fh) must be at the start of the outfiles.  'read_dta_files'
         | 
| 262 263 | 
             
              # will put the fh there.
         | 
| 263 | 
            -
              def read_out_files(fh,number_files, measured_mhs, unpack_35,  | 
| 264 | 
            +
              def read_out_files(fh,number_files, measured_mhs, unpack_35, dup_refs_gt_0)
         | 
| 264 265 | 
             
                out_files = Array.new(number_files)
         | 
| 265 266 | 
             
                header.num_dta_files.times do |i|
         | 
| 266 | 
            -
                  out_files[i] = Ms::Sequest::Srf::Out.new.from_io(fh, unpack_35,  | 
| 267 | 
            +
                  out_files[i] = Ms::Sequest::Srf::Out.new.from_io(fh, unpack_35, dup_refs_gt_0)
         | 
| 267 268 | 
             
                end
         | 
| 268 269 | 
             
                out_files
         | 
| 269 270 | 
             
              end
         | 
| @@ -470,7 +471,7 @@ class Ms::Sequest::Srf::Out | |
| 470 471 | 
             
                "<Ms::Sequest::Srf::Out  first_scan=#{first_scan}, last_scan=#{last_scan}, charge=#{charge}, num_hits=#{num_hits}, computer=#{computer}, date_time=#{date_time}#{hits_s}>"
         | 
| 471 472 | 
             
              end
         | 
| 472 473 |  | 
| 473 | 
            -
              def from_io(fh, unpack_35,  | 
| 474 | 
            +
              def from_io(fh, unpack_35, dup_refs_gt_0)
         | 
| 474 475 | 
             
                ## EMPTY out file is 96 bytes
         | 
| 475 476 | 
             
                ## each hit is 320 bytes
         | 
| 476 477 | 
             
                ## num_hits and charge:
         | 
| @@ -487,13 +488,13 @@ class Ms::Sequest::Srf::Out | |
| 487 488 | 
             
                    ar[i] = Ms::Sequest::Srf::Out::Pep.new.from_io(fh, unpack_35)
         | 
| 488 489 | 
             
                    num_extra_references += ar[i].num_other_loci
         | 
| 489 490 | 
             
                  end
         | 
| 490 | 
            -
                   | 
| 491 | 
            -
             | 
| 491 | 
            +
                  if dup_refs_gt_0
         | 
| 492 | 
            +
                    Ms::Sequest::Srf::Out::Pep.read_extra_references(fh, num_extra_references, ar)
         | 
| 493 | 
            +
                  end
         | 
| 492 494 | 
             
                  ## The xcorrs are already ordered by best to worst hit
         | 
| 493 495 | 
             
                  ## ADJUST the deltacn's to be meaningful for the top hit:
         | 
| 494 496 | 
             
                  ## (the same as bioworks and prophet)
         | 
| 495 497 | 
             
                  Ms::Sequest::Srf::Out::Pep.set_deltacn_from_deltacn_orig(ar)
         | 
| 496 | 
            -
                  #puts ar.map  {|a| a.deltacn }.join(", ")
         | 
| 497 498 | 
             
                end
         | 
| 498 499 | 
             
                self[6] = ar
         | 
| 499 500 | 
             
                self
         | 
| @@ -677,7 +678,6 @@ class Ms::Sequest::SrfGroup | |
| 677 678 | 
             
                indiv_opts = { :link_protein_hits => false }
         | 
| 678 679 | 
             
                super(arg, opts.merge(indiv_opts)) do
         | 
| 679 680 | 
             
                  unless orig_opts[:link_protein_hits] == false
         | 
| 680 | 
            -
                    puts "MERGING GROUP!"
         | 
| 681 681 | 
             
                    (@peps, @prots) = merge!(@searches.map {|v| v.peps }) do |_prot, _peps|
         | 
| 682 682 | 
             
                      Ms::Sequest::Srf::Out::Prot.new(_prot.reference, _peps)
         | 
| 683 683 | 
             
                    end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification 
         | 
| 2 2 | 
             
            name: ms-sequest
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.6
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors: 
         | 
| 7 7 | 
             
            - John Prince
         | 
| @@ -9,7 +9,7 @@ autorequire: | |
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 11 |  | 
| 12 | 
            -
            date: 2009-06- | 
| 12 | 
            +
            date: 2009-06-26 00:00:00 -06:00
         | 
| 13 13 | 
             
            default_executable: 
         | 
| 14 14 | 
             
            dependencies: 
         | 
| 15 15 | 
             
            - !ruby/object:Gem::Dependency 
         |