探讨一个问题

这两天网络流行如图的一个演示问题:

有点像伽利略匹萨斜塔试验,打破了一些常识:走曲线的小球反而速度更快,奇怪也哉。

粗略的数值模拟

问题的分析用到的都是简单物理原理,只是计算繁琐一些,但是也没有最速下降曲线那么高端,只是引入了积分计算,还不至于引出变分法这样高级的东西。

我对动图中的两条路径做了简化,一条平直线,一条直接取余弦曲线了。只是两个小球在初始位置,给予相同的初始动能

粗略的数值模拟表明,初始速度较小的时候,红色小球可以先于蓝色小球到达终点,但是,如果初始动能较大,则蓝色的会反超。

也就是说,在这个简化了的数值模型中,走曲线的小球比走直线小球快的情形,对小球的初始动能是有要求的,初始动能有一个“临界值”。

这个临界值取决于曲线的方程,即使在本例中为了简化分析,我用了曲线方程非常简单的余弦曲线,此时要想解析求解小球运动轨迹和时间的严格对应关系也很困难(估计是不可能),所以,数值模拟计算数值积分是比较合适的。

特别提示:到这里,问题并没有结束!为了得到关于原始问题的准确的结论,还必须往下看。

再深入一点探讨

上面的两个动态图没有考虑实际上走曲线的小球在何种初速度的情况下才能够一直贴着曲线路面走的这一可能性的边界。所以,分析的结果是粗糙的。而且,为了研究方便,假设与初速度无关,小球总能贴曲线路面走。这个假设不一定合理。

如果小球总能贴着余弦曲线走,水平方向的初速度最大是多少? 也就是,小球在无干扰的情况下平抛,其路径是一条抛物线。抛物线在初始点处的曲率半径必须小于余弦曲线的曲率半径,小球才可能一直沿着曲线路面走。

下面演示的是v0v_0从 1 增加到 5 的过程中,蓝色的抛物线跟红色的余弦曲线之间的位置关系对比。容易发现,随着水平方向初速度增加,抛物线曲率半径越来越大,小球可能一出发就跳出去、而不是贴着红色的曲线走:

根据曲率半径在 x=0x=0 处抛物线和余弦曲线相等,得到这个速度最大值是 vmax=10−−√≈3.16v_{\max}=\sqrt{10}\approx 3.16 (简化起见,我取重力加速度为10)。

上面第一幅图我设置初速度 v0=5v_0=5, 第二幅 v0=12v_0=12, 由此可见,只要小球所走的曲线是 1+cosx1+\cos x ,则走曲线的小球总能比走水平直线的快(这个结论还跟量纲有关,这里就不进一步讨论了,这里默认取了SI制,所以所有量都没有用单位)。——因为初始水平方向的速度大于 vmax=10−−√≈3.16v_{\max}=\sqrt{10}\approx 3.16 小球会跳起来脱离曲线的路面,而不是一直贴着曲线的路径走。

跳起来的路径会是怎样的?乒乓球跟铁球肯定不同,答案不唯一了。

为了避免这样的探讨,可以把路径做成钢丝,小球上面中心穿孔,这样就简单了。从而,自由的走曲线路面的小球实际上跟被严格约束在特定曲线轨道上的小球,本质上是完全不同的两个问题。也就是,前面的对问题的简化和数值模拟,并不能反映原来的演示试验的真实情形。由于简化以至一个关键的约束条件发生了变化。

也就是,前面两幅模拟动画里的红色小球,实际上应该这么画:

定性结论

因为曲线不确定,只有定性才普适,所以,定性结论一下。假设曲线路面总是先下坡、再上坡,而且曲线的最高点不高于出发的水平位置(看似无关,实际上这些也对定性结论至关重要)。

如果对初始的速度不作考虑,则自由的走曲线路面的小球实际上跟被严格约束在特定曲线轨道上的小球,它们对应的问题,本质上是完全不同的两类问题。也就是,前面的数值模拟,分析的是跟原始问题并不相同的另一类问题。

