Endonuclease PvuII (1PVI) DNA - GATTACAGATTACA
CAP - Catabolite gene Activating Protein (1BER)
DNA - GATTACAGATTACAGATTACA Endonuclease PvuII bound to palindromic DNA recognition site CAGCTG (1PVI) DNA - GATTACAGATTACAGATTACA TBP - TATA box Binding Protein (1C9B)
CAP - Catabolite gene Activating Protein (1BER)
GCN4 - leucine zipper transcription factor bound to palindromic DNA recognition site ATGAC(G)TCAT (1YSA)
GCN4 - leucine zipper transcription factor bound to palindromic DNA recognition site ATGAC(G)TCAT (1YSA)
GCN4 - leucine zipper transcription factor bound to palindromic DNA recognition site ATGAC(G)TCAT (1YSA)
GCN4 - leucine zipper transcription factor bound to palindromic DNA recognition site ATGAC(G)TCAT (1YSA)
GCN4 - leucine zipper transcription factor bound to palindromic DNA recognition site ATGAC(G)TCAT (1YSA)
TBP - TATA box Binding Protein (1C9B)
 

° 

TypeBond

-

Assign bond orders automatically


CommandArgumentDatatypeDefault Min Max
Format: TypeBond Atom selection 1,SELECTION ---
   Atom selection 2,SELECTION ---
   useTopo = Yes | No,STRINGYes - -
   Kekulize = Yes | NoSTRING No --
Python:TypeBond(selection1,selection2,usetopo=None,kekulize=None)
Menu:Edit > Adjust bond orders > Type bond
Related:KekulizeBond, ResonateBond , AddBond, DelBond , pH, Link , AddSpring
Required:


The TypeBond command reassigns the order of all bonds between the two atom selections. This is especially important as PDB files provide only basic connectivity information for heteroatoms, but knowledge about the order of covalent bonds is crucial for adding hydrogen atoms or automatically assigning force field parameters.

YASARA provides two special features:

  • Bond orders are assigned in a pH dependent manner. This makes it easy to analyze pH dependent changes of structure and function.

  • Fractional bond orders help to preserve the true symmetry of molecules, e.g. the six chemically equivalent carbon-carbon bonds in a benzene ring all get the same bond order of 1.5. Together with the ability to visualize bond orders directly, this provides a more realistic picture of the molecule and allows for more accurate force field parameter assignments. More details about this concept can be found here. Only if the 'kekulize' flag is set, fractional bond orders are avoided and replaced by conjugated single/double bonds.

YASARA's knowledge about the bond orders comes from two different sources:

  • The TOPOLOGY_DATA section in the file yasara.def (present in YASARA Dynamics and above), which specifies the bound atoms in a given residue, including pH dependent bond orders and formal charges.

  • If a residue does not have a topology entry, it is analyzed by an automatic bond typer developed in collaboration with the OpenBabel team, and then refined using the pH dependent assignments in the GROUP_DATA section of yasara.def. These assignments use SMILES strings to specify bond orders and protonation patters for common functional groups. All assignments use experimentally determined standard pKa values, pKa shifts caused by the structural environment are not considered and handled separately for amino acids by the neutralization experiment.

TypeBond is called automatically when loading a PDB file. As PDB files often do not contain hydrogen atoms and provide only very low resolution data, there may be more than one chemically valid solution, leading to ambiguous bond order assignments. You can then easily provide YASARA with a hint: just add the correct number of hydrogen atoms to one of the key atoms, YASARA will then automatically retype the bonds.

Example 1:
TypeBond 105,109

Assign the bond order between atoms 105 and 109.


Example 2:
TypeBond Obj 1,Obj 1,useTopo=No

Assign all bond orders in object 1, but do not use the topology section in yasara.def.


Example 3:
TypeBond all,all,kekulize=Yes

Assign all bond orders, then convert bonds with fractional orders (resonance effects) to conjugated single and double bonds.



Example macro:

# EXAMPLE TypeBond
# Requires YASARA Model
Clear
LoadPDB 101m
# Small balls, thick sticks
Style BallStick
BallRadius 37
StickRadius 75
# Delete everything except the heme
DelRes !Hem,center=Yes
OriObj 1,206.5,323.2,-50.7
# Create 6 heme versions, with an increasing number of
# hydrogens from left to right, fractional bond orders
# at the top and integer bond orders at the bottom.
for i=0 to 5
  # Create a copy of heme
  obj = DuplicateObj 1
  if i%3
    # Delete the iron, protonate two nitrogens
    DelAtom Fe Obj (obj)
    AddHydAtom N_A N_C Obj (obj),1
  if i%3==2
    # Protonate the remaining two nitrogens
    AddHydAtom N_B N_D Obj (obj),1
  AddHydObj (obj)
  if i>=3
    # Reassign bond orders, avoiding fractional ones
    TypeBond Obj (obj),Obj (obj),kekulize=Yes
  # Place the object
  PosObj (obj),X=(((i%3)-1)*15),Y=((0.5-i//3)*15),Z=30
# Get rid of the original
DelObj 1    

Figure: Result of the example macro above.