计算机模拟物理作业一-read
计算机模拟物理作业一
球体,抛射角度,空气阻力,与运动速度方向相反,,重力加速度。
计算并分析球体的运动,与理论解释相比较,并比较两种算法(Euler和Euler-Cromer)。
,重复a)的分析。
讨论对结果的影响。
解:
第一步:受力分析
如上图所示建立坐标系
根据经典力学牛顿第二定律有 即
进行矢量分解可以得到,同理。(注意: 由于空气阻力与速度是非线性关系, 不能先分解速度之后求阻力. )
对X,Y轴方向分别建立数值方程(统一表达式如下)
Euler 公式:
Euler-Cromer公式为:
第二步: 用C语言编程进行模拟,计算中采用国际单位制.程序见后面.(注意: 由于所讨论的三个问题都是落体运动,所以可以编制一个程序来计算,不同问题只是需要变化一些参数即可.例如落体运动只是要求vx=0.)
第三步: 利用origin软件进行作图并进行分析
上面两图为初速度是零时两种算法计算得到的位移-时间和速度-时间曲线图.时间步长都是0.05,计算1000次.由图可以看出两种算法所得结果近似.自由落体运动(有阻力)在10秒内速度迅速达到饱和,此后作匀速运动.
以上六图给出了时间步长为0.1而且初速度为vx=10时,两种算法所得水平(竖直)加速度,速度,位移的比较曲线图,可以看出基本近似相等.尤其值得注意的是水平加速度的绝对值逐渐到最大后再减小.竖直加速度与水平速度都逐渐减小接近饱和;竖直速度和水平位移逐渐增大接近饱和,竖直位移后段基本线性增长.
影响结果的精确度,本例中由上面结果可以看出:越小,两种算法之间的偏差也越小。如上所述:当=0.01时,x方向上两种算法的区别很小,现在取=1,取1000点,结果如下:可以看出:越往后,二者偏差越大。并且越大,模拟的效果越差,当取上面的参数时,位移-曲线已偏离到不可信的地步。(下一页里红线表示Euler方法的计算结果,而绿线表示Euler-Cromer方法的计算结果)
理论分析与模拟结果的比较(这里只是进行简单的定性分析)
理论分析:
初始速度不够大,落体在运动初期,作加速运动,但因为速度增加导致空气阻力增大,落体的加速度逐渐变小。当落体的速度达到使重力与空气阻力平衡,落体受力为零,加速度为零,落体作匀速直线运动。
模拟结果与理论分析基本一致。