HI,

I want to edit the molecule's 3D structure(coordinates) without changing the 
connectivity.

I did the following.

def get_conformers(smiles):
    m = Chem.MolFromSmiles("CC")
    m2=Chem.AddHs(m)
    Sp = []
    for at in m2.GetAtoms():
        Sp.append(at.GetSymbol())
    species = "".join(Sp)
#     cids = AllChem.EmbedMultipleConfs(m2, numConfs=10*len(species), 
randomSeed=24)
    cids = AllChem.EmbedMultipleConfs(m2, numConfs=1, randomSeed=24)
    res = AllChem.MMFFOptimizeMoleculeConfs(m2)
    # run ETKDG 10 times
    n_conf = len(cids)
    rmslist = []
    AllChem.AlignMolConformers(m2, RMSlist=rmslist)
    return m2, n_conf, rmslist, species


mol_confs, n_conf, rmslist, species  = get_conformers(sm)

I can get coordinates using mol_confs.GetConformer().GetPositions(). What I 
want is to add say x = [1.0, 1.0, 1.0] to first carbon atom.

previous_coor = mol_confs.GetConformer().GetPositions()
new_coor = previous_coor[1] + x

I want to create new ethane with new_coor. how do I do it? I have species and 
new_coor to create new ethane with no change in connectivity.



Regards,
Rohit Modee
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to