54 lines
No EOL
1.3 KiB
Matlab
54 lines
No EOL
1.3 KiB
Matlab
function Animation(x,t)
|
|
|
|
fs=20; lw=4; ms = 30;
|
|
fst = 0.8*fs;
|
|
x0screen=50;y0screen=200;WidthScreen=1300;HeightScreen=300;
|
|
Blue = [0 0.4470 0.7410];
|
|
Orange = [0.8500 0.3250 0.0980];
|
|
Yellow = [0.9290 0.6940 0.1250];
|
|
Violet = [0.4940 0.1840 0.5560];
|
|
Green = [0.4660 0.6740 0.1880];
|
|
Cyan = [0.3010 0.7450 0.9330];
|
|
quality = '-r210';
|
|
|
|
|
|
a = 0;
|
|
b = 1;
|
|
Cw1 = @(zeta) (zeta^2*(2*zeta^3 - 5*zeta^2 + 10))/20;
|
|
Cw2 = @(zeta) -(zeta^4*(2*zeta - 5))/20;
|
|
Cw3 = @(zeta) (zeta^3*(3*zeta^2 - 10*zeta + 10))/60;
|
|
Cw4 = @(zeta) (zeta^4*(3*zeta - 5))/60;
|
|
|
|
|
|
zeta_d = linspace(a,b);
|
|
w = zeros(8,length(t));
|
|
for i = 1:length(t)
|
|
for j = 1:length(zeta_d)
|
|
Cw = [Cw1(zeta_d(j)),Cw2(zeta_d(j)),Cw3(zeta_d(j)),Cw4(zeta_d(j)),0,0,0,0];
|
|
w(j,i) = Cw*x(:,i);
|
|
end
|
|
end
|
|
|
|
figure
|
|
set(gcf,'units','points','position',[x0screen,y0screen,WidthScreen,HeightScreen])
|
|
hold on
|
|
% pu = plot(zeta_d,u(:,1),'LineWidth',lw);
|
|
% pv = plot(zeta_d,v(:,1),'LineWidth',lw);
|
|
pw = plot(zeta_d,w(:,1),'LineWidth',lw*4);
|
|
legend({'$w(\zeta,t)$'},'Interpreter','latex','FontSize',fs,'Location','Northwest')
|
|
xlabel({'space $\zeta$'},'Interpreter','latex','FontSize',fs)
|
|
set(gca,'FontSize',fst)
|
|
ylim([-0.7,0.7])
|
|
xlim([a,b])
|
|
% pause
|
|
|
|
for i = 1:10:length(t)
|
|
|
|
% set(pu,'YData',u(:,i))
|
|
% set(pv,'YData',v(:,i))
|
|
set(pw,'YData',w(:,i))
|
|
pause(0.0001)
|
|
end
|
|
|
|
|
|
end |