Model missing residues in a trimer
Dear all,
I would like to ask you how is it possible to model missing residues in a trimer that I have. All the monomers have missing residues and each chain has numbering from 1 to 100 let's say.
I searched the archive but I haven't found such question. I can try this one
/from modeller import * from modeller.automodel import * # Load the automodel class
log.verbose() env = environ()
# directories for input atom files env.io.atom_files_directory = ['.', '../atom_files']
class MyModel(automodel): def select_atoms(self): return selection(self.residue_range('133', '135'), self.residue_range('216', '230'))
a = MyModel(env, alnfile = 'alignment.ali', knowns = '1qg8', sequence = '1qg8_fill') a.starting_model= 1 a.ending_model = 1
a.make()
/but how can I expand it to more than one chain? I would like only to fill the missing residues, with only local minimization of the structure and not global. Is it possible to do it in modeller?
Thank you in advance,
Panagiotis
Panagiotis Kastritis wrote: > I would like to ask you how is it possible to model missing residues in > a trimer that I have.
The scripts at http://salilab.org/modeller/wiki/Missing%20residues should do the job.
> but how can I expand it to more than one chain?
You will need to change your alignment, adding chain breaks ('/' character) where necessary; the first script on that page will write out something suitable. You won't need to change the modeling scripts, unless you explicitly select residue ranges, in which case obviously you will need to change the residue IDs (e.g. to add a chain ID, so '133', '135' might turn into '133:A', '135:A').
Ben Webb, Modeller Caretaker
Hello
Thank you for your immediate response. it gives an error, saying 'no such residue 1:B' Here is my alignemnt
>P1;1A2K_b structureX:1A2K_b:4:A:445 :C::: : ---KPIWEQIGSSFIQHYYQLFDNDRTQLGAIYIDASCLTWEGQQFQGKAAIVEKLSSLP FQKIQHSITAQDHQPTPDSCIISMVVGQLKADEDPIMGFHQMFLLKNINDAWVCTNDMFR LALHNF- / ---KPIWEQIGSSFIQHYYQLFDNDRTQLGAIYIDASCLTWEGQQFQGKAAIVEKLSSLP FQKIQHSITAQDHQPTPDSCIISMVVGQLKADEDPIMGFHQMFLLKNINDAWVCTNDMFR LALHNFG / -------QVQFKLVLVGDGGTGKTTFVKRHLTGEFEKKYVATLGVEVHPLVFHTNRGPIK FNVWDTAGQEKFGGLRDGYYIQAQCAIIMFDVTSRVTYKNVPNWHRDLVRVCENIPIVLC GNKVDIKDRKVKAKSIVFHRKKNLQYYDISAKSNYNFEKPFLWLARKLIGDPNLEFVAMP ALAPPEVVMDPALAAQYEHDLEV------------- * >P1;1A2K_b_fill sequence:1A2K_b_fill:1:A:470:C::: : MGDKPIWEQIGSSFIQHYYQLFDNDRTQLGAIYIDASCLTWEGQQFQGKAAIVEKLSSLP FQKIQHSITAQDHQPTPDSCIISMVVGQLKADEDPIMGFHQMFLLKNINDAWVCTNDMFR LALHNFG / MGDKPIWEQIGSSFIQHYYQLFDNDRTQLGAIYIDASCLTWEGQQFQGKAAIVEKLSSLP FQKIQHSITAQDHQPTPDSCIISMVVGQLKADEDPIMGFHQMFLLKNINDAWVCTNDMFR LALHNFG / MAAQGEPQVQFKLVLVGDGGTGKTTFVKRHLTGEFEKKYVATLGVEVHPLVFHTNRGPIK FNVWDTAGQEKFGGLRDGYYIQAQCAIIMFDVTSRVTYKNVPNWHRDLVRVCENIPIVLC GNKVDIKDRKVKAKSIVFHRKKNLQYYDISAKSNYNFEKPFLWLARKLIGDPNLEFVAMP ALAPPEVVMDPALAAQYEHDLEVAQTTALPDEDDDL *
and here is my script
from modeller import * from modeller.automodel import * # Load the automodel class
log.verbose() env = environ()
# directories for input atom files env.io.atom_files_directory = ['.', '../atom_files']
class MyModel(automodel): def select_atoms(self): return selection(self.residue_range('1:A', '3:A'), self.residue_range('124:A', '124:A'), self.residue_range('1:B', '3:B'), self.residue_range('1:C', '7:C'), self.residue_range('204:C', '216:C')) a = MyModel(env, alnfile = '1a2k.ali', knowns = '1A2K_b', sequence = '1A2K_b_fill') a.starting_model= 1 a.ending_model = 1
a.make()
Can you tell me what i am doing wrong?
Thank you very much for your help
panagiotis
2009/10/26 Modeller Caretaker modeller-care@salilab.org
> Panagiotis Kastritis wrote: > >> I would like to ask you how is it possible to model missing residues in a >> trimer that I have. >> > > The scripts at http://salilab.org/modeller/wiki/Missing%20residues should > do the job. > > > but how can I expand it to more than one chain? >> > > You will need to change your alignment, adding chain breaks ('/' character) > where necessary; the first script on that page will write out something > suitable. You won't need to change the modeling scripts, unless you > explicitly select residue ranges, in which case obviously you will need to > change the residue IDs (e.g. to add a chain ID, so '133', '135' might turn > into '133:A', '135:A'). > > Ben Webb, Modeller Caretaker > -- > modeller-care@salilab.org http://www.salilab.org/modeller/ > Modeller mail list: http://salilab.org/mailman/listinfo/modeller_usage >
Panagiotis L. Kastritis wrote: > Thank you for your immediate response. > it gives an error, saying 'no such residue 1:B' ... > Can you tell me what i am doing wrong?
I would have thought it was obvious. ;) You are trying to select residue 1 in chain B, but there is no such residue. In fact, looking at 1a2k in PDB, I see that the first residue in chain B is numbered 4, so there is no residue '1' (or 2 or 3). You simply need to fix the residue numbers in your script.
Ben Webb, Modeller Caretaker
Hello again!
Actually I understood what is going wrong... modeller renumbers everything so at first it finds the residues of chain A that are missing... However, the next ones will be 128-130 and not 1-3... Is there a way to keep the initial numbering and not let modeller renumber my structures?
Sorry for being stubborn :)
Cheers
Panagiotis
2009/10/26 Modeller Caretaker modeller-care@salilab.org
> Panagiotis L. Kastritis wrote: > >> Thank you for your immediate response. >> it gives an error, saying 'no such residue 1:B' >> > ... > > Can you tell me what i am doing wrong? >> > > I would have thought it was obvious. ;) You are trying to select residue 1 > in chain B, but there is no such residue. In fact, looking at 1a2k in PDB, I > see that the first residue in chain B is numbered 4, so there is no residue > '1' (or 2 or 3). You simply need to fix the residue numbers in your script. > > > Ben Webb, Modeller Caretaker > -- > modeller-care@salilab.org http://www.salilab.org/modeller/ > Modeller mail list: http://salilab.org/mailman/listinfo/modeller_usage >
Panagiotis L. Kastritis wrote: > Actually I understood what is going wrong... modeller renumbers > everything so at first it finds the residues of chain A that are > missing... However, the next ones will be 128-130 and not 1-3... > Is there a way to keep the initial numbering and not let modeller > renumber my structures?
My last post should answer your question: http://salilab.org/archives/modeller_usage/2009/msg00245.html
In this case you can't use option (1) because you won't have a PDB file containing the missing residues and their numbers (unless you manually create a dummy one; remember that Modeller only parses the ATOM/HETATM records, not SEQRES). (2) might be easiest if the numbering is sequential.
Ben Webb, Modeller Caretaker
participants (3)
-
Modeller Caretaker
-
Panagiotis Kastritis
-
Panagiotis L. Kastritis