——自由的走曲线路面的小球,因为加速过程先于减速过程,加速过程中总有一个沿着曲线法线方向的支撑力,它和重力的合力总产生水平方向的对小球加速的力,导致其到达目的点总比水平路面上的快:只要速度增加的过程中、作用在小球上的重力和曲线路面对小球的支撑力在小球运动朝向相同的水平方向上有一个大于0的分量,平均是水平方向的速度就总是大于初始速度的,这就总产生曲线路面更快的效果。

——固定曲线轨道的问题之所以可能产生走曲线的小球在初速度足够大时反而慢,是因为重力和支撑力的合力,在小球总速度增加的运动过程中,反而产生沿曲线法线方向斜向下的反向支撑力,这能使它跟重力的合力在水平方向的分力跟小球水平运动的方向相反、从而能使得小球的水平分速度平均低于初始水平速度。所以,小球在这种情形不能太快。——有一个弥补可能让人宽慰:在固定的约束在特定曲线轨道上的小球,如果水平方向综合表观速度比初速度恒定的小球慢,那么它在垂直方向上下落到底部应该比自由落体还快!这是能量守恒决定的。

只有当初始的水平方向的速度低于一个临界值,——此时,抛物线总在路径曲线下,出发点的曲率半径大于抛物线的曲率半径——曲线连续光滑、没有更大的坡度,此时两类问题才一致。——而原始问题在实际操作中,只是初始速度远低于曲率临界值的情形,可以用前面的数值方法分析,但是初始速度 v0v_0 更低,所以,无其它能量损耗的理想情况下,不存在水平运动的小球追上曲线运动小球的可能性。

对全程的即时速度(即随时间而变化的、是时间的函数的瞬时速度)在时间上做一个积分,才是数值模拟的时候需要比较的核心问题,才反映到底哪个更快这个答案的本质。

算了半天,发现得到的结论很苍白,有点做了无用功的感觉。有些问题还是需要定量计算的帮助才能理解更深入透彻的。

其它

我把计算中涉及的一些公式和存在的问题放在另外一篇里面了,不全面,也不完整,以后有时间慢慢改吧。

此外,为了修改原始的gif文件,去掉开头操作者从椅子上站起来的无用的细节,同时给初始帧足够的停留时间以达到理想显示效果,以及对曲率对比图作简单处理,gifsicle的操作是不可避免的:

