class Qu::Pcr::VirtualGel
Constants
- PARA
Public Class Methods
cal_mobility(size, gel_conc=1.0, ref_mobility=50)
click to toggle source
# File lib/qu/pcr.rb, line 80 def self.cal_mobility(size, gel_conc=1.0, ref_mobility=50) a, b, k = get_para(gel_conc) return ((a - b * Math.log(size + k)) * ref_mobility.to_f).round(2) end
cal_size(mobility, gel_conc=1.0, ref_mobility=50)
click to toggle source
# File lib/qu/pcr.rb, line 85 def self.cal_size(mobility, gel_conc=1.0, ref_mobility=50) a, b, k = get_para(gel_conc) return (Math.exp((a - mobility / ref_mobility.to_f) / b) - k).round end
cal_size_range(size, offset=2, gel_conc=1.0, ref_mobility=50)
click to toggle source
# File lib/qu/pcr.rb, line 90 def self.cal_size_range(size, offset=2, gel_conc=1.0, ref_mobility=50) y = cal_mobility(size, gel_conc, ref_mobility) x_min = cal_size(y + offset, gel_conc, ref_mobility) x_max = cal_size(y - offset, gel_conc, ref_mobility) return x_min, x_max end
get_para(gel_conc)
click to toggle source
# File lib/qu/pcr.rb, line 73 def self.get_para(gel_conc) a = PARA[gel_conc]['a'] b = PARA[gel_conc]['b'] k = PARA[gel_conc]['k'] return a, b, k end