Normal vector as a covariant vectorThis third explanation includes how to transform normal vectors. This explanation is based on one of my favorite book by Sugihara. This explanation is a bit formal and less intuitive compare to the first and the second explanation. If you are not interested in a formal explanation, you can skip this section.
First I would like to introduce the affine transformation.
Affine transformation is one of linear transformations. This is quite often used in computer graphics area. Affine transformation transform a line to a line and keep the ratio on a line. If we include a degenerated case, a triangle is always transformed into a triangle. Assume a representation of a three-dimensional affine transformation is a 3x3 matrix. This transformation is a transformation between two coodinate systems. Therefore, I think an object deformation by the transformation is a secondary effect. As a result, we can deform an object. However, this is a transformation of coordinate systems, we can not deform an object arbitrarily. In general, this transformation is a combination of scaling, roration, translation, and shearing. This means, an affine transformation can not transform a triangle to a circle.
If we consider an affine transformation as an coordinate transformation, our interest is how the coordinate of a point P represented in the two different coordinate systems \Sigma and \Sigma'. Note, P itself doesn't move as shown in Figure. P doesn't move, but the coordinates are changed depends on the coordinate system. These coordinate systems may not have perpendicular basis. They may change the distance depends on the axis direction. For example, x direction is two times magnified to y direction.
|Figure 3. A matrix A transforms the coordinate system \Sigma to \Sigma'. Note: the point P doesn't move, but its coordinates representation may differ depends on the coordinate system.|
It's a bit cumbersome, but I will write down how the coordinates of P is represented in the coordinate system \Sigma and \Sigma'.
A point P is represented in a coordinate system \Sigma,