phenix_logo
Python-based Hierarchical ENvironment for Integrated Xtallography
Documentation Home
 

Tutorial 10: Generating ligand coordinates and restraints for structure refinement

Introduction
Setup
When do we need restraints for a ligand?
Generating ligand restraints using PDB file
Generating ligand restraints using SMILES
Generating link edits
Metal coordination
Putting it all together

Introduction

This tutorial will demonstrate how to perform a structure refinement including a ligand.

Setup

You can create a subdirectory, 'elbow_tutorial', and copy the files required for this tutorial using the command:

elbow.setup_tutorial

When do we need restraints for a ligand?

A structure refinement requires that all atoms have energy types associated and ideally restraints to guide the geometry optimisation. PHENIX refinement uses a monomer library to resolve some ligands but not all. Running on a structure containing an unknown ligand:

phenix.refine 1utn.pdb 1utn.mtz
results in the following error message.
  Number of atoms with unknown nonbonded energy type symbols: 16
    " N   ABN A 246 "
    " C   ABN A 246 "
    " C1  ABN A 246 "
    " C2  ABN A 246 "
    " C3  ABN A 246 "
    " C4  ABN A 246 "
    " C5  ABN A 246 "
    " C6  ABN A 246 "
    " N   ABN A 247 "
    " C   ABN A 247 "
    ... (remaining 6 not shown)

Generating ligand restraints using PDB file

Clearly, we need to generate restraints for the ligand ABN which is in the PDB file. We commence by using the following command:

phenix.elbow 1utn.pdb
which prints out a list of the HETATM molecules in the PDB file.
 Running eLBOW in expert mode
   Defaults changed by /net/cci/nigel/.elbow/elbow_defaults.py
	xyz        : True   (--no-xyz to reverse)
	overwrite  : True   (--no-overwrite to reverse)
 Random number seed:  578305348
 0:00 Parsing Parsing Parsing Parsing Parsing Parsing Parsing Parsing Parsing P

Input format is PDB

MoleculeClass :  C:11  N: 2  O: 3 (PDB format)
	16 atoms
	15 bonds
	0 angles
	0 dihedrals

  Multiple residue names
    resSeq resName #atoms  type
    246    'ABN'       8  HETATM
    256    'TRS'       8  HETATM

      Use --residue to specify residue
      
  Use --do-all to process all residues not in internal library
As the print out says, all of the residues not in the internal library can be processed using
phenix.elbow 1utn.pdb --do-all
Because the residue TRS is in the internal library, only ABN is processed. The resulting files are elbow.ADB.1utn_pdb.cif and elbow.ABN.1utn_pdb.pdb. After checking the geometry in the PDB file, we repeat the calculation using the --opt to optimise the geometry using the semi-empirical AM1 method, thus:
phenix.elbow 1utn.pdb --do-all
The resulting file, elbow.1utn_pdb.all.cif, is ready for use with phenix.refine.

Generating ligand restraints using SMILES

To demonstrate the use of a SMILES string, we can get the SMILES string for ABN from the MSDChem website. We can now run using the SMILES string:

phenix.elbow --smiles "NCc1ccccc1"
The resulting output, elbow.cif and elbow.pdb, have the default residue name, LIG, and atom names. In order to match the atoms in the refinement, we can use the PDB to obtain the atom names via the --template option and the --residue option:
phenix.elbow --smiles "NCc1ccccc1" --template 1utn.pdb --residue ABN --opt
The resulting output files have the AM1 optimised geometry (--opt), the atom names from the PDB file and the correct connectivity from the SMILES string.

Generating link edits

The input PDB file, 1utn.pdb, has a number of LINK records. These can be converted to "edits" for input into phenix.refine. The LINK records:

LINK        CA    CA A6000                 OE1 GLU A  70     1555   1555        
LINK        CA    CA A6000                 O   ASN A  72     1555   1555        
LINK        CA    CA A6000                 O   VAL A  75     1555   1555        
LINK        CA    CA A6000                 O   HOH Z  89     1555   1555        
LINK        CA    CA A6000                 O   HOH Z 104     1555   1555        
LINK        CA    CA A6000                 OE2 GLU A  80     1555   1555
Running:
phenix.link_edits 1utn.pdb
results in the "edits" being written to 1utn_pdb.edits. THe "edits" are a one-to-one correspondence of the LINK records and a bond "edit".

Metal coordination

Conviently, the LINK records were contained in the PDB file used in this example. More likely, the linking information is not available. The "edits" can be obtained using:

phenix.metal_coordination 1utn.pdb
The "edits" are written to elbow.edits and contain both bond and angle "edits".

Putting it all together

We can put all the files together to perform a refinement. Adding the option --dry-run reads the data. Remove to perform complete refinement.

phenix.refine 1utn.mtz 1utn.pdb elbow.1utn_pdb.all.cif 1utn_pdb.edits --dry-run