EigenVisIter¶
-
class EigenVisIter : public kotekan::Stage¶
Perform eigen factorization of the visibilities.
This task performs the factorization of the visibility matrix into
num_eveigenvectors and eigenvalues and stores them in reserve space in theVisBuffer. They are stored in descending order of the eigenvalue.This is performed by using a subspace iteration method with an augmented Rayleigh-Ritz step and a progressive matrix completion of masked values.
- Buffers
in_bufThe stream to eigen decompose.Format: VisBuffer structured
Metadata:
VisMetadata
out_bufOutput stream with the calculated eigen-pairs.Format: VisBuffer structured
Metadata:
VisMetadata
- Metrics
kotekan_eigenvisiter_comp_time_secondsTime required to find eigenvectors. An exponential moving average over ~10 samples.kotekan_eigenvisiter_eigenvalueThe value of each eigenvalue calculated, or the RMS.kotekan_eigenvisiter_iterationsNumber of iterations required to compute the last sample.kotekan_eigenvisiter_eigenvalue_convergenceEigenvalue convergence parameter of the last sample.kotekan_eigenvisiter_eigenvector_convergenceEigenvector convergence parameter of the last sample.
- Author
Richard Shaw, Kiyoshi Masui
- Param num_elements:
Int. The number of elements (i.e. inputs) in the correlator data.
- Param block_size:
Int. The block size of the packed data.
- Param num_ev:
UInt. The number of eigenvectors to be calculated as an approximation to the visibilities.
- Param bands_filled:
List of pairs of ints, default empty. Ranges of diagonal bands to mask out before the factorization. These are iteratively filled within the eigen decomposition code.
- Param block_fill_size:
UInt, default 0. Mask out blocks of this size on the diagonal.
- Param exclude_inputs:
List of UInts, optional. Inputs to exclude (rows and columns to set to zero) in visibilities prior to factorization.
- Param tol_eval:
Float, default 1e-6. Fractional change in evals must be less than this for convergence.
- Param tol_evec:
Float, default 1e-5. Total eigenvector overlap must be less than this.
- Param max_iterations:
UInt. Maximum number of iterations to compute.
- Param num_ev_conv:
UInt. Test only the top
num_ev_conveigenpairs for convergence.- Param krylov:
UInt, default 2. Size of the Krylov basis to use.
- Param subspace:
UInt, default 3. Number of subspace iteration substeps.