I'm trying to identify ALL zwitterions in a large set of molecules (at ph 7.4). I've tried isoelectric point and played around with some charge functions, but i can't quite get a good algorithms to find the zwitterions effectively
(in general i am more ok with false positives than false negatives; i.e. i want to include ALL zwitterions and i can eliminate some extra compounds by hand later as long as the number is not ridiculously large)
i first tried the following
evaluate –x mol –e “isoelectric point()>0”
demo.mol | mview –
However that is not very efficient because it includes all compounds that just go from ionized to neutral at any pH.
I tried narrowing the gap to something like. But 1) i can't get that to work :) and 2) clearly can't be 100% sure that that will capture all zwitterions.
evaluate –x mol –e “isoelectric point()>2 & isoelectric point()<12” demo.mol | mview –
I also tried to think of a way to use partial charges for this, but i haven't come up with anything yet.
If anyone has any ideas, i'd really appreciate it.