Author Topic: Einbinden von Diffgl.Sys. in Programmierteil mit Schleife  (Read 2513 times)

Hefepilz

  • Newbie
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Einbinden von Diffgl.Sys. in Programmierteil mit Schleife
« on: May 24, 2010, 06:11:31 pm »
Hallo liebe Bombentrichter-Mitglieder,

schön, dass ich dieses Forum gefunden habe, für MathCAD ist das nicht so einfach.

Habe folgendes Problem,  für das ich mir von hier Hilfe erhoffe. Vielleicht kann mir jemand weiterhelfen.

Und zwar habe ich ein Gleichungssystem mit zwei Differentialgleichungen mit rkfest gelöst. Das ist nicht weiter schwierig. Doch nun möchte ich es in einen Programmierteil einbinden, dort dann einen bestimmten Wert z.B. Z50 auswählen und mittels einer zweiten "normalen" Formel die Anfangswerte dieses Gleichungssystems neu berechnen. Und dies zyklisch z.B. 30x. Wenn ich das richtig verstehe, kann ich das mittels einer For-Schleife erreichen, doch wie setzte ich die Anfangswerte des Gleichungssystems immer wieder neu? Und wie lasse ich mir die Anfangswerte für jeden Zyklus in eine Tabelle ausgeben bzw. wie lasse ich mir die Anfangswerte in einem Diagramm in Abhängigkeit von der Zeit bzw. dem Zyklus darstellen (aus dem Programmierteil heraus)?

Besten Dank schon im Voraus für jegliche Hilfe.

mfg
Hefepilz

Hefepilz

  • Newbie
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Einbinden von Diffgl.Sys. in Programmierteil mit Schleife
« Reply #1 on: May 26, 2010, 08:52:49 am »
Ich konkretisiere hier noch meine Frage zum leichteren Verständnis. Ich habe versucht es in Mathcad2000 zu lösen (MathCAD 14 nutze ich zur Zeit als Testversion). Meine Lösung sieht wie in Bild 1 aus. Allerdings bekomme ich hier immer nur den letzten Wert, wenn alle Zyklen durchlaufen sind f(10) bringt den gleichen Wert wie z.B. f(20) etc. Ich wäre allerdings daran interessiert die Konzentrationen "m" und "s" in Abhängigkeit von j, also nach jedem Zyklus tabellarisch sowie in einem Diagramm darzustellen. Dies ist mir bisher leider nicht gelungen. Ich bekomme einfach die Ergebnisse eines jeden Zyklusses nicht aus dem Programmteil heraus, sondern nur das Endergebnis.
 
Dies gilt auch für den Versuch die Endergebnisse (über alle Zyklen) von "m" und "s" in Abhängikeit von t und darzustellen. Hier auch wieder tabellarisch und in einem 3D-Diagramm. Mein Problem hierbei ist, dass ich mit mehreren for-Schleifen arbeite, aber ich die Daten wieder nicht aus dem Programmierteil herausbekomme. Meinen Versuch  habe ich in Bild 2 mit angefügt.
 
Kann mir jemand sagen, was ich falsch mache, bzw. wie ich es richtig machen könnte?
 
Vielen lieben Dank.
 
Hefepilz

Pittiplatsch

  • Sr. Member
  • ****
  • Posts: 370
  • Karma: +0/-0
    • View Profile
Einbinden von Diffgl.Sys. in Programmierteil mit Schleife
« Reply #2 on: May 27, 2010, 07:32:56 pm »
Wenn Du keine globalen Variablen verwenden möchtest, musst Du alle Ergebnisse geschickt in eine Matrix packen. Zur Not Matrix in Matrix einfügen usw...

P.S. Habe noch nicht geschnallt, wozu Du im linken Bild den Funktionsparameter j benötigst. Dieser Name überlagert sich mit der Variablen j in der Schleife.
Schlechte Menschen erkennt man an ihren guten Ausreden.
Nur wer von Herzen negativ denkt, kann positiv überrascht werden. (Albert Einstein)