Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- t=0:0.01:20;
- x0=2;
- alpha=0:0.01:2*pi;
- h=4;
- R=0.25;
- x0=1;
- x=x0+0.3*cos(alpha);
- y0=1;
- y=y0+cos(alpha);
- N=10;
- xlim([-1 4])
- ylim([-2 4])
- xlim manual
- ylim manual
- axis equal
- hold on
- for i=1:N
- Xpr(i)=(i-1)*1/(N-1);
- if i==1
- Ypr(i)=2.5*R+h;
- %SpringVector=[Xpr(i);Ypr(i)];
- elseif i==N
- Ypr(i)=2.5*R+h;
- %newElem=[Xpr(i);Ypr(i)];
- %SpringVector=[SpringVector; newElem];
- else
- Ypr(i)=2.5*R+h/2+h/4*(-1)^i;
- %newElem=[Xpr(i);Ypr(i)];
- %SpringVector=[SpringVector; newElem];
- end
- end
- Spring=plot(Xpr*2,Ypr);
- %dirtection = [0 0 1];
- #rotate(Spring,direction,25);
- for i=1:length(t)
- phi=-acos(y(i)-1);
- #for j=1:N
- # Xpr(j)=(j-1)*1/(N-1)*cos(phi)-Ypr(j)*sin(phi);
- # if i==1
- # Ypr(j)=Xpr(j)*sin(phi)+(2.5*R+h)*cos(phi);
- # elseif i==N
- # Ypr(j)=Xpr(j)*sin(phi)+(2.5*R+h)*cos(phi);
- # else
- # Ypr(j)=Xpr(j)*sin(phi)+(2.5*R+h/2+h/4*(-1)^i)*cos(phi);
- # end
- #end
- #set(Spring,'Xdata', Xpr,'Ydata', Ypr);
- #ArrSpring=[Xpr 0; Ypr 0];
- #RotSpring=Rot2D(ArrPruzzhina,phi);
- #set(Spring,'Xdata', RotSpring(1,:)*x(i),'Ydata', RotSpring(2,:)*y(i));
- #RotArrSpring=Rot2D(SpringVector,phi);
- #set(Spring,'XData', RotArrSpring(1,:)*x(i), 'YData', RotArrSpring(2,:)*y(i));
- set(Spring,'Xdata',Xpr*x(i));
- pause(0.01);
- end
Advertisement
Add Comment
Please, Sign In to add comment