Chiral carbon atoms

User 7c177bab3b

19-07-2011 12:12:47

There have been several older posts on the way that chiral centers are computed, whether N, P etc should be included.


e.g. CCOP(=O)(O)OC is reported as having 1 chiral center.


Is it possible to write a chemical terms expression to return just carbon atom based chiral centers?


I can use the evaluate command-line to get


carbon = filter("atno()==6");


cc = chiralCenters();


but I can't seem to do the join.


chiralCenters() does not take an atom index array, unlike charge().


Thanks


Stephen

ChemAxon e08c317633

20-07-2011 10:05:36

Yes, it can be done. CT expression:


filter("chiralCenter() and atno()==6") 

Examples:


1. Return indexes of chiral carbon atoms only:


$ evaluate -e 'filter("chiralCenter() and atno()==6")' "CCC(Br)CC(Cl)CCOP(O)(=O)OC"
2;5

2. Return indexes of all chiral atoms:


$ evaluate -e 'filter("chiralCenter()")' "CCC(Br)CC(Cl)CCOP(O)(=O)OC"
2;5;10

3. Count chiral carbon atoms:


$ evaluate -e 'count(filter("chiralCenter() && atno()==6"))' "CCC(Br)CC(Cl)CCOP(O)(=O)OC"
2

Zsolt