Say you have two coordinate systems, ˆai and ˆci, and a vector ˉr. And you have ˉr written in component form in the ˆci coordinate system1:
ˉr=₵1ˆc1+₵2ˆc2+₵3ˆc3
Where the ₵i are the components.
You want ˉr written in component form in the ˆai coordinate system, how do you get it? This is called a coordinate transformation, and isn’t too hard to figure out if you start with a diagram like the one above with the two coordinate systems ontop of each other. If you ignore the ˆci coordinate system and just ask “how do you write ˉr in ˆai” the answer is just: project ˉr onto each of the ˆai to get the 3 components of ˉr in ˆai and be done with it. We have our definition of ˉr in ˆci, though, so we can just project that onto ˆai:
ˉr=((₵1ˆc1+₵2ˆc2+₵3ˆc3)⋅ˆa1)ˆa1+((₵1ˆc1+₵2ˆc2+₵3ˆc3)⋅ˆa2)ˆa2+((₵1ˆc1+₵2ˆc2+₵3ˆc3)⋅ˆa3)ˆa3
If we use column vector component notation 2 the original ˉr in ˆci is written:
ˉr=[₵1₵2₵3]ˆci
Then the transformation can be represented by the matrix:
ˉr=[ˆc1⋅ˆa1ˆc2⋅ˆa1ˆc3⋅ˆa1 ˆc1⋅ˆa2ˆc2⋅ˆa2ˆc3⋅ˆa2 ˆc1⋅ˆa3ˆc2⋅ˆa3ˆc3⋅ˆa3][₵1₵2₵3]ˆci
Note that since the two coordinate systems ˆci and ˆai are orthonormal the matrix above is orthonormal. Elsewhere on this site I would write the above as:
ˉr=Rac[₵1₵2₵3]ˆci
because the coordinate transformation matrix is the same as a vector rotation, just looked at from a different perspective. A coordinate transformation takes a vector, keeps it the same, and represents (the same vector, completely unchanged!) in a new coordinate system. A rotation takes a vector in a coordinate system and rotates it to a different vector in the same coordinate system. The problem in the case of rotations is that since there’s no second known coordinate system, you typically need to derive the orthnormal rotation matrix via some other route.