Hi MMB developers,
I have a few questions to ask regarding this tutorial. There seems to be inconsistencies in the tutorial, with the command file : commands.P6ab-threading.dat , since there the file seems to be refering to 1FC2 while the tutorial is referring to 1GID.
Xiong An
Exercise 3: Threading Azoarcus to Tetrahymena Ribozyme P6ab
- Lee Xiong An
- Posts: 11
- Joined: Thu Jun 09, 2016 8:47 pm
- Samuel Flores
- Posts: 189
- Joined: Mon Apr 30, 2007 1:06 pm
Re: Exercise 3: Threading Azoarcus to Tetrahymena Ribozyme P6ab
Hi Lee,
You are absolutely right! Somehow the contents of commands.P6ab-threading.dat were overwritten, at least in the latest release of MMB. Thanks for catching this and bringing it to my attention. Please replace the contents of that file with what follows below.
# There are also other inconsistencies in the tutorial which I will work on. But for now at least the below should work for release 2.16. Let me know if you are using another release and whether you have other problems, and if so what platform you use.
# many thanks
#Sam
# CORRECT contents of commands.P6ab-threading.dat :
# Before running this, copy the provided 1GID.shifted.pdb to last.1.pdb in your working directory
firstStage 2
lastStage 2
# The reporting interval is set empirically, it has no particular physical meaning in this case:
reportingInterval .5
numReportingIntervals 80
# TETRAHYMENA P6ab -- "template" fragment
RNA Q 220 GUCCUAAGUCAACAGAUCUUCUGUUGAUAUGGAU
# AZOARCUS -- "target" or threaded fragment
RNA C 146 CCUAAGGCAAACGCUAUGG
mobilizer Rigid Q 220 253
# Old way to prevent steric clashes, as described in Flores & Altman, RNA 2010:
#contact AllHeavyAtomSterics C 146 164
# More modern way, using "Physics where you want it" applied to target only:
setDefaultMDParameters
includeResidues C FirstResidue LastResidue
# Note that for large molecules, the force field can get expensive. In such cases, try threading it in parts.
#Alignment forces. More modern way, which pulls together like-named atoms in corresponding residues:
# First, specify that the alignment is explicit, rather than using a SeqAn gapped alignment. Internally, this simply applies a high penalty to gaps:
alignmentForces noGap
# Next, specify the force constant for the alignment springs. There is not much physical meaning to this choice of force constant, it is just empirically sufficient to pull the chains together nicely:
alignmentForces forceConstant 300.0
# Finally, specify corresponding residue stretches to be pulled together on template and target:
alignmentForces C 146 151 Q 222 227
alignmentForces C 160 164 Q 247 251
# old way, which used 6-D forces on bases plus springs on C1' atoms, as described in Flores & Altman, RNA 2010:
#baseInteraction C 146 Superimpose Q 222 Superimpose Cis
#baseInteraction C 147 Superimpose Q 223 Superimpose Cis
#baseInteraction C 148 Superimpose Q 224 Superimpose Cis
#baseInteraction C 149 Superimpose Q 225 Superimpose Cis
#baseInteraction C 150 Superimpose Q 226 Superimpose Cis
#baseInteraction C 160 Superimpose Q 247 Superimpose Cis
#baseInteraction C 161 Superimpose Q 248 Superimpose Cis
#baseInteraction C 162 Superimpose Q 249 Superimpose Cis
#baseInteraction C 163 Superimpose Q 250 Superimpose Cis
#baseInteraction C 164 Superimpose Q 251 Superimpose Cis
You are absolutely right! Somehow the contents of commands.P6ab-threading.dat were overwritten, at least in the latest release of MMB. Thanks for catching this and bringing it to my attention. Please replace the contents of that file with what follows below.
# There are also other inconsistencies in the tutorial which I will work on. But for now at least the below should work for release 2.16. Let me know if you are using another release and whether you have other problems, and if so what platform you use.
# many thanks
#Sam
# CORRECT contents of commands.P6ab-threading.dat :
# Before running this, copy the provided 1GID.shifted.pdb to last.1.pdb in your working directory
firstStage 2
lastStage 2
# The reporting interval is set empirically, it has no particular physical meaning in this case:
reportingInterval .5
numReportingIntervals 80
# TETRAHYMENA P6ab -- "template" fragment
RNA Q 220 GUCCUAAGUCAACAGAUCUUCUGUUGAUAUGGAU
# AZOARCUS -- "target" or threaded fragment
RNA C 146 CCUAAGGCAAACGCUAUGG
mobilizer Rigid Q 220 253
# Old way to prevent steric clashes, as described in Flores & Altman, RNA 2010:
#contact AllHeavyAtomSterics C 146 164
# More modern way, using "Physics where you want it" applied to target only:
setDefaultMDParameters
includeResidues C FirstResidue LastResidue
# Note that for large molecules, the force field can get expensive. In such cases, try threading it in parts.
#Alignment forces. More modern way, which pulls together like-named atoms in corresponding residues:
# First, specify that the alignment is explicit, rather than using a SeqAn gapped alignment. Internally, this simply applies a high penalty to gaps:
alignmentForces noGap
# Next, specify the force constant for the alignment springs. There is not much physical meaning to this choice of force constant, it is just empirically sufficient to pull the chains together nicely:
alignmentForces forceConstant 300.0
# Finally, specify corresponding residue stretches to be pulled together on template and target:
alignmentForces C 146 151 Q 222 227
alignmentForces C 160 164 Q 247 251
# old way, which used 6-D forces on bases plus springs on C1' atoms, as described in Flores & Altman, RNA 2010:
#baseInteraction C 146 Superimpose Q 222 Superimpose Cis
#baseInteraction C 147 Superimpose Q 223 Superimpose Cis
#baseInteraction C 148 Superimpose Q 224 Superimpose Cis
#baseInteraction C 149 Superimpose Q 225 Superimpose Cis
#baseInteraction C 150 Superimpose Q 226 Superimpose Cis
#baseInteraction C 160 Superimpose Q 247 Superimpose Cis
#baseInteraction C 161 Superimpose Q 248 Superimpose Cis
#baseInteraction C 162 Superimpose Q 249 Superimpose Cis
#baseInteraction C 163 Superimpose Q 250 Superimpose Cis
#baseInteraction C 164 Superimpose Q 251 Superimpose Cis
- Samuel Flores
- Posts: 189
- Joined: Mon Apr 30, 2007 1:06 pm
Re: Exercise 3: Threading Azoarcus to Tetrahymena Ribozyme P6ab
What are you working on by the way? I like to hear what myusers are using MMB for, if it is not secret.
sam
sam
- Lee Xiong An
- Posts: 11
- Joined: Thu Jun 09, 2016 8:47 pm
Re: Exercise 3: Threading Azoarcus to Tetrahymena Ribozyme P6ab
Hi Sam,
I am using MMB to model some RNA (TPP riboswitches), trying a few tools here and there. There are large insertions compared to the template, so this has to be taken in account
Thanks for the very prompt reply!
Xiong An
I am using MMB to model some RNA (TPP riboswitches), trying a few tools here and there. There are large insertions compared to the template, so this has to be taken in account
Thanks for the very prompt reply!
Xiong An
Last edited by Lee Xiong An on Wed Jun 29, 2016 1:52 am, edited 3 times in total.
- Samuel Flores
- Posts: 189
- Joined: Mon Apr 30, 2007 1:06 pm
Re: Exercise 3: Threading Azoarcus to Tetrahymena Ribozyme P6ab
Hi Xiong An,
You can make insertion mutations with MMB. If they are in the termini you can probably just use "insertResidue" for the fully folded structure as per the below script (which is a variation of the "commands.P6ab-threading.dat" that you were playing with earlier. However in the more general case of an insertion in the middle of the chain, it is probably best to make the insertion in the target chain (chain C in the P6ab example) and then do homology modeling, using "alignmentForces". If you need to you can always make the template flexible, to accomodate a possible conformational change induced by the insertion.
We are probably going to have a multiscale modeling workshop in Uppsala, perhaps June 2017. You may be interested in joining.
Sam
# Before running this, copy the provided 1GID.shifted.pdb to last.1.pdb in your working directory
firstStage 2
lastStage 2
# The reporting interval is set empirically, it has no particular physical meaning in this case:
reportingInterval .5
numReportingIntervals 80
# TETRAHYMENA P6ab -- "template" fragment
RNA Q 220 GUCCUAAGUCAACAGAUCUUCUGUUGAUAUGGAU
# AZOARCUS -- "target" or threaded fragment
#RNA C 146 CCUAAGGCAAACGCUAUGG
insertResidue Q 220B A
mobilizer Rigid Q 220 253
mobilizer Default Q FirstResidue FirstResidue+2
# More modern way, using "Physics where you want it" applied to target only:
setDefaultMDParameters
includeResidues Q FirstResidue FirstResidue+2
You can make insertion mutations with MMB. If they are in the termini you can probably just use "insertResidue" for the fully folded structure as per the below script (which is a variation of the "commands.P6ab-threading.dat" that you were playing with earlier. However in the more general case of an insertion in the middle of the chain, it is probably best to make the insertion in the target chain (chain C in the P6ab example) and then do homology modeling, using "alignmentForces". If you need to you can always make the template flexible, to accomodate a possible conformational change induced by the insertion.
We are probably going to have a multiscale modeling workshop in Uppsala, perhaps June 2017. You may be interested in joining.
Sam
# Before running this, copy the provided 1GID.shifted.pdb to last.1.pdb in your working directory
firstStage 2
lastStage 2
# The reporting interval is set empirically, it has no particular physical meaning in this case:
reportingInterval .5
numReportingIntervals 80
# TETRAHYMENA P6ab -- "template" fragment
RNA Q 220 GUCCUAAGUCAACAGAUCUUCUGUUGAUAUGGAU
# AZOARCUS -- "target" or threaded fragment
#RNA C 146 CCUAAGGCAAACGCUAUGG
insertResidue Q 220B A
mobilizer Rigid Q 220 253
mobilizer Default Q FirstResidue FirstResidue+2
# More modern way, using "Physics where you want it" applied to target only:
setDefaultMDParameters
includeResidues Q FirstResidue FirstResidue+2
- Samuel Flores
- Posts: 189
- Joined: Mon Apr 30, 2007 1:06 pm
Re: Exercise 3: Threading Azoarcus to Tetrahymena Ribozyme P6ab
Actually it is not necessary to do the insertion on the target strand. You can make the insertion directly on the folded molecule if you invoke matchGapped. This will work even if the insertion is in the middle of the chain. Since MMB does not know where to put the inserted residue, it will be at a default position distant (most likely) from where it should be. Therefore the bonds that should connect it to its two sequence neighbors will be very long and unphysical. That's OK, just set them to bond mobility Free. Then let the force field minimize the bonds and bring the residue in to where it should be. As mentioned you will need to consider what sort of flexibility the rest of the molecule should have to accomodate this intruder. I append an example, again a variation on the P6 tutorial exercise.
Sam
# Before running this, copy the provided 1GID.shifted.pdb to last.1.pdb in your working directory
matchGapped
firstStage 2
lastStage 2
# The reporting interval is set empirically, it has no particular physical meaning in this case:
reportingInterval .5
numReportingIntervals 80
# TETRAHYMENA P6ab -- "template" fragment
RNA Q 220 GUCCUAAGUCAACAGAUCUUCUGUUGAUAUGGAU
# AZOARCUS -- "target" or threaded fragment
#RNA C 146 CCUAAGGCAAACGCUAUGG
insertResidue Q 237B A
mobilizer Rigid Q 220 253
#mobilizer Default Q FirstResidue FirstResidue+2
mobilizer Free Q 236 238
constraint Q FirstResidue Weld Q LastResidue
# More modern way, using "Physics where you want it" applied to target only:
setDefaultMDParameters
physicsRadius .2
Sam
# Before running this, copy the provided 1GID.shifted.pdb to last.1.pdb in your working directory
matchGapped
firstStage 2
lastStage 2
# The reporting interval is set empirically, it has no particular physical meaning in this case:
reportingInterval .5
numReportingIntervals 80
# TETRAHYMENA P6ab -- "template" fragment
RNA Q 220 GUCCUAAGUCAACAGAUCUUCUGUUGAUAUGGAU
# AZOARCUS -- "target" or threaded fragment
#RNA C 146 CCUAAGGCAAACGCUAUGG
insertResidue Q 237B A
mobilizer Rigid Q 220 253
#mobilizer Default Q FirstResidue FirstResidue+2
mobilizer Free Q 236 238
constraint Q FirstResidue Weld Q LastResidue
# More modern way, using "Physics where you want it" applied to target only:
setDefaultMDParameters
physicsRadius .2