[关闭]
@youngwang 2017-10-13T16:45:38.000000Z 字数 1564 阅读 534

Exercise 2.9

未分类


一.摘要:
2.9 Calculate the trajectory of our cannon shell including both air drag and the reduced air density at high altitudes so that so that you can reproduce the results in Figure 2.5. Perform your calculation for different firing angles and determine the value of the angle that gives the maximum range.

二.背景介绍:
1.背景资料是, 先做出理想情况下的曲线;在考虑在低空中的空气阻力;最后假设在气体绝热情况下对阻力公式进行修正,并作出不同角度时的运动轨迹曲线,从而判断处最远落点。
2.理想情况下,基本描述公式:




3.忽略密度时空气阻力:




4.考虑空气密度对阻力的修正:
绝热气体满足:

由此得出:

即可近似取修正阻力公式为:

则运动方程为:



三. 正文:
1.理想情况运动曲线(v=700m/s,g=9.8m/s^2):
代码如下:
代码一
注:这里在前面加了一个输入角度的步骤,这里输入20°、30°、45°、60°、70°,做图如下:

与解析法的预言相吻合:两个角度之和为90°则两角落点相同。
2.忽略空气密度(低空)时考虑空气阻力()
代码如下:
代码二
作图如下:

显然,与第一种曲线形状完全不同。
3.考虑空气密度和空气阻力(T=300K,,)
代码如下:

作图如下:

4.最后将三种情况放在一起对比:

其中红,蓝,绿分别表示1,2,3种情况。

四.结果:
3中,先每隔10°取一点绘图,再在40°到50°间继续打点,用差分的办法判断最远落点范围,通过观察图像可知,当出射角度为43.4°时最远落距约为24353m。

五.致谢:
最后要感谢尚龙兵,陈洪良同学的帮助!

注:由于不太会使用class命令,因此在写程序时碰到问题,如何使每次循环角度增加一点,直接输出多条曲线的图?

即这个循环不清楚应该放到哪里?class前面?def前面?def里面?
(由于本人坚持使用VIM写代码,然而VIM插件又没有装齐,代码补齐等功能都没有,因而效率低下,熬夜都没有改对,实在坚持不住了,只好求助老师和助教了)

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注