Datum: 06.05.2008 15:03
Hallo zusammen,
ich habe folgende mathematische Frage. Ich möchte eine quadratische
Matrix rechtsseitig durch einen Zeilenvektor dividieren. Dies
funktioniert auch, nur möchte ich die Operationen die dahinter stecken
verstehen. Der Matlab Hilfe (mrdivide) und auch google konnte ich nicht
die richtige Info entlocken.
Beispiel:
A = 10 0
0 10
B = 2 2
C = A/B
C = 0.25
0.25
Erfolgt die Lösung nach dem Gaußverfahren oder iterativ?
Danke
Datum: 06.05.2008 16:29
Du musst von B die inverse Matrix bilden. Und dann eine Matrizenmultiplikation durchführen.
Datum: 06.05.2008 19:16
Die Inverse ist aber nur für quadratische Matrizen definiert.
Datum: 07.05.2008 15:14
Ich bin in Matlab leider etwas eingerostet. Nur für mein Verständnis, du hast wirklich einfach C = A/B eingegeben und Matlab hat keinen Dimensionsfehler rausgeworfen?
Datum: 07.05.2008 15:15
>Die Inverse ist aber nur für quadratische Matrizen definiert.
Übrigens gibt es für (fast) alles andere die Pseudoinverse.
Datum: 07.05.2008 16:32
Wenn man das multiplikativ inverse eines Vektors finden möchte, muss man die folgende Gleichung lösen:

Dann ist:
Datum: 07.05.2008 16:37
dann kommt aber
C = 2.5
2.5
raus
außerdem ist nach deiner definition das inverse nicht eindeutig
Datum: 07.05.2008 16:40
man kann nich durch vektoren teilen! nubs
Datum: 07.05.2008 16:49
>Wenn man das multiplikativ inverse eines Vektors finden möchte, muss man >die folgende Gleichung lösen:

Haha, guter Witz. Es gibt kein multiplikatives Inverses eines Vektors, weil die Gleichung

keine eindeutige Lösung besitzt. Es gibt unendlich viele Vektoren, die
sie erfüllen. Außerdem gibt es mehrere Arten, Vektoren multiplikativ
miteinander zu verknüpfen, und das Skalarprodukt ist nur eine davon (das
Kreuzprodukt ist eine andere).
>Dann ist:

