[Chimera-users] code or psuedo code for unit cell packing
Tom Goddard
goddard at sonic.net
Wed Sep 24 10:02:13 PDT 2014
Hi Brian,
If you apply the REMARK 290 SMTRY operators from a PDB file to the atomic coordinates in the file (i.e. to the asymmetric unit) the placement of the molecules will not in general be tightly packed. If you turn of the “pack molecules in unit cell” option in the Chimera Unit Cell dialog (under Options), that is what you will get. For 2FDN you will see 8 monomer all over the place, the first attached image. By default the Chimera unit cell dialog has the pack option on and it produces the second attached image where the geometric center of the asymmetric unit (ie the coordinates in the file) for each of the 8 copies is inside the unit cell outline box. It achieves this by simply translating each molecule by an integer multiple of the unit cell size along each axis so that the center ends up in the outlined unit cell. There are no rotations involved in this packing, it is just shifting the molecules typically by one unit cell width to get them all inside the same unit cell. The size and angles for the unit cell are taken from the CRYST1 PDB file record.
If you want to examine the Python code for this look in your Chimera distribution at file
chimera/share/Crystal/unit_cell.py
in particular the unit_cell_matrices() routine which callse the pack_unit_cell() routine which calls the close_packing_matrices() routine. On Mac this would be in
Chimera.app/Contents/Resource/share/Crystal/unit_cell.py
and online you can view it in our source code repository
http://plato.cgl.ucsf.edu/trac/chimera/browser/trunk/libs/Crystal/unit_cell.py
Tom
On Sep 24, 2014, at 9:41 AM, Bennion, Brian wrote:
> Thank you Elaine,
>
> Perhaps I wasn't clear enough. I can use the smtry operations found in the the REMARK 290 records to create what appears to be an individual monomer of a protein in a separate unit cell (2FDN). With this pdb there are 8 monomers per unit cell, however, without selecting packing I just get 8 monomers in 8 unit cells.
>
> You state that the packing option chooses the copy of the each chain that puts its center within the outline of a single unit cell box. Can you show me what that code looks like? I just want to understand what the translation/rotation operations are...
>
> Brian
>
>
>
> ________________________________________
> From: Elaine Meng
> Sent: Wednesday, September 24, 2014 9:27 AM
> To: Bennion, Brian
> Cc: chimera-users at cgl.ucsf.edu
> Subject: Re: [Chimera-users] code or psuedo code for unit cell packing
>
> Hi Brian,
> The symmetries in the PDB file define the possible positions of multiple copies of a chain in the repeating array of unit cells. See the documentation for descriptions of which matrices from the PDB file are used (depends on your own settings in the Options). The packing option chooses the copy of each chain that puts its center within the outline of a single unit cell box.
>
> <http://www.rbvi.ucsf.edu/chimera/docs/ContributedSoftware/unitcell/unitcell.html>
>
> I hope this helps,
> Elaine
> -----
> Elaine C. Meng, Ph.D.
> UCSF Computer Graphics Lab (Chimera team) and Babbitt Lab
> Department of Pharmaceutical Chemistry
> University of California, San Francisco
>
>
>
> On Sep 24, 2014, at 8:38 AM, Bennion, Brian wrote:
>
>> Hello
>>
>> I found the unit cell gui to be very useful recently. However I am curious about how the "pack into unit cell" option works. What information in the pdb header is used to translate/rotate a set of monomers each in an individual unit cell and pack them back into the "original cell".
>>
>> Thanks for any help
>> Brian
>
>
> _______________________________________________
> Chimera-users mailing list
> Chimera-users at cgl.ucsf.edu
> http://plato.cgl.ucsf.edu/mailman/listinfo/chimera-users
>
More information about the Chimera-users
mailing list