cctbx_project icon indicating copy to clipboard operation
cctbx_project copied to clipboard

cluster.unit_cell stdevs bug

Open rjgildea opened this issue 6 years ago • 3 comments

It looks like the unit cell standard deviations are calculated using the input unit cell parameters, rather than after being mapped to the niggli cell, as demonstrated by the following example. Note the different ordering of the unit cell parameters on the last line - all unit cells appear to be mapped to the correct niggli cell.

$ cat symmetry.txt
37.96099853515625 79.125 79.125 90.0 90.0 90.0 P1
37.96200180053711 79.1259994506836 79.1259994506836 90.0 90.0 90.0 P1
37.9630012512207 79.12000274658203 79.12000274658203 90.0 90.0 90.0 P1
37.95899963378906 79.12348359159503 79.12348359159503 90.01280173257825 90.0 90.0 P1
37.941001892089844 79.10900115966797 79.10900115966797 90.0 90.0 90.0 P1
37.957000732421875 79.12699890136719 79.12699890136719 90.0 90.0 90.0 P1
37.96500015258789 79.14099884033203 79.14099884033203 90.0 90.0 90.0 P1
37.93000030517578 79.13600158691406 79.13600158691406 90.0 90.0 90.0 P1
37.95500183105469 79.12899780273438 79.12899780273438 90.0 90.0 90.0 P1
79.02999878  79.02700043 37.91400146  90.          90.01300049  90. P1

$ cluster.unit_cell symmetry.txt --text --noplot
There are 10 lines in the input file
Unit cell: (37.961, 79.125, 79.125, 90, 90, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.961, 79.125, 79.125, 90, 90, 90)
   niggli-->Space group: P 1 (No. 1)
Unit cell: (37.962, 79.126, 79.126, 90, 90, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.962, 79.126, 79.126, 90, 90, 90)
   niggli-->Space group: P 1 (No. 1)
Unit cell: (37.963, 79.12, 79.12, 90, 90, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.963, 79.12, 79.12, 90, 90, 90)
   niggli-->Space group: P 1 (No. 1)
Unit cell: (37.959, 79.1235, 79.1235, 90.0128, 90, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.959, 79.1235, 79.1235, 90.0128, 90, 90)
   niggli-->Space group: P 1 (No. 1)
Unit cell: (37.941, 79.109, 79.109, 90, 90, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.941, 79.109, 79.109, 90, 90, 90)
   niggli-->Space group: P 1 (No. 1)
Unit cell: (37.957, 79.127, 79.127, 90, 90, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.957, 79.127, 79.127, 90, 90, 90)
   niggli-->Space group: P 1 (No. 1)
Unit cell: (37.965, 79.141, 79.141, 90, 90, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.965, 79.141, 79.141, 90, 90, 90)
   niggli-->Space group: P 1 (No. 1)
Unit cell: (37.93, 79.136, 79.136, 90, 90, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.93, 79.136, 79.136, 90, 90, 90)
   niggli-->Space group: P 1 (No. 1)
Unit cell: (37.955, 79.129, 79.129, 90, 90, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.955, 79.129, 79.129, 90, 90, 90)
   niggli-->Space group: P 1 (No. 1)
Unit cell: (79.03, 79.027, 37.914, 90, 90.013, 90)
Space group: P 1 (No. 1)
   niggli-->Unit cell: (37.914, 79.027, 79.03, 90, 90.013, 90)
   niggli-->Space group: P 1 (No. 1)
10 lattices will be analyzed
INFO cluster.ab_cluster: Hierarchical clustering of unit cells
INFO cluster.ab_cluster: Using Andrews-Bernstein distance from Andrews & Bernstein J Appl Cryst 47:346 (2014)
INFO cluster.ab_cluster: Distances have been calculated

0 singletons:

Point group    a           b           c          alpha        beta         gamma       

1 clusters:

Cluster_id       N_xtals  Med_a         Med_b         Med_c         Med_alpha    Med_beta     Med_gamma   
cluster_1        10       37.96 (12.32) 79.13 (0.03 ) 79.13 (12.36) 90.00 (0.00) 90.00 (0.00) 90.00 (0.00)
10 in P1.
Standard deviations are in brackets.

rjgildea avatar Nov 17 '17 22:11 rjgildea

Got it. Yet another bug to work out. Will try to do something sensible this weekend.

Nick

