Page 1 of 1

Error 148 y 149

Posted: Fri Jan 06, 2023 4:22 am
by Fernando Caicedo
Me podrian ayudar porfavor, intento compilar el codigo y me aparece el error 148 y 149 en las ecuaciones PBAL y QBAL, a continuacion adjunto el codigo

Sets
G indice de generadores /G1*G2/
N indice de nodos /N1*N3/
MAP(G,N) asocia generadores y nodos /G1.N1,G2.N2/;
TABLE GDATA(G,*) datos de entrada de los generadores
PMIN PMAX QMIN QMAX a b c al be ga
G1 0.0 3.0 -1.0 2.0 105.0 2.45 0.005 22.983 -1.1000 0.0126
G2 0.0 3.0 -1.0 2.0 44.10 3.51 0.005 25.313 -0.1000 0.0200;

TABLE LINE(N,N,*) datos de entrada de las lineas
Y PHI
N1.N1 22.97 -1.338
N2.N2 21.93 -1.347
N3.N3 20.65 -1.362
N1.N2 12.13 1.816
N1.N3 10.85 1.789
N2.N3 9.81 1.768;

TABLE BUS(N,*)
VMIN VMAX PL QL
N1 0.95 1.13 0 0
N2 0.95 1.10 0 0
N3 0.95 1.10 4.5 1.5;
SCALAR
PI /3.1416/;

VARIABLES
z1 valor de la funcion de costos
z2 valor de la funcion de emisiones
z3 valor de la funcion de perdidas
p(G) potencia activa generada por el generador G
q(G) potencia reactiva generada por el generador G
v(N) modulo de la tension en en nudo N
d(N) angulo de la tension en el nudo N;

*Se asignan los limites de las variables
p.lo(G)=GDATA(G,'PMIN');
p.up(G)=GDATA(G,'PMAX');
q.lo(G)=GDATA(G,'QMIN');
q.up(G)=GDATA(G,'QMAX');
v.lo(N)=BUS(N,'VMIN');
v.up(N)=BUS(N,'VMAX');
d.lo(N)=-PI;
d.up(N)=PI;
d.fx('N3')=0;
ALIAS(N,NP);
LINE(N,NP,'Y')$(ORD(N) GT ORD(NP))=LINE(NP,N,'Y');
LINE(N,NP,'PHI')$(ORD(N) GT ORD(NP))=LINE(NP,N,'PHI');

*Se declaran las restricciones
EQUATIONS
COST FUNCION OBJETIVO
EMIS FUNCION OBJETIVO EMISIONES
PERT FUNCION OBJETIVO PERDIDAS TOTALES DE ENERGIA
PBAL(N) RESTRICCIONES DE BALANCE DE POTENCIA ACTIVA
QBAL(N) RESTRICCIONES DE BALANCE DE POTENCIA REACTIVA;

COST.. z1=E=SUM(G,GDATA(G,'c')*sqr(p(G)+GDATA(G,'b')*(p(G))+GDATA(G,'a')));
EMIS.. z2=E=SUM(G,GDATA(G,'ga')*sqr(p(G)+GDATA(G,'be')*(p(G))+GDATA(G,'al')));
PERT.. z3=E=SUM((N,NP),LINE(N,NP,'Y')*((v(N)**2+v(NP)**2)-(2*v(N)*v(NP)*cos(d(N)-d(NP)-LINE(N,NP,'PHI')))));
*Ecuaciones de balance de potencia activa y reactiva
PBAL.. SUM(G$MAP(G,N), p(G))-BUS(N,'PL')=e=v(N)*SUM(NP,LINE(N,NP,'Y')*v(NP)*cos(d(N)-d(NP)-LINE(N,NP,'PHI')));
QBAL.. SUM(G$MAP(G,N), q(G))-BUS(N,'QL')=e=v(N)*SUM(NP,LINE(N,NP,'Y')*v(NP)*sin(d(N)-d(NP)-LINE(N,NP,'PHI')));
MODEL foc /COST, PBAL, QBAL, PERT, EMIS/;
SOLVE foc USING nlp MINIMIZING z1;

Re: Error 148 y 149

Posted: Fri Jan 06, 2023 8:12 am
by Fred
Hi,

The forum language is English, so I will reply in English. For future posts, please follow the forum rules and be put code into code tags because otherwise e.g. table statements get broken.

The first two errors are

Code: Select all

  62  PBAL.. SUM(G$MAP(G,N), p(G))-BUS(N,'PL')=e=v(N)*SUM(NP,LINE(N,NP,'Y')*v(NP)*cos(d(N)-d(NP)-LINE(N,NP,'PHI')));
****       $148           $149          $149        $149           $149                  $149          $149
**** 148  Dimension different - The symbol is referenced with more/less
****         indices as declared
**** 149  Uncontrolled set entered as constant
  63  QBAL.. SUM(G$MAP(G,N), q(G))-BUS(N,'QL')=e=v(N)*SUM(NP,LINE(N,NP,'Y')*v(NP)*sin(d(N)-d(NP)-LINE(N,NP,'PHI')));
****       $148           $149          $149        $149           $149                  $149          $149
**** 148  Dimension different - The symbol is referenced with more/less
****         indices as declared
You are declaring equations PBAL dn QBAL over N but then you do not use N when you define the equations. So what you need to do is

Code: Select all

PBAL(N).. SUM(G$MAP(G,N), p(G))-BUS(N,'PL')=e=v(N)*SUM(NP,LINE(N,NP,'Y')*v(NP)*cos(d(N)-d(NP)-LINE(N,NP,'PHI')));
QBAL(N).. SUM(G$MAP(G,N), q(G))-BUS(N,'QL')=e=v(N)*SUM(NP,LINE(N,NP,'Y')*v(NP)*sin(d(N)-d(NP)-LINE(N,NP,'PHI')));
I hope this helps!

Fred

Re: Error 148 y 149

Posted: Sun Jan 08, 2023 7:32 pm
by Fernando Caicedo
I thank you very much Fred, it was very helpful thank you, and sorry I'm new to the forum and I'm not very familiar with it