Cody

# Problem 1650. LASER Tracker - Mirror Distance and Angle

Solution 1239209

Submitted on 26 Jul 2017 by Chris Cleveland
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
d2=2; Phi=pi/4; d3=sqrt(2); x1=d2-d3*cos(Phi); y1=d3*sin(Phi); Theta=atan(y1/x1); d1=hypot(x1,y1); [od2, oPhi]=solve_mirror(d1,d2+d3,Theta); assert(abs(d2-od2)<.001) assert(abs(Phi-oPhi)<.001)

2   Pass
d2=2; Phi=1.5*pi/4; d3=2; x1=d2-d3*cos(Phi); y1=d3*sin(Phi); Theta=atan(y1/x1); d1=hypot(x1,y1); [od2, oPhi]=solve_mirror(d1,d2+d3,Theta) assert(abs(d2-od2)<.001) assert(abs(Phi-oPhi)<.001)

od2 = 2 oPhi = 1.1781

3   Pass
d2=3; Phi=.5*pi/4; d3=1; x1=d2-d3*cos(Phi); y1=d3*sin(Phi); Theta=atan(y1/x1); d1=hypot(x1,y1); [od2, oPhi]=solve_mirror(d1,d2+d3,Theta) assert(abs(d2-od2)<.001) assert(abs(Phi-oPhi)<.001)

od2 = 3 oPhi = 0.3927

4   Pass
d2=3+rand; Phi=(.5+rand/10)*pi/4; d3=1+rand; x1=d2-d3*cos(Phi); y1=d3*sin(Phi); Theta=atan(y1/x1); d1=hypot(x1,y1); [od2, oPhi]=solve_mirror(d1,d2+d3,Theta) assert(abs(d2-od2)<.001) assert(abs(Phi-oPhi)<.001)

od2 = 3.7081 oPhi = 0.4299