Hi Orly, REMARK 290 should be the easiest way for generating symmetry mates. Other routes are just going to give you the same results. As Jonathan already pointed out, the symm ops do not garantee that the symm copies are close to each other. The most simple-minded solution to this problem would be simply generating 3x3x3 unit cells so that the unit cell in center will be complete. An upgrade to this is to compute the center of mass of the symmetry copies in each of the 3x3c3 cells and find which one is closest to the orignal 1555 copy. Just for fun, I wrote a little python script that does this (attached). In this script for unit cell translation and calculating center-center distances, I converted the Cartesian coordinates to fractional coords first. Then after the translation,I used the inverse of the SCALE1 matrix to get the shifted Cartesian coords. This way I don't need to read wikipedia on geometry 😋. But as noted in the script the distances should better be calculated in Cartesian.
Zhijie ________________________________ From: CCP4 bulletin board <CCP4BB@JISCMAIL.AC.UK> on behalf of orly avraham <orly.levin...@mail.huji.ac.il> Sent: Friday, January 10, 2020 3:30 PM To: CCP4BB@JISCMAIL.AC.UK <CCP4BB@JISCMAIL.AC.UK> Subject: [ccp4bb] Generating symmetry mates using python Hi all, I am a crystallographer currently employing computational methods as well as experimental crystallography. I am trying to generate symmetry mates in python (working with pandas dataframes), in order to analyze inter-sub-unit interactions. To do so I am trying to use the info in "REMARK 290 CRYSTALLOGRAPHIC SYMMETRY" and manually (using numpy) perform a matrix multiplication with the relevant translation (xyz*rotation + translation). For some reason this doesn't work consistently and I feel I need to use the info in CRYST1 to obtain the unit cell and multiplication matrix. Here I ran into trouble with extracting the correct symmetry operations based on each space group. I found spglib but it doesn't quite solve the problem. I also tried opening PyMol through the command and generating symmetry mates this way. It worked on a few files but failed quite quickly (segmentation fault) and was also very slow. Can anyone suggest a useful solution, preferably clear to use and/or well documented? Or even have a python script/code they can share for this? Best regards, Orly -- Orly Avraham, Ph.D. Postdoctoral fellow The lab of Prof. Oded Livnah and the lab of Prof. Ora Schueler-Furman The Hebrew University of Jerusalem Israel ________________________________ To unsubscribe from the CCP4BB list, click the following link: https://www.jiscmail.ac.uk/cgi-bin/webadmin?SUBED1=CCP4BB&A=1 ######################################################################## To unsubscribe from the CCP4BB list, click the following link: https://www.jiscmail.ac.uk/cgi-bin/webadmin?SUBED1=CCP4BB&A=1
py_PDB.py
Description: py_PDB.py