{
  "version": "https://jsonfeed.org/version/1.1",
  "title": "chem-bla-ics",
  "description": "Chemblaics (pronounced chem-bla-ics) is the science that uses open science and computers to solve problems in chemistry, biochemistry and related fields.",
  "home_page_url": "https://chem-bla-ics.linkedchemistry.info/",
  "feed_url": "https://chem-bla-ics.linkedchemistry.info/2011/02/24/adding-cdk-atom-type.json",
  "icon": "https://chem-bla-ics.linkedchemistry.info/assets/images/chem-bla-ics_logo.png",
  "language": "en",
  "authors": [
    {
      "name": "Egon Willighagen",
      "url": "https://orcid.org/0000-0001-7542-0286",
      "_orcid": "0000-0001-7542-0286"
    }
  ],
  "items": [

    {
      "id": "https://doi.org/10.59350/te8a1-4cv36",
      "url": "https://chem-bla-ics.linkedchemistry.info/2011/02/24/adding-cdk-atom-type.html",
      "title": "Adding a CDK atom type",
      "content_html": "<p>A very quick, short post on <a href=\"http://cdk.sf.net/\">CDK</a> atom types. These atom\ntypes are used by the CDK to decide how many missing hydrogens an atom has,\nor how many lone pairs, and if the atom can be part of an aromatic ring system.\nThe CDK code basically consists of three parts: the atom type ontology, the\natom type perception code, and the rest of the code that uses information from\nthe ontology.</p>\n\n<p>Most of you have already developed a love/hate relation with the <a href=\"http://pele.farmbio.uu.se/nightly/api/org/openscience/cdk/atomtype/CDKAtomTypeMatcher.html\">CDKAtomTypeMatcher</a>.\nThis is the class that complains about atom types not being recognized. And\nlet me stress this one more time. When you get such a method, it means that\nthe CDK cannot add hydrogen, it cannot calculate QSAR descriptors, etc, etc.\nI have had the comment that CDK 1.0 never complained about that. True. It just\nignored the fact that it did not know what to do with that atom, and calculated\n(wrong) properties anyway.</p>\n\n<p>The solution to such a missing atom type warning can be two-fold. First, the\ninput data was wrong, for example, because formal charges were lost at some\npoint. A typical example is a neutral four-coordinated nitrogen. Second, the\ninput data is correct and the CDK is wrong. This doesn’t happen too often, but\nit does.</p>\n\n<p>This last is the topic of this post. The CDK can be ‘wrong’ in two ways. Either\nit doesn’t know the atom type (CDK 1.2 and 1.4 have more atom types than CDK 1.0\never had; so), or the perception algorithm makes a mistake. The latter is not\nuncommon, particularly for some elements, like nitrogen. The cause here is the\ninput data, or better, the lack of input data. Missing bond orders, missing\nexplicit hydrogens. Now, cheminformatics can make educated guesses, and so the\nperception algorithm does. But it depends on its education.</p>\n\n<p>Doing the needed education of the CDK basically looks like <a href=\"https://github.com/cdk/cdk/commit/4ccb251ee0f94905071beeea2b1e56d968bda360\">this commit</a>.\nIt adds:</p>\n\n<ul>\n  <li>a new atom type to the ontology,</li>\n  <li>adds code to the CDKAtomTypeMatcher for the perception, and</li>\n  <li>adds unit tests to make sure it does the right thing.</li>\n</ul>\n\n<p>Mind you, that the ontology needs to provide the following properties of an\natom type:</p>\n\n<ol>\n  <li>the element (duh),</li>\n  <li>the formal charge,</li>\n  <li>the number of bound neighbors,</li>\n  <li>the number of double bond equivalents (<em>piBondCount</em>),</li>\n  <li>the number of lone pairs, and</li>\n  <li>the hybridization state (sp3, sp1, etc).</li>\n</ol>\n\n<p>The current unit tests focus on the true positives, but I got a report about\na false positive this week, which I will add shortly. Also check these posts\non <a href=\"http://chem-bla-ics.blogspot.com/search/label/atom%20typing\">atom typing</a>\nand <a href=\"http://chem-bla-ics.blogspot.com/search/label/atom%20types\">atom types</a>.</p>",
      "summary": "A very quick, short post on CDK atom types. These atom types are used by the CDK to decide how many missing hydrogens an atom has, or how many lone pairs, and if the atom can be part of an aromatic ring system. The CDK code basically consists of three parts: the atom type ontology, the atom type perception code, and the rest of the code that uses information from the ontology.",
      
      "date_published": "2011-02-24T00:00:00+00:00",
      "date_modified": "2011-02-24T00:00:00+00:00",
      "tags": ["cdk","cheminf"],
      
      
      
      
      
      
        "authors": [ { "name": "Egon Willighagen", "url": "https://orcid.org/0000-0001-7542-0286" } ]
      
    }

  ]
}
