Hi Paolo, That works perfectly, thanks a lot!
Best regards Puck On Fri, 21 Aug 2020 at 23:49, Paolo Tosco <paolo.tosco.m...@gmail.com> wrote: > Hi Puck, > > here's a gist that shows how to do an unconstrained minimization (first > example, all atoms move) and one where all heavy atoms are fixed to their > initial position (second example, only hydrogens move). > > https://gist.github.com/ptosco/eeaf8ce92f19b10702f58e45e393366a > > Cheers, > p. > > On Fri, Aug 21, 2020 at 3:11 PM Puck van Gerwen <puck.vanger...@gmail.com> > wrote: > >> Hi Paolo, >> >> That works, thank you. I have a related question - after reading in >> molecules with their coordinates, I remove hydrogens to make them implicit. >> I later want to add the hydrogens back on and only optimise these, leaving >> the heavy atoms alone. I tried to do this with an ethyne molecule where I >> read the coordinates from an sdf file, removed the hydrogens, and added >> them back on again. They are all added to the origin. I am trying and >> failing to optimise the hydrogen positions without modifying the heavy >> atoms. This is what I have so far: >> >> # C atoms in positions 0 and 1 >> a = mol.GetConformer().GetAtomPosition(0) >> b = mol.GetConformer().GetAtomPosition(1) >> cmap = {0 : a, 1 : b} >> AllChem.EmbedMolecule(mol, core=mol, coordMap=cmap) >> >> AllChem.MMFFOptimizeMolecule(mol) >> >> When I print out the coordinates I can see the heavy atoms have also been >> modified. Would you be able to help me out here? >> >> Best regards, >> Puck >> >> On Thu, 20 Aug 2020 at 13:26, Paolo Tosco <paolo.tosco.m...@gmail.com> >> wrote: >> >>> Hi Puck, >>> >>> When you read a SDF file using a SDMolSupplier RDKit will retain 3D >>> coordinates. You can access them from the mol Conformer (a molecule can >>> have multiple Conforrmers; one is generated for you when you read a set of >>> coordinates): >>> >>> mol.GetConformer().GetAtomPosition(atom_idx) >>> >>> If you wish to retain hydrogen atoms, make sure to set removeHs=False >>> when creating the supplier. >>> >>> Cheers, >>> p. >>> >>> On 20 Aug 2020, at 12:54, Puck van Gerwen <puck.vanger...@gmail.com> >>> wrote: >>> >>> Dear rdkit, >>> >>> I am wondering whether after reading a molecule from an sdf file, it is >>> possible to keep the original 3d coordinates that were in that sdf file? I >>> will modify the molecules (fragment bonds and saturate with hydrogen) but >>> as much as possible I want to keep the original coordinates. For example, >>> if I had H3C-CH=CH2 and I break the first bond to remove H3C (to saturate >>> to CH4) leaving CH=CH2 (to saturate to H2C=CH2), would it be possible to >>> keep the original C coordinates rather than generate conformations and so >>> on? >>> >>> I appreciate the assistance. >>> Best regards, >>> -- >>> *Puck van Gerwen* >>> Doktorandin / PhD candidate >>> Departement Chemie >>> Klingelbergstrasse 80 >>> CH-4056 Basel >>> https://www.chemspacelab.org/ >>> >>> _______________________________________________ >>> Rdkit-discuss mailing list >>> Rdkit-discuss@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss >>> >>> >> >> -- >> *Puck van Gerwen* >> Doktorandin / PhD candidate >> Departement Chemie >> Klingelbergstrasse 80 >> CH-4056 Basel >> https://www.chemspacelab.org/ >> > -- *Puck van Gerwen* Doktorandin / PhD candidate Departement Chemie Klingelbergstrasse 80 CH-4056 Basel https://www.chemspacelab.org/
_______________________________________________ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss