在Python中简单模拟物理学?

时间:2009-02-02 00:55:03

标签: python modeling simulation

我想知道类似的具体模拟,作为浇灌田地的模拟here

在Python中,您最喜欢的图书馆/互联网页面是什么?

我知道Simpy,Numpy和Pygame。我想得到关于它们的例子。

4 个答案:

答案 0 :(得分:12)

如果您正在寻找一些游戏物理(碰撞,变形,重力等)看起来真实并且合理考虑重用一些物理引擎库。

作为第一个参考,您可能需要查看pymunkChipmunk 2D物理库的Python包装器。您可以在维基百科中找到各种开源物理引擎(2D和3D)的列表。

如果您正在寻找物理上正确的模拟,无论您想使用哪种语言,它都将更慢(几乎从不实时),而您需要使用一些数值分析软件(可能自己写一些东西)。确切的答案取决于您要解决的问题。这是一个相当复杂的领域(数学)。

例如,如果您需要在连续介质力学或电磁学中进行模拟,则可能需要有限差分,有限体积或有限元方法。对于Python,有一些现成的库,例如:FiPy(FVM),GetFem++(FEM),FEniCS/DOLFIN(FEM),以及其他一些库。

答案 1 :(得分:3)

这是一些简单的astronomy related python。这是来自同一个人的hardcore code

Eagleclaw使用一些python解决并绘制各种双曲方程。但是,大多数代码都是用Fortran编写的,用于计算和python绘制结果。如果你正在学习物理,你可能不得不习惯这种Fortran包装代码。这是现实。但这并不是你想要的。它以文字编程风格记录下来是件好事,因此它应该是可以理解的。

答案 2 :(得分:2)

也许PyODE

答案 3 :(得分:1)

我听说过PyBox2D,这是一个非常好的Box2D的端口。引用该网站:

  

Box2D是一个功能丰富的2d刚体物理引擎,由Erin Catto用C ++编写。它已被用于许多游戏,包括2008年独立游戏节大奖的Crayon Physics Deluxe。