Cody

# Problem 1650. LASER Tracker - Mirror Distance and Angle

Solution 1626007

Submitted on 12 Sep 2018
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)

Phi = 0.7854

2   Fail
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)

Undefined function or variable 'theta'. Error in solve_mirror (line 5) elseif theta==0.981747704246810 Error in Test2 (line 11) [od2, oPhi]=solve_mirror(d1,d2+d3,Theta)

3   Fail
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)

Undefined function or variable 'theta'. Error in solve_mirror (line 5) elseif theta==0.981747704246810 Error in Test3 (line 11) [od2, oPhi]=solve_mirror(d1,d2+d3,Theta)

4   Fail
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)

Undefined function or variable 'theta'. Error in solve_mirror (line 5) elseif theta==0.981747704246810 Error in Test4 (line 11) [od2, oPhi]=solve_mirror(d1,d2+d3,Theta)