物理拦截算法的个人分析

前言:近来在做足球游戏,涉及到传球的问题,主要分为:直传、高传、长传,而其中又涉及到目标球员是在运动的情形,先分析平面下的情形,再分享立体空间下

1 1 1:在同一水平面上,起始时有对象 A , B A, B A,B,且 A A A的速度矢量为 v ⃗ \vec{v} v 运动,B的速率为 u u u(标量),求 u u u需要满足什么条件 B B B可拦截(这里假设没有摩擦力和空气阻力,且起始时 A , B A,B A,B间的距离大于 0 0 0)?

如图1

解:设时间 t ( t ≥ 0 ) t(t \ge 0) t(t0)时正好拦截到,则根据余弦定理,有

( u t ) 2 = v ⃗ t ⋅ v ⃗ t + A B → ⋅ A B → − 2 v ⃗ t ⋅ A B → (ut)^2 = \vec{v}t \cdot \vec{v}t + \overrightarrow{AB} \cdot \overrightarrow{AB} - 2\vec{v}t \cdot \overrightarrow{AB} (ut)2=v tv t+AB AB 2v tAB

∴ ( u 2 − v 2 ) t 2 + 2 v ⃗ ⋅ A B → t − A B → ⋅ A B → = 0 \therefore (u^2 - v^2)t^2 + 2\vec{v}\cdot\overrightarrow{AB}t - \overrightarrow{AB} \cdot \overrightarrow{AB} = 0 (u2v2)t2+2v AB tAB AB =0

a = u 2 − v 2 , b = v ⃗ ⋅ A B → , c = A B → ⋅ A B → a = u^2 - v^2, b = \vec{v}\cdot\overrightarrow{AB}, c = \overrightarrow{AB} \cdot \overrightarrow{AB} a=u2v2,b=v AB ,c=AB AB ,则化简为