小球沿不同轨迹运动时水平方向速度的比较相关推荐

  1. 如何获取及分析发那科机器人轨迹运行时的实际速度

    如何获取及分析发那科机器人轨迹运行时的实际速度 先贴结论 一.实际速度与指令速度存在差异吗? 二.有必要分析实际运行速度吗 三.使用Roboguide分析机器人实际运行速度 1.分析方法1--Robo ...

  2. canvas进阶——贝塞尔公式推导与物体跟随复杂曲线的轨迹运动

    写在最前 在之前的这篇文章中我们提到了对于贝塞尔公式的运用.本次分享一下如何推导贝塞尔公式以及附一个简单的?即小球跟随曲线轨迹运动. 欢迎关注我的博客,不定期更新中-- 效果预览 demo地址 对于如 ...

  3. 贝塞尔公式推导与物体跟随复杂曲线的轨迹运动

    写在最前 本文转载自:Annnnty:贝塞尔公式推导与物体跟随复杂曲线的轨迹运动 在之前的这篇文章中我们提到了对于贝塞尔公式的运用.本次分享一下如何推导贝塞尔公式以及附一个简单的��即小球跟随曲线轨迹 ...

  4. ae制作小球轨迹运动_在AE里如何让物体沿着路径运动?

    如何让物体精确的沿着路径轨迹运动, 手动K帧也能创造出曲线运动,但控制比较麻烦,而且不精确, 用钢笔绘制运动路径可以精确的让物体沿着路径运动,控制简单. 一.创建物体 1.新建一个AE合成,选择HDT ...

  5. ae制作小球轨迹运动_视频剪辑教程:AE动画教程,如何创建一个运动的小球

    本篇教程是通过AE制作一个弹跳运动的小球,整个教程比较简单,但是会带给你惊喜,教程主要分2个部分完成,感兴趣的同学们一起来学习一下AE动画教程吧. 教程分为两个部分: 一,怎么用AE做出这样的一个球. ...

  6. ae制作小球轨迹运动_AE教程AE特效:教你如何用AE创建一个弹跳运动的小球特效...

    这篇教程是通过AE制作一个弹跳运动的小球,整个教程比较简单,但是会带给你惊喜,教程主要分2个部分完成,感兴趣的同学们一起来学习一下吧. 操作步骤: 这个教程分为两个部分. 第一,怎么用AE做出这样的一 ...

  7. ae制作小球轨迹运动_AE制作一个小球的弹跳运动

    这个教程分为两个部分. 第一,怎么用AE做出这样的一个球. 第二,小球弹跳时的运动规律和关键帧的调整. 打开AE,新建一个800*600,帧速率25的合成,命名为输出. 双击矩形工具,创建一个和合成大 ...

  8. 小折腾:JavaScript与元素间的抛物线轨迹运动

    小折腾:JavaScript与元素间的抛物线轨迹运动 这篇文章发布于 2013年12月30日,星期一,20:40,归类于 js实例. 阅读 61147 次, 今日 55 次 by zhangxinxu ...

  9. JavaScript与元素间的抛物线轨迹运动

    一.一剂预防针 好的体验应该是在用户试用之前就告知产品的一些特点.局限性等.类似裤子都脱了,才来一句:"我今天大姨妈巅峰期"的场景显然是会让兴致勃勃的用户受挫的. SO, 有必要在 ...

最新文章

  1. 阿里云网盘内测_阿里云网盘内测,下载10M/s;百度网盘...?
  2. 小型自动化运维--expect脚本之自动同步
  3. 《iOS应用逆向工程(第2版)》高清电子书 PDF
  4. elk docker
  5. windows 设置 rocketmq环境变量_RocketMQ 开篇
  6. docker和vm虚拟机的区别
  7. jdk优先级队列、延迟队列原理
  8. 多线程编程中条件变量和虚假唤醒(spurious wakeup)的讨论
  9. python处理txt文件的常用操作
  10. 前端 什么是响应式设计
  11. 面试官:你最擅长的软件测试领域在哪里啊?有什么发展计划吗?
  12. 内存管理(一)MRC
  13. 给我半首歌的时间,给你说明白Immutable List
  14. 哨兵2号(Sentinel-2)卫星数据批量处理
  15. linux的文本处理
  16. win10 蓝牙调试工具 Bluetooth LE Explorer 简单使用
  17. 矩阵理论| 特殊矩阵:酉矩阵、旋转与镜射
  18. Linux mkdir命令
  19. python爬虫技术如何挣钱?教你爬虫月入三万!
  20. 【深度学习】RGB图像的内存排列方式及HWC和CHW格式解析

热门文章

  1. 连接Oracle成功但只显示数据库无法查看表
  2. jqgrid 列排序 php,jqGrid排序问题及解决办法
  3. 保存网页文章的一种方式
  4. 37秒落后5分,你放弃了吗
  5. Houdini JoyOfVex 教程03
  6. imx8mini openCV mipi摄像头报错: VIDIOC_QUERYCTRL: Inappropriate ioctl for device
  7. adxl345取出值怎么算角度_关于ADXL345做转向灯的角度转换问题
  8. java实验——设计复数类,成员变量包括实部和虚部,成员方法为实现复数相加。
  9. web前端入门到实战:HTML5 VideoAPI,打造自己的Web视频播放器
  10. 对话摘要技术在美团的探索(SIGIR)