Protein-Ligand Pose Refinement
Protein-Ligand Pose Refinement relaxes a binder within a receptor structure using the OPAL machine learning potential. The job then scores the relaxed geometry and returns a scoring envelope. The relaxed complex is published as relaxed_complex_file, and the reported score corresponds to the coordinates after relaxation.
The job supports small molecules, peptides, macrocycles and stapled peptides. Specifying binder_chain selects the peptide path.
When to use it
Section titled “When to use it”Apply Protein-Ligand Pose Refinement after Docking or Covalent Docking to poses selected for geometric refinement and rescoring. The job returns its own score. A separate Protein-Ligand Scoring run is required only for geometries that must remain unrelaxed.
Inputs
Section titled “Inputs”Submit the complex as a structure. A small-molecule calculation requires the protein and either a ligand file or the ligand residue name within the protein structure. A peptide, macrocycle or stapled-peptide calculation requires the receptor and binder chain identifiers.
| Input | Required | What it is |
|---|---|---|
protein_file | yes | Protein structure in PDB or CIF format. |
chain_id | no | Receptor chain containing the target against which the binder is scored. |
ligand_file | no | Ligand structure in SDF format, positioned in the protein coordinate frame. |
ligand_resname | no | Residue name of a ligand represented as a HETATM within the protein file. |
binder_chain | no | Binder chain within the same structure. Specifying this field selects the peptide path. |
ligand_smiles | no | Chemical representation of the binder. Required for a binder with no AMBER parameters, including a macrocycle containing non-canonical amino acids, a stapled peptide, or a single-residue ligand transferred from docking. Omission causes the run to be rejected to prevent scoring without binder electrostatics. Specify no more than one of ligand_smiles, helm and drug_smiles. |
helm | no | Binder in HELM2 notation, as an alternative to ligand_smiles. HELM2 is preferred for a macrocycle. See the HELM reference. |
drug_smiles | no | Synonym for ligand_smiles, retained so a chain from Docking can forward the field under the name used by that job. |
opt_fmax | no, default 0.05 | Force convergence threshold in eV per Angstrom. Smaller values produce tighter geometries and require more steps. |
opt_maxiter | no, default 200 | Maximum number of optimisation steps. Reaching this limit before convergence does not cause an error; the resulting geometry is scored. |
flexible_radius | no, default 0 | Radius in Angstroms within which receptor side chains can relax with the binder. A value of 0 fixes every receptor atom and preserves the established default behaviour. A value of 4 defines a suitable pocket shell. Only side chains move; the backbone remains fixed. |
flexible_residues | no | Receptor residues selected for relaxation, specified as CHAIN:RESSEQ, for example A:145,A:41. This field takes precedence over flexible_radius. Residue numbers must be used because protonation relabels histidines before relaxation. |
crop_radius | no, default 10 | For a peptide binder, distance within which receptor residues are retained around the binder. |
interior_dielectric | no, default 1 | Solute interior dielectric for the peptide path. See Protein-Ligand Scoring for the dependence of a charged binder’s score sign on this value. |
keep_cofactors | no | Cofactor residue names to retain, for example ZN or ZN,NDP. |
extra_chains | no | Additional protein chain IDs to include. |
How to run it
Section titled “How to run it”Jobs can be submitted through Azulene Studio, the Python SDK, or the CLI. The Get started page contains installation, authentication and submission instructions.
In Azulene Studio
Section titled “In Azulene Studio”Select Protein-Ligand Pose Refinement from the tools list. On the Inputs and Parameters step, upload the protein structure. For a small molecule, add a ligand file or specify the ligand residue name and chain. For a peptide binder, specify the receptor and binder chains. Select Review and Submit to start the job.
From the Python SDK
Section titled “From the Python SDK”from azulene import jobs
result = jobs.submit( job_type="opal_ml_optimize", input_data={ "protein_file": "/path/to/your/protein.pdb", "ligand_resname": "N3", "chain_id": "A", },)From the CLI
Section titled “From the CLI”Pass the inputs as a JSON string.
azulene jobs submit --job-type opal_ml_optimize \ --input-data '{"protein_file": "/path/to/your/protein.pdb", "ligand_resname": "N3", "chain_id": "A"}'Reading the result
Section titled “Reading the result”The output contains a score for the relaxed geometry in the same envelope used by Protein-Ligand Scoring, together with the relaxed structure in relaxed_complex_file.
Check pose_relaxed_in_pocket first. This field records whether relaxation completed for the job. If relaxation fails for a pose, the supplied pose is scored without coordinate modification, and the result records this outcome. The resulting score remains valid; it describes the supplied, unrelaxed geometry.
binder_route identifies the executed path as either the small-molecule path or the peptide path.
When receptor residues are permitted to move, receptor_shift_a, n_flexible_residues and flexible_residues_resolved report the receptor displacement and the residues selected for relaxation. Specified residues absent from the scored receptor, owing to an incorrect chain or removal during cropping, are listed in the warnings.
Do not compare an induced-fit score against a rigid-pocket one. Side-chain relaxation through flexible_radius or flexible_residues produces systematically more negative results than the frozen-receptor default. Maintain a constant setting for all compounds ranked within a campaign.
Side-chain flexibility should be selected deliberately. It may be appropriate for a macrocycle or peptide at a shallow protein-protein interface, where binding depends partly on side-chain accommodation. The frozen-receptor default is appropriate for a small molecule in a well-formed pocket.
Relaxation requires several minutes for a peptide binder and approximately one minute for a small molecule. Specify structural cofactors with keep_cofactors to preserve the corresponding pocket geometry.