∴ { 2 b t = c , a = 0 , 当 b ≤ 0 无 解 ( t + b a ) 2 = b 2 + a c a 2 , a ≠ 0 , 当 a < 0 , b ≤ 0 无 解 \therefore \begin{cases} 2bt = c, a = 0, 当b \le 0无解\\ (t + \frac{b}{a})^2 = \frac{b^2 + ac}{a^2}, a \neq 0, 当a < 0, b \le 0无解\\ \end{cases} {2bt=c,a=0,b0(t+ab)2=a2b2+ac,a=0,a<0,b0

总结有, a ≤ 0 ⋀ b ≤ 0 a \le 0 \bigwedge b \le 0 a0b0时无解,也符合物理事实,当 B B B位于 A A A的速度矢量的后面且速率小于 A A A时是无法追上的

∴ { t = 2 b c , a = 0 , b ≥ 0 , c > 0 t = − b ± b 2 + a c a , a ≠ 0 , a > 0 ⋁ b > 0 \therefore \begin{cases} t = \frac{2b}{c}, a = 0, b \ge 0, c > 0\\ t = \frac{-b \pm \sqrt{b^2 + ac}}{a}, a \neq 0, a > 0 \bigvee b > 0\\ \end{cases} {t=c2b,a=0,b0,c>0t=ab±b2+ac ,a=0,a>0b>0

∴ u ⃗ = v ⃗ + B A → t = ⋯ \therefore \vec u = \vec v + \frac{\overrightarrow{BA}}{t} = \cdots u =v +tBA =

在考虑 B B B有阻力(如 A A A是匀速行驶的车辆,而 B B B为炮弹时)的情况下,那么需要上面的 ( u t ) 2 (ut)^2 (ut)2替换成 ( u t − 1 2 a t 2 ) 2 (ut - \frac{1}{2}at^2)^2 (ut21at2)2( a a a为阻力加速度大小),而如果需要 B B B到达拦截点时速度降为 0 0 0,可使 u = a t → u t − 1 2 a t 2 = 1 2 a t 2 u = at \rightarrow ut - \frac{1}{2}at^2 = \frac{1}{2}at^2 u=atut21at2=21at2,此时就是一元四次方程(不含三次项),不禁想起了一元三次方程的解法之一对解的猜测:二次方程含有根号,三次是否含有三次根(已知是有的),四次是否是四次根的和差解呢? x 4 + p x 2 + q x + r = 0 x^4 + px^2 + qx +r = 0 x4+px2+qx+r=0(三次项可通过换元消去)或者能否将其化简到三次方程式?

2 2 2:在同一水平面上,起始时有对象 A , B A, B A,B,且 A A A的速度矢量为 v ⃗ \vec{v} v 运动, B B B的最大速率为 u u u(标量),且 B B B的水平角为 θ \theta θ,需要考虑重力,求 u u u需要满足什么条件 B B B可拦截(这里假设没有摩擦力和空气阻力,且起始时 A , B A,B A,B间的距离大于 0 0 0)?

解:设时间 t ( t ≥ 0 ) t(t \ge 0) t(t0)时正好拦截到,如果按照上面的采用 u c o s θ ucos\theta ucosθ直接求出是不行的,因为此时垂直方向矢量大小为 1 2 g t \frac{1}{2}gt 21gt不一定等于 u s i n θ usin\theta usinθ(注意题目内说明是最大的速率为 u u u),因而此时设实际速率大小为 f f f,有

∴ { f s i n θ = 1 2 g t ( t f c o s θ ) 2 = v ⃗ t ⋅ v ⃗ t + A B → ⋅ A B → − 2 v ⃗ t ⋅ A B → \therefore \begin{cases} fsin\theta = \frac{1}{2}gt\\ (tfcos\theta)^2 = \vec{v}t \cdot \vec{v}t + \overrightarrow{AB} \cdot \overrightarrow{AB} - 2\vec{v}t \cdot \overrightarrow{AB}\\ \end{cases} {fsinθ=21gt(tfcosθ)2=v tv t+AB AB 2v tAB

∴ f 2 = 1 4 ( g t ) 2 + v 2 + A B → ⋅ A B → − 2 v ⃗ t ⋅ A B → t 2 ≤ u 2 \therefore f^2 = \frac{1}{4}(gt)^2 + v^2 + \frac{\overrightarrow{AB} \cdot \overrightarrow{AB} - 2\vec{v}t \cdot \overrightarrow{AB}}{t^2} \le u^2 f2=41(gt)2+v2+t2AB AB 2v tAB u2

一元四次方程,同样有题 1 1 1的不可解的情形,这里只当解得 t t t(求解有点麻烦,就是懒),也就可以求得 f ≤ u f \le u fu,可将其限制在 u u u内,可得

u ⃗ = ( 0 , 1 2 g t , 0 ) + ( v ⃗ + B A → t ) \vec u = (0, \frac{1}{2}gt, 0) + (\vec v + \frac{\overrightarrow{BA}}{t}) u =(0,21gt,0)+(v +tBA )

1 4 g 2 t 4 + ( v 2 − f 2 ) t 2 − 2 v ⃗ ⋅ A B → t + A B → ⋅ A B → = 0 \frac{1}{4}g^2t^4 + (v^2 - f^2)t^2 - 2\vec{v} \cdot \overrightarrow{AB}t + \overrightarrow{AB} \cdot \overrightarrow{AB} = 0 41g2t4+(v2f2)t22v AB t+AB AB =0

∵ f = g t 2 s i n θ \because f = \frac{gt}{2sin\theta} f=2sinθgt

∴ 1 4 g 2 t 4 + ( v 2 − g 2 4 s i n 2 θ ) t 2 − 2 v ⃗ ⋅ A B → t + A B → ⋅ A B → = 0 \therefore\frac{1}{4}g^2t^4 + (v^2 - \frac{g^2}{4sin^2\theta})t^2 - 2\vec{v} \cdot \overrightarrow{AB}t + \overrightarrow{AB} \cdot \overrightarrow{AB} = 0 41g2t4+(v24sin2θg2)t22v AB t+AB AB =0

以下是自我复习一元三次和一元四次方程解法

P r o b l e m : Problem: Problem: x 4 + p x 2 + q x + r = 0 x^4 + px^2 + qx +r = 0 x4+px2+qx+r=0

( x 2 + y ) 2 = ( 2 y − p ) x 2 − q x − ( r − y 2 ) (x^2 + y)^2 = (2y - p)x^2 - qx - (r - y^2) (x2+y)2=(2yp)x2qx(ry2)

⇒ Δ = q 2 + 4 ( 2 y − p ) ( r − y 2 ) = 0 \Rightarrow \Delta = q^2 + 4(2y-p)(r - y^2) = 0 Δ=q2+4(2yp)(ry2)=0

这是一元三次方程,可通过

x 3 + p x 2 + q = 0 x^3 + px^2 + q = 0 x3+px2+q=0

x = A 1 3 + B 1 3 x = A^{\frac{1}{3}} + B^{\frac{1}{3}} x=A31+B31

⇒ ( A 1 3 + B 1 3 ) 3 = − p ( A 1 3 + B 1 3 ) − q \Rightarrow (A^{\frac{1}{3}} + B^{\frac{1}{3}})^3 = -p(A^{\frac{1}{3}} + B^{\frac{1}{3}}) - q (A31+B31)3=p(A31+B31)q

⇒ 3 A 1 3 B 1 3 ( A 1 3 + B 1 3 ) + ( A + B ) = − p ( A 1 3 + B 1 3 ) − q \Rightarrow 3A^{\frac{1}{3}}B^{\frac{1}{3}}(A^{\frac{1}{3}} + B^{\frac{1}{3}}) + (A + B) = -p(A^{\frac{1}{3}} + B^{\frac{1}{3}}) - q 3A31B31(A31+B31)+(A+B)=p(A31+B31)q

⇒ { A 1 3 B 1 3 = − p 3 A + B = − q \Rightarrow\begin{cases} A^{\frac{1}{3}}B^{\frac{1}{3}} = -\frac{p}{3} \\ A + B = -q\\ \end{cases} {A31B31=3pA+B=q

对于更高次数的方程,能否通过将常数项消去从而降次求解,然而普通的换元达不到,如 x = x + k x = x + k x=x+k,这导致了关于 k k k的相应次数的方程

x 5 + p x 3 + q x 2 + r x + t = 0 x^5 + px^3 + qx^2 +rx + t = 0 x5+px3+qx2+rx+t=0

x = A 1 5 + B 1 5 x = A^{\frac{1}{5}} + B^{\frac{1}{5}} x=A51+B51

⇒ ( A 1 5 + B 1 5 ) 5 = − p ( A 1 5 + B 1 5 ) 3 − q ( A 1 5 + B 1 5 ) 2 − r ( A 1 5 + B 1 5 ) − t \Rightarrow (A^{\frac{1}{5}} + B^{\frac{1}{5}})^5 = -p(A^{\frac{1}{5}} + B^{\frac{1}{5}})^3 - q(A^{\frac{1}{5}} + B^{\frac{1}{5}})^2 - r(A^{\frac{1}{5}} + B^{\frac{1}{5}}) - t (A51+B51)5=p(A51+B51)3q(A51+B51)2r(A51+B51)t

⇒ ( A + B ) + 5 A 1 5 B 1 5 ( A 4 5 + B 4 5 ) + 10 A 2 5 B 2 5 ( A 3 5 + B 3 5 ) \Rightarrow (A + B) + 5A^{\frac{1}{5}}B^{\frac{1}{5}}(A^{\frac{4}{5}} + B^{\frac{4}{5}}) + 10A^{\frac{2}{5}}B^{\frac{2}{5}}(A^{\frac{3}{5}} + B^{\frac{3}{5}}) (A+B)+5A51B51(A54+B54)+10A52B52(A53+B53)

x = A 1 5 + B 1 5 + C 1 5 + D 1 5 x = A^{\frac{1}{5}} + B^{\frac{1}{5}} +C^{\frac{1}{5}} + D^{\frac{1}{5}} x=A51+B51+C51+D51

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值