BE_Commande_Num/Animation.m

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