Technical Support Forum Index
Technical Support Forum
Access ChemAxon scientists and developers here. For registration and login issues contact website support.

Support Ticket System is replacing forum

This forum was converted into a searchable archive. You cannot add posts here any more. For support please use our new Ticket System.

Create your first ticket
Calculating hydrogen bond donor/acceptor locations
To watch this topic for replies  Register (enables digests) or give email address:
This topic is locked: you cannot edit posts or make replies.
Display posts from previous:   
    View previous topic :: View next topic    
Author Message
Richard

Joined: 21 Aug 2014
Posts: 13

View user's profile

Back to top
Link to postPosted: Mon Mar 28, 2016 4:27 pmPost subject: Calculating hydrogen bond donor/acceptor locations Reply with quote

Hi,

I am using the following snippet to calculate the counts of hydrogen bond donors and acceptors:

  private ChemJEP hBondAcceptorCountEvaluator;
  private ChemJEP hBondDonorCountEvaluator;

      Evaluator evaluator = new Evaluator();
      hBondAcceptorCountEvaluator = evaluator.compile("acceptorCount()", MolContext.class);
      hBondDonorCountEvaluator = evaluator.compile("donorCount()", MolContext.class);

      MolContext molContext = new MolContext(molecule);

      hBondAcceptorCount = (int) hBondAcceptorCountEvaluator.evaluate_double(molContext);
      hBondDonorCount = (int) hBondDonorCountEvaluator.evaluate_double(molContext);

However, I am also interested in determining the locations of the hydrogen bond donors and acceptors. Presumably there is some pattern running in the evaluator that locates these sites, before simply returning the total count. Is it possible to return the hydrogen bond donor/acceptor locations using ChemJEP and/or Evaluator, or even some other ChemAxon API?

PS. I understand that without first cleaning the molecule, there will be no coordinates assigned to the atoms, and so there would also likely be no coordinates assigned to the hydrogen bond donor/acceptor sites. I am also using the Cleaner to generate 3D coordinates, so ideally, I would like to find the 3D coordinates of the hydrogen bond donor/acceptor sites. However, if it is possible to just locate the hydrogen bond donor/acceptor sites by reference to some atom or set of atoms, that would also be a workable solution.

Thank you!

Richard

Daniel
ChemAxon personnel
Joined: 22 Jan 2012
Posts: 315

View user's profile

Back to top
Link to postPosted: Mon Apr 04, 2016 2:37 pmPost subject: Reply with quote

Hi Richard, 

Thank you for letting us know this issue. We are investigating it and will come back to you soon. 

Daniel

Richard

Joined: 21 Aug 2014
Posts: 13

View user's profile

Back to top
Link to postPosted: Mon Apr 04, 2016 4:22 pmPost subject: Reply with quote

Hi Daniel,

It is not necessarily an issue, I am just trying to establish what is the correct way to obtain the locations of the HBA and HBD sites. In the meantime, I have found this method which seems to work:

PMapper pm = null;
PMap pmap = null;

pm = new PMapper(new File(PATH_OF_XML_FILE));

PSymbols symbols = pm.getSymbols();

pmap = pm.createFeatureMap(inputMol);

String delimitedSymbols = pmap.toString(symbols);

and then find the atom indices in this semi-colon delimited String which contain the letters 'a' or 'd' (HBA and HBD respectively). These indices line up with the indices in inputMol, so I can identify the HBA and HBD atoms.

If there is a better way than this, I would certainly be interested in hearing about it, but this does seem to meet my need.

Thank you,

Richard

László
ChemAxon personnel
Joined: 14 Jan 2011
Posts: 78

View user's profile

Back to top
Link to postPosted: Wed Apr 20, 2016 1:40 pmPost subject: Reply with quote

Dear Richard,


Try to use our Hydrogen Bond Donor Acceptor (HBDA) Plugin (Documentation, API doc).

The following code example demonstrates how to identify HBDA atoms:

final Molecule mol = ...

// create and run calculation
final HBDAPlugin plugin = new HBDAPlugin();
plugin.setMolecule(mol);
plugin.run();

// HBA atoms
for (int i = 0; i < mol.getAtomCount(); i++) {
if (plugin.getAcceptorSiteCount(i) > 0) { // for HBD atoms: getDonorSiteCount(i) 
final MolAtom atom = mol.getAtom(i);
// do something with the atom ...
}


Best regards,
Laszlo 

Richard

Joined: 21 Aug 2014
Posts: 13

View user's profile

Back to top
Link to postPosted: Fri Apr 29, 2016 5:35 pmPost subject: Reply with quote

Thank you Laszlo,

Richard

Ada

Joined: 25 Aug 2016
Posts: 2

View user's profile

Back to top
Link to postPosted: Fri Aug 26, 2016 3:27 amPost subject: Reply with quote

That's quite effective. I will suggest it should be tried in our research for hsp90 inhibitors design.

This topic is locked: you cannot edit posts or make replies.
Page 1 of 1


To watch this topic for replies   Register (enables digests) or give email address  
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum