next up previous contents index
Next: Script for comparative modeling Up: MODELLER scripts Previous: MODELLER scripts   Contents   Index


Flowchart of comparative modeling by MODELLER

This section describes a flowchart of comparative modeling by MODELLER, as implemented in the 'model' TOP script. This script is also called by QUANTA and INSIGHTII. It can be used for a variety of modeling tasks, not only for comparative modeling.

Input: script file, alignment file, PDB file(s) for template(s).

Output:

job.log log file
job.ini initial conformation for optimization
job.rsr restraints file
job.sch VTFM schedule file
job.B9999???? PDB atom file(s) for the model(s) of the target sequence
job.V9999???? violation profiles for the model(s)
job.D9999???? progress of optimization
job.BL9999???? optional loop model(s)
job.DL9999???? progress of optimization for loop model(s)
job.IL9999???? initial structures for loop model(s)

The main MODELLER routines used in each step are given in parentheses.

  1. Read and check the alignment between the target sequence and the template structures
    (READ_ALIGNMENT and CHECK_ALIGNMENT).

  2. Calculate restraints on the target from its alignment with the templates:

    1. Generate molecular topology for the target sequence (GENERATE_TOPOLOGY). Disulfides in the target are assigned here from the equivalent disulfides in the templates (PATCH_SS_TEMPLATES). Any user defined patches are also done here (as defined in TOP routine `special_patches').

    2. Calculate coordinates for atoms that have equivalent atoms in the templates as an average over all templates (TRANSFER_XYZ) (alternatively, read the initial coordinates from a file).

    3. Build the remaining unknown coordinates using internal coordinates from the CHARMM topology library (BUILD_MODEL).

    4. Write the initial model to a file with extension .ini (WRITE_MODEL).

    5. Generate stereochemical, homology-derived, and special restraints (MAKE_RESTRAINTS) (alternatively, skip this and assume the restraints file already exists):

      stereochemical RESTRAINT_TYPE = 'bond angle dihedral improper'
      mainchain dihedrals $\Phi$, $\Psi$ RESTRAINT_TYPE = 'phi-psi_binormal'
      mainchain dihedral $\omega$ RESTRAINT_TYPE = 'omega_dihedral'
      sidechain dihedral $\chi_1$ RESTRAINT_TYPE = 'chi1_dihedral'
      sidechain dihedral $\chi_2$ RESTRAINT_TYPE = 'chi2_dihedral'
      sidechain dihedral $\chi_3$ RESTRAINT_TYPE = 'chi3_dihedral'
      sidechain dihedral $\chi_4$ RESTRAINT_TYPE = 'chi4_dihedral'
      mainchain CA-CA distance RESTRAINT_TYPE = 'distance'
      mainchain N-O distance RESTRAINT_TYPE = 'distance'
      sidechain-mainchain distance RESTRAINT_TYPE = 'distance'
      sidechain-sidechain distance RESTRAINT_TYPE = 'distance'
      block distance restraints RESTRAINT_TYPE = 'distance'
      user defined CALL ROUTINE = 'special_restraints'
      non-bonded pairs distance RESTRAINT_TYPE = 'sphere'; calculated on the fly

    6. Write all restraints to a file with extension .rsr (WRITE_RESTRAINTS).

  3. Calculate model(s) that satisfy the restraints as well as possible. For each model:

    1. Generate the optimization schedule for the variable target function method (VTFM)
      (MAKE_SCHEDULE).

    2. Read the initial model (usually from the .ini file from 2.d) (READ_MODEL).

    3. Randomize the initial structure by adding a random number between $\pm$DEVIATION angstroms to all atomic positions (RANDOMIZE_XYZ).

    4. optimize the model:
      • Partially optimize the model by VTFM; Repeat the following steps as many times as specified by the optimization schedule:

        • Read all the restraints by `rd_restraints' (READ_RESTRAINTS).
        • Select only the restraints that operate on the atoms that are close enough in sequence, as specified by the current step of VTFM (PICK_RESTRAINTS).
        • Optimize the model by conjugate gradients, using only currently selected restraints (OPTIMIZE).

      • Refine the model by simulated annealing with molecular dynamics, if so selected:

        • do a short conjugate gradients optimization (OPTIMIZE).
        • increase temperature in several steps and do molecular dynamics optimization at each temperature (OPTIMIZE).
        • decrease temperature in several steps and do molecular dynamics optimization at each temperature (OPTIMIZE).
        • do a short conjugate gradients optimization (OPTIMIZE).

    5. calculate the remaining restraint violations and write them out (ENERGY).

    6. write out the final model to a file with extension .B9999???? where ???? indicates the model number (WRITE_MODEL). Also write out the violations profile. Also write superposed templates and models if so selected by FINAL_MALIGN3D = 1.

    7. superpose the models and the templates, if so selected, and write them out (EXPAND_ALIGNMENT, MALIGN3D).

    8. do loop modeling if so selected (__ loop).


next up previous contents index
Next: Script for comparative modeling Up: MODELLER scripts Previous: MODELLER scripts   Contents   Index
Ben Webb 2004-10-04