You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have some doubts on it. May you help me?
I was able to run the pre-trained models (checkpoints). A pickle is generated, but how to use this pickle to generate the SDF file for the particular molecule?
I noticed that a 2D molecule is generated in this pickle...How to include the conformers -- like an SDF -- so I can use the output 3D molecule?
Hi @alexgcsa, I was able to modify the 'gen.py' script to output pdb files doing the following:
from rdkit.Chem.rdmolfiles import MolToPDBFile
from rdkit.Chem.AllChem import EmbedMolecule
out = solver.generate_samples_from_smiles(*args*)
EmbedMolecule(out.rdmol, useRandomCoords=True)
gen_mol = utils.set_rdmol_positions(out.rdmol, out.pos_gen[-1])
MolToPDBFile(gen_mol, *output_filename*)
where you should replace appropriately args and output_filename.
If I understood properly the code, out.rdmol is the rdkit mol built from the smiles string.
While out.pos_gen are the generated atom positions.
According to the rdkit documentation, you should be able to write into sdf replacing the last line with:
Activity
[-]How to generate the SDF from the output?[/-][+]How to generate the 3D SDF from the output?[/+]federico-camerota commentedon Aug 5, 2021
Hi @alexgcsa, I was able to modify the 'gen.py' script to output pdb files doing the following:
where you should replace appropriately args and output_filename.
If I understood properly the code, out.rdmol is the rdkit mol built from the smiles string.
While out.pos_gen are the generated atom positions.
According to the rdkit documentation, you should be able to write into sdf replacing the last line with:
If you want to write the pkl into sdf, it should be enough to do:
out = pickle.load(*pkl_file*)Hope you find this helpful :)
P.S. If you find any error in my solution, please let me know
alexgcsa commentedon Aug 7, 2021
Thank you @federico-camerota , I will test your solution today.