REFMAC (CCP4: Supported Program)

User's manual for the program refmac version 5.0.*

How to make new ligand dictionary?


  1. Description of the dictionary files
    Description of organisation of the ligand dictionary used by the program REFMAC
  2. Dictionary entry from coordinate file(s)
    How to make dictionary entry if there is coordinate file. Coordinate file formats recognised are pdb, small molecular cif (for example when coordinates are form Cambridge small molecular database - CSD) or mmCIF
  3. Dictionary entry from connectivity list
    If ligand under investigation is available in the pdb list of ligands as connectivity list.
  4. Dictionary entry from minimum description
    How to make dictionary entry by describing only connectivity list and element names?
  5. Interactive sketcher to make dictionary entry
    Using interactive sketcher which is part of CCP4 graphical user interface to make dictionary entry.
  6. How to avoid three letter residue name problem
    PDB residue names are restricted to three letter. This section describes how to avoid this problem and not to break pdb rule
  7. Retrieve coordinates from dictionary
    If ligand is in the dictionary file supplied by us how retrieve coordinates to start to build using graphics
  8. List of standard monomer descriptions
    List of the ligand description distributed with the program REFMAC
  9. Links to non-commercial edtitors to derive coordinates from chemical desctiption
    Links to various non-commercial web sites which could help to derive coordinates from chemical descriptions. And these coordinates could be used to derive dictionary entry as well as model (re)building.

How to make a dictionary entry from the coordinate file?

Coordinate file formats recognised are pdb, small molecular cif and mmCIF.

If there is a pdb coordinate file then REFMAC can be used to create a dictionary entry. In this case following script should be used:

refmac XYZIN <new_ligand.pdb> XYZOUT <new_ligand1.pdb> \
LIB_IN <my_lib_if_there_is_any.lib< LIB_OUT <my_new_lib.lib> 
<< eor

If ligand contained in the coordinate file is not in the list of the standard entries then the program will create a description for it and add them to the user supplied entry lists specified by LIB_IN. Output file will be written to the file specified by LIB_OUT (default is new.lib) in the command line. If there is no user supplied entry list (i.e. LIB_IN has not been specified) then created file will contain new entry only. Then this file if desired could be merged with old entry lists using conventional editors (not reccommended).

It is recommended that new entry description to be checked prior to using in refinement. Especially atom types should be checked. If there are hydrogens the program creates dictionary files usually correctly. If there is no hydrogens in many cases program creates dictionary entries correctly. If coordinates are not good then atom types may not be correct. In this case atom types in new entry list could be corrected and program should be rerun with minimum description.

If description of the ligand is not as desired by the user then he could use sketcher to correct the coordinates and the description for it.

After having new entries and checking them carefully then normal refmac could be run with new ligand supplied like:

refmac ... LIB_IN <my_new_ligands> ... << eor

Command lines to use refmac

Another way of making new entries from coordinates is using libcheck.

Dictioanary entries from the pdb style connectivity list

One way of deriving dictionary entry is using pdb style connectivity list as shown in Text 1. Extreme care should be taken when using pdb style connectivity list as it is formatted file and all atoms including hydrogens must be present with all their connectivity. If at least one atom (for example hydrogen) is absent then whole geometry of the ligand may become incorrect as the program will interpret bonds incorrectly. When connectivity list is ready libcheck could be used to derive minimum description:

libcheck << rol

_file_dic my_pdb_connectivity.dic
The the program libcheck will create minimum description as in Text 2 and it will be written in new_mon_lib.cif. Then this file should be copied to another file and checked carefully. After checking and editing technique described in the next section should be used to derive dictionary entry and coordinates to use by the graphics program

After editting minimum description to user's satisfaction it could be used to derive new entry list and coordinates using libcheck.

Dictionary enrries from minimum description of the ligand

When information about connectivity is available i.e. which atom is bond to what and contents of ligand i.e. which element occupies which position then minimum description could be used to derive dictionary entry for the ligand. It is good idea first to draw ligand on a piece of paper like:

    HO    C2     O1-P1(O3)
      \   /\   /
       \ /  \ /
        C3   C1
        |    |
        |    |
        C4   C6
       : \  / :
      :   \/   :
     O4    C5    OH
     |     |
   P4(O3)  O5

     Figure 1
Where dotted lines show that atom is below the picture and dashed lines show above the picture.

If this pictire is converted to the minimum description it will have the form as in Text 1

When making minimum description one should be careful with the chiral volumes present in the ligand.

Then libcheck could be run like:

libcheck << eol
_file_l <minimum_description>
_mon MON

Where <minimum_description> is the file containing a minimim description and MON is the name of the ligand.

After libcheck there will be complete dictionary description and coordinate files in mmCIF and pdb format with all hydrogens present.

Links to non-commercial edtitors to derive coordinates from chemical desctiption

  1. Corina
    This site gives very good coordinates if you supply smile strings. It can recognise simple or stereo smile strings. Best way of accessing to this site is to draw molecule using CACTVS and using smile derived from cactvs to send to CORINA to derive coordinates.
  2. Monosachiride data base
    It contains various monosacharides. They could be taken in a pdb format and used as a building block for ligands containing sugars. PDB file may hahe to be edited to replace charges with B-values.
  3. Disaccharide data base
    It contains various discharides. Various conformation could be chosen using picture provided by them. Output will be pdb file. This pdb file could be used to create ligand description or for building blocks for ligand under investigation
  4. Enhanced NCI database browser
    Using this site one can search for structure with a given substructure.
  5. sweet2
    This sites can give you polysacharides.
  6. NOTE: In some cases atom names may not be as you wish them to be. Before running refmac or libcheck to create dictionary it is better to rename atoms to your or IUPAC or somebody's satisfaction.