Sidewinder - Do an ab initio reconstruction on a set of class sums representing side views.



Sidewinder(DataSetName,NumImages,SymString, NumLoops=20,MovesPerLoop=10000,jump='no')




Purpose: Sidewinder is a program that assigns angles to class sums based on a simulated annealing algorithm. The class sums are to represent side views of a protein and the symmetry of the protein should be known. The


  1. P.R. Baldwin and P.A. Penczek, Ab Initio Reconstruction for Orthoaxial Sets of Projections via Simulated Annealing.

Author / Maintainer

P. R. Baldwin


category 1


This contains the programs:

Anneal is the guts of the angle assignment part of the Sidewinder routine, which comes into play after the class sums are pruned, and the approximate relation between cross correlation coefficient and angle is established. It takes as arguments the number of assignments to be made, as well as the minus relations (thetaIJMRad) between the JX and JY class sums, and the plus relations (thetaIJPRad) between the JX and JY class sums. The symmetry is given by SymmetryString as defined above. It currently is working only on Dn proteins. Anneal calls the function MinFuncPM to evaluate the quality of the current assignment, which is stored in thetaRad. Therefore MinFuncPM is the minimization functional. It is given by

$ S = \sum_{(m,j) \in M} | \cos( n ( \phi_m -\phi_j) ) - \cos( n \phi_{M,mj} ) | + \sum_{(m,j) \in P} | \cos( n ( \phi_m +\phi_j) ) - \cos( n \phi_{P,mj} ) | , $

Anneal is a standalone program, and can be considered a Simulated Annealing Multidimensional Scaling routine (constrained to a circle). MinFuncPM may also be checked as a standalone program.

See also



Anneal, and therefore the rest of the Sidewinder suite, works only on Dn proteins (not Cn). This will be changed shortly. The cutoffs are set manually now.

sidewinder (last edited 2013-07-01 13:12:44 by localhost)