Nicholas K. Sauter, Ph. D. Senior Scientist, Molecular Biophysics & Integrated Bioimaging Division Lawrence Berkeley National Laboratory 1 Cyclotron Rd., Bldg. 33R0345 Berkeley, CA 94720 (510) 486-5713

On Fri, Nov 17, 2017 at 2:21 PM, Richard Gildea [email protected] wrote:

It looks like the unit cell standard deviations are calculated using the input unit cell parameters, rather than after being mapped to unit cell parameters, as demonstrated by the following example. Note the different ordering of the unit cell parameters on the last line - all unit cells appear to be mapped to the correct niggli cell.

$ cat symmetry.txt 37.96099853515625 79.125 79.125 90.0 90.0 90.0 P1 37.96200180053711 79.1259994506836 79.1259994506836 90.0 90.0 90.0 P1 37.9630012512207 79.12000274658203 79.12000274658203 90.0 90.0 90.0 P1 37.95899963378906 79.12348359159503 79.12348359159503 90.01280173257825 90.0 90.0 P1 37.941001892089844 79.10900115966797 79.10900115966797 90.0 90.0 90.0 P1 37.957000732421875 79.12699890136719 79.12699890136719 90.0 90.0 90.0 P1 37.96500015258789 79.14099884033203 79.14099884033203 90.0 90.0 90.0 P1 37.93000030517578 79.13600158691406 79.13600158691406 90.0 90.0 90.0 P1 37.95500183105469 79.12899780273438 79.12899780273438 90.0 90.0 90.0 P1 79.02999878 79.02700043 37.91400146 90. 90.01300049 90. P1

