MATLAB: Animate Double Pendulum with solved ODE.

pendule

Hi,
I'm trying to animate a double pendule with matlab.
I looked at this tutorial but didnt manage to make it work : https://fr.mathworks.com/help/symbolic/animation-and-solution-of-double-pendulum.html
function double_pendule(x,y,L1,L2)
x1 = @(t) L1*sin(y(t));
y1 = @(t) -L1 * cos(y(t));
x2 = @(t) x1 + L2*sin(y(t));
y2 = @(t) y1 - L2*cos(y(t));
M1 = 1;
fanimator(@(t) plot(x1(t),y1(t),'ro','MarkerSize',M1*10,'MarkerFaceColor','r'));
axis equal;
end
y looks like this :
What did i do wrong ? Thanks !

Best Answer

Hi,
Here is an updated and corrected code with a different animation procedure:
L2 = 20;
t = 0:.1:2*pi;
double_pendule(t, L1, L2);
function double_pendule(t, L1, L2)
x1 = @(t) L1*sin(t);
y1 = @(t) -L1 * cos(t);
x2 = @(t) (x1(t) + L2*sin(t));
y2 = @(t) (y1(t) - L2*cos(t));
M1 = 1;
for ii=1:numel(t)
plot(x1(ii), y1(ii), 'd', x2(ii), y2(ii), 'o', 'markerfacecolor', 'c'), pause(.1)
hold all
axis equal;
end
end
Good luck.