Chris Pollett > Students >

    ( Print View )


    [Project Blog]

    [CS297 Proposal]

    [Deliverable 1]

    [Deliverable 2]

    [Deliverable 3]

    [Deliverable 4]

    [CS297 Report - PDF]

    [CS298 Proposal]

    [CS298 Report - PDF]

    [CS298 Presentation - PDF]


Implementing SVD using Lanczos algorithm

Description: The main objective of Deliverable 3 was to implement SVD using Lanczos algorithm.
I improved speed by using a QR algorithm to find the eigenvalues.
I also made an improvement on Lanczos algorithm by doing full reorthogonalization during each Lanczos iteration.
The full reorthogonalization was needed because I quickly lost orthogonality of the Lanczos vectors due to not being able to
completely reduce them to a tridiagonal form.
The full reorthgonaliztion process was carried out using a Gram-Schmidt process.

You can find a zip file containing source codes and a screenshot of the output below.
The zip file consists of two java files - and contains main and methods for calculating SVD and changing a symmetric matrix into a tridiagonal matrix using Lanczos algorithm. contains methods for common matrix operations.
output of deliverable 3