SETS i Koordinaatit / 1*3 /, k Rajoitteet / 1*4 /;

FREE VARIABLES x(i,k)  Koordinaattipisteet
               Energia Minimoitava potentiaalienergia;

SCALAR Leveys  Katenoidin kokonaisleveys / 1 /;
PARAMETER d(k) Pituudet / 1 0.25, 2 0.4, 3 0.4, 4 0.25 /;
          
EQUATIONS Obj Potentiaalienergian lauseke, h(k) Rajoitteet;

Obj.. Energia =E= SUM(k, (d(k) + d(k+1))*x("1",k));
h(k).. (x("1",k)-x("1",k-1))**2 + (x("2",k)-x("2",k-1))**2 + 
                (x("3",k)-x("3",k-1))**2 - d(k)**2 =E= 0;
x.fx("1","4") = 0.0; x.fx("2","4") = Leveys;
x.fx("3","4") = 0.0;

MODEL Kateno / ALL /;
SOLVE Kateno MINIMIZING Energia USING NLP;
