Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Why augmenting two vectors by adding a constant scalar at each dimensions of two vectors doesn't preserve their cosinus while multiplying with a scalar (scaling) does preserve it?The first operation is known as translation while the second one as scaling. But if you draw the vectors before and after translation their angle is being preserved.

share|cite|improve this question
According to the site it preserves angles but if you apply it to cosinus when you add a scalar to each dimension of the vector then the result is different. Maybe i have to transform the vectors after translation before i compute the cosinus.Or their is another formula i miss when the start of the vectors is not equevalent – curious Apr 10 '13 at 11:14
When you measure the "angle between two vectors in $\mathbb{R}^n$", what you're measuring is the angle between two lines drawn from the origin to the two points in $\mathbb{R}^n$ that your vectors determine. This is not invariant under translation - as you move the points away from the origin the angle decreases. If you also "translate the origin", so you measure angle with respect to some new fixed point, then the angle will be preserved. – Matthew Pressland Apr 10 '13 at 11:16
Technically how i can do than?Lets say i have two two dimensional vectors x=[1,2] and y=[2,3].I translate the first by 3 so x'=[5,6] and the second by 4 y'=[6,7]. if i compute cosinus on x' and y' now is different – curious Apr 10 '13 at 11:18
How can you add a scalar to a vector? – Javier Apr 10 '13 at 11:48

This is a Mathematical look. See the excellent intuitive explanation in the comments by other users. If you are familiar with dot product, consider vectors $x$ and $y$, define the translation vector as $c$ which in effect moves the orgin to $c$. The cosine of the angle between 2 vectors is given by \begin{align} \cos(\theta)=\frac{x^Ty}{||x||.||y||} \end{align} where $||x||=\sqrt{x^Tx}$. Now multiply $x$ by $\alpha_1$ and $y$ by $\alpha_2$. Note $||\alpha_1 x||=|\alpha_1|.||x||$. Now compare the cosines after scaling and before scaling. As for translation, take the cosine after translation \begin{align} \cos(\theta_C)=\frac{(x+c)^T(y+c)}{||x+c||.||y+c||} \end{align} Now convince yourself, why $\cos(\theta_C)$ and $\cos(\theta)$ should be different.

share|cite|improve this answer
My question if for the cosinus not after scaling. After scaling is the same. But after translation. – curious Apr 10 '13 at 18:29
oh, I am sorry, Will correct it. – dineshdileep Apr 10 '13 at 18:33
I know that these are different. My question is why, since geometrically in translation the angle between the vectors is preserved but in a different origin. How this preservation can be interpreted with equivalent $cos$ ?Should i transform the vectors somehow in order to show that $cos$ before and after translation is the same? – curious Apr 10 '13 at 18:40
When you measure the angle, you measure it with respect to a fixed origin. Let us say $p$ is your orgin, then when measure your angle, you should apply the original cosine formula to the vectors $x-p$ and $y-p$. If your intention was translating the whole system, let us say you translated every vector by $c$, so that $x_c=x+c$ and $y_c=y+c$, then while measuring the angle, you should use vectors $x_c-c$ ,$y_c-c$. But, if your intention was adding a constant vector to your two vectors alone, then this is different from translation. There you need to use the formula for the second cos – dineshdileep Apr 10 '13 at 18:59

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.