How do I store values from a function in an array within a for loop?

for i=119:0.1:125
Shift_Vm= GHK(Nai,Ki,Cli,i,Ko,Clo,P_RestNa,P_RestK,P_RestCl);
x(i)=Shift_Vm
end
plot(x)
I am getting the error:Array indices must be positive integers or logical values.
Error in Nicole_HW2 (line 31)
x(i)=Shift_Vm
How do I store each value of Shift_Vm to an array so I can plot it

 采纳的回答

something = 119:0.1:125; %give this variable a better name, a name that actually describes what the variable contain
x = zeros(size(something)); %preallocate the output for efficiency
for i = 1:numel(something)
x(i) = GHK(Nai,Ki,Cli,something(i),Ko,Clo,P_RestNa,P_RestK,P_RestCl);
end

2 个评论

Thank you, it worked. One quick thing, How can I plot my results as the steps being the x axis and the values from the function being the y axis. I tried it but I keep getting the wrong graph as a result
plot(something, x);
Naming the result something else than x may make more sense.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by