Cross correlation matrix

From Dynamo
Jump to navigation Jump to search

The cross correlation matrix (often called ccmatrix in Dynamo jargon) of a set of N particles is an N X N matrix. Each entry (i,j) represents the similarity of particles i and j in the data set.

Definition of similarity

This similarity of particles i and j measured in terms of the normalized cross correlation of the the two aligned particles, filtered to their common fourier components, and restricted to a region in direct space (indicated by a classification mask). The pseudo code will run as:

  1. Input
    particles pi and pj
    alignment parameters Ai and Aj
    classification mask m
  2. read particles i and j -> pi, pj
  3. align particles i, and j -> Aipi, Ajpj
  4. compute missing wedges for particles i and j -> Wi, Wj
  5. rotate missing wedges -> RiWi, RjWj
  6. compute Fourier coefficients common to bCoth rotated missing wedges
    Cij = intersection(RiWi, RjWj)
  7. filter pi with Cij
    pi = F-1[ F(pi).* Cij ]
  8. compare the filtered particles inside the classification mask.
    ccmatrix(i,j)<- normalized cross correlation


Input for ccmatrix construction

The minimal input is a set of particles (formatted as a data folder) and their alignment parameters (formatted as a table). You also may want to specify a classification mask and optatively additional mathematical operations on the particles (as bandpassing or symmetrization).

Computation of a ccmatrix

Dynamo typically implements the computation of a ccmatrix in independent blocks that can be handled separately by different cores.

Application of a ccmatrix

A ccmatrix is most commonly used in the context of PCA classification