Many thanks again, Wim
I was just moving in that direction, modifying directly the resulting molfile.

Regards
Santiago

[http://www.mestrelab.com/mestrelab/wp-content/uploads/signs/line3.jpg]
[http://www.mestrelab.com/mestrelab/wp-content/uploads/signs/M-red-200pxb.jpg]<http://www.mestrelab.com>

SANTIAGO FRAGA
Software Developer
santi...@mestrelab.com<mailto:%20santi...@mestrelab.com>

MESTRELAB RESEARCH S.L.
PHONE +34881976775
FAX +34981941079
Feliciano Barrera, 9B-Bajo 15706
Santiago de Compostela (SPAIN)

Follow us:
[Mestrelab Twitter]<https://twitter.com/mestrelab>  [Mestrelab Linkedin] 
<https://www.linkedin.com/company/mestrelab-research>   [Canal de YouTube 
Mestrelab] <https://www.youtube.com/channel/UCf3MVnd3XZflv0acvTv14ww>   
[MestreBlog] <http://mestrelab.com/blog/>



________________________________
De: Wim Dehaen <wimdeh...@gmail.com>
Enviado: martes, 11 de abril de 2023 11:25
Para: Santiago Fraga <santi...@mestrelab.com>
Cc: rdkit-discuss@lists.sourceforge.net <rdkit-discuss@lists.sourceforge.net>
Asunto: Re: [Rdkit-discuss] Deuterium/Tritium labels in Molfile

Sorry for not reading your question properly. I am personally not aware of a 
way to export molfiles in this way in rdkit, but I might just be unaware. I 
think the easiest solution would be probably changing the molblock string post 
hoc by reading the M  ISO line.

for example like this in python:
```
mol=Chem.MolFromSmiles("c1c2cccc1[3H].[2H]2")

def MolToMolfileDT(mol,path):
    mb=Chem.MolToMolBlock(mol).split("\n")
    iso=[x for x in mb[-3].split(" ") if len(x)>0]
    if iso[1]=="ISO": #check if theres isotope info
        for i in range(int(iso[2])):
            isotope=int(iso[4+2*i])
            idx=int(iso[3+2*i])+3
            if isotope in [2,3]: #only D and T
                mb[idx]=mb[idx].replace("H",{2:"D",3:"T"}[isotope]) #replace 
only H (to not have issues like [3Li])
    with open(path, "w") as molfile:
        molfile.write("\n".join(mb))
    return

MolToMolfileDT(mol,"mol.mol")```

this returns:

     RDKit          2D

  8  8  0  0  0  0  0  0  0  0999 V2000
    1.5000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.7500   -1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.7500   -1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.5000    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.7500    1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.7500    1.2990    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.5000    2.5981    0.0000 T   0  0  0  0  0  0  0  0  0  0  0  0
    1.5000   -2.5981    0.0000 D   0  0  0  0  0  0  0  0  0  0  0  0
  1  2  2  0
  2  3  1  0
  3  4  2  0
  4  5  1  0
  5  6  2  0
  6  7  1  0
  6  1  1  0
  8  2  1  0
M  ISO  2   7   3   8   2
M  END


best wishes
wim


On Tue, Apr 11, 2023 at 9:14 AM Santiago Fraga 
<santi...@mestrelab.com<mailto:santi...@mestrelab.com>> wrote:
Many thanks for your examples, Wim.
But I was checking the option to save the labels D and T in the molfile for the 
hydrogen isotopes,
as other tools can do.

Regards
Santiago

[http://www.mestrelab.com/mestrelab/wp-content/uploads/signs/line3.jpg]
[http://www.mestrelab.com/mestrelab/wp-content/uploads/signs/M-red-200pxb.jpg]<http://www.mestrelab.com>

SANTIAGO FRAGA
Software Developer
santi...@mestrelab.com<mailto:+santi...@mestrelab.com>

MESTRELAB RESEARCH S.L.
PHONE +34881976775
FAX +34981941079
Feliciano Barrera, 9B-Bajo 15706
Santiago de Compostela (SPAIN)

Follow us:
[Mestrelab Twitter]<https://twitter.com/mestrelab>  [Mestrelab Linkedin] 
<https://www.linkedin.com/company/mestrelab-research>   [Canal de YouTube 
Mestrelab] <https://www.youtube.com/channel/UCf3MVnd3XZflv0acvTv14ww>   
[MestreBlog] <http://mestrelab.com/blog/>



________________________________
De: Wim Dehaen <wimdeh...@gmail.com<mailto:wimdeh...@gmail.com>>
Enviado: lunes, 10 de abril de 2023 18:07
Para: Santiago Fraga <santi...@mestrelab.com<mailto:santi...@mestrelab.com>>
Cc: 
rdkit-discuss@lists.sourceforge.net<mailto:rdkit-discuss@lists.sourceforge.net> 
<rdkit-discuss@lists.sourceforge.net<mailto:rdkit-discuss@lists.sourceforge.net>>
Asunto: Re: [Rdkit-discuss] Deuterium/Tritium labels in Molfile

rdkit outputs a molfile with correct isotope labels for me using just:

mol=Chem.MolFromSmiles("[3H]c1ccccc1[2H]")
Chem.MolToMolFile(mol,"test.mol")

or labelling the atoms post hoc:

mol=Chem.MolFromSmiles("c1ccccc1")
mol=Chem.AddHs(mol)
mol.GetAtomWithIdx(6).SetIsotope(3)
mol.GetAtomWithIdx(7).SetIsotope(2)
mol=Chem.RemoveHs(mol)
Chem.MolToMolFile(mol,"test2.mol")

I hope this helps

best wishes
wim


On Mon, Apr 10, 2023 at 4:43 PM Santiago Fraga 
<santi...@mestrelab.com<mailto:santi...@mestrelab.com>> wrote:
 Good afternoon!

      I am a relatively new user of RDKit, and mainly the C++ API.

      I am trying to save in a molfile the labels D and T for the hydrogen 
isotopes.
      Like in the following molfile:

  MJ230401

  8  8  0  0  0  0  0  0  0  0999 V2000
   -0.3572    0.4125    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.0716    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.0716   -0.8250    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.3572   -1.2375    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.3572   -0.8250    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.3572    0.0000    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.3572    1.2375    0.0000 T   0  0  0  0  0  0  0  0  0  0  0  0
    1.0717    0.4125    0.0000 D   0  0  0  0  0  0  0  0  0  0  0  0
  3  4  2  0  0  0  0
  4  5  1  0  0  0  0
  5  6  2  0  0  0  0
  6  1  1  0  0  0  0
  1  2  2  0  0  0  0
  2  3  1  0  0  0  0
  6  8  1  0  0  0  0
  1  7  1  0  0  0  0
M  END

        I am trying to set directly the labels in the hydrogen atoms:

        atom->setProp<string>("atomLabel", "D");
        or
     atom->setProp<string>("_displayLabel", "D");

       But when the molfile is generated the labels are not transferred.
       It seems also that when reading a mofile including the labels, they are 
discarded.


Many thanks in advance
Santiago Fraga


_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net<mailto:Rdkit-discuss@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to