# Storing found values in an array

2 views (last 30 days)
Domenico Fazzari on 12 Dec 2016
Hi everyone I've written an optimization code for exercise. The results are a series of xs(optimimum moles of different components in the mixture at the equilibrium) and fvals(the minimum values) for different temperatures. I would like to store in an array certain xs,precisely only the x3(7)s that satisfy my "if "condition,so i can use it in a plot. But the result isn't good,if i ask to matlab to visualize the y(j) it gives me only zeros, and I can't really understand where's my mistake. Is there anybody who can give me some tips? Here's part of the code:
for j=1:length(T)
Tj = T(j);
Gjt =Gj3(j,:);
y(j)=zeros;
b3eq = [1*FR + 1
2*FR + 4
1];
LB3 = [0 0 0 0 0 0 0 0 0 0];
x3_0 = [0 0 0 0 0 0 0 0 0 0]+1e-6;
options = optimset('Algorithm','interior-point','MaxFunEvals',1000000,'MaxIter',10000000,'TolCon',1e-12);
[x3,fval] = fmincon(@func3t,x3_0,[],[],A3eq,b3eq,LB3,[],[],options);
G3=fval*R*Tj; % kJ/mol
if x3(7)<10e-7
break
y(j)=x3(7);
end
Thanks a lot!

Edited: Isabella Osetinsky-Tzidaki on 12 Dec 2016
any command located between "break" and "end" cannot be performed