首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何预测弹丸的运动?

如何预测弹丸的运动?
EN

Stack Overflow用户
提问于 2018-06-17 10:38:49
回答 1查看 1.2K关注 0票数 0

我需要进行一个项目工作,以预测一个运动的球在空气中运动的轨迹在二维。

那么,处理这一问题的可能方法是什么?如果你能提供一些细节的话会有帮助的。而且,我也不知道这是不是问这些事情的正确地方。但你看,只有专家才能走上这条路!

我可以进行图像处理,如边缘检测和计算机视觉,如使用hough变换检测车道,跟踪一些身体(但没有预测),人脸检测等。

我试图用卡尔曼滤波器来完成这个项目,但是我被塞了下来,

找不到出路。所以我想也许我该去找别的方法。

EN

回答 1

Stack Overflow用户

发布于 2018-06-17 11:26:04

这是一个实用的计算机编程站点,所以我将讨论一种使用该方法的方法。因为你没有提供你自己的细节,我也避免细节。如果你想要更多关于这种方法的细节,你将需要编辑你的问题来显示你自己的更多努力,最好是用一些代码。

这和许多物理问题一样,可以看作是初值常微分方程中的一个问题。但就像很多问题一样,你需要列出你的假设。假设球在接近海平面的地球表面移动,在地球大气层中,速度远低于声速。因此,重力加速度、空气密度等都可以看作常数。球的质量和大小可能很重要,但让我们只考虑质量,并将球的大小(形状)的任何问题封装到空气阻力中。对于给定的问题,您可以考虑“空气阻力系数”也是常数。

您的初始值是:

  1. 开场时球的位置。因为你写了“二维移动”,我们可以使它们相对于地面的水平位置( x )和垂直位置( y )。它们必须是水平的和垂直的,适合于地球上球所在的部分。
  2. 球的初始速度。这也将有水平和垂直组件,因此我们可以使用变量vxvy

然后有四个变化变量,xyvxvy。球上的方程来自牛顿运动定律和微积分(后者用x等定义了x)。球上有两种主要力量:

  1. 地心引力,它的大小mg和点直下。
  2. 空气阻力,也叫阻力,它指向当前的方向。震级是很棘手的。有多重阻力公式。您选择的一个或多个取决于您模拟的复杂性。

另外,根据模拟的复杂性,您可能需要考虑球上的旋转,这会改变拖动,等等。但这两个是你写的最起码的。

然后用ODE (常微分方程)求解器模拟球的位置和速度。有很多,但其中一个非常好和相当简单的是RK4,四阶Runge-Kutta方法。这很简单,您可以自己编写程序,但是有很多包可以做到这一点。一个流行的函数是scipy.integrate.odeint包中的scipy,它可以执行多种方法。

如果您不理解ODE求解器,那么您真的不应该做这种项目。你提到的技能似乎与这个项目无关。如果您删除了“空中”部分的需求,就会有更简单的模拟。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50895846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档