[chimera-dev] Icosahedral lattice on a sphere
Tom Goddard
goddard at sonic.net
Wed Dec 9 15:48:02 PST 2020
Hi Wei,
You are right the Chimera and ChimeraX hkcage command "sphere" option simply moves the cage vertices outward to lie on a sphere. The sphere passes through the 12 vertices of a plain icosahedron so those 12 vertices don't get moved. But the midpoint of one of the triangular faces of the icosahedron is at radius 0.79 (= sqrt( (1+2/sqrt(5))/3 )) if the vertices are at radius 1 (ie the ratio of inner icosahedron radius to outer radius is 0.79) so projecting a shape near the middle of a triangular icosahedron face will expand its size by 21% relative to if it is near an icosahedron vertex.
It is an interesting problem to try to reduce that distortion. It looks impossible to remove it. For that you would need an isometric map from an icosahedron triangle to a spherical triangle, but no such isometry exists since the triangle is flat and the sphere has curvature 1/R. Let me know what you figure out.
The code for computing the cages in Chimera is all Python and is in your Chimera distribution, on Linux it is here
chimera/share/IcosahedralCage/cages.py
You would be better off working on the successor of Chimera, called ChimeraX. If you improve hkcage we won't update Chimera as we no longer add new features to it since all development is on ChimeraX. The ChimeraX hkcage command is in the ChimeraX distribution, on Linux it is here
chimerax/lib/python3.8/site-packages/chimerax/hkcage/cage.py
Tom
> On Dec 8, 2020, at 6:58 PM, Wei Zhang <zhangwei at umn.edu> wrote:
>
> Hello,
>
> I use the command hkcage to generate an icosahedral lattice on a sphere:
>
> hkcage 5 7 sphere 1
>
> However, this only expands the strict icosahedral lattice (ie when using sphere=0) radially to match a spherical surface. As a result, the sizes of the hexagons and pentagons are not the same. The effect would be very dramatic if the parameter sphere is larger than 1.
>
> I am wondering if the code can be modified to generate a truly icosahedral lattice on a spherical surface, or if that piece of code is open to access?
>
> Thank you and best regards,
>
> Wei
>
> _______________________________________________
> Chimera-dev mailing list
> Chimera-dev at cgl.ucsf.edu
> https://www.rbvi.ucsf.edu/mailman/listinfo/chimera-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://plato.cgl.ucsf.edu/pipermail/chimera-dev/attachments/20201209/99dc432f/attachment.html>
More information about the Chimera-dev
mailing list