Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Module for receptor-ligand docking #209

Merged
merged 28 commits into from
Apr 25, 2024

Conversation

dien-n-nguyen
Copy link
Contributor

Changes were made to the original docking_utils.py module to follow OOP concepts and efficiently manage data during the docking process and post-docking analysis.

Dien Nguyen and others added 25 commits October 26, 2023 12:36
Add docking_pdb_path parameter to best_result function to avoid hard-coding file paths
Modify snps.py to pass in receptor and ligand of interest through endpoint
Change naming conventions to not include the date, and only run hex if the protein-ligand pair has not been run before
Add a block in docking_utils.py to search for the receptor and ligand indicated by endpoints
The following classes were added: Receptor, MonomerReceptor, ComplexReceptor,
Ligand, Docking, MonomerDocking, ComplexDocking, and Docker.
__init__ methods were added for each class. Methods for creating
receptor, ligand and docking objects were written in Docker class.
Hex_docking function was written for Docking class, which is inherited
by MonomerDocking and ComplexDocking.
Add a controller class called Docker, which creates instances of
other classes for docking.
Receptors with more than 1000 residues will have pdb files where
there is no space between columns 4 and 5. For example, it can
look like this: A1000, whereas for earlier residues, it looks like
this: A 345. A regex check is added to see which lines need to be
further processed to separate and extract the residue number.
Files for testing include 1 small monomer receptor pdb, 1 small
complex receptor pdb, 1 ligand sdf file and the hex results and
outputs for these dockings. The complex receptor file was altered
to create a small complex receptor, so it does not actually exist.
The results for the dockings are stored in folders just as they
would be in the /DATA/HEX_API/RESULTS folder.
Reformat output json to include path to results file and the date the docking was performed
Change json results when receptor or ligand not found
Copy link

codecov bot commented Mar 28, 2024

Codecov Report

Attention: Patch coverage is 66.58537% with 137 lines in your changes are missing coverage. Please review.

Project coverage is 81.64%. Comparing base (9198cbc) to head (bfea1ac).

Files Patch % Lines
api/utils/docking_utils.py 68.38% 114 Missing and 9 partials ⚠️
api/resources/snps.py 33.33% 14 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##              dev     #209      +/-   ##
==========================================
- Coverage   85.35%   81.64%   -3.71%     
==========================================
  Files          45       46       +1     
  Lines        1693     2103     +410     
  Branches      421      513      +92     
==========================================
+ Hits         1445     1717     +272     
- Misses        233      361     +128     
- Partials       15       25      +10     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@asherpasha asherpasha merged commit 686e6fc into BioAnalyticResource:dev Apr 25, 2024
4 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants