Cody

# Problem 43642. Euclidean distance from a point to a polynomial

Solution 1681907

Submitted on 28 Nov 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   Fail
x0y0 = [-2 5]; P = [0.5 3 -5]; y_correct = 4.3093988461280149175163000679048; tol = 5e-13; assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

p1 = -3 -2 p2 = 4.5000 2.0000 10.0000 t2 = 20.2500 18.0000 94.0000 40.0000 100.0000

Matrix dimensions must agree. Error in distance2polynomial (line 7) mi = t1+t2 Error in Test1 (line 5) assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

2   Fail
x0y0 = [pi, pi]; P = [10]; y_correct = 6.8584073464102067615373566167205; tol = 7e-13; assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

p1 = 2.1416 3.1416 p2 = -6.8584 t2 = 47.0378 mi = 51.6242 60.4938 56.9074 r = -0.5859 + 0.8712i -0.5859 - 0.8712i

Array indices must be positive integers or logical values. Error in distance2polynomial (line 9) D = min(polyval(mi(r))) Error in Test2 (line 5) assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

3   Fail
x0y0 = [0.25,50]; P = [1 2 3 4 5]; y_correct = 1.6470039192886012020234097061626; tol = 5e-13; assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

p1 = -0.7500 0.2500 p2 = 49 48 47 46 45 t2 = 2401 4704 6910 9020 11035 8644 6346 4140 2025

Matrix dimensions must agree. Error in distance2polynomial (line 7) mi = t1+t2 Error in Test3 (line 5) assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

4   Fail
x0y0 = [-3 -3]; P = [-2 1]; y_correct = 4.4721359549995793928183473374626; tol = 5e-13; assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

p1 = -4 -3 p2 = -1 -4 t2 = 1 8 16 mi = 17 32 25 r = -0.9412 + 0.7647i -0.9412 - 0.7647i

Array indices must be positive integers or logical values. Error in distance2polynomial (line 9) D = min(polyval(mi(r))) Error in Test4 (line 5) assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

5   Fail
x0y0 = [0 5]; P = [1 0 1]; y_correct = 1.9364916731037084425896326998912; tol = 2e-13; assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

p1 = -1 0 p2 = 4 5 4 t2 = 16 40 57 40 16

Matrix dimensions must agree. Error in distance2polynomial (line 7) mi = t1+t2 Error in Test5 (line 5) assert(abs(distance2polynomial(P,x0y0)-y_correct) < tol)

6   Fail
x0y0 = [-2 -5]; P = [0.5 3 -5]; y_correct = 1.8901381949770695260066523338279; tol = 2e-13; (abs(distance2polynomial(P,x0y0)-y_correct) < tol)

p1 = -3 -2 p2 = -5.5000 -8.0000 0 t2 = 30.2500 88.0000 64.0000 0 0

Matrix dimensions must agree. Error in distance2polynomial (line 7) mi = t1+t2 Error in Test6 (line 5) (abs(distance2polynomial(P,x0y0)-y_correct) < tol)