Subject: Re: Refinement from my own initial Structure
From: Tony Pemberton <>
Date: Fri, 12 Feb 1999 12:43:09 +0000 (GMT)
Reply-to:
On 28th Jan, I wrote:-
Dear Modeller users,
I have been having problems carrying out a refinement from my own initial
structure. I have adopted the steering file example from FAQ no. 12,
but my procedure is resulting in the .ini file being overwritten.
I want to produce a model based on some templates, but want to
carry out the procedure in two stages. The first stage should
be to achieve the overall fold based on the templates. The second
stage is to refine part of the target based on another alignment
which should produce (I hope) better results in that part of the target.
To put it another way, this is a bit like the chimera example in
FAQ no. 4, except that I think I can get the overall fold by the two
stage process outlined above (the problem in FAQ no. 4).
Here is my steering file for the second stage:
# Homology modelling by the MODELLER TOP routine 'model'.
INCLUDE # Include the predefined TOP routines
SET ALNFILE = 'seq.pir' # alignment filename
SET KNOWNS = '1abc' '1cde' '1fgh' # templates
SET SEQUENCE = '1ijk' # target
SET ATOM_FILES_DIRECTORY = './' # directories
SET STARTING_MODEL= 1 # index of the first model
SET ENDING_MODEL = 3 # index of the last model
SET DEVIATION = 4.0 # has to be >0 if more than 1 model
SET RAND_SEED = -12312 # to have different models from
# another top
SET MD_LEVEL = 'refine3' # what kind of optimization is done
# Specifiying an alternate starting structure.
# Specify the initial structure filename, and tell the program to
# read the initial file, not construct it from the templates:
# ref.ini is my model from stage one
#
SET MODEL = 'ref.ini', BUILD_METHOD = 'read_xyz'
# Homology modelling by the MODELLER TOP routine 'model'.
# Demonstrates how to refine only a part of the model.
SET DYNAMIC_FLAG = 0 # selected atoms do not feel the
#neighbourhood
CALL ROUTINE = 'model' # do modelling on supplied modelling
# (hopefully)
# select the residues for second stage refinement
SUBROUTINE ROUTINE = 'select_atoms'
PICK_ATOMS SELECTION_SEGMENT='17:' '43:', SELECTION_SEARCH='segment', ;
PICK_ATOMS_SET=1, RES_TYPES='all', ATOM_TYPES='all', ;
SELECTION_FROM='all', SELECTION_STATUS='initialize', SELECTION_STEP=1
RETURN
END_SUBROUTINE
#######################################################
I assumed that "BUILD_METHOD = 'read_xyz'" was a flag to
modeller that tells it *not* to construct an initial model
from the templates, but to read the .ini file supplied. Correct? (y/n)
The result of the above is to construct both a new .ini file
with part of the molecule built from topology (extended chain)
and the same for the resultant structure, but with the rest refined as I
wanted. That is, I get the refinement I wanted but lose the overall fold
from stage one.
Can anyone tell me where I am going wrong.
THE SOLUTION
------------
After reading through the modeller steering files and constructing
a flow chart of the procedure, I realised that I was essentially
correct about the BUILD_METHOD being a "flag". This acts as a variable
but it is the *wrong* variable. It should be
GENERATE_METHOD not BUILD_METHOD
Therefore the line in the above script should read:
SET MODEL = 'ref.old', GENERATE_METHOD = 'read_xyz'
This variable is evaluted in __homcsr.top in the 'homcsr'
subroutine. The default is 'transfer_xyz'
Regards,
Tony Pemberton
*********************************************************************
Mr. A.J.Pemberton Tel: +44 121-414-3388
c/o Dept. Rheumatology, Fax: +44 121-414-3982
Medical School, E-mail:
The University of Birmingham,
Birmingham B15 2TT.
U.K.
*********************************************************************