The WebSVD tool, which is similar to those previously discussed, was originally written in MATLAB as part of the ATLAST project (Leon, Herman, & Faulkenberry, 1996), but the MATLAB platform has been frustrating from cross-platform and availability points of view. The web-based tool development presented here has breathed new life into that effort.
Specifically, WebSVD contains components similar to those of Transformer2D, but, given its purpose, it has different elements. The yellow box still controls the column vectors defining the matrix of transformation. In particular, the green vector is the first column, and the blue vector is the second column. By grabbing the ends of these two vectors, you can construct any 2x2 matrix. Below the yellow box is a box that controls the vector x, restricted to the unit circle. As you move x (the red vector) about the unit circle in the domain of the transformation, you can observe the image T(x) (the magenta vector) change in the large area depicting the codomain of the transformation. In addition, the vector x can be moved automatically about the unit circle. In order to further explore, a variety of buttons are provided in the codomain portion containing T(x). For instance, you can turn on or turn off a tracing feature that marks out the path of the transformed vector T(x) or show/hide the orbit of T(x). Also, you can superimpose x onto the codomain, as well as create a separate vector p in the domain and its transformation T(p). Each of these elements helps support exploration into the singular value decomposition of a matrix of transformation.
Open WebSVD in new window
Note: The "?" at the bottom right-hand corner of the workspace is a link to Key Curriculum Press and its About JavaSketchpad web page.
Consider the transformation T(x) = Ax with matrix
Using WebSVD, grab the red vector x (hold down mouse button) in the yellow box and move it completely around the unit circle. What shape do you seem to be getting?
To get a better look, click the "Turn Trace ON" button at the bottom of the right box, and move the red arrow around the unit circle. What shape so you seem to be getting? If you want, you can click on one of the "Animate x" buttons to have the vector x move automatically. If you want the animation to stop, click the button again.
To clean things up a little, click on the "Turn Trace OFF" button, and click the red X in the lower right hand corner of the screen. You can still view the image shape by clicking on "Show Orbit of T(x)" at the top of the right box. You can keep one of the "Animate x" buttons on if you wish (but not both).
Play for a while.
Experimentation should have led you to a feeling that the image of the unit circle appears elliptical. So, is it really an ellipse or not? If it is an ellipse, what are its axes?
A reasonable guess would be a set of eigenvectors from the matrix of transformation, A. Let's investigate that . . .
Now consider the following questions:
Note: Since this is a triangular matrix, its eigenvalues are the diagonal elements: l1 = 1 and l2 = 1.5. Corresponding unit eigenvectors are x1 = (1,0) and x2 = 1/sqrt(10) (3,1) = (.9487, .3162). These are shown in the following figure with Ax1 = x1 and Ax2 = 1.5 x2 in the image.
We've eliminated eigenvectors as the axes of the ellipse, perhaps there is another way to find the axes.
Once again, consider the transformation T(x) = Ax with matrix
If you need a hint, recall that x and p are eigenvectors of ATA, and T(x) and T(p) are the corresponding eigenvectors of AAT. The lengths of the vectors T(x) and T (p) are the square roots of the eigenvalues of ATA. Note: You can check your answer by asking Matlab: Enter A, then type "[Q1,Sigma,Q2]=svd(A)".