WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Arbeitspunkt zweier Funktionen finden, per Iteration?

 

Coja
Forum-Century

Forum-Century


Beiträge: 166
Anmeldedatum: 20.06.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.04.2019, 12:00     Titel: Arbeitspunkt zweier Funktionen finden, per Iteration?
  Antworten mit Zitat      
Hallo,

ich stehe gerade auf dem Schlauch Wink Ich möchte einen Arbeitspunkt ermitteln, der von 2 Funktionen/Abhängigkeiten definiert wird. Dafür habe ich einen Zeitverlauf mit Testdaten erstellt. zz_1 ist den Input für die folgenden Berechnungen:


Code:

%%
% Zeitvektor
t_zz_1 = [0 5 5.1 10 10.1 15 15.1 20.1 55 55.1 60 60.1 65 65.1 t(end)];
% Vorgabe zz in Abhängigkeit von der Zeit (Testreihe)

zz_1 = [0 0 0.1 0.1 -0.1 -0.1 0 0 0 0.6 0.6 -0.6 -0.6 0 0];

% Abhängigkeit zwischen zz und yy
% zz_1 verursacht eine Änderung von yy_1
yydif2zzdif = 1/6; % Konstante, 6% von zz fuehren zu 1% Aenderung von yy
yy_1 = 1.05 + zz_1 * yydif2zzdif; % Gl.1, physikalische Abhaengigkeit

%% Plot zur Darstellung der Testreihe
figure
ax(1) = subplot(2,1,1);
plot(t_zz_1,zz_1)
ylabel('zz')

ax(2) = subplot(2,1,2);
plot(t_zz_1,yy_1)
ylabel('yy')

%% Zusaetzliche Abhaengigkeit zwischen zz und yy (frei definierbar)
% zz(yy) Funktion/Kennlinie definieren, Gl.2:
yy_2 = [-1 0.85 1.03 1.07 4];
zz_2 = [ (yy_2(2)-yy_2(1))*4+yy_2(2) 0  0 0 (yy_2(4)-yy_2(5))*4+yy_2(4)];
figure
plot(yy_2,zz_2)% zz_2(yy_2)-Kennlinie, diese generiert  zz_2 (offset) der
%zu zz_1 addiert werden muss
xlabel('yy')
ylabel('zz')



 



Nun hatte ich die Idee einer iterativen Loesung, denn wie man sieht wirkt sich die Änderung von zz_1 auf yy_1 aus (physikalisch, Gl. 1). Eine Änderung von yy_1 jedoch bewirkt eine Änderung von zz_2 (Gl.2). zz_1 und zz_2 werden summiert (das ist fest definiert, Gl.3) und ergeben quasi ein neues zz, dieses wirkt sich wiederum auf yy aus (durch die phsikalische Abhängigkeit von Gl.1 gekoppelt)

Hier mein Ansatz:
Code:
%% Iterationsschritt

% Interpolation der Werte auf der Kennlinie, zz_1 generiert einen Offset
% fuer yy_1: zz_1_new = zz_1 + zz_ofs;
zz_ofs = interp1(yy_2,zz_2,yy_1);

% Gesucht wird die Loesung (der Arbeitspunkt) P(yy_1_new,zz_1_new) fuer
% yy_1_new = 1.05 + zz_1_new * yydif2zzdif und zz_1_new = zz_1 + zz_ofs
% mit
zz_1_new = zz_1 + zz_ofs; % Gl.3
 



Leider habe ich aktuell keinen Ansatz wie ich das Problem löse. Macht eine Iteration oder eine Optimierungsfunktion Sinn?

Danke schonmal,
Coja
Private Nachricht senden Benutzer-Profile anzeigen


Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.