Getting single answer for function with an array

5 views (last 30 days)
Hi there,
Im trying to plot a graph of Drag against velocity. The velocity(V) in which is stored in an array from 20 to 100 in increments of 10. however when i calculate drag (D) the code only outputs a single output for drag instead of one output for each velocity.
Any help would be appreciated ,
Thank you
>> d=1.225;
>> S=50;
>> Cd=0.03;
>> K=0.04;
>> W=50;
>> V=[20:10:100];
>> D=((0.5)*d*(V.^2)*S*Cd+(K*W^2))/((0.5*d*(V.^2)*S))

Answers (1)

Torsten
Torsten on 16 Apr 2022
D=(0.5*d*V.^2*S*Cd+K*W^2)./(0.5*d*V.^2*S)
instead of
D=((0.5)*d*(V.^2)*S*Cd+(K*W^2))/((0.5*d*(V.^2)*S))
  3 Comments
Voss
Voss on 16 Apr 2022
Edited: Voss on 16 Apr 2022
./ is element-wise division:
[2 4 6 8]./[2 3 4 5] % = [2/2 4/3 6/4 8/5]
ans = 1×4
1.0000 1.3333 1.5000 1.6000
/ is matrix division:
[2 4 6 8]/[2 3 4 5]
ans = 1.4815
Torsten
Torsten on 16 Apr 2022
Edited: Torsten on 16 Apr 2022
Since you already used elementwise multiplication for V, I didn't explain in detail what was the reason for the error. I thought it was only an oversight.

Sign in to comment.

Categories

Find more on 2-D and 3-D Plots 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!