next up previous contents index
Next: restraints.make_distance() make Up: The restraints class: static Previous: restraints.symmetry.report() report   Contents   Index

restraints.make() -- make restraints

atmsel = <selection>   Atom selection
edat = <energy_data>   objective function parameters
aln = <alignment>   Template-model alignment; for homology-derived restraints only
io = <io_data>   Options for reading atom files
restraint_type = <str:1> 'STEREO' restraint type to be calculated: 'STEREO' | 'BOND' | 'ANGLE' | 'IMPROPER' | 'DIHEDRAL' | 'SPHERE' | 'SPHERE14' | 'LJ' | 'LJ14' | 'COULOMB' | 'COULOMB14' | 'DISTANCE' | 'USER_DISTANCE' | 'NONB_PAIR_SPLINE' | 'PHI-PSI_BINORMAL' | 'PHI_DIHEDRAL' | 'PSI_DIHEDRAL' | 'OMEGA_DIHEDRAL' | 'CHI1_DIHEDRAL' | 'CHI2_DIHEDRAL' | 'CHI3_DIHEDRAL' | 'CHI4_DIHEDRAL'
dih_lib_only = <bool:1> False whether to use only library, not homologs for dihedral angle rsrs
mnch_lib = <int:1> 1 which MNCH lib to use in MAKE_RESTRAINTS
intersegment = <bool:1> True whether to restrain inter-segment non-bonded pairs
residue_grouping = <int:1> 1
residue_span_range = <int:2> 0 99999 range of residues spanning the allowed distances; for MAKE_RESTRAINTS, PICK_RESTRAINTS, non-bonded dynamic pairs
residue_span_sign = <bool:1> True whether to do N*(N-1)/2 loop for atom pairs in MAKE_RESTRAINTS RESTRAINT_TYPE = 'distance'
restraint_sel_atoms = <int:1> 1 a restraint other than non-bonded pair has to have at least as many selected atoms
accessibility_type = <int:1> 8 type of solvent accessibility: 1-10
restraint_group = physical_type   physical restraint group
basis_pdf_weight = <str:1> 'LOCAL' a method for calculation of basis pdf weights: 'LOCAL' | 'GLOBAL'
basis_relative_weight = <float:1> 0.05 the cutoff weight of basis pdf's for their removal
spline_on_site = <bool:1> False whether to convert restraints to splines
spline_dx = <float:1> 0.5 interval size for splining restraints
spline_min_points = <int:1> 5 have at least as many intervals in a spline
spline_range = <float:1> 4.0 range of the splines
distngh = <float:1> 6.0 Maximum distance to consider residues as neighbors

Requirements:
topology & parameters

This command calculates and selects new restraints of a specified type. See the original papers for the most detailed definition and description of the restraints [Š ali & Blundell, 1993,Š ali & Overington, 1994]. The calculation of restraints of all types is now (partly) limited to the atoms in the atom selection atmsel. The new restraints are added to any currently present.

The physical restraint type of the new restraints is specified by restraint_group, and should be an object from the physical module (see Table 6.1).

restraint_type selects the types of the generated restraints. (For restraint types DISTANCE and USER_DISTANCE, do not use this command; instead, use restraints.make_distance().) Only one restraint type can be selected at a time, except for the stereochemical restraints (BOND, ANGLE, DIHEDRAL, IMPROPER) that can all be calculated at the same time. It is useful to distinguish between the stereochemical restraints and homology-derived restraints. The stereochemical restraints are obtained from libraries that depend on atom and/or residue types only (e.g., CHARMM 22 force field [MacKerell et al., 1998] or statistical potentials), and do not require the alignment aln with template structures. In contrast, the homology-derived restraints are calculated from related protein structures, which correspond to all but the last sequence in the alignment aln (the target). These templates are read from coordinate files, which are the only data files required. All restraints are added to the existing restraints, even if they duplicate them (but see the comment for the 'OMEGA' restraints below).

Stereochemical restraints:

Homology-derived restraints:

For these restraints, the input alignment aln must be given.

basis_relative_weight is the cutoff for removing weak basis pdf's from poly-Gaussian feature pdf's: a basis pdf whose weight is less than the basis_relative_weight fraction of the largest weight is deleted.

Example: examples/commands/make_restraints.py


# Example for: restraints.make(), restraints.spline(), restraints.write()

# This will compare energies of bond length restraints expressed
# by harmonic potential and by cubic spline.

from modeller import *
from modeller.scripts import complete_pdb

log.verbose()
env = environ()
env.io.atom_files_directory = '../atom_files'
env.libs.topology.read(file='$(LIB)/top_heav.lib')
env.libs.parameters.read(file='$(LIB)/par.lib')

code = '1fas'
mdl = complete_pdb(env, code)
mdl.write(file=code+'.ini')

sel = selection(mdl)
mdl.restraints.make(sel, restraint_type='bond', spline_on_site=False)
mdl.restraints.write(file=code+'-1.rsr')
edat = energy_data(dynamic_sphere=False)
sel.energy(edat=edat)

mdl.restraints.spline(spline_range=5.0, spline_dx=0.005,
                      spline_select=(3, 1, 1), edat=edat)
mdl.restraints.condense()
mdl.restraints.write(file=code+'-2.rsr')
sel.energy(edat=edat)


next up previous contents index
Next: restraints.make_distance() make Up: The restraints class: static Previous: restraints.symmetry.report() report   Contents   Index
Ben Webb 2007-01-19