3 svar
73 visningar
Elias Rosenkvist 2
Postad: 29 sep 2022 15:27

Kastparabler på ett cykeldäck

Hej!

Det här är min uppgift:

Jag har i största del löst uppgiften men vissa kastparablar blir inte fullständiga, se bild nedan. Jag misstänker att det har o göra med antingen tiden som partiklarna befinner sig i luften eller utgångshastigheten men jag kan inte klura ut varför vissa fungerar och inte andra.

Koden:

function projekt(a,r,v)
g = 9.82;
f = v/(2*pi*r); %Frekvensen för cykelhjulet. Varv/sekund
v0 = 2*pi*r*f; %Utgångshastigheten för partiklarna.

for j = 1:length(a)
starty = abs(r*sind(a(j))+r); %Startvärde för x och y kordinaterna på däcket.
startx = abs(r*cosd(a(j))+r);
tend(j) = abs((v0*sin(a(j))+sqrt((v0*sin(a(j)).^2)+2*g*starty)/g)); %Tiden det tar för partiklarna att nå marken.
t = linspace(0,tend(j),400);
y = (v0*sind(a(j)+90)*t+starty)-((g*t.^2)./2); %y-kordinaterna för partiklarna.
y(y<0) = 0;
x = v0*cosd(a(j)+90)*t+startx; %x-kordinaterna för partiklarna
plot(startx,starty,'or',MarkerFaceColor='r'); %Startpunkterna för partiklarna plottas
hold on
plot(x,y,'-r'); %Partikelbanorna plottas
disp(tend)
end

yline(0,'g-',LineWidth=2) %"Marken" läggs till
c = linspace(0,360,400);
cirkelx = cosd(c); %x och y kordinater för däcket
cirkely = sind(c);
axis([-10 10 -10 10]);

plot(r*cirkelx+r,r*cirkely+r,'black','LineWidth',2); %Däcket plottas.
hold off

Tacksam för hjälp!

haraldfreij 1315
Postad: 29 sep 2022 16:08

Jag noterar tre konstigheter:

  • Utgångshastigheten för partiklarna stämmer inte. Den hade stämt om hjulet snurat fritt i luften, med centrum stilla, men det gör det ju inte.
  • Du har använt sin/cos istället för sind/cosd i beräkningen av tend (det här är felet du letade efter)
  • Den sista knycken vid marken, speciellt på de två vänstraste, beror på att du låser y till 0, men inte ändrar x där du går under marken. 
Elias Rosenkvist 2
Postad: 3 okt 2022 12:46

Tack för svar!

Blir då utgångshastigheten samma som cykelns hastighet?

haraldfreij 1315
Postad: 3 okt 2022 12:56

Utgångshastigheten beror på var på hjulet du befinner dig. Tänk att

"partikelns position när den sitter på hjulet = (mittpunktens position) + (partikelns position relativt mittpunkten)"

När du tar fram hastigheten (deriverar positionen) får du alltså ett bidrag från rörelsen kring mittpunkten, som du har med i koden. Men du får också ett biddrag från mittpunktens hastighet.

Svara Avbryt
Close