2016-05-06 5 views
0

Ich möchte ein planares System von Differentialgleichungen lösen, in dem die Anfangsbedingung für eine Variable gegeben ist, während der Anfangszustand des anderen bestimmt werden muss um sicherzustellen, dass das System zu seinem Gleichgewicht konvergiert. Wenn das Gleichgewicht Sattelpunkt-stabil ist (was für Systeme interessant ist, die aus optimalen Steuerproblemen resultieren, die in der Ökonomie analysiert werden), dann existiert ein einzigartiger Anfangswert dieser Variablen, um eine Konvergenz zu erreichen. Es ist daher die Hauptfrage, wie ein solcher Anfangswert zu bestimmen ist, um das System zu lösen. Ist es möglich, mit R den Wert einer solchen Anfangsbedingung zu bestimmen und damit das System zu lösen?Lösen eines Systems von Differentialgleichungen in R (Sattelpunktstabilität)

Das System ist:

x '= sqrt (x) -X -Y

y' = y · ((sqrt (x))^(- 1) -1)

mit x und y nichtnegativ. Die Analyse legt nahe, dass es ein einzigartiges Gleichgewicht gibt, bei dem sowohl x als auch y streng positiv sind, und die Analyse der Jacobi-Matrix zeigt, dass ein Eigenwert positiv und der andere negativ ist, daher ist das Gleichgewicht Sattelpunkt-stabil. Wenn x (0) gegeben ist, sagen wir gleich 1, wie können wir den Wert von y (0) so bestimmen, dass das System gegen den positiven Gleichgewichtswert von (x, y) konvergiert? Ich möchte in der Lage sein, die einzigartigen konvergierenden dynamischen Pfade von x und y zu simulieren. Kann mir jemand dabei helfen?

Mit deSolve können wir das System leicht lösen, aber wir müssen x (0) und y (0) angeben. Kann deSolve oder ein anderes Paket verwendet werden, um zu bestimmen, was der Wert von y (0) ist, damit y in Richtung seines Gleichgewichts konvergieren kann? Wahrscheinlich sollten wir uns auf einen Schießalgorithmus stützen, um den Anfangszustand y (0) zu erraten und neu zu kalibrieren, aber ich habe keine Ahnung, wie das gemacht werden könnte.

Antwort

0

Was würden Sie zu tun ist, um die „stabile Mannigfaltigkeit des Sattels“ berechnen Dies wird durch

getan
  1. die Jacobi-Berechnung J am Gleichgewicht, xStar
  2. Finden der Eigenwerte und Eigenvektoren J
  3. Verwendung als Anfangsbedingung y0 = Xstar - eps * eigenvector, wo eigenvector ist der Eigenvektor mit dem negativen Eigenwert von J entspricht, und eps ist eine sehr kleine Zahl (zB eps = 1e-7)
  4. Simulieren Sie die Dynamik aber in umgekehrter Zeit, z. Mal = seq (-10,0, by = 0,1), in lsoda
  5. Die Schritte 3 & 4 für, aber mit der Anfangsbedingung y0 = Xstar + eps * eigenvector
Verwandte Themen