You are here

Problems when inserting spin-label R1A

3 posts / 0 new
Last post
Problems when inserting spin-label R1A
#1

Dear all,

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???
residue_types/spin_labels/R1A.params

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?

Post Situation: 
Fri, 2014-06-27 04:14
ajasja

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.)

Tue, 2014-07-01 11:09
rmoretti

Thank you, this works very well!

In the same spirit I tried

#Make mutation
mut = r.MutateResidue(6 , 'R1A')
mut.apply(pose)

Which also works and is bit less typing;) I updated the notebook with both workarounds.

Best regards,
Ajasja

Thu, 2014-07-03 05:36
ajasja