Class: GlyDevKit::MolWURCS
- Inherits:
-
Object
- Object
- GlyDevKit::MolWURCS
- Defined in:
- lib/glydevkit/mol_wurcs.rb
Instance Method Summary collapse
- #mol2wurcs(smiles) ⇒ Object
-
#wurcs2mol(w, format) ⇒ String
String with specified molecular descriptor.
Instance Method Details
#mol2wurcs(smiles) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/glydevkit/mol_wurcs.rb', line 50 def mol2wurcs(smiles) parser = SmilesParser.new(DefaultChemObjectBuilder.getInstance) molecule = parser.parseSmiles(smiles) begin graphs = MoleculeToWURCSGraph.new.start(molecule) rescue StandardError => e puts "An error occurred: #{e.}" puts "This method currently only supports up to WURCSFramework version 1.2.16. You need to downgrade the WURCSFramework using the command: `ruby -r init -e \'Init.switch_WFW_version(\"1.2.16\")\'`." raise end factory = WURCSFactory.new(graphs[0]) return {"wurcs": factory.getWURCS(), "input": smiles} end |
#wurcs2mol(w, format) ⇒ String
Returns string with specified molecular descriptor.
36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/glydevkit/mol_wurcs.rb', line 36 def wurcs2mol(w,format) mols = read_wurcs(w) return {"flag": false,"wurcs": w, "message": "WURCS strings that could not be parsed to the atomic level"} if mols.nil? case format when "sdf" {"wurcs": w}.merge(export_to_sdf(mols)) when "smiles" {"wurcs": w}.merge(export_to_smiles(mols)) else {"flag": false,"wurcs": w, "#{format}": "", "message": "Undefined format"} end end |