Dear Simone,

Thanks for your feedback. As some might know at some point I implemented the 
Mol2 parser. During my search for a good description of the mol2 file format I 
had to learn that there is not a really good one and (because of this I assume) 
many software will have different answers for the same molecule in mol2 (even 
different tools from Tripos will result in different mol2 files).
So – what we decided on at that point was that we will use the corina mol2 
format since at least here we can do a proper testing (this is also found in 
the code docs). Jhere is some simple examples that explain the warning you see.

stiefni2@camm31 ~ ->echo 'CCOP(=O)(=O)[O-]' | corina -i t=smiles -o t=mol2
# Name: NoName
# Creating user name: stiefni2
# Creation time: 28. 06. 2012 22:55

# Modifying user name: stiefni2
# Modification time: 28. 06. 2012 22:55

# Program: corina 3.48 0006  22.01.2010

@<TRIPOS>MOLECULE
NoName
   7    6    0    0    0
SMALL
NO_CHARGES


@<TRIPOS>ATOM
   1 C1            -0.0187     1.5258     0.0104 C.3
   2 C2             0.0021    -0.0041     0.0020 C.3
   3 O3             0.6709    -0.4649    -1.1737 O.3
   4 P4             0.8773    -2.0258    -1.5102 P.3
   5 O5             2.2183    -2.2222    -2.2057 O.2
   6 O6             0.8528    -2.8315    -0.2177 O.2
   7 O7            -0.2438    -2.5004    -2.4258 O.3
@<TRIPOS>BOND
   1    1    2 1
   2    2    3 1
   3    3    4 1
   4    4    5 2
   5    4    6 2
   6    4    7 1

# End of record

stiefni2@camm31 ~ ->echo 'CCOS(=O)(=O)[O-]' | corina -i t=smiles -o t=mol2
# Name: NoName
# Creating user name: stiefni2
# Creation time: 28. 06. 2012 22:55

# Modifying user name: stiefni2
# Modification time: 28. 06. 2012 22:55

# Program: corina 3.48 0006  22.01.2010

@<TRIPOS>MOLECULE
NoName
   7    6    0    0    0
SMALL
NO_CHARGES


@<TRIPOS>ATOM
   1 C1            -0.0187     1.5258     0.0104 C.3
   2 C2             0.0021    -0.0041     0.0020 C.3
   3 O3             0.6709    -0.4649    -1.1737 O.3
   4 S4             0.7506    -1.9806    -1.2867 S.o2
   5 O5             1.7444    -2.2735    -2.3078 O.co2
   6 O6             1.1484    -2.4784     0.0210 O.co2
   7 O7            -0.5752    -2.4432    -1.6667 O.co2
@<TRIPOS>BOND
   1    1    2 1
   2    2    3 1
   3    3    4 1
   4    4    5 ar
   5    4    6 ar
   6    4    7 ar

# End of record

stiefni2@camm31 ~ ->echo 'CCC(=O)[O-]' | corina -i t=smiles -o t=mol2
# Name: NoName
# Creating user name: stiefni2
# Creation time: 28. 06. 2012 22:58

# Modifying user name: stiefni2
# Modification time: 28. 06. 2012 22:58

# Program: corina 3.48 0006  22.01.2010

@<TRIPOS>MOLECULE
NoName
   5    4    0    0    0
SMALL
NO_CHARGES


@<TRIPOS>ATOM
   1 C1            -0.0187     1.5258     0.0104 C.3
   2 C2             0.0021    -0.0041     0.0020 C.3
   3 C3             0.7309    -0.5033     1.2229 C.2
   4 O4             1.1912     0.2909     2.0254 O.co2
   5 O5             0.8604    -1.7014     1.4082 O.co2
@<TRIPOS>BOND
   1    1    2 1
   2    2    3 1
   3    3    4 ar
   4    3    5 ar

# End of record

I know this is not a very helpful answer for you at this moment, however, in 
order to stay within the corina mol2 format the code should stay like this. 
Obviously if anybody wants to go on and improve the code they are more than 
welcome to do so.

Ciao
Nik


From: Simone Fulle <[email protected]<mailto:[email protected]>>
Date: Thu, 28 Jun 2012 16:02:10 +0100
To: 
<[email protected]<mailto:[email protected]>>
Subject: [Rdkit-discuss] Phosphate containing mol2 files

Dear RDKitters,
I have a set of ligands in mol2 format which contain phosphate groups. I am 
reading them in by typing:
rdkMol = Chem.MolFromMol2File(inmol2file, sanitize=True, removeHs=False)

and get the following warning message: "warning - O.co2 with non C.2 or S.o2 
neighbor."

The reason for the message is that I have P.3 atoms bound to O.co2's and 
Mol2FileParser.cpp (in $RDKIT/Code/GraphMol/FileParsers) is (at least in my 
version) only postprocessing carboxylates or sulphates groups.

Changing line 292 in Mol2FileParser.cpp into ' if (tATT=="C.2" || tATT=="S.o2" 
|| tATT=="P.3"){  '
allows me to postprocess the phosphate containing ligands. If my change is only 
part of the solution I would be really grateful to hear about it. In any case I 
guess it's s.th<http://s.th>. which should be changed in the code distribution.

Kind regards,
Simone


--
Dr. Simone Fulle
Post-doctoral Researcher

InhibOx, Ltd
Oxford Centre for Innovation, Suites F14-F16
New Road
Oxford, OX1 1BY, UK




------------------------------------------------------------------------------ 
Live Security Virtual Conference Exclusive live event will cover all the ways 
today's security and threat landscape has changed and how IT managers can 
respond. Discussions will include endpoint security, mobile security and the 
latest in malware threats. 
http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/_______________________________________________
 Rdkit-discuss mailing list 
[email protected]<mailto:[email protected]> 
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Rdkit-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to