<jupyter_start><jupyter_text>Docking Risperidone Against DRD2 - DOCKSTRING Tutorial In this tutorial we will dock risperidone against dopamine receptor DRD2 using DOCKSTRING.  1. Introduction DRD2 is a G protein-coupled receptor (GPCR) of dopamine that plays a key role in neural signallingand is an interesting target for ML research for several reasons:- Medical relevance: even though dopamine receptors are relatively scarce in the brain, they are involved in many processes such as memory, motor behaviour or reward. Furthermore, abnormal levels of DRD2 have been linked to grave pathologies such as Alzheimer's disease _[Pan et al., 2019]_ or schizophrenia _[McCutcheon et al., 2019]_. DRD2 is the target of many antipsychotic drugs, including risperidone.- Characterization: the structure of DRD2 has been characterized experimentally, including the binding with risperidone _[Wang et al., 2018]_.- Benchmark: DRD2 has been used as an example target for _de novo_ molecular generation in the ML literature _[Olivecrona et al., 2017, Arús-Pous et al., 2020]_. Risperidone (sold under the brand name Risperdal) is an antipsychotic small-molecule drug used to treat schizophrenia and bipolar disorder.<jupyter_code>import rdkit.Chem as Chem

smiles = 'CC1=C(C(=O)N2CCCCC2=N1)CCN3CCC(CC3)C4=NOC5=C4C=CC(=C5)F'
Chem.MolFromSmiles(smiles)<jupyter_output><empty_output><jupyter_text>2. Docking with DOCKSTRING Docking with the DOCKSTRING Python package takes just three lines.<jupyter_code>from dockstring import load_target

target = load_target('DRD2')
score, aux = target.dock(smiles)<jupyter_output><empty_output><jupyter_text>The first return value is the best score found by Autodock Vina.<jupyter_code>score<jupyter_output><empty_output><jupyter_text>The second return value is a dictionary containing all the scores found by Autodock Vina, as well as the pose of the best score.The pose is given as a RDKit molecule.<jupyter_code>aux<jupyter_output><empty_output><jupyter_text>By default, DOCKSTRING uses preconfigured preparation and docking options that are reasonable across a range of protein targets.Optionally, users may provide the following arguments:- `pH`: the desired pH for ligand protonation. The default pH is 7.4 (physiological pH).- `num_cpus`: number of CPUs used by Autodock Vina.  3. Comparison with Experimental Results This histogram shows all DRD2 scores in the DOCKSTRING dataset, consisting of roughly 260k molecules (more negative is better).The score obtained by risperidone is comparable to the best scores in the dataset,indicating that Autodock Vina predicts likely binding to DRD2.This makes sense, since risperidone is a known binder.  4. Viewing the Pose DOCKSTRING also provides functionality to view the docking pose in PyMol.<jupyter_code>target.view([aux['ligand']])<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.05845070422535211, 'fraction_numerical': 0.017253521126760565, 'mean_word_length': 6.0496277915632755, 'pattern_counts': {'":': 0, '<': 21, '<?xml version=': 0, '>': 21, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '5', 'dir': 'jupyter-structured-clean-dedup', 'id': '618922', 'license': 'Apache-2.0', 'n_tokens_mistral': 877, 'n_tokens_neox': 781, 'n_words': 352, 'path': 'tutorials/1_docking_risperidone_against_DRD2.ipynb', 'repo_name': 'dockstring/dockstring', 'size': '2840'}