Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

From cif to unit cell coordinates #660

Open
Heisenburger2020 opened this issue Sep 5, 2024 · 3 comments
Open

From cif to unit cell coordinates #660

Heisenburger2020 opened this issue Sep 5, 2024 · 3 comments

Comments

@Heisenburger2020
Copy link

Dear Sir/Madams,

I wonder if biotitie could calculate the unit cell configuration(not bio assembly) of protein from a mmcif file with the space group, unit cell shape and asymmetry unit in mmcif file?

Best,
Jiale Zhao

@padix-key
Copy link
Member

No, unfortunately this information is currently only obtainable from PDB files via PDBFile.get_symmetry_mates().

The reason is that it is much simpler to compute them from PDB files as the necessary transformations are already available. In CIF files these transformations need to be computed from the space group (_symmetry.space_group_name_H-M field), which is much more complex and, to be honest, I lack the experience for it.

Therefore, if you (or someone who stumbles on this issue), have more experience in the space group to transformation matrix conversion, I would appreciate a PR here.

@Heisenburger2020
Copy link
Author

Thank you for your reply. After several days of studying, I think I have understood how to get a unit cell transformation. I will try to PR.

@padix-key
Copy link
Member

Great! I think the aim would be to have a function get_symmetry_mates() in https://github.com/biotite-dev/biotite/blob/main/src/biotite/structure/io/pdbx/convert.py, analogous to the function in structure.io.pdb (https://www.biotite-python.org/latest/apidoc/biotite.structure.io.pdb.get_symmetry_mates.html). But for the start some private function that takes the box vectors and the space group and returns a list of rotation matrices and translation vectors would be sufficient. After that I can support you, if you like to have some guidance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants