Projectile motion using while loop Time of flight

7 visualizzazioni (ultimi 30 giorni)
So i need a program that tells you when a potato launcher will hit a target.... (can change this variable and still work). initial variables vx=200, vy,x,y=0 dtarg=23 delta_t=.01seconds.I've checked all the forum information and am still not able to get mine to run correctly. our inputs for (delt_x=vx*delta_t) (delta_y=vy*delta_t) (delta_vx=(-.0254)*(v^x)^2) delta_vy=-(9.8)*delta_t. Like i said we're looking for time of impact and to a set target distance(dtarg). I am not sure what I am missing to make my code work. Any help is grately appreciated.
clc
clear all
dt=0.01; %s
i=1;
x=0;
y=0;
delta_x=0;
delta_y=0;
g=-9.81;
vx=200
vy=0
delta_vx=0;
delta_vy=0;
Dtarget=15;
while x<=Dtarget
delta_vy(i)=-(9.81)*dt
delta_vx(i)=(-.0254)*(vx^2)*dt
delta_x(i)=vx*dt
delta_y(i)=vy*dt
i=i+1;
end

Risposta accettata

Sindar
Sindar il 27 Ott 2020
Basically, the issue is that you are only updating a small portion of the relevant variables each time step. A few questions
  • Is delt_x your current position, or the change in position from your last time step?
  • Should x, y, vx & vy be constant? They are in your code
  1 Commento
dotty daniels
dotty daniels il 27 Ott 2020
Sorry I did get it. I had way too many variables and was making it way more complex than i should have been. Thank you very much

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by