Am I doing this right?

3 views (last 30 days)
Jacob Savona
Jacob Savona on 23 Feb 2015
Edited: Rick Rosson on 23 Feb 2015
You are driving a car along a straight road for t = 50s. Assume that friction is negligible but drag is not, where F .5b(v_n-1)^2 , b is a given constant, and v_n-1 is the velocity at the previous time step. For the duration of the trip as described below, calculate the position, velocity, and netacceleration of the car. Use one or more for loops to simulate the behavior of the car starting at t = 0 until t = 50s, with Δ t = 0.5s. Mass of car and you=1428.8kg and b= 1.04 N*s2/m2.
a. Starting from rest, where initial position of x(0) = 0 and v(0) = 0, you apply an initial, constant acceleration of a = 3m/s , until you reach 65 mph(29.05m/s). Upon reaching 65 mph, you maintain a constant velocity.
Here's My code:
m=1428.8;
x=0;
a=3;
for t=[0:.5:50]
v_n=a.*t;
F_drag=.5*(1.04)*v_n;
F=m*a
F_net=F-(F_drag);
if F_net==0
v_n;
p=v_n/a;
end
end
  1 Comment
Jacob Savona
Jacob Savona on 23 Feb 2015
Fdrag = .5b(v_n-1)^2 for any confusion

Sign in to comment.

Answers (2)

Rick Rosson
Rick Rosson on 23 Feb 2015
Edited: Rick Rosson on 23 Feb 2015
% Mass of the vehicle (in kilograms):
m = 1428.8;
% Applied acceleration (in m/s^2):
a_gas = 3;
Time increment (in seconds):
dt = 0.5;
% Time vector (in seconds):
t = (0:dt:50)';
% Number of data samples:
N = length(t);
% Pre-allocate state variables:
x = nan(N,1);
v = nan(N,1);
a = nan(N,1);
% Initial conditions:
x(1) = 0;
v(1) = 0;
a(1) = a_gas;
% Main simulation update loop:
for n = 2:N
...
...
a(n) = ...
v(n) = v(n-1) + ...
x(n) = x(n-1) + ...
...
...
end
  6 Comments
Rick Rosson
Rick Rosson on 23 Feb 2015
Edited: Rick Rosson on 23 Feb 2015
I don't understand - you already know how to calculate the drag, you included the calculation in the code that you posted as part of your question.
You have everything you need to solve this problem. Try something in MATLAB, check to see if it works, and if it does not, then try to figure out how to fix it. If you want to learn physics and/or MATLAB, you have to put in some effort. No one is going to do it for you.
Best of luck.
Rick Rosson
Rick Rosson on 23 Feb 2015
BTW, the drag is NOT a function of time. It's a function of velocity. So if you first calculate the velocity v at time step n, then you can calculate the drag. Once you know the drag, you can calculate the net force. And then the acceleration....

Sign in to comment.


Image Analyst
Image Analyst on 23 Feb 2015
Have you looked at my answer in your earlier posting of this question? http://www.mathworks.com/matlabcentral/answers/179724#answer_168899
  3 Comments
Image Analyst
Image Analyst on 23 Feb 2015
Drag is a force in the opposite direction to acceleration. Remember Netwon's law, F=m*a. So you have -Drag/m as a negative acceleration, so add that to a, which will make a smaller. Unless your professor gave you some other formula...
Rick Rosson
Rick Rosson on 23 Feb 2015
Edited: Rick Rosson on 23 Feb 2015
Not quite correct. Drag is a force in the opposite direction to velocity, not acceleration. The net acceleration may or may not be in the same direction as the velocity. And the component of the acceleration resulting from the drag will always point in the same direction as the component of the force resulting from the drag (as required by Newton's second law).

Sign in to comment.

Categories

Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!