LabVIEWForum.de - Mathscript und große Arrays

LabVIEWForum.de

Normale Version: Mathscript und große Arrays
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Um mich nicht ständig mit aufwendigen Verdrahtungen herumzuärgern, nehme ich Mathscript um große Arrays (mehrere hunderttausend Einträge, Speicherproblem) zu erzeugen. Das Problem ist, dass Mathscript als Array nur double float durchgehen lässt. Eigentlich würde mir schon int16 oder wenigstens single float genügen, womit ich Speicherplatz sparen würde. Wenn ich aber mein array mit den Befehlen int16 oder single umwandeln will, kommt eine Fehlermeldung, dass Mathscript kein int16 beherrscht. Gibt es da keine Lösung?

Außerdem scheint Mathscript mit Arrayoperationen ziemlich langsam zu sein, im Vergleich zur graphischen LV-Programmierung. Kann man dem auf die Sprünge helfen.
' schrieb:... mich nicht ständig mit aufwendigen Verdrahtungen herumzuärgern, ...mach doch mal ein Beispiel wo der Mathscript-Knoten bei Int-Operationen effizienter ist wie LV-Standard
... dass Mathscript als Array nur double ...Mathlab-Knoten sollte dann zum Einsatz kommen wenn es LV-Boardmittel nicht effizient können ...deshalb gespannt auf das Beispiel
... float durchgehen lässt. in der alten WeltLv85_img[attachment=18349]
... würde mir schon int16 oder wenigstens single float genügen, womit ich Speicherplatz sparen würde. ...nachträglich konvertieren
... wenn ich aber mein array mit den Befehlen int16 oder single umwandeln will, kommt eine Fehlermeldung, dass Mathscript kein int16 beherrscht. neue Welt: >=Lv85_img
[attachment=18350]

Außerdem scheint Mathscript mit Arrayoperationen ziemlich langsam zu sein, im Vergleich zur graphischen LV-Programmierung. Kann man dem auf die Sprünge helfen. ...kommt auf die Aufgabe an ...Beispiele und Infos
Bei LabVIEW 8.0 bekomme ich bei Mathscript die Datentyp-Auswahl wie sie im Bild im vorherigen Post zu sehen. Wenn ich dies aber bei LV 8.6 mache, dann kann ich nur zwischen dbl,cdb, boolean und int auswählen, aber kein int. Die Versionen sind also unterschiedlich. Ich benutze aber LV 8.6. Nachträgliches Konvertieren (außerhalb des MathScript-Knotens) bringt kein Vorteil, da in MathScript selbst das Array schon zu groß wird.
ein wenigOfftopic2, aber zum Anlegen eines Array gibt es doch in LV eine Funktion:
[attachment=18371]

Gruß, Jens
' schrieb:ein wenigOfftopic2, aber zum Anlegen eines Array gibt es doch in LV eine Funktion:

Gruß, Jens

Wenn ich aber die dadurch angelegte Matrix in Mathscript einfüge, dann wird es wieder als dbl betrachtet. Ich muss aufwendige Array-Operationen durchführen, die total unübersichtlich und schwierig zu warten mit der Verdrahtungsmethode werden würden.
In Mathscript zu programmieren ist einfach viel übersichtlicher und schneller. Am liebsten würde ich auf die Verdrahtungsmethode verzichten. Aber es gibt kein anderes Programm um einfach Messgeräte anzusteuern.
' schrieb:Am liebsten würde ich auf die Verdrahtungsmethode verzichten.
Schon mal an eine DLL gedacht?
Wie mache ich denn aus einem MathScript eine DLL?
' schrieb:Wie mache ich denn aus einem MathScript eine DLL?
Ich glaube IchSelbst meinte DLL anstatt Mathscript.
' schrieb:Ich glaube IchSelbst meinte DLL anstatt Mathscript.
Jawohl.
Hier ein Beispiel eines Mathscripts. Davon habe ich mehrere. Und wenn ich die ganzen Arrayoperationen und Abfragen in Verdrahtungsweise machen müsste, dann würde man verzweifeln. Wäre gut, wenn man ganz LV in solcher Weise programmieren könnte.
[attachment=18378]
Seiten: 1 2
Referenz-URLs