06/01/1999 09:00 AM

Computer Science

This note describes a numerically stable procedure to derive a canonical coordinate system for a 2D linear transformation. The determinant of the transformation from the given coordinate system to the canonical coordinate system is 1; thus area is preserved. The transformation is composed of a short sequence of rotations and area-preserving nonuniform scales. If the eigenvectors are real, they map into axes in the canonical coordinate system. If the eigenvectors are complex, the transformation becomes rotationally invariant in the canonical coordinate system. The numerically difficult case is when the transformation is nonsingular, yet the eigenvectors are very nearly collinear.