Citat:
Ursprungligen inskrivet av Satsujin
Ok, här kommer en till uppgift för er som inte har något bättre för er..
Då ett föremål faller mot marken utsätts det dels för tyngdkraftsaccelerationen g=9.82m/s^2, dels för en bromsande kraft, luftmotståndet, som ökar med fallhastigheten. En vanlig modell är att luftmotståndet är proportionellt mot m*(v^a), där m är massan och v fallhastigheten vid en viss tidpunkt. Eftersom accelerationen är derivatan av hastigheten kan vi formulera detta med en differentialekvation:
v´=9.82 - k*(v^a)
Vi antar i det följande att utgångshastigheten v[0] = 0.
a) Lös denna differentialekvation numeriskt med k = 0.19 och a = 1.4. Vilken blir gränshastigheten?
b) Antag att a = 1.4. Försök att bestämma k så att gränshastigheten blir 5 m/s.
Finns det nån som kan hjälpa till med den här?? Och vad menas med gränshastighet??
löste den i matlab...
hastighet.m:
function vdot=hastighet(t,v,flag,k,a)
vdot=9.82 - k*(v^a);
exekvera:
options = odeset('RelTol',1e-8,'AbsTol',1e-8);
[t,y]=ode45('hastighet',[0 20],0,options,0.19,1.4);
plot(t,y)
ungefär 16,743 blir gränshastigheten, dvs hastigheten när t går mot oändligheten
Dels ser man det i resultatet, men man kunde även ha räknat fram det genom att lösa ekvationen 9.82-0.19*v^1.4=0
för att lösa b) vill man hitta en lösning till ekvationen
9.82-k*5^1.4=0
Det ger k=1.0317
Verifieras genom att köra
[t,y]=ode45('hastighet',[0 20],0,options,1.0317,1.4);
plot(t,y)
[0 20] avser tidsintervallet, det går givetvis bra att ändra
options anger toleranser för ode-rutinen i matlab, de kan man ju också ända om man vill ha hög noggrannhet