LabVIEWForum.de
Vektorrechnung.. - Druckversion

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



Vektorrechnung.. - Fiinrod - 08.01.2010 13:29

Hallo,

in meinem VI möchte ich u.A. aus dem 3x1 Vektor "a" (3 Zeilen, 1 Spalte) und einem nx1 Vektor "b" (n Zeilen, 1 Spalte) eine 3xn Matrix (3 Zeilen, n Spalten) bilden.
Dazu müsste ich also "a * b^T" rechnen, also den Vektor b transponieren. Wie ist das möglich?

Das "Problem" erscheint mir eigentlich fast zu simpel, aber ich hab vorhin einfach keine Möglichkeit gefunden, mit der ich mein gewünschtes Ergebnis erhalten hätte.

Ich benutze LV 8.5.1 und werde frühestens Dienstag wieder an den LabVIEW-Rechner kommen. Das VI kann ich momentan leider nicht anhängen, da der Rechner, an dem ich mit LabVIEW arbeite, keinen Internetzugang hat und ich auf meinem Rechner hier zu Hause wiederum kein LabVIEW habe.

Vielen Dank für eventuelle Antworten

Gruß
Finrod


Vektorrechnung.. - eg - 08.01.2010 13:35

Rechnest du mit Arrays oder Matrizen? In der Array-Palette gibt es ein VI zum Transponieren.


Vektorrechnung.. - Fiinrod - 08.01.2010 13:45

Ich rechne mit Arrays, will aber als Ergebnis eine Matrix haben.
Zum Thema transponieren habe ich aber nur transponieren von 2D-Arrays oder von Matrizen gefunden, was beides nicht so geklappt hat.


Vektorrechnung.. - eg - 08.01.2010 13:47

Ach ja, LabVIEW wird dein Ergebnisarray zu 3x1 kürzen, weil es nicht weiss wie es sonst berechnet weden soll.


Vektorrechnung.. - Fiinrod - 08.01.2010 13:53

Ja das hab ich gemerkt.
Wie kann ich LV denn klarmachen, dass es daraus eine 3xn Matrix berechnen soll?


Vektorrechnung.. - jg - 08.01.2010 13:56

Verstehe ich richtig, du würdest gerne das äußere Produkt x*y<sup>T</sup> berechnen? Hier:
[attachment=23503]
Gruß, Jens


Vektorrechnung.. - Fiinrod - 08.01.2010 14:00

Das sieht vielversprechend aus. Werd das mal nächsten Dienstag ausprobieren.
Danke


Vektorrechnung.. - Lucki - 08.01.2010 14:16

LabVIEW macht bei eindimensionalen Arrays keine Unterschiede zwischen Zeilen- und Spaltenvektoren. Deshalb funktioniert des Tranponieren auch nur mit zweidimensionalen Arrays. Allerdings kannst Du einen 1D-Array jederzeit in einen 2D Array, bestehend aus n Spalten und 1 Zeile, umwandeln. Und dieses Aray lässt sich dann transponieren, das resultierende 2D-Array hat dann 1 Spalte und n Zeilen.
Arrays multiplizieren bedeuted in LabVIEWe elementweise Multiplikation. Was du machen willst ist aber eine Matrizenmultiplikation, und die entsprechenden Funktionen gibt es in LV auch.
[attachment=23504]
Anmerkung: Habe es aus didaktischen Gründen so gemacht, in Wirklichkeit geht es noch einfacher. Also so wie es Jens schon vorgeschlagen hat:
[attachment=23509]