第5章综合实例 用 MATLAB求解问题时,一般要经历建模和编程两个过 程,只有在建模正确的前提下,方能得出正确的结果。 单自由度系统有阻尼自由振动 1.建立计算模型 由动力学可知,单自由度有阻尼自由振动的振动方程为: mx+ci+kx=0 无量刚化后有:X+5onx+Onx=0 其中 k Vm 5 2√k 上述方程的解为:x(t)= Ae son sin(o+p) 其中 A=、(V+5ax)2+(x0 Mood xn表示初始位置,v表示初始速度
第5章 综合实例 用 MATLAB 求解问题时,一般要经历建模和编程两个过 程,只有在建模正确的前提下,方能得出正确的结果。 一、单自由度系统有阻尼自由振动 1.建立计算模型 由动力学可知,单自由度有阻尼自由振动的振动方程为: 无量刚化后有: 其中 , 上述方程的解为: 其中 x0 表示初始位置,v0 表示初始速度。 m x + cx + kx = 0 x +n x +n x = 0 m k n = km c 2 = ( ) sin( ) = + − d t n x t Ae 2 2 0 2 0 0 ( ) ( ) d n d v x x A + + = + = − 0 0 1 0 v x x tg n d 2 d = n 1−
第5章综合实例 参数n=10,x=1,v=0,计算的终止时间r2。试求 从0.1到1运动方程的解,并画出波形。 2. MATLAB编程 编写M文件ex1m %首先清空 MATLAB的工作空间 clear %给定初值 wn=10 t=2 %计算不同的ξ值所对应的振型 for 1=1: 10 eta()=0.1*j wdo=wn*sqrt(l-eta( 2) %求振幅A a=sqrt((wn*x0*eta(+v0)2+(x0* wd()2)wdo
参数ωn =10, x0 =1, v0 =0,计算的终止时间 t=2。试求ξ 从 0.1 到 1运动方程的解,并画出波形。 2. MATLAB 编程 编写 M 文件 ex1.m %首先清空 MATLAB 的工作空间 clear; %给定初值 wn=10; tf=2; x0=1; v0=0; %计算不同的ξ值所对应的振型 for j=1:10; eta(j)=0.1*j; wd(j)=wn*sqrt(1-eta(j)^2); %求振幅 A a=sqrt((wn*x0*eta(j)+v0)^2+(x0*wd(j))^2)/wd(j); 第5章 综合实例
第5章综合实例 %求相位角 phi=atan2(wd( *x0, v0+eta(*wn*x0) %设定自变量数组t t=0:tf/1000:tf %求过渡过程 x()=a°exp(-eta()*wn°t).*sin(wd)*t+phi) ena %在同一个图形窗口中绘制不同的ξ值所对应的振型 plot(tx(1,)tx(2,)tX(3;)t,x(4,) X(5;)tx(6,)tx(7,),t,x(8,) t,x(9,)tx(10,) grid on %新建一个图形窗口,绘制三维网格图 0 h(x) 50
%求相位角 phi=atan2(wd(j)*x0,v0+eta(j)*wn*x0); %设定自变量数组 t t=0:tf/1000:tf; %求过渡过程 x(j,:)=a*exp(-eta(j)*wn*t).*sin(wd(j)*t+phi); end %在同一个图形窗口中绘制不同的ξ 值所对应的振型 plot(t,x(1,:),t,x(2,:),t,x(3,:),t,x(4,:),... t,x(5,:),t,x(6,:),t,x(7,:),t,x(8,:),... t,x(9,:),t,x(10,:)) grid on %新建一个图形窗口,绘制三维网格图 figure mesh(x) 第5章 综合实例
第5章综合实例 如果改变初始条件令x=0,v=1,其运动曲线实际上就是 系统的脉冲过渡函数。 005 005 1
第5章 综合实例 如果改变初始条件令x0=0,v0=1,其运动曲线实际上就是 系统的脉冲过渡函数
第5章综合实例 、气体分子运动的麦克斯韦分布曲线 通过本例说明如何用复杂的数学公式绘制曲线。 利用气体分子运动的麦克斯韦速度分布律,求氯分子运动 的速度分布曲线,并讨论温度T及分子量m对速度分布曲 线的影响。 1.建立计算模型 麦克斯韦速度分布律为: f=4T p 2kT 2kT 其中,m-分子质量,m=m/NA,m-分子量,NA-阿伏加德罗数 k--波尔茨曼常数 T-气体的绝对温度 分子速度
第5章 综合实例 二、气体分子运动的麦克斯韦分布曲线 通过本例说明如何用复杂的数学公式绘制曲线。 利用气体分子运动的麦克斯韦速度分布律,求氯分子运动 的速度分布曲线,并讨论温度T及分子量mu对速度分布曲 线的影响。 1. 建立计算模型 麦克斯韦速度分布律为: 其中,m---分子质量, m=mu/NA, mu---分子量,NA---阿伏加德罗数 k---波尔茨曼常数 T----气体的绝对温度 v----分子速度 − = k T mv v k T m f 2 exp 2 4 2 2 3 2
第5章综合实例 为研究单个参数的影响,先把麦克斯韦分布律编为一个 函数子程序,以便重复调用,同时将常数项也放在子程 序中。 需要强调的是:子程序不得与主程序放在同一个M文件中,只能将 子程序单独做成M文件,并放在与主程序同一个工作路径中。 2. MATLAB编程 首先建立计算麦克斯韦分布律的子程序mxwm function f==mxw(T, mu, v) % The subfunction mxw. m of ex2利用麦克斯韦速度分布律求分子的速度分布曲线的 子程序 %mu、V、T分别是分子量、分子速度和气体的绝对温度 k=1.381*10^(-23)%波尔茨曼常数 NA=6022*10~23;%阿伏加德罗数 m=mu/NA %分子质量 f=4*pi(m/2*pi*k*T)^(3/2).*v*vexp(-m*v2(2*k*T);
第5章 综合实例 为研究单个参数的影响,先把麦克斯韦分布律编为一个 函数子程序,以便重复调用,同时将常数项也放在子程 序中。 需要强调的是:子程序不得与主程序放在同一个M 文件中,只能将 子程序单独做成M 文件,并放在与主程序同一个工作路径中。 2. MATLAB 编程 ➢首先建立计算麦克斯韦分布律的子程序mxw.m function f=mxw(T,mu,v) % The subfunction mxw.m of ex2 利用麦克斯韦速度分布律求分子的速度分布曲线的 子程序 %mu、v、T分别是分子量、分子速度和气体的绝对温度 k=1.381*10^(-23); %波尔茨曼常数 NA=6.022*10^23; %阿伏加德罗数 m=mu/NA %分子质量 f=4*pi*((m/2*pi*k*T)).^(3/2) .*v.*v.*exp(-m*v.^2./(2*k*T));
第5章综合实例 ≥编写主程序ex2m T=300: mu=28e-3 %给出T和mu的值 V=0:1500 %调出自变量数组 y=mxw(Tmu,y);%调用子程序 plot(v,y,'r,) %绘制分布曲线 hold on %为了看出不同的T和mu对曲线形状的 影响,再次给定T和mU,在同一幅图中 绘制分布律曲线的图形 T=200: mu=28e-3 mxw(T, mu, v) plot(, y,'b) hold on T=300: mu=2e-3 100 y=mxw(T, mu, v) plot(v,y, g))
第5章 综合实例 ➢编写主程序ex2.m T=300; mu=28e-3; %给出T和mu的值 v=0:1500; %调出自变量数组 y=mxw(T,mu,v); %调用子程序 plot(v,y, 'r') %绘制分布曲线 hold on %为了看出不同的T和mu对曲线形状的 影响,再次给定T和mu,在同一幅图中 绘制分布律曲线的图形 T=200; mu=28e-3; y=mxw(T,mu,v); plot(v,y, 'b') hold on T=300; mu=2e-3; y=mxw(T,mu,v); plot(v,y,'g'))
第5章综合实例 、方波的分解 在连续信号系统中,方波可以用相应频率的基波及其奇次诸 波合成,这也是将方波展开为正弦级数的出发点。本节将演 示这一现象。 1.建立计算模型 个以原点为奇对称中心的方波y(t)可以用奇次正弦波的叠 加来逼近: y(1)=sn(t)+=si(3t)+sn(5t)+…+, 2k+1 sn(2k+1)t+ 方波的宽度为π,周期为2π
第5章 综合实例 三、方波的分解 在连续信号系统中,方波可以用相应频率的基波及其奇次谐 波合成,这也是将方波展开为正弦级数的出发点。本节将演 示这一现象。 1. 建立计算模型 一个以原点为奇对称中心的方波y(t)可以用奇次正弦波的叠 加来逼近: 方波的宽度为π,周期为2π。 sin( 2 1) ... 2 1 1 sin( 5 ) ... 5 1 sin( 3 ) 3 1 ( ) sin( ) + + + = + + + + k t k y t t t t
第5章综合实例 2. MATLAB编程 建立M文件ex3m %演示基波和奇次谐波合成方波 t=0:0.1:10: %首先设定一个有10个点的时间数组 %绘制频率w=1(f=1/2n)的正弦基波,并设置暂停 y=sin(t) plot(t, y) pause %叠加3次谐波,绘图并设置暂停 =sin(t)+sin(3*t)/3 plot(t,y) %叠加1、3、5、7、9次谐波,绘图并设置暂停 y=sin(t)+sin(3*1)3+sin(5*t)5+sin(7*t)/7+sn(9*t)9; plot(t,y) pause
2. MATLAB编程 建立 M 文件 ex3.m % 演示基波和奇次谐波合成方波 t=0:0.1:10; %首先设定一个有101个点的时间数组 %绘制频率w=1( f=1/2π)的正弦基波,并设置暂停 y=sin(t); plot(t,y) pause %叠加3次谐波,绘图并设置暂停 y=sin(t)+sin(3*t)/3; plot(t,y) pause %叠加1、3、5、7、9次谐波,绘图并设置暂停 y=sin(t)+sin(3*t)/3+sin(5*t)/5+sin(7*t)/7+sin(9*t)/9; plot(t,y) pause 第5章 综合实例
第5章综合实例 %为了绘制三维曲面,需要将各次波形数据存储为一个三维数组,因此需要重新定义y 重新编程,本例将求至19次谐波 t=0:0.031:3.14 y-zeros(10, max(size(t))) X zeros( size(t fork=1:2:19 000m00 X-X+sin(k t)/k y(k+1)2,)=x end pause %将各个波形叠合绘出,并设置暂停 plot(t,y(1,)ty(2,)ty(3:)t,y(4,)ty(5,) ty(7:),ty(8:),t,y(9,) %将各个波形绘制成三维网格图 02
%为了绘制三维曲面,需要将各次波形数据存储为一个三维数组,因此需要重新定义y, 重新编程,本例将求至 19 次谐波 t=0:0.031:3.14; y=zeros(10,max(size(t))); x=zeros(size(t)); for k=1:2:19 x=x+sin(k*t)/k; y((k+1)/2,:)=x; end pause %将各个波形叠合绘出,并设置暂停 plot(t,y(1,:),t,y(2,:),t,y(3,:),t,y(4,:),t,y(5,:),... t,y(7,:),t,y(8,:),t,y(9,:)) pause %将各个波形绘制成三维网格图 mesh(y) pause 第5章 综合实例