Difference between revisions of "Table convention"
(4 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
The column convention used to define a table can be consulted by just typing <tt>dthelp</tt>, which should produce this output: | The column convention used to define a table can be consulted by just typing <tt>dthelp</tt>, which should produce this output: | ||
− | < | + | <tt> |
1 : tag tag of particle file in data folder | 1 : tag tag of particle file in data folder | ||
+ | |||
2 : aligned value 1: marks the particle for alignment | 2 : aligned value 1: marks the particle for alignment | ||
+ | |||
3 : averaged value 1: the particle was included in the average | 3 : averaged value 1: the particle was included in the average | ||
+ | |||
4 : dx x shift from center (in pixels) | 4 : dx x shift from center (in pixels) | ||
+ | |||
5 : dy y shift from center (in pixels) | 5 : dy y shift from center (in pixels) | ||
+ | |||
6 : dz z shift from center (in pixels) | 6 : dz z shift from center (in pixels) | ||
+ | |||
7 : tdrot euler angle (rotation around z, in degrees) | 7 : tdrot euler angle (rotation around z, in degrees) | ||
+ | |||
8 : tilt euler angle (rotation around new x, in degrees) | 8 : tilt euler angle (rotation around new x, in degrees) | ||
+ | |||
9 : narot euler angle (rotation around new z, in degrees) | 9 : narot euler angle (rotation around new z, in degrees) | ||
+ | |||
10 : cc Cross correlation coefficient | 10 : cc Cross correlation coefficient | ||
+ | |||
11 : cc2 Cross correlation coefficient after thresholding II | 11 : cc2 Cross correlation coefficient after thresholding II | ||
+ | |||
12 : cpu processor that aligned the particle | 12 : cpu processor that aligned the particle | ||
+ | |||
13 : ftype 0: full range; 1: tilt around y ( ... dhelp dtutorial for more options) | 13 : ftype 0: full range; 1: tilt around y ( ... dhelp dtutorial for more options) | ||
+ | |||
14 : ymintilt minimum angle in the tilt series around tilt axis (i.e. -60) | 14 : ymintilt minimum angle in the tilt series around tilt axis (i.e. -60) | ||
+ | |||
15 : ymaxtilt maximum angle in the tilt series around tilt axis (i.e. 60) | 15 : ymaxtilt maximum angle in the tilt series around tilt axis (i.e. 60) | ||
+ | |||
16 : xmintilt minimum angle in the tilt series around second tilt axis (i.e. -60) | 16 : xmintilt minimum angle in the tilt series around second tilt axis (i.e. -60) | ||
+ | |||
17 : xmaxtilt maximum angle in the tilt series around second x (i.e. 60) | 17 : xmaxtilt maximum angle in the tilt series around second x (i.e. 60) | ||
+ | |||
18 : fs1 free parameter for fourier sampling #1() | 18 : fs1 free parameter for fourier sampling #1() | ||
+ | |||
19 : fs2 free parameter for fourier sampling #2() | 19 : fs2 free parameter for fourier sampling #2() | ||
+ | |||
20 : tomo tomogram number | 20 : tomo tomogram number | ||
+ | |||
21 : reg for arbitrary assignations of regions inside tomograms | 21 : reg for arbitrary assignations of regions inside tomograms | ||
+ | |||
22 : class class number | 22 : class class number | ||
+ | |||
23 : annotation use this field for assigning arbitrary labels | 23 : annotation use this field for assigning arbitrary labels | ||
+ | |||
24 : x x coordinate in original volume | 24 : x x coordinate in original volume | ||
+ | |||
25 : y y coordinate in original volume | 25 : y y coordinate in original volume | ||
+ | |||
26 : z z coordinate in original volume | 26 : z z coordinate in original volume | ||
+ | |||
27 : dshift norm of shift vector | 27 : dshift norm of shift vector | ||
+ | |||
28 : daxis difference in axis orientation | 28 : daxis difference in axis orientation | ||
+ | |||
29 : dnarot difference in narot | 29 : dnarot difference in narot | ||
+ | |||
30 : dcc difference in CC | 30 : dcc difference in CC | ||
+ | |||
31 : otag original tag (subboxing) | 31 : otag original tag (subboxing) | ||
+ | |||
32 : npar number of added particles (compactions) / subunit label (subboxing) | 32 : npar number of added particles (compactions) / subunit label (subboxing) | ||
+ | |||
34 : ref reference. Used in multireference projects | 34 : ref reference. Used in multireference projects | ||
+ | |||
35 : sref subreference (i.e. generated by Dynamo PCA) | 35 : sref subreference (i.e. generated by Dynamo PCA) | ||
+ | |||
36 : apix angstrom per pixel | 36 : apix angstrom per pixel | ||
+ | |||
37 : def defocus (in micron) | 37 : def defocus (in micron) | ||
+ | |||
41 : eig1 "eigencoefficient" #1 | 41 : eig1 "eigencoefficient" #1 | ||
+ | |||
42 : eig2 "eigencoefficient" #2 | 42 : eig2 "eigencoefficient" #2 | ||
+ | |||
more columns can be added for user-defined properties. | more columns can be added for user-defined properties. | ||
− | </ | + | </tt> |
The shortnames can actually used in some programs of ''Dynamo'' (as <tt>dtgrep</tt> and <tt>dtplot</tt>) to refer to the columns. | The shortnames can actually used in some programs of ''Dynamo'' (as <tt>dtgrep</tt> and <tt>dtplot</tt>) to refer to the columns. | ||
==Tags== | ==Tags== | ||
− | The tags, in column one, are the link between a table and the [[data folder]] that is intended to be talked to by the table. | + | {{main|Particle tags|Particle tags}} |
+ | The [[Particle tags|tags]], in column one, are the link between a table and the [[data folder]] that is intended to be talked to by the table. | ||
==aligned== | ==aligned== | ||
Line 66: | Line 105: | ||
==tdrot,tilt,narot== | ==tdrot,tilt,narot== | ||
− | A set of euler angles. | + | A set of euler angles in ZXZ convention. |
+ | |||
+ | === Convention interpretation === | ||
+ | |||
+ | ====Volume rotation ==== | ||
+ | If <tt>v</tt> is a template (say, pointing to the "north" ), and <tt>[tdrot, tilt, narot]</tt> are the angles that appear in the table for a given particle, then: | ||
+ | |||
+ | <tt> vRotated = drot(v,[tdrot, tilt, narot]); </tt> | ||
+ | |||
+ | would produce a cube containing the template rotated in the direction of the particle. | ||
+ | |||
+ | If the unrotated particle (i.e., the Subtomogram directly cropped form the tomogram) is contained in the volume <tt>p</tt>, then the particle aligned in the direction expressed in the table would be created through | ||
+ | |||
+ | <tt> alignedParticle = trot(p, -[narot,tilt,tdrot]) </tt>; | ||
+ | |||
+ | Note the '''inverse''' ordering of the angles and the '''minus''' sign. | ||
+ | |||
+ | ==== Coordinate rotation ==== | ||
+ | The rotation matrix of a given triplet <tt>[tdrot, tilt, narot]</tt> can be computed as: | ||
+ | |||
+ | <tt> m = dynamo_euler2matrix([tdrot, tilt, narot]);</tt> | ||
+ | |||
+ | If <tt>vRotated</tt> is the volume resulting from applying the triplet [tdrot, tilt, narot] onto a volume <tt>v</tt>: | ||
+ | |||
+ | <tt> vRotated= drot(v,[tdrot, tilt, narot]); </tt> | ||
+ | |||
+ | then a coordinate <tt>r</tt> inside <tt>v</tt> will land in the coordinate <tt>tRotated = inv(m)*r</tt> inside <tt>vRotated</tt> inside <tt>vRotated</tt> | ||
+ | |||
+ | * Both coordinates are assumed to be defined from the [[Volume center |rotation center of the volume]] | ||
+ | * An explanation on how the derivation of the relationship between angle triplet and matrix has been computed can be found inside: <tt>dynamo_euler2matrix_derivation</tt> |
Latest revision as of 08:22, 25 November 2019
As a rule, regular users don't necessarily need to remember the structure of a Dynamo table. However, it might be useful in order to interprete the results of a project, to check if a table has been correctly generated/imported or to diagnose problems.
The column convention used to define a table can be consulted by just typing dthelp, which should produce this output:
1 : tag tag of particle file in data folder
2 : aligned value 1: marks the particle for alignment
3 : averaged value 1: the particle was included in the average
4 : dx x shift from center (in pixels)
5 : dy y shift from center (in pixels)
6 : dz z shift from center (in pixels)
7 : tdrot euler angle (rotation around z, in degrees)
8 : tilt euler angle (rotation around new x, in degrees)
9 : narot euler angle (rotation around new z, in degrees)
10 : cc Cross correlation coefficient
11 : cc2 Cross correlation coefficient after thresholding II
12 : cpu processor that aligned the particle
13 : ftype 0: full range; 1: tilt around y ( ... dhelp dtutorial for more options)
14 : ymintilt minimum angle in the tilt series around tilt axis (i.e. -60)
15 : ymaxtilt maximum angle in the tilt series around tilt axis (i.e. 60)
16 : xmintilt minimum angle in the tilt series around second tilt axis (i.e. -60)
17 : xmaxtilt maximum angle in the tilt series around second x (i.e. 60)
18 : fs1 free parameter for fourier sampling #1()
19 : fs2 free parameter for fourier sampling #2()
20 : tomo tomogram number
21 : reg for arbitrary assignations of regions inside tomograms
22 : class class number
23 : annotation use this field for assigning arbitrary labels
24 : x x coordinate in original volume
25 : y y coordinate in original volume
26 : z z coordinate in original volume
27 : dshift norm of shift vector
28 : daxis difference in axis orientation
29 : dnarot difference in narot
30 : dcc difference in CC
31 : otag original tag (subboxing)
32 : npar number of added particles (compactions) / subunit label (subboxing)
34 : ref reference. Used in multireference projects
35 : sref subreference (i.e. generated by Dynamo PCA)
36 : apix angstrom per pixel
37 : def defocus (in micron)
41 : eig1 "eigencoefficient" #1
42 : eig2 "eigencoefficient" #2
more columns can be added for user-defined properties.
The shortnames can actually used in some programs of Dynamo (as dtgrep and dtplot) to refer to the columns.
Contents
Tags
- Main article: Particle tags
The tags, in column one, are the link between a table and the data folder that is intended to be talked to by the table.
aligned
When a table is passed to a project, you can set to zero the particles in the data folder that you don't want to included into the alignment or classification project. Of course, you can just a table that does not include the particles you want to exclude.
When Dynamo runs a refinement project that operates some particle thresholding from iteration to iteration, the table in the subsequent iteration will not just omit the particles of the previous iteration, but will mark with zero the particles that are not to be aligned in the subsequent iteration.
averaged
This column is never set by the user, but it is typically filled by Dynamo during an alignment project. Dynamo generates several tables during the project (for each reference and for each iteration), and this column allows to track which particle contributed to which reference at which iteration.
dx,dy,dz
The shift parameters, in pixels, measured always from the center of the box.
tdrot,tilt,narot
A set of euler angles in ZXZ convention.
Convention interpretation
Volume rotation
If v is a template (say, pointing to the "north" ), and [tdrot, tilt, narot] are the angles that appear in the table for a given particle, then:
vRotated = drot(v,[tdrot, tilt, narot]);
would produce a cube containing the template rotated in the direction of the particle.
If the unrotated particle (i.e., the Subtomogram directly cropped form the tomogram) is contained in the volume p, then the particle aligned in the direction expressed in the table would be created through
alignedParticle = trot(p, -[narot,tilt,tdrot]) ;
Note the inverse ordering of the angles and the minus sign.
Coordinate rotation
The rotation matrix of a given triplet [tdrot, tilt, narot] can be computed as:
m = dynamo_euler2matrix([tdrot, tilt, narot]);
If vRotated is the volume resulting from applying the triplet [tdrot, tilt, narot] onto a volume v:
vRotated= drot(v,[tdrot, tilt, narot]);
then a coordinate r inside v will land in the coordinate tRotated = inv(m)*r inside vRotated inside vRotated
- Both coordinates are assumed to be defined from the rotation center of the volume
- An explanation on how the derivation of the relationship between angle triplet and matrix has been computed can be found inside: dynamo_euler2matrix_derivation