Vorige: Einführung in Differentialgleichungen, Nach oben: Differentialgleichungen [Inhalt][Index]
16.4.2 Funktionen und Variablen für Differentialgleichungen
- Funktion: bc2 (solution, xval1, yval1, xval2, yval2) ¶
Löst das Randwertproblem einer Differentialgleichung 2. Ordnung. DasArgument solution ist eine allgemeine Lösung, wie sie von der Funktion
ode2
zurückgegeben wird. xval1 gibt den Wert der unabhängigenVariablen im ersten Randpunkt an. Der Randwert wird als ein Ausdruckx = x1
angegeben. Das Argument yval1 gibt den Wertder abhängigen Variablen in diesem Punkt an. Der Randwert wird alsy = y1
angegeben. Mit den Argumenten xval2 undyval2 werden die entsprechenden Werte an einem zweiten Randpunktangegeben.Siehe die Funktion
ode2
für Beispiele.
- Funktion: desolve (eqn, x) ¶
- Funktion: desolve ([eqn_1, …, eqn_n], [x_1, …, x_n]) ¶
Die Funktion
desolve
löst lineare Systeme gewöhnlicherDifferentialgleichungen mit Hilfe der Methode der Laplacetransformation. DieArgumente eqn_i sind die Differentialgleichungen mit den abhängigenVariablen x_1, …, x_n. Die funktionale Abhängigkeit derVariablen x_1, …, x_n zum Beispiel von einer Variablen xmuss explizit für die Variablen und ihrer Ableitungen angegeben werden. ZumBeispiel ist sind die folgenden zwei Gleichungen keine korrekte Definition:eqn_1: 'diff(f,x,2) = sin(x) + 'diff(g,x);eqn_2: 'diff(f,x) + x^2 - f = 2*'diff(g,x,2);
Eine korrekte Definition der zwei Gleichungen ist
eqn_1: 'diff(f(x),x,2) = sin(x) + 'diff(g(x),x);eqn_2: 'diff(f(x),x) + x^2 - f(x) = 2*'diff(g(x),x,2);
Die Funktion
desolve
wird dann folgendermaßen aufgerufendesolve([eqn_1, eqn_2], [f(x),g(x)]);
Sind Anfangswerte für
x=0
bekannt, können diese mit der Funktionatvalue
vor dem Aufruf der Funktiondesolve
angegeben werden.(%i1) 'diff(f(x),x)='diff(g(x),x)+sin(x); d d(%o1) -- (f(x)) = -- (g(x)) + sin(x) dx dx(%i2) 'diff(g(x),x,2)='diff(f(x),x)-cos(x);
2 d d(%o2) --- (g(x)) = -- (f(x)) - cos(x) 2 dx dx
(%i3) atvalue('diff(g(x),x),x=0,a);(%o3) a(%i4) atvalue(f(x),x=0,1);(%o4) 1(%i5) desolve([%o1,%o2],[f(x),g(x)]);
x(%o5) [f(x) = a %e - a + 1, g(x) = x cos(x) + a %e - a + g(0) - 1]
(%i6) [%o1,%o2],%o5,diff; x x x x(%o6) [a %e = a %e , a %e - cos(x) = a %e - cos(x)]
Kann
desolve
keine Lösung finden, ist die Rückgabefalse
.
- Funktion: ic1 (solution, xval, yval) ¶
Löst das Anfangswertproblem für eine Differentialgleichung 1. Ordnung.Das Argument solution ist eine allgemeine Lösung derDifferentialgleichung, wie sie von der Funktion
ode2
zurückgegebenwird. Mit dem Argument xval wird der Anfangswert der unabhängigenVariablen in der Formx = x0
angegeben. Mit dem Argumentyval wird der Anfangswert der unabhängigen Variablen in der Formy = y0
angegeben.Siehe die Funktion
ode2
für ein Beispiel.
- Funktion: ic2 (solution, xval, yval, dval) ¶
Löst das Anfangswertproblem für eine Differentialgleichung 2. Ordnung.Das Argument solution ist eine allgemeine Lösung derDifferentialgleichung, wie sie von der Funktion
ode2
zurückgegebenwird. Mit dem Argument xval wird der Anfangswert der unabhängigenVariablen in der Formx = x0
angegeben. Mit dem Argumentyval wird der Anfangswert der abhängigen Variablen in der Formy = y0
angegeben. Mit dem Argument dval wird derAnfangswert der ersten Ableitung der abhängigen Variablen nach derunabhängigen Variablen in der Formdiff(y,x) = dy0
angegeben. Dem Symboldiff
muss keinQuote-Operator
'
vorangestellt werden.Siehe auch
ode2
für ein Beispiel.
- Funktion: ode2 (eqn, dvar, ivar) ¶
Die Funktion
ode2
löst eine gewöhnliche Differentialgleichung derersten oder zweiten Ordnung. Die Funktion hat drei Argumente: dieDifferentialgleichung eqn, die abhängige Variabledvar
und dieunabhängige Variableivar
. Ist die Funktionode2
erfolgreichwird eine explizite oder implizite Lösung für die abhängige Variablezurückgegeben. Im Fall einer Differentialgleichung 1. Ordnung wird dieIntegrationskonstante mit%c
bezeichnet. Für eineDifferentialgleichung 2. Ordnung werden die Integrationskonstanten mit%k1
und%k2
bezeichnet. Die Abhängigkeit der abhängigenVariable von der unabhängigen Variablen muss nicht explizit, wie im Fall vondesolve
angegeben werden.Kann
ode2
keine Lösung finden, ist die Rückgabefalse
.Gegebenenfalls wird eine Fehlermeldung ausgegeben. Folgende Methoden werdenfür das Lösen einer Differentialgleichung 1. Ordnung nacheinanderangewendet: linear, separierbar, exakt - wenn notwendig unter Zuhilfenahmeeines Integrationsfaktors, hom*ogen, bernoullische Differentialgleichung undeine Methode für verallgemeinerte hom*ogene Gleichungen. Für eineDifferentialgleichung 2. Ordnung kommen die folgenden Methoden zur Anwendung:konstante Koeffizienten, exakt, linear hom*ogen mit nicht-konstantenKoeffizienten, die zu konstanten Koeffizienten transformiert werden können,eulersche Differentialgleichung, Variation der Parameter, Reduktion auf eineDifferentialgleichung 1. Ordnung, wenn die Differentialgleichung entwederfrei von der unabhängigen oder der abhängigen Variablen ist.Im Laufe des Lösungsverfahrens werden zur Information des Nutzers globaleVariablen gesetzt:
method
bezeichnet die Methode, die vonode2
zum Auffinden der Lösung verwendet wurde.intfactor
bezeichnet einenverwendeten Integrationsfaktor.odeindex
bezeichnet den Index derbernoullischen Gleichung oder der verallgemeinerte Methode für eine hom*ogeneDifferentialgleichung.yp
bezeichnet eine partikuläre Lösung, wenndie Variation der Parameter angewendet wird.Für das Lösen von Anfangswertproblemen einer Differentialgleichung 1. oder2. Ordnung können die Funktionen
ic1
undic2
verwendet werden.Ein Randwertproblem für eine Differentialgleichung 2. Ordnung kann mit derFunktionbc2
gelöst werden.Beispiele:
(%i1) x^2*'diff(y,x) + 3*y*x = sin(x)/x; 2 dy sin(x)(%o1) x -- + 3 x y = ------ dx x(%i2) ode2(%,y,x); %c - cos(x)(%o2) y = ----------- 3 x(%i3) ic1(%o2,x=%pi,y=0); cos(x) + 1(%o3) y = - ---------- 3 x(%i4) 'diff(y,x,2) + y*'diff(y,x)^3 = 0; 2 d y dy 3(%o4) --- + y (--) = 0 2 dx dx(%i5) ode2(%,y,x); 3 y + 6 %k1 y(%o5) ------------ = x + %k2 6(%i6) ratsimp(ic2(%o5,x=0,y=0,'diff(y,x)=2)); 3 2 y - 3 y(%o6) - ---------- = x 6(%i7) bc2(%o5,x=0,y=1,x=1,y=3);
3 y - 10 y 3(%o7) --------- = x - - 6 2