Hallo Leute!
In der Uni haben wir ein Skript für Octave/Matlab bekommen, mit dessen Hilfe wir Differentialgleichungen/Diferentialgleichungssysteme mit dem Runge-Kutta Verfahren lösen können.
Probleme bereiten mir dabei die Definition des folgenden Differentialgleichungssystems:
x'(t)= -2,7x+x^2*y-x
y'(t)=1,7x-x^2*y
mit dem AWP: (x(0),y(0))=(1,1)
Habe nun versucht das System auf Matrix-Form zu bringen und einzutippen:
Code:
h = 0.005;
x0 = 0;
y0 = [1;1];
A = [-2.71; 1.7-1];
u = @(x,y)[x; (x^2)*y]
g = [1;0]
f = @(x,y) A*u(x,y)+g ;
N = 3000; %Anzahl der Schritte
xn = x0; %Programminitialisierung
yn = y0;
xnStorage = zeros(1,N); %speichert alle x_n
ynStorage = zeros(length(yn),N); %speichert alle y_n
for i = 1:N
k1 = h*f(xn, yn);
k2 = h*f(xn+h/2, yn + k1/2);
k3 = h*f(xn+h/2, yn + k2/2);
k4 = h*f(xn+h, yn + k3);
yn = yn + (k1 + 2*k2 + 2*k3 + k4)/6;
xn = xn + h;
Kriege unter anderem die Fehlermeldung, dass die Operation mit (x^2)*y nicht zulässig ist.
Hoffe jemand kann mir bei der Defintion der Funktionsgleichung weiterhelfen
ich würde da einen konzeptionellen Fehler vermuten. x bzw. xn sind ja die Zeitschritte, keine Gleichung. Wenn du zwei oder mehr Gleichungen hast, wird aus y bzw. yn ein Vektor.
Wenn ich das richtig sehe, sollte u also so aussehen:
Bitte übrigens Fehlermeldungen immer kopieren, nicht interpretieren / übersetzen. Das bringt meist mehr Verwirrung als dass es hilft.
Grüße,
Harald
Einstellungen und Berechtigungen
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
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.