Cody

# Problem 1650. LASER Tracker - Mirror Distance and Angle

Solution 1626008

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)

d2 = 3.8490 Phi = 0.4371 od2 = 3.8490 oPhi = 0.4371

Assertion failed.

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)

d2 = 3.3768 Phi = 0.4656 od2 = 3.3768 oPhi = 0.4656

Assertion failed.

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)

d2 = 3.9701 Phi = 0.4654 od2 = 3.9701 oPhi = 0.4654

Assertion failed.