Thread history
Time | User | Activity | Comment |
---|---|---|---|
No results |
Anyway, the less assumptions you made, the better ;) Do not assume constant speed & direction — use integral instead.
Assume the firing robot sits at the origin, and the target robot sits on the positive x-axis.
Since when hit, <math>y_{bullet} = y_{robot}</math>, we have
<math>\int_{0}^{t_1} v_{bullet} sin(\theta) dt = \int_{0}^{t_1} v_{robot} cos(\alpha) dt</math> where <math>\theta</math> is escape angle, <math>\alpha</math> is retreat angle (the heading of the target robot relating to the y-axis, the direction from y-axis to x-axis is positive).
Since <math>v_{bullet}</math> and <math>\theta</math> is constant, we have
<math>v_{bullet} sin(\theta) t_1 = \int_{0}^{t_1} v_{robot} cos(\alpha) dt</math>
assume <math>v_{robot}</math> is always the max — 8, therefore constant, we have
<math>v_{bullet} sin(\theta) t_1 = v_{robot} \int_{0}^{t_1} cos(\alpha) dt</math>
let <math>\alpha_{0}, \alpha_{2}</math> s.t. <math>cos(\alpha_{0}) \leqslant cos(\alpha) \leqslant cos(\alpha_{2})</math>
there exists <math>\alpha_{1}</math>, <math>cos(\alpha_{0}) \leqslant cos(\alpha_{1}) \leqslant cos(\alpha_{2})</math> s.t. <math>cos(\alpha_{1}) t_1 = \int_{0}^{t_1} cos(\alpha) dt</math>
then we have
<math>v_{bullet} sin(\theta) t_1 = v_{robot} cos(\alpha_1) t_1</math>
<math>v_{bullet} sin(\theta) = v_{robot} cos(\alpha_1)</math>
<math>sin(\theta) = \frac{v_{robot}}{v_{bullet} } cos(\alpha_1)</math>
then we have
<math>\theta_{max} = asin(\frac{v_{robot}}{v_{bullet} })</math>, which can be reached when <math>\alpha_1</math> = 0.
since <math>cos(\alpha) \leqslant cos(0) = 1</math>, <math>\alpha</math> must be always 0, which proved that retreat angle must be always 0.
And we proved that <math>\theta_{max} = asin(\frac{v_{robot}}{v_{bullet} })</math> is true.