Entwickler-Ecke

Sonstiges (Delphi) - Kurven


art - Do 23.06.05 22:14
Titel: Kurven
Hallo. :)

Ich schreibe ein kleines Programm für eine Demo CD mit dem sich der Kunde den max. Betriebsdruck einer Leitung ausrechnen kann. Bisher hat man das aus einer Kurve im Katalog ausgerechnet.
:?: Wie kann ich diese Kurven matematisch erfassen.
http://home.arcor.de/artb/foto/kurve/a.jpg
http://home.arcor.de/artb/foto/kurve/b.jpg
http://home.arcor.de/artb/foto/kurve/c.jpg

erlich gesagt weiß ich nicht, wie ich's anfangen soll.

Danke art


WeBsPaCe - Do 23.06.05 22:15

Da wirst du wohl eine Funktion für die Kurven erstellen müssen. Also das Wachstum. Sieht meistens nach logistischem Wachstum aus... :nixweiss: Dann setzt du einfach deinen X-Achsen-Wert in eine Variable ein und bekommst das Ergebnis zurück. ;)


Narses - Do 23.06.05 23:28

Moin!

user profile iconWeBsPaCe hat folgendes geschrieben:
Sieht meistens nach logistischem Wachstum aus... :nixweiss:

Sorry, aber was hat das mit LKWs zu tun... :D :wink: (wir kennen uns ja schon!) Du meinst logarithmisch bzw. exponentiell, oder? :wink:

user profile iconart hat folgendes geschrieben:
Bisher hat man das aus einer Kurve im Katalog ausgerechnet.
:?: Wie kann ich diese Kurven matematisch erfassen.

Mein Gott, die Kurven im Katalog sind ja nun auch nicht gerade "mathematisch" exakt. Lies doch einfach "manuell" im Katalog die Werte an jedem "Kästchen" ab und pack das in ein Array; den gesuchten Wert errechnest du dann einfach durch lin. Interpolation zwischen den beiden "nächsten" Kästchen, fertig.

cu
Narses


alzaimar - Fr 24.06.05 08:35

Drei Möglichkeiten:
1. Du erfasst pro Kurve ca. 20-50 Punkte und berechnest den Rest über lineare Interpolation.
2. Du suchst eine Stammfunktion, führst eine Regression über alle Kurven durch und berechnest direkt.
3. Du erzeugst eine 3D interpolierende Spline-Funktion und benutzt die zum Rechnen.

Ich würde (wenn es nicht analytisch genau sein muss, Variante 1 nehmen).


art - Fr 24.06.05 17:33

Danke für die schnelle Antwort !

Die Interpolation gefällt mir am besten.

Nun, nur um meine Neugir zu befriedigen : wie berechne ich die Stammfunktion ?

art


delfiphan - Fr 24.06.05 17:49

Stammfunktion: Du zählst die Viereckchen unter der Kurve von links nach rechts zusammen. Zu jeder x-Koordinate schreibst du dir dann auf, wieviele du schon hast...

Die Form der Kurven (vor allem c, die andern sehen irgendwie merkwürdig aus) könntest du vielleicht via Dimensionsanalyse (siehe auch Pi-Theorem von Buckingham) rausfinden. Dazu musst du lediglich wissen, von welchen Parametern die Sache abhängt (d.h. Druck, Viskosität, Dicke, Volumenstrom, etc.).


art - Fr 24.06.05 20:09

Danke für Deine Antwort . :)

art


WeBsPaCe - Sa 25.06.05 12:58

user profile iconNarses hat folgendes geschrieben:
user profile iconWeBsPaCe hat folgendes geschrieben:
Sieht meistens nach logistischem Wachstum aus... :nixweiss:

Sorry, aber was hat das mit LKWs zu tun... :D :wink: (wir kennen uns ja schon!) Du meinst logarithmisch bzw. exponentiell, oder? :wink:

Nein. Ich meine "logistisches Wachstum"...

Zitat:
Ein Wachstum heißt logistisches Wachstum mit der Schranke S, wenn sich der Bestand B(t) nach t, t E N Zeitschritten im nächsten Zeitschritt um
    k * B(t) * ( S - B(t) )
ändert, wenn also die Änderungsrate zum Produkt aus Bestand und Sättigungsmanko proportional ist.


:tongue:

Tja... Da hab ich wohl in Mathe aufgepasst... Oder ich hab grad ein Mathebuch vor mir liegen... ;)


ceding - Sa 25.06.05 13:04

hast recht!


WeBsPaCe - Sa 25.06.05 13:09

user profile iconceding hat folgendes geschrieben:
hast recht!

Huch... Was ist denn das? Der Zweitaccount von user profile iconNarses? Kann nicht sein... Das wäre ein viel zu kurzer Beitrag... :lol: ;)