《matlab程序:两列波相向传播叠加波形图和动画》由会员分享,可在线阅读,更多相关《matlab程序:两列波相向传播叠加波形图和动画(4页珍藏版)》请在金锄头文库上搜索。
1、clear,close all t=0t =0 %输入两组信号的振幅、波长和频率 a1=input(振幅 1=);b1=input(波长 1=);v1=input(速度 1=);振幅 1=1波长 1=6速度 1=0.2 a2=input(振幅 2=);b2=input(波长 2=);v2=input(速度 2=);振幅 2=2波长 2=6速度 2=0.2 while t t=0t =0 a1=input(振幅 1=);b1=input(波长 1=);v1=input(速度 1=);振幅 1=1波长 1=2速度 1=200 a2=input(振幅 2=);b2=input(波长 2=);v2=i
2、nput(速度 2=);振幅 2=2波长 2=2速度 2=300 x=0:0.001:10; %给出位置轴上 10m,分为 10000 个点y1=a1*sin(2*pi/b1*(x+v1*t);y2=a2*cos(2*pi/b2*(x-v2*t);y3t=y1+y2; M=moviein(60); clear t for t=1:60;plot(x,y3t);M(:,t)=getframe;end t=0t =0 a1=input(振幅 1=);b1=input(波长 1=);v1=input(速度 1=);振幅 1=1波长 1=2速度 1=200 a2=input(振幅 2=);b2=input(波长 2=);v2=input(速度 2=);振幅 2=2波长 2=2速度 2=300 x=0:0.001:10; %给出位置轴上 10m,分为 10000 个点y1=a1*sin(2*pi/b1*(x+v1*t);y2=a2*cos(2*pi/b2*(x-v2*t);y3t=y1+y2; M=moviein(60); clear t for t=1:60;plot(x,y3t);M(:,t)=getframe;endmovie(M,30)