how can I store this data in an array using loop?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Farhan Ashraf
il 18 Gen 2018
Commentato: Farhan Ashraf
il 18 Gen 2018
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 Commenti
Risposta accettata
Birdman
il 18 Gen 2018
You don't need a loop. Try the following:
vac=exp(a).*exp(-v./(p.*T))
4 Commenti
Più risposte (1)
Guillaume
il 18 Gen 2018
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
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!