Additionally, pca will produce 3 graphs showing 1) the fractional, cumulative sum of the singular values versus the number of features, 2) a histogram showing the size of the first 10 singular values, and 3) histograms presenting the distributions of the first 8 coefficients/features. For method 1, singular values are proportional the variance explained by the corresponding feature. These graphs are helpful for choosing features to use for subsequent clustering. Copies in pdf format will also be written to files pcaFig<n>.pdf. Other formats may be selected from each figure's pull-down file menu.
Finally, for method 1 only, MRC images corresponding to the first 4 features (eigenvectors) will be saved to files eigenImage<n>.mrc; if desired, the number of eigenimages to save can be specified by setting pcaNumEigenimages in the parameter file. In these volumes large magnitudes (displayed as either black or white) correspond to voxels which change rapidly (with opposite signs) along the corresponding feature vector, while 0 (medium gray) indicates voxels with little or no change.
NOTES: This program is both compute and memory intensive. A fast, multi-core machine with at least 32 GB of ram is suggested for typical applications (e.g. 600 particles of size 140x140x140 voxels). Specific requirements scale roughly with the product of volume size and number of particles. Insufficient memory will result in thrashing (the system will become unresponsive while showing very low cpu usage) or an error message. When full resolution is not required, prior binning may make a previously unworkable situation tractable, and will also reduce noise sensitivity. Alternatively, program pcaSP is functionally identical to pca except that key data structures and computations are single- rather than double-precision, reducing memory requirements by nearly a factor of 2. Another solution is to perform principal components analysis on a representative subset of the data, followed by decomposition of the entire data set along these principal components with program usePreviousPca.