Class: Ruspider::Compound
- Inherits:
-
Object
- Object
- Ruspider::Compound
- Defined in:
- lib/ruspider/compound.rb
Overview
ChemSpider Compound Data container and parser
Instance Attribute Summary collapse
-
#csid ⇒ Object
readonly
Returns the value of attribute csid.
Instance Method Summary collapse
- #alogp ⇒ Object
- #average_mass ⇒ Object
- #common_name ⇒ Object
- #extended_compound_info ⇒ Object
- #image ⇒ Object
- #image_url ⇒ Object
- #inchi ⇒ Object
- #inchikey ⇒ Object
-
#initialize(csid, cs) ⇒ Compound
constructor
A new instance of Compound.
- #mol_2d ⇒ Object
- #mol_3d ⇒ Object
- #mol_raw ⇒ Object
- #molecular_formula ⇒ Object
- #molecular_weight ⇒ Object
- #monoisotopic_mass ⇒ Object
- #nominal_mass ⇒ Object
- #smiles ⇒ Object
- #spectra ⇒ Object
- #xlogp ⇒ Object
Constructor Details
#initialize(csid, cs) ⇒ Compound
Returns a new instance of Compound.
8 9 10 11 12 |
# File 'lib/ruspider/compound.rb', line 8 def initialize(csid, cs) @csid = csid @cs = cs @extended_compound_info = nil end |
Instance Attribute Details
#csid ⇒ Object (readonly)
Returns the value of attribute csid.
6 7 8 |
# File 'lib/ruspider/compound.rb', line 6 def csid @csid end |
Instance Method Details
#alogp ⇒ Object
58 59 60 |
# File 'lib/ruspider/compound.rb', line 58 def alogp extended_compound_info[:alogp] end |
#average_mass ⇒ Object
42 43 44 |
# File 'lib/ruspider/compound.rb', line 42 def average_mass extended_compound_info[:average_mass] end |
#common_name ⇒ Object
66 67 68 |
# File 'lib/ruspider/compound.rb', line 66 def common_name extended_compound_info[:common_name] end |
#extended_compound_info ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/ruspider/compound.rb', line 18 def extended_compound_info if @extended_compound_info.nil? @extended_compound_info = @cs.get_extended_compound_info(@csid) end @extended_compound_info end |
#image ⇒ Object
82 83 84 |
# File 'lib/ruspider/compound.rb', line 82 def image @cs.get_compound_thumbnail(@csid) end |
#image_url ⇒ Object
14 15 16 |
# File 'lib/ruspider/compound.rb', line 14 def image_url 'http://www.chemspider.com/ImagesHandler.ashx?id=%s' + @csid end |
#inchi ⇒ Object
34 35 36 |
# File 'lib/ruspider/compound.rb', line 34 def inchi extended_compound_info[:inchi] end |
#inchikey ⇒ Object
38 39 40 |
# File 'lib/ruspider/compound.rb', line 38 def inchikey extended_compound_info[:inchikey] end |
#mol_2d ⇒ Object
70 71 72 |
# File 'lib/ruspider/compound.rb', line 70 def mol_2d @cs.get_record_mol(@csid, False) end |
#mol_3d ⇒ Object
74 75 76 |
# File 'lib/ruspider/compound.rb', line 74 def mol_3d @cs.get_record_mol(@csid, True) end |
#mol_raw ⇒ Object
78 79 80 |
# File 'lib/ruspider/compound.rb', line 78 def mol_raw @cs.get_original_mol(@csid) end |
#molecular_formula ⇒ Object
26 27 28 |
# File 'lib/ruspider/compound.rb', line 26 def molecular_formula extended_compound_info[:molecular_formula] end |
#molecular_weight ⇒ Object
46 47 48 |
# File 'lib/ruspider/compound.rb', line 46 def molecular_weight extended_compound_info[:molecular_weight] end |
#monoisotopic_mass ⇒ Object
50 51 52 |
# File 'lib/ruspider/compound.rb', line 50 def monoisotopic_mass extended_compound_info[:monoisotopic_mass] end |
#nominal_mass ⇒ Object
54 55 56 |
# File 'lib/ruspider/compound.rb', line 54 def nominal_mass extended_compound_info[:nominal_mass] end |
#smiles ⇒ Object
30 31 32 |
# File 'lib/ruspider/compound.rb', line 30 def smiles extended_compound_info[:smiles] end |
#spectra ⇒ Object
86 87 88 89 90 91 |
# File 'lib/ruspider/compound.rb', line 86 def spectra spectra_list = @cs.get_spectra_info_list(@csid) spectra_list.map { |s| Spectrum.new(s) } # [Spectrum.from_info_dict(self._cs, info) # for info in self._cs.get_spectra_info_list([self.csid])] end |
#xlogp ⇒ Object
62 63 64 |
# File 'lib/ruspider/compound.rb', line 62 def xlogp extended_compound_info[:xlogp] end |