繁体   English   中英

如何在 Glowscript/VPython 中模拟多个弹丸轨迹?

[英]How to simulate multiple projectile trajectories in glowscript/VPython?

我正在尝试以随机角度 theta 和速度模拟多个射弹。 但是,我没有物理背景,数学也很困难。 我目前有以下代码:

GlowScript 3.1 VPython
import random
ground=box(pos=vector(0, -.2, 0), size=vector(10, .4, 3), color=color.green)
start = sphere(pos=vector(0, 0, 0), radius=.1, color=color.red)
g=vector(0, -9.8, 0)
nails={}
for i in range(20):
  v0 = random.randint(100, 250)
  theta = random.randint(0, 180)*pi/180
  mass=0.2
  proj=sphere(pos=vector(0, 0, 0), radius=.1, color=color.blue)
  proj.p=proj.m*v0*vector(cos(theta),sin(theta),0)
  

本质上,您需要编写代码来解决牛顿第二定律,您将使用哪种算法取决于您。 力项可以是您希望的模数,只是重力、空气阻力和许多其他项。

要进行数值模拟,您可以使用 Euler 算法、Adams Bashforth 和许多其他算法。

如果您寻找这些成分,您肯定会找到解决问题的直接方法。

这里有一些有用的链接:

用 Python 进行科学编程, 计算物理导论, 常微分方程的数值方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM