LabVIEWForum.de
Numerische Integration (nicht äquidistant) Error -20049 - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Numerische Integration (nicht äquidistant) Error -20049 (/Thread-Numerische-Integration-nicht-aequidistant-Error-20049)

Seiten: 1 2


RE: Numerische Integration (nicht äquidistant) Error -20049 - Lucki - 09.07.2012 10:48

Genau das war mein heimlicher Gedanke - das Gert das mal richtig untersucht. Big Grin.

Theoretisch könnte man ja auf diese Prüfung auch verzichten. Die Trapezelemente mit negativem dt gehen dann einfach negativ in die Integralsumme ein. Je nach Aufgabenstellung kann das gewollt sein oder auch nicht. Andererseits: Wenn die Reihenfolge nicht monoton ist, und man macht die Reihenfolge durch umsortieren monoton, dannn kann das Ergebnis der Integration ebenso anders ausfallen als erwartet. Auch hier kommt es auf den konkreten Fall an.

Die Fehlermeldung der Integralfunktion ist auf jeden Fall in zweifacher Hinsicht irreführend.
Die Eingangs-Arrays werden mit X und T bezeichnet. Y und X wäre besser gewesen. (Man kann nämlich grob sagen, dass, wenn bei messtechnischen Aufgaben über die Zeit T integriert werden muss, immer ein konstantes dt vorliegt, diese Funktion also gar nicht verwendet werden muss. Die Funktion kommt eher dann zur Anwendung, wenn nicht über die Zeit integriert wird). In den Sub-VIs der Funktion, die aber den Programmierer gar nicht interessieren sollten, wird es dann besser gemacht, die internen Bezeichnungen sind X und Y. Die Fehlermeldung, die aus den Tiefen der internen SubVis kommt, bezieht sich dort auf X, nach außen hin müßte es aber dann T heißen.
Die zweite Irreführung ist, daß die Fehlermeldung aussagekräftiger heißen müßte: "Verlauf der Werte nicht monoton"


RE: Numerische Integration (nicht äquidistant) Error -20049 - jeannyLab - 15.07.2012 18:17

Ja, die Fehlermeldung verwirrt mehr, als sie hilft.

Ich danke euch sehr für eure Hilfe!