@newton2ndlaw
2016-05-02T22:38:07.000000Z
字数 2137
阅读 848
张琦 2013301510086
第十次作业
Continue the previous problem, and construct the phase-phase plots as in Figures 3.16 and 3.17 in the different regimes.
根据课本p76,可知球的运动方程为:
得到递推关系:
根据以上递推公式,即可编写程序。
程序的特性链接
由于是用做测试,因此参数采用的是书上的数值,,,,,,效果图:
参数采用,,,,,,效果图:
参数采用,,,,,,效果图:
Study the ehavior for other types of tables. One interesting possibility is a square table with a circular interior wall located either in the center, or slightly off-center. Another possibility is an elliptical table.
根据课本p82,可知球的运动方程为:
得到递推关系:
根据以上递推公式,再加上边界条件即可编写程序。
边界条件为()时代码,以及效果图:
边界条件为()时代码,以及效果图:
为了防止经过圆形的反弹之后的一个步长,球仍在圆形的边界条件内,因此多添加一个参数n的循环。
程序特性:代码链接
- 整合了圆与椭圆,并能够自动识别
- 能够识别椭圆的长轴与短轴
- 添加了边界图
- 固定了输出图像的大小
- 能够输出初始信息
- 可以自由移动圆和椭圆的位置
- 可以显示小球的初始位置
以下给出几个例子:
(a) 偏离中心的圆 输出信息
ball condition x = 0.8 y = 0.0
vx = 1.73205080757 vy = 1.0
circle condition x = 0.1 y = 0.1
r = 0.5
Total time 100.0 time unit
(b) 偏离中心,改变大小的圆 输出信息
ball condition x = 0.8 y = 0.0
vx = 1.73205080757 vy = 1.0
circle condition x = -0.1 y = 0.3
r = 0.3
Total time 100.0 time unit
(c) 偏离中心,长轴与x轴平行的椭圆 输出信息
ball condition x = 0.8 y = 0.0
vx = 0.707106781187 vy = 0.707106781187
ellipse condition x = -0.1 y = 0.3
a = 0.5 b = 0.3
e = 0.8
a parallel x axis
(d) 偏离中心,长轴与y轴平行的椭圆 输出信息
ball condition x = 0.8 y = 0.0
vx = 0.707106781187 vy = 0.707106781187
ellipse condition x = -0.1 y = 0.3
a = 0.6 b = 0.2
e = 0.942809041582
a parallel y axis
(e) 椭圆的一部分在正方形边界外 输出信息
ball condition x = 0.8 y = 0.0
vx = 0.965925826289 vy = 0.258819045103
ellipse condition x = -0.1 y = 0.6
a = 0.8 b = 0.3
e = 0.927024810887
a parallel y axis
简单的写了一个关于vpython的代码代码链接
-标明了正方形和椭圆的边界
-可以任意修改边界,初速度
利用python可以对一些混沌的现象有比较直观的认识。
以上内容均为原创。
注:vpython安装了之后,matplotlib就用不了。