module Mspire::MolecularFormula::Mass
Public Instance Methods
avg_mass(consider_electron_masses = true)
click to toggle source
# File lib/mspire/molecular_formula/mass.rb, line 16 def avg_mass(consider_electron_masses = true) mss = inject(0.0) {|sum,(el,cnt)| sum + (Mspire::Mass::Element::AVG_STRING[el.to_s]*cnt) } mss -= (Mspire::Mass::ELECTRON * charge) if consider_electron_masses mss end
mass(consider_electron_masses = true)
click to toggle source
gives the monoisotopic mass adjusted by the current charge (i.e., adds/subtracts electron masses for the charges)
# File lib/mspire/molecular_formula/mass.rb, line 8 def mass(consider_electron_masses = true) mss = inject(0.0) do |sum,(el,cnt)| sum + (Mspire::Mass::Element::MONO_STRING[el.to_s]*cnt) end mss -= (Mspire::Mass::ELECTRON * charge) if consider_electron_masses mss end
mz(consider_electron_masses = true, negative_mz_allowed = true)
click to toggle source
the mass to charge ratio (m/z) returns nil if the charge == 0
# File lib/mspire/molecular_formula/mass.rb, line 24 def mz(consider_electron_masses = true, negative_mz_allowed = true) if charge == 0 nil else mass(consider_electron_masses) / (negative_mz_allowed ? charge : charge.abs) end end