Reconciling 'intersecting planes' and 'linear transformation' interpretations of matrices I've learned in linear algebra class that an $n \times m$ augmented matrix can be thought of as a collection of n planes in $\mathbb {R}^m$ . If the matrix is invertible, the planes all intersect at a single point. If it has infinite solutions, two or more planes coincide and so their intersection is a line rather than a point. If the matrix is inconsistent then there is no one single point of intersection. When you do Gauss-Jordan elimination, you are adding scalar multiples of the planes to each other, which has the effect of rotating them over the line where they intersect. When they attain RREF, they are at right angles to each other in the dimensions corresponding to columns that contain leading ones.
But then we go on to another interpretation of matrices as linear transformations for altering the magnitude and direction of vectors. I would like to have a geometric interpretation of matrix multiplication that is compatible with the intersecting planes interpretation. Since matrix multiplication is built from row by column dot-products, I guess the first step would be to visualize those. 
First question: Am I correct in interpreting the dot-product of two vectors as the cosine of the angle between them scaled to the magnitude of both vectors, with a value somewhere between the length of the shadow vector A casts on vector B and the length of vector B. Is there anything more specific I should associate with this quantity?
Second question: Now let's say we multiply a $3 \times 3$ matrix by a vector $\in \mathbb R^3$ and get a different vector $\in \mathbb R^3$. How do I interpret it graphically relative to the three intersecting planes and one line through the origin that gave rise to it?
Third question: Can anybody recommend some software I can use for visualizing matrix operations, especially on Linux? At the moment I'm using wxMaxima with the draw package, but it's really awkward to use because draw cannot take matrices as arguments and I don't see any way of updating and existing plot with new information.
Thank you all kindly.
 A: This "stack of planes" visualization is a reminder that the $n$ components of a linear function from $R^m$ to $R^n$ are linear functions (from $R^m$ to $R^1$).  Unfortunately, the geometry that ordinarily carries the intuition about matrices is collapsed by graphing all these functions with the same "$y$ axis" when each component naturally has its own axis.  The true geometric picture is of a single plane in $m + n$ dimensional space.  Each of the $m$ planes in the stack is the projection of this bigger picture in a different coordinate direction.  
Think of the case $m=2$, $n=1$: a straight line in 3-dimensional space. Assume the line is not parallel to any coordinate axis.  Projecting this line to the $xz$ or $yz$ planes one gets two different lines (that are the 1-dimensional "planes" in the stack-of-planes visual), but combining these drawings into a single plane with graphs of two different lines in one picture makes no geometric sense.  The correct idea is that from the two graphs in the $xz$ and $yz$ planes one can rebuild the whole 3-d diorama by drawing one plane (the graph of the 2x1 matrix thought of as a linear function) through the projected lines.   Draw it or build a model and you will see the difference.  To get the "stack of planes" involves the un-natural act of rotating one of the side planes onto the other so as to align the axes of the graphs.
A: I'll only take on the first question. $${\bf u}\cdot{\bf v}=\|{\bf u}\|\|{\bf v}\|\cos\theta,$$
where $\theta$ is the angle between the vectors $\bf u$ and $\bf v$. The "shadow" $\bf u$ casts on $\bf v$, more commonly referred to as the projection of $\bf u$ on $\bf v$, has length $\|{\bf u}\|\cos\theta$, which by the previous formula is $({\bf u}\cdot{\bf v})/\|{\bf v}\|$. It is not, in general, true that the dot product is between the  length of the projection and the length of $\bf v$. 
A: For the third question, you may want to check out java applets on linear algebra, which I suppose can run on Linux.
http://www.math.drexel.edu/~pg/java/la_applets/index.html
seems to have linear algebra applets with some geometrical interpretation.
