记一次数学在解决实际问题的运用

在工作中遇到一个问题可以抽象为数学几何问题,特在此记录

# 题目

已知:

  • 点A(x1x_1, y1y_1
  • 点B(x2x_2, y2y_2
  • 点C(xx, yy)到点A的距离为zz
  • A、C、B构成直角三角形,∠CAB是直角
  • x1,y1,x2,y2,zx_1, y_1, x_2, y_2, z均为已知量

如图:

求:点C的坐标(即xx, yy的值)

# 解法

  • 点A及点C结合两点间距离公式得到式(1):

(x1x)2+(y1y)2=z2(x_1 - x)^2 + (y_1 - y)^2 = z^2

  • 再根据勾股定理,结合两点距离公式可以得到式(2):

(x2x1)2+(y1y2)2+z2=(y2y)2+(x2x)2(x_2 - x_1)^2 + (y_1 - y_2)^2 + z^2 = (y_2 - y)^2 + (x_2 - x)^2

于是,该问题就变成了求解二元二次方程组的问题了

将(1)代入(2)并将二次项全部拆分得:

x122x1x2+x22+y122y1y2+y22+x22x1x+x12+y22y1y+y12=x222x2x+x2+y222y2y+y2x_1^2 - 2x_1x_2 + x_2^2 + y_1^2 - 2y_1y_2 + y_2^2 + x^2 - 2x_1x + x_1^2 + y^2 - 2y_1y + y_1^2 = x_2^2 - 2x_2x + x^2 + y_2^2 - 2y_2y + y^2

  • 将结果转化为x = y的形式,得:

x=x1x2+y1y2x12y12(y2y1)yx2x1x = \frac {x_1x_2 + y_1y_2 - x_1^2 - y_1^2 - (y_2 - y_1)y} {x_2 - x_1}

  • 令:

a=x1x2+y1y2x12y12x2x1a = \frac {x_1x_2 + y_1y_2 - x_1^2 - y_1^2} {x_2 - x_1}

b=y2y1x2x1b =\frac {y_2 - y_1} {x_2 - x_1}

  • 则:

x=abyx = a - by

  • x=abyx = a - by代入式(2)得:

a22aby+b2y22ax1+2bx1y+x12+y22y1y+y12=z2a^2 - 2aby + b^2y^2 - 2ax_1 + 2bx_1y + x_1^2 + y^2 - 2y_1y + y_1^2 = z^2

  • 提取系数得:

(b2+1)y2+(2bx12ab2y1)y+a22ax1+x12+y12z2=0(b^2 + 1)y^2 + (2bx_1 - 2ab - 2y_1)y + a^2 - 2ax_1 + x_1^2 + y_1^2 - z^2 = 0

  • 令:

c=b2+1c = b^2 + 1

d=2bx12ab2y1d = 2bx_1 - 2ab - 2y_1

e=a22ax1+x12+y12z2e = a^2 - 2ax_1 + x_1^2 + y_1^2 - z^2

  • 则:

cy2+dy+e=0cy^2 + dy + e = 0

  • 根据一元二次方程求根公式,得:

y=d±d24ce2cy = \frac {-d \pm \sqrt {d^2 - 4ce} } {2c}

  • 求出yy之后,代入x=abyx = a - by,即可求得xx

为什么有两个解

根据已知条件,还有一个点会出现在A点下方(这里会出现在图示范围之外)所以得到的是二元二次方程,会有两个解