DMUG-Archiv 1999

Frühere

 

Chronologischer Index

 

Spätere

Vorherige

 

Thematischer Index

 

Nächste

Re: Problem mit DSolve

>Liebe Kollegen,
>
>ich komme auf zwei Wegen zu unterschiedlichen Ergebnissen,
>wobei Out[2] richtig ist. Hat jemand eine Idee, weshalb 
>keine Lösung gefunden wird wenn ich die Anfangsbedingung 
>gleich eingebe ? Dieser Fehler tritt nur in den Fällen auf
>wo wie hier die Anfangsbedingung schon der stationäre Zustand
>des Systems ist.
>
>Mit freundlichen Grüßen
>
>Horst Finsterbusch
>
>(* 1.Weg *)
>In[1]:= DSolve[{x'[t]==x[t]*(1-x[t]),x[a]==b},x[t],t]
>Out[1]= {{x[t] -> b*E^t / (E^a - b*E^a + b*E^t)}}
>In[2]:= % /. {a->0,b->1}
>Out[2]= {{x[t]->1}}
>
>(* 2.Weg *)  
>In[3]:= DSolve[{x'[t]==x[t]*(1-x[t]),x[0]==1},x[t],t]
>Out[3]= {}
>

Hallo,

ich denke mir, dass der Grund darin liegt:

Mathematica rechnet zuerst die DGL ohne Nebenbedingungen.
Man erhält dann:

x(t) = e^t/(e^t-e^C).

wenn man nun hier das Problem

e^0/(e^0-e^C) == 1

löst, erhält man schnell, dass C=-infty sein muss.

Sie können diese DGL nicht für alle Anfangswerte lösen.
Anfangswerte im Intervall x(0)=(0,1) können nicht angenommen
werden. Dies steckt in der Gleichung:

e^0/(e^0-e^C).

Wenn Sie diese mal nach dem Parameter C plotten, sehen Sie das sehr
schnell.

In Ihrem Fall gehen Sie gerade vom Grenzwert aus und  dies bereitet
natürlich Probleme.


Mit freundlichen Grüssen

S. Stingelin.


Verweise:
Problem mit DSolve
Horst Finsterbusch, 07.03.1999

Frühere

 

Chronologischer Index

 

Spätere

Vorherige

 

Thematischer Index

 

Nächste

DMUG-Archiv, http://www.mathematica.ch/dmug-liste.html; Letzte Änderung: 08.09.2003 20:45