{"id":11377,"date":"2024-06-06T10:27:16","date_gmt":"2024-06-06T09:27:16","guid":{"rendered":"https:\/\/www.blopig.com\/blog\/?p=11377"},"modified":"2024-06-09T23:43:58","modified_gmt":"2024-06-09T22:43:58","slug":"comparing-pose-and-affinity-prediction-methods-for-follow-up-designs-from-fragments","status":"publish","type":"post","link":"https:\/\/www.blopig.com\/blog\/2024\/06\/comparing-pose-and-affinity-prediction-methods-for-follow-up-designs-from-fragments\/","title":{"rendered":"Comparing pose and affinity prediction methods for follow-up designs from fragments"},"content":{"rendered":"\n<p>In any task in the realm of virtual screening, there need to be many filters applied to a dataset of ligands to downselect the &#8216;best&#8217; ones on a number of parameters to produce a manageable size. One popular filter is if a compound has a physical pose and good affinity as predicted by tools such as docking or energy minimisation. In my pipeline for downselecting elaborations of compounds proposed as fragment follow-ups, I calculate the pose and \u0394\u0394G by energy minimizing the ligand with atom restraints to matching atoms in the fragment inspiration. I either use RDKit using its MMFF94 forcefield or PyRosetta using its ref2015 scorefunction, all made possible by the lovely tool <a href=\"https:\/\/github.com\/matteoferla\/Fragmenstein\" data-type=\"link\" data-id=\"https:\/\/github.com\/matteoferla\/Fragmenstein\">Fragmenstein<\/a>.<br><br>With RDKit as the minimizer the protein neighborhood around the ligand is fixed and placements take on average 21s whereas with PyRosetta placements, they take on average 238s (and I can run placements in parallel luckily). I would ideally like to use RDKit as the placement method since it is so fast and I would like to perform 500K within a few days but, I wanted to confirm that RDKit is &#8216;good enough&#8217; compared to the slightly more rigorous tool PyRosetta (it allows residues to relax and samples more conformations with the longer runtime I think). <\/p>\n\n\n\n<!--more-->\n\n\n\n<p>To find out if I can trust RDKit&#8217;s placement with the MMFF94 forcefield, check out <a href=\"https:\/\/github.com\/kate-fie\/rdkit-pyrosetta-compare\">this repo<\/a> where I performed <a href=\"https:\/\/github.com\/kate-fie\/rdkit-pyrosetta-compare\/blob\/46b42284ca380d6ddcedc6813e018810b45299d1\/rdkit-pyrosetta-compare.ipynb\">my analysis<\/a> of 10 repeated placements of 69 fragment follow-up ligands with 1 protein template. I wrote out the notebooks so you can easily follow my calculations of ligand and residue RMSD between methods and checks of the conformations with PoseBusters, outputting some surprising results!<\/p>\n\n\n\n<p>If you&#8217;re running into the same questions of comparing pose and affinity prediction methods, I hope you find the code useful for your own analysis.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In any task in the realm of virtual screening, there need to be many filters applied to a dataset of ligands to downselect the &#8216;best&#8217; ones on a number of parameters to produce a manageable size. One popular filter is if a compound has a physical pose and good affinity as predicted by tools such [&hellip;]<\/p>\n","protected":false},"author":104,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","wikipediapreview_detectlinks":true,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"ngg_post_thumbnail":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[187,361,621,291,227,201],"tags":[152,129,134],"ppma_author":[717],"class_list":["post-11377","post","type-post","status-publish","format-standard","hentry","category-cheminformatics","category-data-science","category-data-visualization","category-protein-ligand-docking","category-python-code","category-small-molecules","tag-python","tag-rdkit","tag-small-molecules"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"authors":[{"term_id":717,"user_id":104,"is_guest":0,"slug":"kate","display_name":"Kate Fieseler","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/264ae0adbd8e2e58a8d11d4b267a937306804e59ab21d1c7ce911117d9b095e5?s=96&d=mm&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/posts\/11377","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/users\/104"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/comments?post=11377"}],"version-history":[{"count":5,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/posts\/11377\/revisions"}],"predecessor-version":[{"id":11426,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/posts\/11377\/revisions\/11426"}],"wp:attachment":[{"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/media?parent=11377"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/categories?post=11377"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/tags?post=11377"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=11377"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}