Iterate existing “loop” until convergence Topic is solved

Problems with modeling
Post Reply
dasa
User
User
Posts: 13
Joined: 4 years ago

Iterate existing “loop” until convergence

Post by dasa »

Dear all,
I have some problem related to iterate until converge.
I understand that for 1 condition, it could be written as :
....
Parameter converged;
Converged=0;
loop(iter$(not converged),
statement

A= abs(UB-LB);
converged$(A <= 0.01) = 1;
);
However, what should I code if there are several conditions instead? Could I code as below:
...
Parameter con1 con2 con3;
con1=0;
con2=0;
con3=0;
loop(iter$(not con1 and not con2 and not con3),
statement

A= abs(UB-LB);
B= abs(UB1-LB1);
C= abs(UB2-LB2);
Con1$(A <= 0.01) = 1;
Con2$(B <= 0.01) = 1;
Con3$(C <= 0.01) = 1;
);
GFA
User
User
Posts: 50
Joined: 5 years ago

Re: Iterate existing “loop” until convergence

Post by GFA »

Hi,

You can try (in the case all conditions need to be met): converged = A + B + C (when using "iter$(not converged),")
EDIT: or maybe better: converged$(A + B + C <= 0.01) = 1;

Regards, GFA
Post Reply