- This topic has 2 replies, 2 voices, and was last updated 9 years, 5 months ago by Anonymous.
June 27, 2014 at 11:14 am #1938Anonymous
I would like to use the spin-lable R1A (implemented as part of Rosetta EPR).
In database/chemical/residue_type_sets/fa_standard/residue_types.txt I activated the needed lines
## Spin label types
# kills my unit tests???
Although the “kills my unit tests???” comment is not very encouraging:
The problem is:
When I try to generate a pose from sequence and create an alpha-helix, the helix is terminated at the spin label position. Here is an example IPython notebook demonstrating the problem. Does anybody have a suggestion on how to get this working?
July 1, 2014 at 6:09 pm #10137Anonymous
So it looks like when your structure is being created, it’s being made as three separate chains. You can see this by doing a “print pose.num_jump()” and “print pose”. You’ll see that you have a foldtree which connects 1-5 with a polymeric connection (-1), as well as 7-11, but residue 6 is connected via jumps, or non-polymeric connections.
The source of this issue is that the pose_from_sequence() assumes that any non-canonical residue type automatically means that you need to make it a separate residue.
The easiest way of dealing with this is probably to make a pose without your R1A residue, and then replace the residue with your new residue type. Something like the following would likely work:
seq = ‘R’*(5 +1 + 5); print seq
pose = r.pose_from_sequence(seq, res_type=”fa_standard”)
r1a_pose = r.pose_from_sequence(“Z[R1A]”, res_type=”fa_standard”)
r1a_res = r1a_pose.residue(1)
#Replace position 6 with the residue, orienting it on the backbone
pose.replace_residue( 6, r1a_res, True)
# Now do your backbone manipulation, packing and scoring
(Note that I tried manipulating the FoldTree directly, but the bond length/angles are messed up from loading, so a simple foldtree manipulation doesn’t work as well as just avoiding it in the first place.)
July 3, 2014 at 12:36 pm #10148Anonymous
Thank you, this works very well!
In the same spirit I tried
mut = r.MutateResidue(6 , 'R1A')
Which also works and is bit less typing;) I updated the notebook with both workarounds.
- You must be logged in to reply to this topic.