Cody

# Problem 1650. LASER Tracker - Mirror Distance and Angle

Solution 567952

Submitted on 28 Jan 2015 by goc3
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)

ind = 4501 Phi = 0.7854 D2 = 2

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)

ind = 6751 Phi = 1.1781 D2 = 2.0000 od2 = 2.0000 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)

ind = 2251 Phi = 0.3927 D2 = 3.0000 od2 = 3.0000 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)

ind = 2518 Phi = 0.4393 D2 = 3.5712 od2 = 3.5712 oPhi = 0.4393