Mathematik online lernen im Mathe-Forum. Nachhilfe online
Startseite » Forum » Gekoppelte Differentialgleichungen numerisch lösen

Gekoppelte Differentialgleichungen numerisch lösen

Universität / Fachhochschule

Gewöhnliche Differentialgleichungen

Partielle Differentialgleichungen

Tags: Gewöhnliche Differentialgleichungen, numerische Lösung, Partielle Differentialgleichungen

 
Antworten Neue Frage stellen Im Forum suchen
Neue Frage
Dizzle

Dizzle aktiv_icon

14:04 Uhr, 28.02.2015

Antworten
Hallo,
ich hoffe ihr könnt mir weiterhelfen. Ich schreibe gerade meine Diplomarbeit und muss diese drei Gleichungen numerisch lösen.

dTLdz=AdXdz+B(TL-TA)

dTAdz=-CdXdz+D(TL-TA)

dXdz=EdTAdzf(TA)

Diese Gleichungen kommen aus einer Bilanz für ein differenzielles Volumenelement. Startwerte habe ich. Jetzt will ich nummerisch approximieren um die jeweiligen Werte für TL, TA und X am Ausgang des Volumenelementes zu erhalten. Derjenige, der diese Gleichungen ersonnen hat meinte zu mir, dass es am besten mit Runge Kutta 4 Ordnung gehen soll...ich kiege das aber irgendwie nicht hin.

Ich hoffe ihr könnt da weiterhelfen.

Dizzle

Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert):
"Ich möchte die Lösung in Zusammenarbeit mit anderen erstellen."
Online-Nachhilfe in Mathematik
Antwort
pwmeyer

pwmeyer aktiv_icon

15:42 Uhr, 28.02.2015

Antworten
Hallo,

die Standard-Runge-Kutta-Formeln beziehen sich ja auf ein System der Form

X'(z)=F(z,X(z))

Du musst daher erst Deine Gleichungen nach den Ableitungen dXdz,dTLdz,dTAdz auflösen.

Gruß pwm
Dizzle

Dizzle aktiv_icon

16:31 Uhr, 28.02.2015

Antworten
Nunja, die Gleichungen lassen sich ebend nicht auflösen, da sie gekoppelt sind. Deswegen habe ich Probleme ;-)
Antwort
pwmeyer

pwmeyer aktiv_icon

19:05 Uhr, 28.02.2015

Antworten
Hallo,

Du kannst Doch (dX)/(dz) aus der 3. Gleichung in die 2. einsetzen und nach (dT_A)/(dz) auflösen?

Gruß pwm
Dizzle

Dizzle aktiv_icon

23:06 Uhr, 28.02.2015

Antworten
Ich hab das versucht und es klappt auch...allerdings komme ich dann nicht weiter, da die anderen Gleichungen auch gelöst werden müssen und spätestens da ist schluss. Bei einem System von DGl muss man alle gleichzeitig lösen.
Antwort
ledum

ledum aktiv_icon

17:31 Uhr, 01.03.2015

Antworten
Hallo
zur Vereinfachung nenne ich TL=x1,Ta=x2X=x3
zuerst fällt auf, dass x3 keine wirkliche Dgl ost. (was ist f(x2)
deshalb eliminiert man x3, das offensichtlich nur als Abkürzung für ex2'f(x2) steht
Dann hast du da Dgl Systen
x1'-aex2'f(x2)=b(x1-x2)
x2'-ce×2'f(x2)=d(x1-x2)
schreibe die linke Seite als Matrix A *Vektor (x1',x_2')
dann hast du A(x1x2)'=B(x1x2)
das Inverse zu A ist leicht zu finden falls f halbwegs nett ist.
Dann A-1A(x1x2)'=A-1B(x1x2)
und kannst darauf Runge Kutta loslassen
Gruß ledum

Dizzle

Dizzle aktiv_icon

21:07 Uhr, 01.03.2015

Antworten
Hallo Ledum,
ich habe heute etwas daran gesessen und konnte auch ohne die Inversenbildung die Gleichungen umstellen. Gleichung 3 habe ich in Gl. 2 eingesetzt und nach dx2dz aufgelöst. Dann habe ich diesen Ausdruck wieder in Gl.3 eingesetzt und dann alles in Gl.1. Damit konnte ich alle dx3dz eliminieren. Meine Gleichungen sehen nun so aus.

dx1dz=(ADEf(x2)1+CEf(x2)+B)(x1-x2)

dx2dz=(D1+CEf(x2))(x1-x2)

Aber wie genau lasse ich Runge Kutta drauf los?

Btw...f(x2) sieht so aus:

f(x2)=0,622(Psatʹ(P-Psat)+PsatPsatʹ(P-Psat)2)

mit Psat=PCexp(TCTA(A(1-TATC)+B(1-TATC)1,5+C(1-TATC)2,5+D(1-TATC)5))

Die Ableitung kannst du dir denken^^

Dizzle
Antwort
ledum

ledum aktiv_icon

00:17 Uhr, 02.03.2015

Antworten
Hallo
was für ein Programm benutzest du denn, die meisten wie etwa matlab haben schon Runge Kutta eingebaut, und f musst du halt in jedem Schritt berechnen. wenn du ein primitives Programm benutzen willst stehen überall Rezepte.
deine Umformung ist nicht viel anders als die einfache Inverse berechnet
Gruß ledum
Dizzle

Dizzle aktiv_icon

03:23 Uhr, 02.03.2015

Antworten
Ich will das in Excel einbauen.
Antwort
ledum

ledum aktiv_icon

12:46 Uhr, 02.03.2015

Antworten
Hallo
ich glaube nicht, dass Excel geeignet ist ein System von Dgl zu lösen, Aber für so komplexe Sachen hab ich Excel auch noch nicht benutzt. Ich denke schon, dass du programmieren solltest. Aber man kann natürlich jede Formel in Excel eingeben,
Wenn du dein f gut in Excel einbaust kannst du ja erstmal das Euler oder das Halbschrittverfahren damit ausprobieren,
in jedem Schritt must du f auswerten bei Runge Kutta an 3 Stellen
warum nimmst du nicht x2=TaTc und bist du sicher, dass deine Bilanz richtig ist bevor du sowas rechnest?
Wenn du nach dem Diplom (welches Fach) in die Wirtschaft willst, solltest du etwas mehr als Excel beherrschen.
Gruß ledum
Dizzle

Dizzle aktiv_icon

13:11 Uhr, 02.03.2015

Antworten
Hallo ledum,
naja die einzelnen k und l von Runge Kutta kann man ganz gut rechnen...ist ja nur eine Formel auswerten. Hab auch in der Nacht getestet und er klappt ganz gut...muss nur noch etwas anpassen.

Ich studiere Chemieingenieurwesen und kann die Anmerkung mit dem etwas mehr beherrschen nicht ganz nachvollziehen. Das Programm, welches eine Firma benutzt kann man schnell erlernen...und da jede Firma ein anderes benutzt (fast) kann man auch nicht sagen welches DAS Programm ist. Hauptsache man versteht die Mechanik hinter so einer simulation.

Dizzle
Antwort
ledum

ledum aktiv_icon

15:41 Uhr, 02.03.2015

Antworten
Hallo
dan hak bitte ab. ratsam ist es, das Programm mit einer bekannten Funktion zu prüfen, z. B mit (x,y)'=2(y,-x)
Hallo
und du hast Recht, wenn du in einer Programmsprache programmieren kannst ist es leicht auf eine andere umzusteigen, wenn sie eine ähnliche Struktur hat z.b objektorientiert oder nicht aber Excel ist eben keine Programmiersprache
Gruß ledum