Matlab 模拟"行波"动画

在[0,4π]区间,根据
y ( t , x ) = e − 0.2 x s i n ( π t 24 − x ) y(t,x)=e^{-0.2x}sin(\frac{πt}{24}-x) y(t,x)=e0.2xsin(24πtx)表现“行波”

matlab程序:

t=pi*(0:0.01:20);%时间控制
l=length(t);%获取时间数组长度
x=pi*(0:0.01:4);%[0,4π]区间
y=exp(-0.2*x).*sin(pi/24*t(1)-x);%0时刻的轨迹曲线
h=line('xdata',x,'ydata',y,'color',[1,0,0]);%定义轨迹曲线图柄
hh=line('xdata',x(1),'ydata',y(1),'color',[1,0,0],'marker','p', ...
     'markersize',10,'erasemode','background');
            %定义活动对象,颜色、点形、大小和擦除方式
text(6.7,-0.65,'倒计数');%倒计数文字标注
htext=text(6.85,-0.75,int2str(l));%倒计数数字
for k=2:l
    y=exp(-0.2*x).*sin(pi/24*t(k)-x);%随时间变化的轨迹曲线
    set(h,'xdata',x,'ydata',y)%轨迹曲线刷新
    set(hh,'xdata',x(1),'ydata',y(1))%活动对象位置刷新
    ylim([-1,1])%限定y坐标以防止抖动
    axis off%坐标轴关闭
    set(htext,'string',int2str(l-k))%倒计数数字更新
    pause(0.0005)%速度控制
end
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值