function y = Opt_SimAufruf(x)

% Auf Grundlage der Matlab-Funktion "patternsearch" wird die Regelguete
% minimiert, indem die Wichtungsmatrizen optimiert werden!

%% 'base'-Workspace-Variablen in den aktuellen Arbeitsspeicher überführen:
CA50_S = evalin('base', 'CA50');
IMEP_S = evalin('base', 'IMEP'); 
NOx_S  = evalin('base', 'NOx');

SOIstart = evalin('base', 'SOIstart');
FMIstart = evalin('base', 'FMIstart'); 
AGRstart = evalin('base', 'AGRstart');

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Unterordner einbinden:
path(genpath(pwd),path);
path(genpath('..\MODELLBILDUNG'),path);

%% Laden der MAT-Files für die Streckenmodelle und Ableitungsmodelle:
load('modLOLIMOT_3In_CA50');
load('modLOLIMOT_3In_IMEP');
load('modLOLIMOT_3In_DPMAX');
load('modLOLIMOT_3In_HC');
load('modLOLIMOT_3In_NOX');

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Manuelle Einstellungen: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Simulationsschrittweite
stepSize = 0.06; % 2000U/min, Ein Arbeitsspiel erstreckt sich uber 2 Zyklen (720°)

% "Sollwertsprung":
T_Sprung = 12; % Am idealsten, wäre es, wenn das System bis dahin eingeschwungen wäre!
                 
% Simulationsdauer vordefinieren (abhängig von der Einschwingzeit, also von T_Sprung!
simTime  = 30; % 

% Anzahl Abtastintervalle: (simTime/stepSize)+1
AbtastI  = 501;

% PT1-Zeitkonstante 
T_PT1    = 2; % für AGRstat --> AGRdyn

% Exponentielle Referenztrajektorie:
T_exp    = 0.5;
% T_exp=1;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Zielfunktion ausführen:
simOut=sim('Optimierung','SrcWorkspace','current','SaveOutput','on','OutputSaveName','youtNew'); 

%% In der Simulation berechnete Regelguete isolieren:  
simOutVars = simOut.who;
yout = simOut.get('youtNew');
Regelguete=yout.signals(1,1).values;
y=max(Regelguete);
% length_Regelguete=length(Regelguete);
% y=Regelguete(length_Regelguete);

% OPTstell=yout.signals(1,2).values;
%%