$ cluster.unit_cell symmetry.txt --text --noplot There are 10 lines in the input file Unit cell: (37.961, 79.125, 79.125, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.961, 79.125, 79.125, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.962, 79.126, 79.126, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.962, 79.126, 79.126, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.963, 79.12, 79.12, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.963, 79.12, 79.12, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.959, 79.1235, 79.1235, 90.0128, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.959, 79.1235, 79.1235, 90.0128, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.941, 79.109, 79.109, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.941, 79.109, 79.109, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.957, 79.127, 79.127, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.957, 79.127, 79.127, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.965, 79.141, 79.141, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.965, 79.141, 79.141, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.93, 79.136, 79.136, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.93, 79.136, 79.136, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.955, 79.129, 79.129, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.955, 79.129, 79.129, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (79.03, 79.027, 37.914, 90, 90.013, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.914, 79.027, 79.03, 90, 90.013, 90) niggli-->Space group: P 1 (No. 1) 10 lattices will be analyzed INFO cluster.ab_cluster: Hierarchical clustering of unit cells INFO cluster.ab_cluster: Using Andrews-Bernstein distance from Andrews & Bernstein J Appl Cryst 47:346 (2014) INFO cluster.ab_cluster: Distances have been calculated

0 singletons:

Point group a b c alpha beta gamma

1 clusters:

Cluster_id N_xtals Med_a Med_b Med_c Med_alpha Med_beta Med_gamma cluster_1 10 37.96 (12.32) 79.13 (0.03 ) 79.13 (12.36) 90.00 (0.00) 90.00 (0.00) 90.00 (0.00) 10 in P1. Standard deviations are in brackets.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/cctbx/cctbx_project/issues/97, or mute the thread https://github.com/notifications/unsubscribe-auth/AOGuVsScLa4QjNc_2D4xNZXHsxeNUbHFks5s3gbvgaJpZM4Qisv1 .

nksauter avatar Nov 17 '17 23:11 nksauter

Richard, I've committed a reasonably sensible fix. It won't work for corner cases where neighboring unit cells cross polytope boundaries, but for the simple tetragonal input (lysozyme) there are two lines of output:

  1. mean and std dev cells, calculated in Niggli setting.
  2. Median cell back-converted to the input setting, in this case tetragonal.

1 clusters:

Cluster_id N_xtals Med_a Med_b Med_c Med_alpha Med_beta Med_gamma Delta(deg)

10 in P1.

cluster_1 10 37.96 (0.02 ) 79.13 (0.03 ) 79.13 (0.03 ) 90.00 (0.00) 90.00 (0.00) 90.00 (0.00)

 P 4/m m m (No. 123)  79.13         79.13         37.96         90.00
  90.00        90.00         0.0

Standard deviations are in brackets.

Each cluster:

Input lattice count, with integration Bravais setting space group.

Cluster median with Niggli cell parameters (std dev in brackets).

Highest possible metric symmetry and unit cell using LePage (J Appl Cryst 1982, 15:255) method, maximum delta 3deg.

Nick

Nicholas K. Sauter, Ph. D. Senior Scientist, Molecular Biophysics & Integrated Bioimaging Division Lawrence Berkeley National Laboratory 1 Cyclotron Rd., Bldg. 33R0345 Berkeley, CA 94720 (510) 486-5713

On Fri, Nov 17, 2017 at 3:21 PM, Nicholas Sauter [email protected] wrote:

Got it. Yet another bug to work out. Will try to do something sensible this weekend.

Nick

Nicholas K. Sauter, Ph. D. Senior Scientist, Molecular Biophysics & Integrated Bioimaging Division Lawrence Berkeley National Laboratory 1 Cyclotron Rd., Bldg. 33R0345 Berkeley, CA 94720 (510) 486-5713

On Fri, Nov 17, 2017 at 2:21 PM, Richard Gildea [email protected] wrote:

It looks like the unit cell standard deviations are calculated using the input unit cell parameters, rather than after being mapped to unit cell parameters, as demonstrated by the following example. Note the different ordering of the unit cell parameters on the last line

  • all unit cells appear to be mapped to the correct niggli cell.

$ cat symmetry.txt 37.96099853515625 79.125 79.125 90.0 90.0 90.0 P1 37.96200180053711 79.1259994506836 79.1259994506836 90.0 90.0 90.0 P1 37.9630012512207 79.12000274658203 79.12000274658203 90.0 90.0 90.0 P1 37.95899963378906 79.12348359159503 79.12348359159503 90.01280173257825 90.0 90.0 P1 37.941001892089844 79.10900115966797 79.10900115966797 90.0 90.0 90.0 P1 37.957000732421875 79.12699890136719 79.12699890136719 90.0 90.0 90.0 P1 37.96500015258789 79.14099884033203 79.14099884033203 90.0 90.0 90.0 P1 37.93000030517578 79.13600158691406 79.13600158691406 90.0 90.0 90.0 P1 37.95500183105469 79.12899780273438 79.12899780273438 90.0 90.0 90.0 P1 79.02999878 79.02700043 37.91400146 90. 90.01300049 90. P1

$ cluster.unit_cell symmetry.txt --text --noplot There are 10 lines in the input file Unit cell: (37.961, 79.125, 79.125, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.961, 79.125, 79.125, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.962, 79.126, 79.126, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.962, 79.126, 79.126, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.963, 79.12, 79.12, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.963, 79.12, 79.12, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.959, 79.1235, 79.1235, 90.0128, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.959, 79.1235, 79.1235, 90.0128, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.941, 79.109, 79.109, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.941, 79.109, 79.109, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.957, 79.127, 79.127, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.957, 79.127, 79.127, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.965, 79.141, 79.141, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.965, 79.141, 79.141, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.93, 79.136, 79.136, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.93, 79.136, 79.136, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (37.955, 79.129, 79.129, 90, 90, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.955, 79.129, 79.129, 90, 90, 90) niggli-->Space group: P 1 (No. 1) Unit cell: (79.03, 79.027, 37.914, 90, 90.013, 90) Space group: P 1 (No. 1) niggli-->Unit cell: (37.914, 79.027, 79.03, 90, 90.013, 90) niggli-->Space group: P 1 (No. 1) 10 lattices will be analyzed INFO cluster.ab_cluster: Hierarchical clustering of unit cells INFO cluster.ab_cluster: Using Andrews-Bernstein distance from Andrews & Bernstein J Appl Cryst 47:346 (2014) INFO cluster.ab_cluster: Distances have been calculated

0 singletons:

Point group a b c alpha beta gamma

1 clusters:

Cluster_id N_xtals Med_a Med_b Med_c Med_alpha Med_beta Med_gamma cluster_1 10 37.96 (12.32) 79.13 (0.03 ) 79.13 (12.36) 90.00 (0.00) 90.00 (0.00) 90.00 (0.00) 10 in P1. Standard deviations are in brackets.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/cctbx/cctbx_project/issues/97, or mute the thread https://github.com/notifications/unsubscribe-auth/AOGuVsScLa4QjNc_2D4xNZXHsxeNUbHFks5s3gbvgaJpZM4Qisv1 .

nksauter avatar Nov 21 '17 04:11 nksauter

Can this be closed yet? Thanks.

dagewa avatar Dec 10 '19 15:12 dagewa