@@ -161,24 +161,28 @@ function getatomdictfromrmg(mol)
161
161
molecularweight = mol. get_molecular_weight ()
162
162
return atmD,nbonds,molecularweight
163
163
end
164
- getatomdictsmiles (smiles) = getatomdictfromrdkit (Chem. AddHs (Chem. MolFromSmiles (smiles)))
164
+ function getatomdictsmiles (smiles)
165
+ if occursin (r" R" , smiles) || occursin (r" L" , smiles)
166
+ mol = fragment. Fragment (). from_smiles_like_string (smiles)
167
+ mol. assign_representative_molecule ()
168
+ getatomdictfromrmg (mol. mol_repr)
169
+ else
170
+ getatomdictfromrdkit (Chem. AddHs (Chem. MolFromSmiles (smiles)))
171
+ end
172
+ end
173
+
165
174
export getatomdictsmiles
166
175
getatomdictinchi (inchi) = getatomdictfromrdkit (Chem. AddHs (Chem. MolFromInchi (inchi)))
167
176
export getatomdictinchi
168
177
function getatomdictadjlist (adjlist)
169
178
_ , cutting_label_list = fragment. Fragment (). detect_cutting_label (adjlist)
170
179
if isempty (cutting_label_list)
171
180
mol = molecule. Molecule (). from_adjacency_list (adjlist)
181
+ getatomdictfromrmg (mol)
172
182
else
173
183
mol = fragment. Fragment (). from_adjacency_list (adjlist)
174
- end
175
- if pybuiltin (:isinstance )(mol, molecule. Molecule)
176
- getatomdictfromrmg (mol)
177
- elseif pybuiltin (:isinstance )(mol, fragment. Fragment)
178
184
mol. assign_representative_molecule ()
179
185
getatomdictfromrmg (mol. mol_repr)
180
- else
181
- @error (" Unrecognizable molecule type $mol " )
182
186
end
183
187
end
184
188
export getatomdictadjlist
0 commit comments