LabVIEWForum.de
numerische Ableitung - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: numerische Ableitung (/Thread-numerische-Ableitung)



numerische Ableitung - nakwechi - 16.06.2011 11:44

Hallo,

ich bin neue in Labview, und habe ein Problem.
Ich möchte gern im Labview eine Funktion, wo ich die Koordinaten(x,y) der Punkte kenne, ableiten. Die Funktion ist die Funktion einer gekrümmten Oberfläche, die kalibriert wurde und damit sind alle Punkte der Kontur der Oberfläche bekannt. jetzt möchte ich die Ableitung von jede x-Koordinaten der Funktion F´(X1)....F´(Xn) mit labview rechnen.

Danke für Ihre Hilfe


RE: numerische Ableitung - GerdW - 16.06.2011 13:44

Hallo nakwechi,

du weißt schon, dass "numerische Ableitung" i.A. der Formel y'=dy/dx entspricht, also Differenz zwischen zwei Y-Werten geteilt durch Differenz der zugehörigen X-Werte? Sowas kann man ruckzuck in LabVIEW umsetzen...

Für die Faulen gibt es aber immer noch die Mathematik-Funktionspalette mit dem Unterpunkt "Integral- und Differentialrechnung" Smile


RE: numerische Ableitung - nakwechi - 16.06.2011 14:27

Danke GerdW,

Ich habe schon Y´ berechnet und was ich jetzt möchte ist Y´ von jede X-Werte ZB: Y´(X0), Y´(X1).....Y´(Xn), da ich die Ergebnisse brauche, um einen Winkel wie folge zu berechnen.
tan(alpha )=f’(X0)
alpha= arctan (f’(X0))

Anbei schicke ich noch mein VI zu.


RE: numerische Ableitung - GerdW - 16.06.2011 14:40

Hallo nakwechi,

du erstellst doch schon einen Graphen mit Y'=f(X). Dort hast du doch schon alle Werte, die du brauchst!
Einfach im X-Array den gewünschten Index suchen und den Y'-Wert für den gleichen Index ausgeben...


RE: numerische Ableitung - Lucki - 16.06.2011 18:42

Das Problem ist, dass die dx nicht gleich sind. Es gibt zwar für diesen Fall ein VI zu Integratiion, nicht aber für die Differentiation. Aber wahrscheinlich nur deshalb nicht, weil es kein Problem ist, die Differentiation in diesem seltenen Fall selbst zu machen:
Y'(i) = (Y(i+1)-Y(i))/(X(i+1)-X(i))
für alle Y(i) zu berechnen ist doch nicht schwer, oder?

[attachment=34288]

Edit: Die Idee, eine nicht-monotone Kurve zu interpolieren, indem man sie, von einem passend gewählten Mittelpunkt aus, vorübergehend in eine Kurve in Polarkoordinaten transformiert, die dann monoton verläuft und mit Polynomapproximation gefittet werden kann, ist ja ganz nett.
Aber das kann doch nicht das Wahre sein.
Mir schwebt da so etwas wir die Spline-Approximation vor, nur mit dem Unterschied, daß nicht Ableitungen, sondern Krümmungen so weit wie möglich stetig zu sein haben. Diese naheliegende Idee werden aber schon andere gehabt haben, und auch für Labview wird da irgendwer im All das maßgeschneiderte VI schon gemacht haben. Hat da jemand Erfahrungen? Wie könnte man das googeln?


RE: numerische Ableitung - nakwechi - 17.06.2011 13:22

Hallo,
Danke für Ihre Antworten, aber wie wäre bitte die lösung mit dem selben Problem und für die folgende VI?
mit:
Y'(i) = (Y(i+1)-Y(i))/(X(i+1)-X(i))

und Y´(x) = F´(x).

Danke im vorraus


RE: numerische Ableitung - Lucki - 18.06.2011 08:21

(17.06.2011 13:22 )nakwechi schrieb:  ..und Y´(x) = F´(x).
..und ich Dummy habe das immer nur für eine unterschiedliche Schreibweise von Ein- und Desselben gehalten. Du wirst mir sicherlich noch erklären, worin der Unterschied besteht...


RE: numerische Ableitung - nakwechi - 19.06.2011 15:30

Hallo,

Entschulgung. Es gibt keine Unterschied.


RE: numerische Ableitung - nakwechi - 20.06.2011 14:05

Hallo,

Bitte Lucki, könntest du bitte mir zeigen, wie du Y'(i) = (Y(i+1)-Y(i))/(X(i+1)-X(i)) in Labview berechnet hast? benutzt dann bitte die VI " P1_bis_P10_form", die ich am Freitag gepostet habe. Ich habe selber versuch, leider komme ich nicht zur Antwort. Ich habe auch mit der anderen VI(Vi, wo du deine Lösung gemacht hast) versucht, aber Ich kann die interpolierten x-und Y Werten nicht rausnehmen und es ist für meine weitere Berechnungen Wichtig. Aber am bester die vi " P1_bis_P10_form" ausarbeiten.

Danke.