Hi i am trying to enforce an initial value for the variable X(t) as follows
And i want the initial value for the other variable Cco2l(t) to be calculate accordingly through the equation. But the error comes that symbol (Cco2l.l) declared but no values have been assigned. I thought the equation would help assign this rather?
X.l(t)=0.1;
X.l(t)= (Mua0.2566i1(t)X.l(t)Cco2l.l(t))/(Cco2l.l(t)+Kc+power(Cco2l.l(t),2)/Ki )-Muadpower(X.l(t),2) ;
X.l(t)= (Mua0.2566*i2(t)*X.l(t)Cco2l.l(t))/(Cco2l.l(t)+Kc+power(Cco2l.l(t),2)/Ki )-Muadpower(X.l(t),2) ;
X.lo(t)=0.1; X.up(t)=2.5;
Cco2l.lo(t)=0.0001; Cco2l.up(t)=1;
i1.lo(t)=10;
i1.up(t)=60;
i2.lo(t)=10;
i2.up(t)=60;
Also, if I do not provide the suffix ‘l’ for the other dynamic variables i1, i2. the compiler says it needs the suffix ‘l’. What I saw in the GAMS guide that not necessarily all the dynamic variables need to have the level value while using equation feasibility to force initial values. The below example is from the official GAMS webpage. Here the variable/parameter tm is provided woithout the suffix l.
pwm.L(i) = 1;
er.L = 1;
pm.L(i) = pwm.L(i)er.L(1+tm(i));
When I try while providing .l values for all three entities X, I, Cco2l, the solver returns arbitrary initial values rather than the allotted ones.
I have tried with solvers CONOPT, SNOPT, IPOPT.
Whole of the code is attached in file in case needed for a better understanding.
Any leads would be appreciated.
Thanks!