Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

I have a flat mirror and a target. Given the sun's light angle of incidence, I must calculate how much to spin my mirror to hit the target with the light. The problem is shown in the following figure.

Mirror schematics

Given $a$, the angle of sun's light incidence, and $b$, the angle the reflected light must have in order to reach the target (from the center of the mirror), I must calculate $c$, the angle the mirror must spin. Simple enought, the solution is given by:

$c = {a + b \over 2}$

But there is a variation of this situation where it is not possible to rotate the mirror from it's center. The mirror is attached on the surface of a cylinder, and the spin is relative to the cylinder's center. In this new situation, $b$ is function of $c$.

Mirror and axis

Triangle relation

Considering I had the brilliant idea of using positive y-axis for angle reference, I soon figured out that

$ \begin{aligned} & x' = x - (- r \sin c) \\ & y' = y - r \cos c \\ & \tan b = {x' \over y'} \end{aligned} $

thus

$ \begin{aligned} & c = {a + b(c) \over 2} \\ & c = {a + \arctan {x + r \sin c \over y - r \cos c} \over 2} \\ & 2 c = a + \arctan {x + r \sin c \over y - r \cos c} \\ & \tan (2 c - a) = {x + r \sin c \over y - r \cos c} \\ & {\sin (2 c - a) \over \cos (2 c - a)} = {x + r \sin c \over y - r \cos c} \end{aligned} $

This is as far as I could get finding $c$. I was not able to isolate $c$ in the equation, nor could I find a simpler relation between $c$ and $b$. How can I find $c$? Is there a simpler way to define $b(c)$, that does not resort to trigonometry? If not, how can I isolate $c$ in that last equation?

I need to program it, and I'd rather not resort to numerical methods because I can't remember a damn thing about it.

share|improve this question
add comment

2 Answers

up vote 1 down vote accepted

I believe it is possible to isolate $c$ in your last equation, although I haven't written it all out, and I suspect that if I did I'd find the result too messy to be of much use. You can use $\sin(2c-a)=\sin2c\cos a-\cos2c\sin a$ and $\cos(2c-a)=\cos2c\cos a+\sin2c\sin a$, then $\sin2c=2\sin c\cos c$ and $\cos2c=2\cos^2c-1=1-2\sin^2c$ to get everything in terms of $\sin c$ and $\cos c$. Then you can use $\sin^2c+\cos^2c=1$ to express everything in terms of $\sin c$ or $\cos c$, whichever you prefer. You may have to juggle some square roots, but eventually you'll get to a polynomial, possibly of very high degree, in $\sin c$ (or $\cos c$).

I hope someone suggests a better way, but you may have to resign yourself to numerical methods.

share|improve this answer
add comment

I have resorted to numerical methods. I used Wolfram Alpha to find the derivative of the equation and implemented Newton–Raphson method in C. It did the job.

share|improve this answer
add comment

Your Answer

 
discard

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.