You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In docking.openeye.POSITDocker._dock() we have logic that looks like:
for result in pose_res.GetSinglePoseResults():
posed_mol = result.GetPose()
posed_ligand = Ligand.from_oemol(posed_mol, **set.ligand.dict())
docking_result = POSITDockingResults(
input_pair=input_pair,
posed_ligand=posed_ligand,
probability=prob,
provenance=self.provenance(),
)
docking_results.append(docking_result)
if output_dir is not None:
docking_result.write_docking_files(output_dir)
The result of this is that the different poses overwrite each other in output_dir when they are written in this line. This is clearly a bug that needs to be fixed.
Confusingly (from a user perspective), since all the docking_results are returned as a list to this line of code, they get successfully written to a multi-pose sdf file in workflows.docking_workflows.cross_docking:
if inputs.write_final_sdf:
logger.info("Writing final docked poses to SDF file")
write_ligands_to_multi_sdf(
output_dir / "docking_results.sdf", [r.posed_ligand for r in results]
)
In
docking.openeye.POSITDocker._dock()
we have logic that looks like:The result of this is that the different poses overwrite each other in
output_dir
when they are written in this line. This is clearly a bug that needs to be fixed.Confusingly (from a user perspective), since all the docking_results are returned as a list to this line of code, they get successfully written to a multi-pose sdf file in
workflows.docking_workflows.cross_docking
:this is ok unless this part fails, as in #989
The text was updated successfully, but these errors were encountered: