how can I store this data in an array using loop?
조회 수: 8 (최근 30일)
이전 댓글 표시
Hello. I am trying to run the below code. but its not working. I want to run the loop 5 times and calculate the value of x for 5 temperatures and store in a matrix.
please help. thanks
a=1;
v=2;
p=1e-5;
vac=zeros(1,5);
T=[77,295,600,750,1234];
for i=1:length(T)
x=exp(a)*exp(-v/(p*T));
vac(i)=x;
end
댓글 수: 0
채택된 답변
추가 답변 (1개)
Guillaume
2018년 1월 18일
You forgot to mention what it is not working mean: You get error using / Matrix dimensions must agree. That's because you forgot to index T so you're dividing a scalar by a vector which is not a valid matrix operation, so one way to fix your problem:
x = exp(a)* exp(-v/(p*T(i)));
However, you don't need a loop at all, you could use vectorised operations. For that you need to use ./ instead of /:
a = 1; v = 2; p = 1e-5; %constants
T = [77, 295, 600, 750, 1234];
vac = exp(a)*exp(-v./(p*T)) %no loop needed
참고 항목
카테고리
Help Center 및 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!