Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
0c6d941
update docking workflow
apayne97 May 21, 2025
eac417d
comment out ml scorers
apayne97 May 21, 2025
1a7aca0
comment out ml scorers
apayne97 May 21, 2025
c292396
move messy scorers to workflows subpackage
apayne97 May 21, 2025
3326074
make independent cross-docking workflow in docking subpackage
apayne97 May 21, 2025
ecb2a8a
make independent cross-docking workflow in docking subpackage
apayne97 May 21, 2025
2f83700
make independent cross-docking workflow in docking subpackage
apayne97 May 21, 2025
00d7d08
make independent cross-docking workflow in docking subpackage
apayne97 May 21, 2025
28e290f
return_for_disk_backend
apayne97 May 21, 2025
5df7891
add more prints for debugging for cd workflow
apayne97 May 21, 2025
ea0fa1d
add more prints for debugging for cd workflow
apayne97 May 21, 2025
b2481ce
add more prints for debugging for cd workflow
apayne97 May 21, 2025
94bb03b
add more prints for debugging for cd workflow
apayne97 May 21, 2025
876b73b
minimize data footprint
apayne97 May 21, 2025
3f9bfe8
minimize data footprint
apayne97 May 21, 2025
acd07be
minimize data footprint
apayne97 May 21, 2025
5f32f6d
minimize data footprint
apayne97 May 21, 2025
3759847
add more info to sdf file output
apayne97 May 21, 2025
5d63938
Merge branch 'pydantic_2' into cross-docking-update
apayne97 Jun 6, 2025
1b79720
add multipose docking time test
apayne97 Jun 12, 2025
e80d3be
Merge branch 'pydantic_2' into cross-docking-update
apayne97 Jun 26, 2025
86f6b7a
Merge branch 'pydantic_2' into cross-docking-update
apayne97 Jul 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion asapdiscovery-cli/asapdiscovery/cli/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
@click.group()
def cli(help="Command-line interface for asapdiscovery"): ...


from asapdiscovery.workflows.docking_workflows.cli import ( # noqa: F401, E402, F811
docking,
)
Expand Down
8 changes: 5 additions & 3 deletions asapdiscovery-docking/asapdiscovery/docking/docking.py
Original file line number Diff line number Diff line change
Expand Up @@ -361,11 +361,13 @@ def write_results_to_multi_sdf(
raise ValueError("Must provide reconstruct_cls if using disk backend")

for res in results:
if backend == BackendType.IN_MEMORY:
if backend == BackendType.DISK:
res = reconstruct_cls.from_json_file(res)
if backend in [BackendType.DISK, BackendType.IN_MEMORY]:
lig = res.posed_ligand
elif backend == BackendType.DISK:
lig = reconstruct_cls.from_json_file(res).posed_ligand
else:
raise ValueError(f"Unknown backend type {backend}")

lig.set_SD_data({"ReferenceStructureName": res.input_pair.complex.target.target_name,
"ReferenceLigandName": res.input_pair.complex.ligand.compound_name})
lig.to_sdf(sdf_file, allow_append=True)
9 changes: 8 additions & 1 deletion asapdiscovery-docking/asapdiscovery/docking/openeye.py
Original file line number Diff line number Diff line change
Expand Up @@ -225,6 +225,7 @@ def _dock(

docking_results = []

logger.info(f"Running docking on {len(inputs)} sets")
for set in inputs:
try:
# make sure its a path
Expand Down Expand Up @@ -253,9 +254,11 @@ def _dock(
)
# run docking if output does not exist
else:
logger.info("Making design units")
dus = set.to_design_units()
lig_oemol = oechem.OEMol(set.ligand.to_oemol())
if self.use_omega:
logger.info("Running omega on ligand")
if self.omega_dense:
omegaOpts = oeomega.OEOmegaOptions(
oeomega.OEOmegaSampling_Dense
Expand All @@ -276,12 +279,13 @@ def _dock(
raise ValueError(
f"Unknown error handling option {failure_mode}"
)

logger.info("Prepping docking options")
opts = oedocking.OEPositOptions()
opts.SetIgnoreNitrogenStereo(True)
opts.SetPositMethods(self.posit_method.value)
opts.SetPoseRelaxMode(self.relax_mode.value)

logger.info("Run docking")
pose_res = oedocking.OEPositResults()
pose_res, retcode = self.run_oe_posit_docking(
opts, pose_res, dus, lig_oemol, self.num_poses
Expand Down Expand Up @@ -336,9 +340,11 @@ def _dock(
)

if retcode == oedocking.OEDockingReturnCode_Success:
logger.info("Docking Success!")
input_pairs = []
posed_ligands = []
num_poses = pose_res.GetNumPoses()
logger.info(f"Prepping results for {num_poses} poses")
for i, result in enumerate(pose_res.GetSinglePoseResults()):
posed_mol = result.GetPose()
prob = result.GetProbability()
Expand Down Expand Up @@ -370,6 +376,7 @@ def _dock(
input_pairs.append(set)

# Create Docking Results Objects
logger.info("Creating POSITDockingResults objects")
docking_results_objects = []
for input_pair, posed_ligand in zip(input_pairs, posed_ligands):
docking_results_objects.append(
Expand Down
Loading
Loading