Nein.
Datum: 07.05.2008 17:35
Read the friendly manual:
help mrdivide
help mldivide
steht alles drin:
is the solution in the least squares sense to the
under- or overdetermined system of equations
Cheers
Detlef
Datum: 07.05.2008 18:22
Ich habe das so in Erinnerung: Der Kehrwert eines reellen Vektors wird gebildet indem man alle Einträge durch ihren Kehrwert ersetzt.
Datum: 07.05.2008 21:00
>Der Kehrwert
...einer reellen Zahl a ist diejenige (bis auf den ausgeschlossenen Fall
a = 0) eindeutig bestimmte Zahl x, deren Produkt mit a gleich 1 ist:
x * a = 1 <==> x ist der Kehrwert von a.
Das kann man jedoch nicht auf Vektoren übertragen. Es gibt zwar
sinnvolle "Produkte" von Vektoren (die bekanntesten beiden sind das
Skalar- und das Vektorprodukt), aber - und darauf kommt es an - keine
darauf aufbauende, zu der obigen analoge Gleichung mit eindeutig
bestimmter Lösung.
Dein Vorschlag mit "Kehrwert aller Einträge" hört sich zwar schlüssig
an, aber es gäbe für einen derart definierten "Kehrwertvektor" nirgendwo
in der Mathematik eine Verwendung, weil es keine sinnvolle Operation
gibt, die aus dem Vektor (a, b, c) und dem Vektor (1/a, 1/b, 1/c)
irgendetwas Eins-artiges durch Multiplikation bildet. Die willkürliche
Definition der entsprechenden Produktoperation gemäß
(a, b, c) * (f, g, h) := (a*f, b*g, c*h)
wäre formal zwar möglich, aber bedeutungslos - es gibt kein Problem, für
das man das gebrauchen könnte.
Also: Es gibt keinen Kehrwert eines Vektors und man benötigt auch
niemals einen solchen.
Datum: 07.05.2008 21:21
@Detlef In der Hilfe steht viel drin, aber genau dieser Fall fehlt.
Datum: 08.05.2008 22:36
> (a, b, c) * (f, g, h) := (a*f, b*g, c*h) > > wäre formal zwar möglich, aber bedeutungslos - es gibt kein Problem, für > das man das gebrauchen könnte. Das kannst du nicht wissen. Vielleicht braucht man das ja doch irgendwann mal. In der Mathematik gibt es ja allen möglichen und unmögliche Kram, deren Nutzen erst viel später entdeckt wurde. > Also: Es gibt keinen Kehrwert eines Vektors Noch nicht, aber vielleicht wird ein findiger Mathematiker irgendwann mal einen definieren. In der Mathematik gibt es ja allen möglichen und unmögliche Kram, deren Nutzen erst viel später Entdeckt wurde. > und man benötigt auch niemals einen solchen. Das kannst du nicht wissen. Vielleicht braucht man das ja doch irgendwann mal. In der Mathematik gibt es ja allen möglichen und unmögliche Kram, deren Nutzen erst viel später entdeckt wurde.
Datum: 08.05.2008 22:38
das hat mir jeztzt aber auch nicht weiter geholfen...
Datum: 09.05.2008 02:08
TOM wrote: > @Detlef > In der Hilfe steht viel drin, aber genau dieser Fall fehlt. nein, das steht drin. Vllt mal lesen !? gute Nacht Detlef
Datum: 09.05.2008 16:41
>> (a, b, c) * (f, g, h) := (a*f, b*g, c*h) >> >> wäre formal zwar möglich, aber bedeutungslos - es gibt kein Problem, für >> das man das gebrauchen könnte. >Vielleicht braucht man das ja doch irgendwann mal. Kaum, denn wie man sich schnell klarmachen kann, würde ein solcherart definierter Produktvektor nicht das von euklidischen Vektoren geforderte Transformationsverhalten unter Rotationen des Koordinatensystems (nämlich x' = D x mit D = Drehmatrix) erfüllen. Er wäre somit kein Element eines euklidischen Vektorraums, d. h. er wäre zum Spruch "Vektoren sind Pfeile mit bestimmter Richtung und Länge" nicht kompatibel (Kreuzproduktvektoren dagegen sind es, und auch das Skalarprodukt schöpft seine Bedeutung aus der Drehinvarianz). Was zum Geier sollte man mit so einer Bildung dann anfangen können? Du kannst Dir auch sicher sein, dass diese Konstruktion schon von etlichen schlauen Mathematikern durchdacht worden ist - ohne irgendwas Interessantes zutage zu fördern (ich wüsste es).
Datum: 09.05.2008 17:01
Elementweise Multiplikation von Vektoren braucht man in der Praxis ständig, z.B. in der Signalverarbeitung, 3D-Grafik, ...
Datum: 09.05.2008 17:48
Tatsächlich? Nun, ich sagte ja, dass man die Operation selbstverständlich definieren kann, und wenn das doch real zu was nutze ist, will ich nichts anderes behauptet haben... ;-) Von dem "Kehrwert eines Vektors" (gebildet durch elementweise Verkehrwertung) würde ich deshalb aber trotzdem nicht sprechen wollen. Danke für den Hinweis.
Antwort schreiben
Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.
Wichtige Regeln - erst lesen, dann posten!
- Suchfunktion und Betreffsuche benutzen - vielleicht gibt es schon einen ähnlichen Beitrag
- Aussagekräftigen Betreff wählen
- Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)
- Groß- und Kleinschreibung verwenden
- Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
- JPEG-Dateien (.jpg) nur für Fotos verwenden, Schaltpläne, Screenshots usw. als PNG oder GIF anhängen
Formatierung (mehr Informationen...)
- [c]C-Code[/c]
- [avrasm]AVR-Assembler-Code[/avrasm]
- [pre]vorformatierter Text (z.B. Code in anderen Sprachen)[/pre]
- [math]Formel in LaTeX-Syntax[/math]
- [[Titel]] - Link zu Artikel


