# Rotation of parabola

I'm designing a parabolic solar concentrator and am doing ray-tracing on Matlab from scratch. I'm beginning to look into compound concentrators and would need to have an equation for a parabola rotated by x degrees centered at a specific (non origin) point. The equation I am using for my parabolas is $a*(x-X)^2 - Y$.

I am not sure how to rotate this equation besides using a rotation matrix, solving for y using quadratic equation and choosing one term. Even this method gives me another parabola in $y(x)$.

Any suggestions on a simple way to get half of a parabola rotated by $\theta$? Should I be looking into parameterization?

Thanks

-
Do you want it rotated around the central axis of the parabola, or an arbitrary axis? I would think that rotation around the central axis would be relatively easy, and that rotation around an arbitrary axis would be much more difficult. –  Colin McFaul Jul 3 '12 at 19:05
A rotated parabola is not a function and therefore you only choice is to use a rotation matrix. –  ja72 Jul 3 '12 at 19:06
I think it is easier to rotate the rays, and keep the paraboloid fixed. –  Bernhard Jul 3 '12 at 19:21
Why are you ray tracing in the first place? –  Colin K Jul 3 '12 at 19:25
powerfromthesun.net/Book/chapter09/chapter09_files/image011.jpg The bold lines are what I want to define in matlab as a reflective surface. Only problem is parabolas have tilted axes. So I would like to rotate and then select for the lower term of the quadratic (making it a function). –  Shrim Jul 3 '12 at 21:11

I don't know if this is useful, but I would proceed with the parametrization and the rotation matrix, anyway.

Let us rename $x-X\rightarrow x$. Then, notice that the equation of the parabola $y = a x^2$ can be parametrized by $x = t$, $y = a t^2$, as $t$ goes from $-\infty$ to $\infty$; or, as a vector,

$$(x(t), y(t))=(t,a t^2)$$

To rotate the graph of the parabola about the origin, you must rotate each point individually. Rotation clockwise by an angle $\theta$ is a linear transformation with matrix

$$\left( \begin{array}{ccc} \cos\theta & \sin\theta \\ -\sin\theta & \cos\theta \\ \end{array} \right)$$

Thus, if we apply this linear transformation to a point $(t, t^2)$ on the graph of the parabola, we get

$$\left( \begin{array}{ccc} \cos\theta & \sin\theta \\ -\sin\theta & \cos\theta \\ \end{array} \right) \left( \begin{array}{ccc} t \\ a t^2\\ \end{array} \right) = \left( \begin{array}{ccc} t\cos\theta +a t^2\sin\theta\\ -t\sin\theta+a t^2\cos\theta\\ \end{array} \right)$$

So, as $t$ goes from $-\infty$ to $\infty$, this is a parametrization of the graph of the rotated parabola.Then you have to convert back to $x$ and $y$, put them in the equation $y=x^2$ and that's it.

To get a cartesian equation for the new parabola, you can just solve for $t$ in the first line $a t^2 + t cot\theta = x/\sin\theta$ and put the expression for $t$ in the second one. Doing this, you have an equation for $x$ and $t$ that corresponds to the "constraint" $x$ and $y$ must satisfy to be on the new parabola!

-
so from the rotated parameterized matrix at the end, converting this back to x and y simply gives [xcos() + ysin(), -xsin() + ycos()], which is just [x,y] rotated by theta, correct? Is there a specific way to convert this back into cartesian to be useful? –  Shrim Jul 3 '12 at 20:44
Thanks for the response, btw –  Shrim Jul 3 '12 at 20:44
I edited, maybe this is more clear! Isn't it? –  usumdelphini Jul 3 '12 at 21:09
yea, that makes sense to me. Thanks for the help –  Shrim Jul 3 '12 at 23:07
Good idea! I'd add that leaving things in parametric form may be useful, as it makes computing a surface normal trivial. –  Colin K Jul 4 '12 at 1:54