[Chimera-users] Using sym command to generate icosahedral cage
Yen-Ting Lai
yentingl at gmail.com
Tue Feb 25 16:11:56 PST 2014
Hi Tom,
Thanks a lot for the instructions. Your procedure to dock the pentamer and
dimer to the icosahedral cage is very straight forward. I wish I asked
before I implemented mine. My current procedure (written in Perl and
Python, plus a little bit of Chimera command script) is more cumbersome (I
am not trained as a programmer), but it seems able to spit out some
plausible designs. Let's assume I have a design that has perfect geometry
(the two axes intersected at a correct, precise angle). So all I need to do
now is to orient the two symmetry axes to one of the canonical orientation
(n25, for example).
My plan to do this will be:
first, move the point where the two axes intersected (this is also the
center of the whole cage) to the origin
second, calculate the cross product of the 5-fold axis of the designed
monomer and the z-axis, this will be the rotation axis to align the 5-fold
axis to z-axis.
then the dot product of the 5-fold axis and the z-axis will be calculated
to derive the angle needs to be rotated to align 5-fold axis to z-axis.
After these steps, I'll need to align a 2-fold axis to the y-axis, this
2-fold axis, however is not the 2-fold of the monomer that I am working on.
As can be see in many of the axes relations in icosahedron (one
here<http://chem.rutgers.edu/~lawson/pointsuite0.7/html/index.html>),
the 2-fold axis to be oriented can be derived from the known 5-fold and
2-fold axes of the monomers.
Finally, I can use the z-axis as the rotation angle and align the target
2-fold axis to the y-axis.
Once these are done, I'll use the sym command to generate the complete cage.
I estimate these will take me about a week to do. I'll give update when I
manage to do so, or when I get stuck.
Thanks again!
Yen
On Tue, Feb 25, 2014 at 10:40 AM, Tom Goddard <goddard at sonic.net> wrote:
> Hi Yen,
>
> That's neat. Here are some ideas about how to build an icosahedral
> model from a fusion protein of a protein A that likes to form pentamers
> with another protein B that likes to form dimers. An icosahedron has 12
> 5-fold symmetry axes and 30 2-fold symmetry axes. So 60 monomers of the A
> protein to form the pentamers, and 60 monomers of the B protein to make the
> dimers. So joining one A monomer to one B monomer looks promising. The
> trick to making the icosahedral model though seems to be that the pentamer
> 5-fold symmetry axis and a dimer 2-fold symmetry axis in an icosahedron
> have a precise relative orientation to one another, both axes passing
> through the center of the icosahedron, and a certain angle between them.
> So if first you make a fusion PDB model then try to make an icosahedron,
> it is unlikely you are going to get both the native pentamers and dimers
> unless the fusion combines the two monomers in exactly the right relative
> orientation. So some of the problem seems to be how to get the two in the
> right relative orientation.
>
> So here is how I would do it in Chimera. The basic plan would be to
> make an icoshedral cage with one atom at each vertex. Use that to align a
> pentamer crystal structure of protein A to one pentamer of the cage and use
> the sym command to copy it so I have 12 pentamers in an icosahedral
> arrangement. Then do the same with a dimer crystal structure of protein B
> with its 2-fold axis aligned to a 2-fold axis of the cage and use sym to
> duplicate it. So now I have the pentamer and dimer proteins in an
> icosahedral arrangement. But there are 4 adjustable parameters in the
> previous description. First I can radially move the pentamers and I can
> radially move the dimers from the center of the cage (2 parameters). If I
> place the pentamers and dimers at too small a radius then the molecules
> clash with each other. If I place them at too large a radius then the
> dimers and pentamers don't even touch each other. Also I can rotate a
> pentamer about its 5-fold axis (and all other pentamers rotated by same
> amount) by any angle. And likewise I can rotate a dimer about its 2-fold
> axis. Those are the other 2 parameters. By using the sym command auto
> update option I can do radial motions and rotations with Chimera commands
> (move, turn) and see how the whole icosahedral arrangement changes. What I
> would be looking for is parameters that put the an A monomer (from a
> pentamer) close to a B monomer (from a dimer) so that I could join the two
> by a linker in the fusion protein. Then I could save that A monomer and B
> monomer in the correct relative positions and build a linker (maybe with
> Chimera Build Structure tool and energy minimization) to join them.
>
> Here are some of the details of the above procedure. I'm going to just
> sketch them because it would be an extremely long email to explain every
> detail. To make an icosahedral cage I'd use the "shape icosahedron"
> command (e.g. "shape icos divisions 1 mesh true radius 100"). That makes a
> surface which is not usable for aligning PDB models, so I'd convert it to a
> fake molecule with atoms at the icosahedron vertices with the "meshmol"
> command (e.g. "meshmol #0 2"). To align a pentamer PDB model to it with
> chains A,B,C,D,E I'd select 5 cage atoms (in counter-clockwise order) using
> ctrl-click and shift-ctrl-click then use a command like "match #1:5.A-E at CAsel" to align the CA atom of residue 5 of each monomer to one cage atom.
> Aligning a dimer is slightly trickier. Each dimer axis passes through an
> icosahedral cage edge. I'd use the vertices of two triangles joined at
> that edge and match those to 4 atoms in the dimers (2 equivalent atoms in
> each monomer). Now it would really simplify model building if my crystal
> structure pentamer had symmetry axis on z and passed through 0,0,0. But
> the x-ray coordinates won't have that. So after I do the above alignment
> to a cage with the 5-fold axis pointing directly out of the screen I'd
> resave the PDB pentamer (File / Save PDB..., option Save relative to "cage
> model"). Likewise I'd save a copy of the dimer with its 2-fold axis along
> z and passing through the origin. This going to help alot when it comes to
> wanting to adjust the radial position and rotation of these in the
> icosahedron. Now I can use the sym command to make icoshedral symmetry
> copies of the pentamer and use it again for the dimer. But this makes way
> too many copies, 60 copies of the pentamer and 60 of the dimer because it
> doesn't understand that I already have the 5-fold symmetry monomers. The
> easy solution is delete all but one monomer of the pentamer ("delete
> #1:.B-E") then use the sym command. Same with the dimer. Now assuming you
> built this model with the pentamer and dimer models having symmetry axes
> along z and through the origin you can easily move them with the move and
> turn commands. For example if model #3 is the pentamer monomer used to
> make sym copies (with auto update enabled), then do "move z 15.5 model #3
> coordinateSystem #3" or "turn z 45 model #3 coord #3 center 0,0,0".
>
> Check out the Chimera command documentation for details of the needed
> command. The above procedure requires many steps, would take me an hour or
> two, and will be harder if you are not familiar with the command options
> you'll need.
>
> If you still really would like to have a command that simply takes a
> model and orients it using z-axis and y-axis vectors that you specify (3
> numbers each) I can write a simple Python script that does that.
>
> Good luck!
>
> Tom
>
>
>
> On Feb 24, 2014, at 8:33 PM, Yen-Ting Lai wrote:
>
> Hi Tom,
>
> Thanks for the advice. Yes, I am working on a not very common case. In my
> lab, we are designing protein molecules that can assemble into cages (Science
> 2012, 336(6085) p1129<https://www.sciencemag.org/content/336/6085/1129.short>).
> This method was used successfully to generate tetrahedral cages and now I
> am trying to make icosahedral cages. At the design stage, we fuse in
> silico a natural C2 protein dimer (taken from PDB) to a natural C5 protein
> pentamer (also from PDB) with a long helix linker. In this way a fusion
> molecule with both 5-fold and 2-fold symmetries can be generated. However,
> such model won't be oriented in any specific ways that can be used with the
> sym command. One way to fix this is to write a python script to align the
> 5-fold axis of the fusion molecule to the z-axis and then align the 2-fold
> axis (not of the molecule, need to be derived) to the y-axis. Then the sym
> command can be used by specifying n25 as the orientation. I am just
> wondering if there's any quick way of doing this.
>
> Yen
>
>
> On Mon, Feb 24, 2014 at 6:10 PM, Tom Goddard wrote:
>
>> Hi Yen,
>>
>> There is no simple way to specify a coordinate frame in Chimera using
>> vectors (although it is easy in Python). For symmetries with a single
>> symmetry axis like cyclic symmetry you can specify the "axis" keyword and a
>> vector (3 comma-separated numbers) to the sym command and it will use that
>> as the symmetry axis. This will work for icosahedral symmetry but only
>> allows you to reorient the z axis of one of the standard orientations. The
>> coordinateSystem option to the sym command lets you use the axes of another
>> model for the symmetry. But there is no Chimera command to specify the
>> coordinate axes of one model as vectors relative to the coordinate system
>> of another model.
>>
>> You are asking for something pretty exotic. If you explain more about
>> your problem (how you get this coordinate system as vectors) maybe I'll
>> have and idea for how to make the symmetry work. For instance the Chimera
>> matrixget can read vector coordinate frames from a file and maybe that
>> could be used in your situation.
>>
>> Tom
>>
>>
>>
>> On Feb 21, 2014, at 4:49 PM, Yen-Ting Lai wrote:
>>
>> > Hi,
>> >
>> > I noticed that the sym command can be used to generate icosahedral
>> symmetry, but it requires that the molecule to be oriented in specific ways
>> (222, 2n5, n25, ...), which requires aligning the symmetry axes to the X, Y
>> or Z axes. I am wondering if there is a way to specify the symmetries axes
>> by vectors (instead of aligning them to the three principal axes) and then
>> use sym command to generate the whole icosahedral cage?
>> >
>> > Yen
>> >
>> > _______________________________________________
>> > Chimera-users mailing list
>> > Chimera-users at cgl.ucsf.edu
>> > http://plato.cgl.ucsf.edu/mailman/listinfo/chimera-users
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://plato.cgl.ucsf.edu/pipermail/chimera-users/attachments/20140225/b666d8bc/attachment.html>
More information about the Chimera-users
mailing list