Dear Sir,
I am trying to build a tetramer model for hERG based on the crystal structure KcsA (1BL8.pdb). The modeller did give me four chains, but not the correct symmetry. Since I am new to Modeller, I am wondering whether there is somebody can help me.
Thank you,
Lei Du-Cuny
------------------------------------------
The following are the alignment file and python script I have used.
hERG-KcsA-multialign.ali
>P1;1BL8 structureX:1BL8:62: A:111: A:KcsA: : : YPRALWWSVETATTVGYGDLYPVTLWGRCVAVVVMVAGITSFGLVTAALA*
>P1;hERG sequence:hERG: : : : :hERG:human: : VT-ALYFTFSSLTSVGFGNVSPNTNSEKIFSICVMLIGSLMYASIFGNV-/ VT-ALYFTFSSLTSVGFGNVSPNTNSEKIFSICVMLIGSLMYASIFGNV-/ VT-ALYFTFSSLTSVGFGNVSPNTNSEKIFSICVMLIGSLMYASIFGNV-/ VT-ALYFTFSSLTSVGFGNVSPNTNSEKIFSICVMLIGSLMYASIFGNV-*
model-multichain.py
# Homology modeling by the automodel class # # Demonstrates how to build multi-chain models, and symmetry restraints # from modeller import * from modeller.automodel import * # Load the automodel class
log.verbose()
# Override the 'special_restraints' and 'user_after_single_model' methods: class MyModel(automodel): def special_restraints(self, aln): # Constrain the A, B, C and D chains to be identical s1 = selection(self.chains['A']).only_atom_types('CA') s2 = selection(self.chains['B']).only_atom_types('CA') s3 = selection(self.chains['C']).only_atom_types('CA') s4 = selection(self.chains['D']).only_atom_types('CA') self.restraints.symmetry.append(symmetry(s1, s2, 1)) self.restraints.symmetry.append(symmetry(s2, s3, 1)) self.restraints.symmetry.append(symmetry(s3, s4, 1))
def user_after_single_model(self): # Report on symmetry violations greater than 1A after building # each model: self.restraints.symmetry.report(1)
env = environ() # directories for input atom files env.io.atom_files_directory = ['.', '../atom_files']
# Be sure to use 'MyModel' rather than 'automodel' here! a = MyModel(env, alnfile = 'hERG-KcsA-multialign.ali' , # alignment filename knowns = '1BL8', # codes of the templates sequence = 'hERG') # code of the target
a.starting_model= 1 # index of the first model a.ending_model = 10 # index of the last model # (determines how many models to calculate) a.make() # do homology modeling
Du-Cuny,Lei wrote: > I am trying to build a tetramer model for hERG based on the crystal > structure KcsA (1BL8.pdb). The modeller did give me four chains, but not > the correct symmetry. Since I am new to Modeller, I am wondering whether > there is somebody can help me.
Modeller is a package for comparative modeling. In order to use it to build a comparative model, you need an alignment between your target sequence and the template(s).
> hERG-KcsA-multialign.ali > >>P1;1BL8 > structureX:1BL8:62: A:111: A:KcsA: : : > YPRALWWSVETATTVGYGDLYPVTLWGRCVAVVVMVAGITSFGLVTAALA* > >>P1;hERG > sequence:hERG: : : : :hERG:human: : > VT-ALYFTFSSLTSVGFGNVSPNTNSEKIFSICVMLIGSLMYASIFGNV-/ > VT-ALYFTFSSLTSVGFGNVSPNTNSEKIFSICVMLIGSLMYASIFGNV-/ > VT-ALYFTFSSLTSVGFGNVSPNTNSEKIFSICVMLIGSLMYASIFGNV-/ > VT-ALYFTFSSLTSVGFGNVSPNTNSEKIFSICVMLIGSLMYASIFGNV-*
So here your problem is that there is nothing aligned with the 2nd, 3rd and 4th chains, so Modeller has no idea what to build. In order to build an accurate tetramer model, you need a tetramer template. See http://salilab.org/modeller/9v6/manual/node28.html for an example. 1BL8 already has 4 chains, so it should just be a simple matter of including the sequences for all 4 chains in that template sequence above, separated by / characters. (In other cases, you could generate a tetramer template by applying the BIOMT transformations defined in the PDB file or even by manually placing chains in an application like Chimera.)
Your Python script, however, looks fine to me. It tells Modeller to constrain the internal distances in each chain to be the same. However, this isn't sufficient information to build a tetramer, since you don't have any information in your alignment about the relative orientation of each chain.
Ben Webb, Modeller Caretaker
participants (2)
-
Du-Cuny,Lei
-
Modeller Caretaker