Hallo,
ich möchte gerne einen nichtlinearen Fit durchführen und habe dazu das zugehörige vi ausgewählt und die Instanz "Formelstring" gewählt. Den Formelstring habe ich exakt wie in den Beispielen beschrieben erstellt, dennoch gibt Labview immer die Fehlermeldung "falscher Buchstabe" bei dem Fit-vi aus. Was muss ich da ändern?
Gruß
EDIT jg: Fehlende LV-Version des Upload ergänzt
(08.08.2011 10:03 )kirsch schrieb: [ -> ]Was muss ich da ändern?
Wenn ich es auf die Schnelle richtig gesehen habe, ist der Befehl 'hoch zwei" falsch. Dort muss ein '^' statt einem '**' stehen. Vgl. die entsprechenden Hilfeseiten
hier und
hier
Beste Grüße,
NWO
Das habe ich auch schon gedacht, aber dann bricht Labview mit der Fehlermeldung "Syntaxfehler bei der Auflösung" ab.
(08.08.2011 10:39 )kirsch schrieb: [ -> ]... aber dann bricht Labview mit der Fehlermeldung "Syntaxfehler bei der Auflösung" ab.
Was hast du denn an den Parameter 'Inital Values' ('Anfangsparameter angeschlossen')? In deinem angehängen VI ist der Paramter nicht belegt?!?
Dieser Parameter darf z.B. kein Array mit Nullen sein, steht zumindest
hier.
Beste Grüße,
NWO
Ah ok, das hat geklappt. Jetzt meckert Labview aber "Das Gleichungssystem kann nicht gelöst werden, da die Eingangsmatrix singulär ist.". Also ich weiß ganz genau, dass das mit meinen Daten klappt, da ich die Kurve mit GnuPlot schon gefittet habe. Es liegt also nicht an meinen Daten. Müssen die vielleicht auf eine besondere Art angeordnet sein? Das würde mich auch wundern, denn 1D-Arrays können nicht transponiert werden in Labview (zumindest finde ich dazu kein vi).
OffToppic - fast:
Es ist eine der Grundeigenschaften von Labview, das sich solche flächenfressenden, monoton sich wiederholenden Webmuster vermeiden lassen - so wie sie bei Dir zu finden sind. Habe mal einen Teil Deines VIs herausgepickt, um daraus eine Vorher-Nachher-Show zu gestalten
Vorher:
[
attachment=35126]
Nachher:
[
attachment=35127]
Wo hast du das vi mit der bedingten Vertauschung gefunden?
In einer höheren LV-Version. Gibt es in LV 8.0 noch nicht,
sondern erst ab LV 8.5.
Außerdem ist aus Performance-Gründen in LV8.0 ein Schieberegister der Feedbacknode vorzuziehen.
Gruß, Jens
(08.08.2011 12:46 )kirsch schrieb: [ -> ]Ah ok, das hat geklappt. Jetzt meckert Labview aber "Das Gleichungssystem kann nicht gelöst werden, da die Eingangsmatrix singulär ist.". Also ich weiß ganz genau, dass das mit meinen Daten klappt, da ich die Kurve mit GnuPlot schon gefittet habe. Es liegt also nicht an meinen Daten. Müssen die vielleicht auf eine besondere Art angeordnet sein? Das würde mich auch wundern, denn 1D-Arrays können nicht transponiert werden in Labview (zumindest finde ich dazu kein vi).
Hm, an dieser Stelle weiß ich auch nicht mehr weiter
Vielleicht helfen dir die Einträge im NI-forum zu diesem Fehler weiter:
NI Forum Sucheintrag: 'The system of equations cannot be solved because the input matrix is singular'
http://forums.ni.com/t5/forums/searchpag...s+singular
(08.08.2011 15:40 )kirsch schrieb: [ -> ]Wo hast du das vi mit der bedingten Vertauschung gefunden?
Das ist das
Swap Values
http://zone.ni.com/reference/en-XX/help/...ap_values/
Beste Grüße,
NWO
Ich habe das gleiche jetzt mit VI und nicht über Formelstring gemacht und da hat es geklappt. Mal davon abgesehen, dass der Fit 10000 mal schlechter als in Gnuplot ist.
Danke für die Hilfe!