大学物理学模拟计算 一 力学部分 1.1 设一物体以抛射角 θ, 速度 v 抛出, 出射点高度为 h, 且不计空气阻力 求 1. 物体的射程 x max 和飞行的最大高度 y max. 最大射程对应的抛射角 θmax 解题分析 1. 由质点运动学, 有 1 1 x v cost a t y v sint a t x 解出 t, 它就是落点时间 t i t i 有两个解, 只取其中的一个有效解, 然后求最大飞行距离 x max x max v cos t1 y. 循环改变抛射角 θ 求出 x max 随着 θ 变化的最大值所对应的 θmax 程序 (c11.m) clear all format long v=input(' 抛射速率 v='); y=input(' 抛射处的初始高度 y='); dtheta=.1;% 抛射角改变精度 % 输入抛射速率 % 输入抛射处的初始高度 icu=/dtheta;imo=9/dtheta; % 输入抛射角计算范围 ( 默认 -9 度, 如要计算固定抛射角请设置 icu 和 imo 一致 ) xc=;yc=; % 初始化 dtime=.1; % 时间精度.1s for i=icu:imo theta=i*dtheta; % 输入抛射角 x=; % 取初始横向位置 vx=v*cosd(theta); vy=v*sind(theta); ay=-9.81; ax=; tf=roots([ay/,vy,y]); tf=max(tf); t=:dtime:tf; % 输入初速度的 x 分量和 y 分量 % 重力加速度的 y 分量和 x 分量 % 解方程的根, 求飞行时间 有两个解, 只取有效解 % 落点时间 % 为了画图, 取时间数组 y=y+vy*t+ay*t.^/; x=x+vx*t+ax*t.^/; xf=max(x); yf=max(y); if xf>xc xc=xf; yc=yf; xx=x;yy=y; thetac=theta; % t 时刻, 质点的位置 % 飞行达到的最远距离, 即射程 % 飞行中达到的最大高度 % 获得最大射程时的相关计算结果
grid on, hold on plot(xx,yy), % 画图, xlabel('x'),ylabel('y') hold off xc yc thetac % 画网格, 保持图形 % 坐标标注 % 输出射程 % 输出飞行中达到的最大高度 % 输出飞行中达到的最远距离对应的抛射角 1. 运行该程序, 输入出射初速率 v =5m/s, 出射点高度 h=m, 分别取 icu 和 imo 一致且等于抛射角 θ 为 35,45,55 和 65 度, 则可画出图 1-1 所示曲线, 并在命令窗中给出相应抛射角对应的射程 最大高度. 程序中设置抛射角 icu 和 imo 搜索范围从 到 9 度, 运行该程序, 输入出射初速率 v =5m/s, 出射点高度 h=m, 命令窗中会输出当抛射角 θ 为 45 度时, 具有最大射程并给出相应的射程 最大高度的具体数值 在上述程序中, 我们设定了抛射点初始高度为零 可在程序运行时输入不同的抛射点初始高度 图 1.1 初速度 5m/s 斜抛时, 抛体运动轨迹图 1. 图 1..1 一匀质细棒的质量为 M, 长为, 求以下三种情况下细棒对给定转轴的转动惯量 (a) 转轴通过棒的中心并与棒垂直 ;(b) 转轴通过棒的左端并与棒垂直 ;(c) 转轴通过棒上离中心为 D 的一点并与棒垂直 转动惯量与距离 D 的关系是什么? 解题分析 1. 当转动轴移到棒的中央时, / J x / dx 1 1 M. 当转动轴移到棒的左端 时, 只是积分范围发生改变, 转 动惯量为 D -/ / M O O' x dx x J 1 x dx M 3 图 1..1 转轴在细棒的不同位置示意图
一般情况, 当转动轴距离中心的转轴为 D 时, 积分下限是 -(/ - D), 积分上限是 (/ + D), 也可求出转动惯量 不过利用平行轴定理立即可得 程序 (c1.m) % 均匀细棒的转动惯量 clear d=-.5:.1:.5; j=1/1+d.^; figure plot(d,j,'inewidth',) grid on fs=1; J J C MD title(' 均匀细棒的转动惯量 ','FontSize',fs) xlabel(' 轴的距离 \itd/','fontsize',fs) ylabel(' 转动惯量 \itj/m\rm^','fontsize',fs) hold on stem([-.5,,.5],[1/3,1/1,1/3],'--') text(,1/1,'\itj_c=\itm\rm^/1','fontsize',fs) text(-.5,1/3,'\itj_=\itm\rm^/3','fontsize',fs) text(.5,1/3,'\itj_-_=\itm\rm^/3','fontsize',fs) 1 1 M MD % 清除变量 % 距离与长度之比向量 % 转动惯量 % 创建图形窗口 % 画曲线 % 加网格 % 字体大小 % 显示标题 % 显示横坐标 % 显示纵坐标 % 保持图像 % 画杆图 % 标记绕中心轴的转动惯量 % 标记绕左端点轴的转动惯量 % 标记绕右端点轴的转动惯量 图 1.. 转轴在细棒不同位置的转动惯量 1.3 设一列波沿 x 轴的正向传播, 另一列波沿 x 轴负向传播, 取共同的坐标原点和计时起点, 求两列波相遇处各质点的合位移, 绘出 t = -9 秒共 1 个时刻的驻波图像, 并用动画演示驻波的形成 解题分析频率相同 振动方向相同 有固定的相位差的两个波源所发出的简谐波称为相干波 两相干波在交叠处有些地方振动加强, 有些地方振动减弱的现象称为波的干涉现象 驻波是一种特殊的干涉现象, 它由振幅相同 传播方向相反的两列相干波叠加而成
根据题意, 两列波的波方程分别为 y1 Acos( t kx) ; y Acos( t kx) 两波相遇处各质元的合位移为 y y1 y Acos( t kx) Acos( t kx) x (Acoskx)cost (Acos ) cos t 此即驻波方程 程序 (c131.m) clear all % 清理内存 A=8; % 设置振幅 k=*pi; w=.636*pi; % 设置角频率 for t=:1:9 % 设置 1 个时刻 x=:.1:; % 设置波的传播范围 y1=a.*cos(w.*t-k.*x); % 波 1 右传 y=a.*cos(w.*t+k.*x); % 波 左传 y=y1+y; % 干涉形成驻波 plot(x,y) % 作出 1 个时刻驻波图像 hold on % 保持图像 图 1.3.1 不同时刻的驻波图形 运行结果如图 1.3.1 所示 为了形象地说明驻波的形成过程, 下面给出了制作驻波形成过程的动画程序 演示这个 动画对于理解驻波的形成是有帮助的 %% 用动画制作演示驻波程序 (c13.m) clear all % 清除内存 clf; shg; dt=.3; % 设置计算的时间间隔 ( 可调 ) tf=; % 设置计算的时间范围 ( 可调 ) A=8; k=pi/3; % 设置振幅和角波数 w=1; % 设置角频率 t=:dt:tf; % 设置每一帧的时间序列 x=:.1:; % 设置波的传播范围 for i=1:1:6 % 设置需要观看的帧数 y1=a.*cos(w.*t(i)-k.*x); % 波 1 右传 y=a.*cos(w.*t(i)+k.*x); % 波 左传 y=y1+y; % 干涉形成驻波 plot(x,y,'r-',x,y1,'b-',x,y,'k-'); % 作出驻波图像 axis([,,-,]); % 调整坐标 grid on pause(1) % 观看每一帧的慢动作 m(i)=getframe; % 获得帧图像
movie(m,1,1) % 连续快速播放动画 图 1.3. 给出了运行该程序得到的某一帧画面 图 1.3. 驻波动态演示中的一帧图