make the line with the graph

1 次查看(过去 30 天)
vin=linspace(0.2,2.8);
if vin < 0.5
current=0;
elseif 1.5 > vin >= 0.5
current=(860*10^-6)*(vin-0.5).^2;
elseif 2.5 > vin >= 1.5
current=(860*10^-6)*(2*(vin-0.5)*0.049-(0.049)^2) ;
elseif vin >= 2.5
current=(860*10^-6)*(2*(vin-0.5)*0-(0)^2) ;
end
end
plot(vin,current)
---------------------------------
Above is the code and hoped that make it into divided 4 part. (current versus vin)
but it has errors and could not catch how can mend it.

采纳的回答

Alan Stevens
Alan Stevens 2020-12-15
More like this
vin=linspace(0.2,2.8);
current = zeros(1,numel(vin));
for i = 1:numel(vin)
v = vin(i);
if v < 0.5
current(i)=0;
elseif 1.5 > v && v >= 0.5
current(i)=(860*10^-6)*(v-0.5).^2;
elseif 2.5 > v && v>= 1.5
current(i)=(860*10^-6)*(2*(v-0.5)*0.049-(0.049)^2) ;
elseif v >= 2.5
current(i)=(860*10^-6)*(2*(v-0.5)*0-(0)^2) ;
end
end
plot(vin,current)

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Interpolation 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by