@Xc-liu
        
        2016-04-11T13:11:50.000000Z
        字数 2097
        阅读 925
    作者:刘星辰 材料物理专业
本文主要分析投掷棒球时,棒球的自旋对飞行轨迹的轨迹的影响。首先分析忽略棒球的自旋只考虑空气阻力的影响时棒球的轨迹,最后分析加上自旋以后棒球的轨迹有什么变化。
不考虑自旋 
不考虑自旋时棒球的轨迹和homework_6中炮弹的轨迹类似,这里就不再重复。
考虑棒球的下旋 
在考虑棒球的下旋运动后,棒球的运动示意图(这是棒球运动的仰视图)如下所示 
 
棒球运动的微分方程与homework_6类似,唯一的区别在于多了一个Z方向的受力:
 
 
运动参数对比
| \ | 轨迹的最大高度(y方向) | 运动时间 | 射程(x方向) | 
|---|---|---|---|
| 无自旋 | |||
| 有自旋 | 
#coding:utf-8#initial valueimport matht=[]dt=0.01 #B/m=4*10-5 realy countg=9.8end_time=120t.append(0)w=4000*math.piv_1=7 #initial volocityv_2=70S=4.1*10**-4#define variablex_1=[]v_x_1=[]y_1=[]v_y_1=[]z_1=[]v_z_1=[]x_1.append(0)y_1.append(0)z_1.append(0)v_x_1.append(v_1) #initial speed equal 700m/sv_y_1.append(v_2)v_z_1.append(0)x_2=[]v_x_2=[]y_2=[]v_y_2=[]z_2=[]v_z_2=[]x_2.append(0)y_2.append(0)z_2.append(0)v_x_2.append(v_1) #initial speed equal 700m/sv_y_2.append(v_2)v_z_2.append(0)#caulate the coordinatefor i in range(int(end_time/dt)):d=x_1[i]+v_x_1[i]*dtx_1.append(d)e=v_x_1[i]-dt*(0.0039+0.0058/(1+math.e**(((v_x_1[i]**2+v_y_1[i]**2+v_z_1[i]**2)**0.5-35)/5)))*((v_x_1[i]**2+v_y_1[i]**2+v_z_1[i]**2)**0.5)*v_x_1[i]v_x_1.append(e)f=y_1[i]+v_y_1[i]*dty_1.append(f)h=v_y_1[i]-g*dtv_y_1.append(h)z_1.append(0)v_z_1.append(0)j=x_2[i]+v_x_2[i]*dtx_2.append(j)p=v_x_2[i]-dt*(0.0039+0.0058/(1+math.e**(((v_x_2[i]**2+v_y_2[i]**2+v_z_2[i]**2)**0.5-35)/5)))*((v_x_2[i]**2+v_y_2[i]**2+v_z_2[i]**2)**0.5)*v_x_2[i]v_x_2.append(p)l=y_2[i]+v_y_2[i]*dty_2.append(l)m=v_y_2[i]-g*dtv_y_2.append(m)n=z_2[i]+v_z_2[i]*dtz_2.append(n)o=v_z_2[i]-dt*S*v_x_2[i]*wv_z_2.append(o)#draw the pictureimport matplotlib as mplfrom mpl_toolkits.mplot3d import Axes3Dimport numpy as npimport matplotlib.pyplot as pltmpl.rcParams['legend.fontsize'] = 10fig = plt.figure()ax = fig.gca(projection='3d')ax.plot(x_1, y_1, z_1, label='no spin')ax.plot(x_2,y_2,z_2, label='spin')ax.legend()plt.show()
计算物理教材