Hi Noel,

Thank you for your response. I can see that Python makes it possible to
match the SMARTS rule with the desired element in the molecule. I am
currently using Openbabel in Visual Studio C++. And I want to use a separate
file that contains all of my SMARTS rules for functional groups along with a
name for each SMARTS such as:
[#6]!@[$(C=!@O)]!@[#6]          ketone  
[#6]!@[$([O;H1])]                       hydroxyl
[#6]-!@[#6]                             singlebond-alkyl

And say I initially consider two input molecules in SMILES format for
simplicity sake,
1)      2-methyl 2-butanol : CCC(C)(C)O
2)      Diethyl ketone : CCC(=O)CC

Now the desired output for the above molecules is: (The molecules are
separated by a period which denotes the separation between each functional
group where the bonds are cleaved)
1)      2-methyl 2-butanol : C.C.C.(C).(C).O         
2)      Diethyl ketone : C.CC(=O).C.C

The total number of functional groups that need to be identified as starters
by the SMARTS rules for the input target molecules are:
CHn (Alkyl) -           8 // Suffix `n` stands for 0, or 1, or 2, or 3 Hydrogen
atoms 
OH (Hydroxyl) –         1
CHnCO (Ketone) –        1.

When this has been done, now comes the crucial yet the most significant of
tasks that I need to design. I wish to break down the identified functional
groups into sub-categories based on UNIFAC model. This involves the
identification of Alkyl groups that are mainly classified into four types:
CHn - Plain Alkyl
CHn - Alkyl in alcohols
CHn - Alkyl in hydrophobic tails of Alcohols
CHn – Alkyl with OH group

So for the given input molecules the Alkyl groups need to be classified as
follows://Please <http://forums.openbabel.org/file/n4658536/openbabel.png> 
see the images that I have attached
1.      2-methyl 2-butanol
i.      CHn (Alkyl with OH group) –                 1  
ii.     CHn (Alkyl in alcohols) –                           2  // the two 
branching alkyl groups
connected to the alkyl with OH group without any tails
iii.    CHn (Alkyl in hydrophobic tails of Alcohols) – 2  // the two alkyl
groups connected to the alkyl with OH group with a tail
2.      Diethyl ether
i.      CHn (Plain Alkyl) – 3 // without OH groups

Can you tell me if it is possible to use Openbabel API for accomplishing
this task and if you think using Python would be better than C++? I would be
very grateful if you can share any ideas that you might have with me. Any
advice on the functionalities available in OpenBabel that can help me design
the algorithm to identify the alkyl groups in the input molecules will be
appreciated.




--
View this message in context: 
http://forums.openbabel.org/Identifying-functional-groups-in-a-molecule-using-OpenBabel-tp4658507p4658536.html
Sent from the General discussion mailing list archive at Nabble.com.

------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
OpenBabel-discuss mailing list
OpenBabel-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss

Reply via email to