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

 채택된 답변

Guillaume
Guillaume 2020년 2월 25일
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에 대해 자세히 알아보기

질문:

2020년 2월 25일

댓글:

2020년 2월 25일

Community Treasure Hunt

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

Start Hunting!

Translated by