War das ein Krampf!!
Läuft aber jetzt!
Meine Lsg:
% Entweder mit A und b (Variante1) oder über @NB (Variante2):
% Variante1:
A = [-1 -2 -2;1 2 2];
b = [0;72];
optopt= optimset('Display','iter'); [x, fval, exitflag]=fmincon(@xy_Regelung,[10;10;10],A,b,[],[],[],[],[],optopt);
% Variante2:
% optopt= optimset('Display','iter');
% [x, fval, exitflag]=fmincon(@xy_Regelung,[10;10;10],[],[],[],[],[],[],@xy_NB,optopt);
function y = xy_Regelung(x)
simOut=sim('xy','SrcWorkspace','current','SaveOutput','on','OutputSaveName','youtNew');
pause(7)
simOutVars = simOut.who;
yout = simOut.get('youtNew');
length_yout=length(yout);
y=yout(length_yout);
function [c,ceq] = xy_NB(x)
c=[-x(1)-2*x(2)-2*x(3);x(1)+2*x(2)+2*x(3)-72];
ceq=[];
S.-Modell im Anhang.
Danke für die Hilfe.
MfG, Waldemar
↧