Python Protein-ligand Docking tutorial (Fpocket) using BioExcel Building Blocks (biobb)

public public 1yr ago Version: Version 3 0 bookmarks

Protein-ligand Docking tutorials using BioExcel Building Blocks (biobb)

This tutorials aim to illustrate the process of protein-ligand docking , step by step, using the BioExcel Building Blocks library (biobb) . The particular examples used are based on the Mitogen-activated protein kinase 14 (p38-α) protein (PDB code 3HEC ), a well-known Protein Kinase enzyme , in complex with the FDA-approved Imatinib (PDB Ligand code STI , DrugBank Ligand Code DB00619 ) and Dasatinib (PDB Ligand code 1N1 , DrugBank Ligand Code DB01254 ), small kinase inhibitors molecules used to treat certain types of cancer .

The tutorials will guide you through the process of identifying the active site cavity (pocket) without previous knowledge, and the final prediction of the protein-ligand complex .

Copyright & Licensing

This software has been developed in the MMB group at the BSC & IRB for the European BioExcel , funded by the European Commission (EU H2020 823830 , EU H2020 675728 ).

Licensed under the Apache License 2.0 , see the file LICENSE for details.

Code Snippets

 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import time
import argparse
from biobb_common.configuration import settings
from biobb_common.tools import file_utils as fu
from biobb_vs.fpocket.fpocket_select import fpocket_select
from biobb_vs.utils.box import box
from biobb_chemistry.babelm.babel_convert import babel_convert
from biobb_structure_utils.utils.str_check_add_hydrogens import str_check_add_hydrogens
from biobb_vs.vina.autodock_vina_run import autodock_vina_run

def main(config, system=None):
    start_time = time.time()
    conf = settings.ConfReader(config, system)
    global_log, _ = fu.get_logs(path=conf.get_working_dir_path(), light_format=True)
    global_prop = conf.get_prop_dic(global_log=global_log)
    global_paths = conf.get_paths_dic()

    global_log.info("step1_fpocket_select: Extract pocket cavity")
    fpocket_select(**global_paths["step1_fpocket_select"], properties=global_prop["step1_fpocket_select"])

    global_log.info("step2_box: Generating cavity box")
    box(**global_paths["step2_box"], properties=global_prop["step2_box"])

    global_log.info("step3_babel_convert_prep_lig: Preparing small molecule (ligand) for docking")
    babel_convert(**global_paths["step3_babel_convert_prep_lig"], properties=global_prop["step3_babel_convert_prep_lig"])

    global_log.info("step4_str_check_add_hydrogens: Preparing target protein for docking")
    str_check_add_hydrogens(**global_paths["step4_str_check_add_hydrogens"], properties=global_prop["step4_str_check_add_hydrogens"])

    global_log.info("step5_autodock_vina_run: Running the docking")
    autodock_vina_run(**global_paths["step5_autodock_vina_run"], properties=global_prop["step5_autodock_vina_run"])

    global_log.info("step6_babel_convert_pose_pdb: Converting ligand pose to PDB format")
    babel_convert(**global_paths["step6_babel_convert_pose_pdb"], properties=global_prop["step6_babel_convert_pose_pdb"])

    elapsed_time = time.time() - start_time
    global_log.info('')
    global_log.info('')
    global_log.info('Execution successful: ')
    global_log.info('  Workflow_path: %s' % conf.get_working_dir_path())
    global_log.info('  Config File: %s' % config)
    if system:
        global_log.info('  System: %s' % system)
    global_log.info('')
    global_log.info('Elapsed time: %.1f minutes' % (elapsed_time/60))
    global_log.info('')

if __name__ == '__main__':
    parser = argparse.ArgumentParser(description="Protein-ligand Docking tutorial using BioExcel Building Blocks")
    parser.add_argument('--config', required=True)
    parser.add_argument('--system', required=False)
    args = parser.parse_args()
    main(args.config, args.system)

Login to post a comment if you would like to share your experience with this workflow.

Do you know this workflow well? If so, you can request seller status , and start supporting this workflow.

Free

Created: 1yr ago
Updated: 1yr ago
Maitainers: public
URL: https://github.com/bioexcel/biobb_workflows/tree/master/biobb_wf_virtual_screening/python
Name: python-protein-ligand-docking-tutorial-fpocket
Version: Version 3
Badge:
workflow icon

Insert copied code into your website to add a link to this workflow.

Downloaded: 0
Copyright: Public Domain
License: None
  • Future updates

Related Workflows

cellranger-snakemake-gke
snakemake workflow to run cellranger on a given bucket using gke.
A Snakemake workflow for running cellranger on a given bucket using Google Kubernetes Engine. The usage of this workflow ...