Getting single answer for function with an array

4 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 MATLAB 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!