|
|
Gezielt zugreifen: Vektor von Matrizen |
|
Anfänger00 |

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 06.10.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.10.2010, 21:16
Titel: Gezielt zugreifen: Vektor von Matrizen
|
 |
|
 |
|
Hallo liebe Leute,
ich habe ein großes Problem mit das mich jetzt länger aufhält.
Ich habe einen Vektor W, der aus 4 Elementen besteht, die ihrerseits auch Matrizen darstellen. Ich möchte jetzt gezielt auf die einzelnen Zeilen der Matrizen in dem Vektor zugreifen, aber ich schaff das nicht...
W =
[4x4 double]
[4x4 double]
[4x4 double]
[4x4 double]
W{:,1}
ans =
0.8366 0.7676 0.9924 1.4033
0.8366 0.7676 0.9924 1.4033
0.8366 0.7676 0.9924 1.4033
0.8366 0.7676 0.9924 1.4033
ans =
0.4278 0.6543 1.4715 1.4463
1.7179 1.3845 0.4358 0.4618
1.5684 1.3535 0.5257 0.5525
0.7358 0.9298 1.1642 1.1702
ans =
1.4446 0.9094 0.2405 1.4055
1.3367 1.0890 0.3741 1.2002
0.8199 1.4738 1.1307 0.5756
0.8421 1.4686 1.0927 0.5967
ans =
1.4919 0.6556 0.2442 1.6083
0.6626 1.4814 0.9555 0.9005
0.1454 1.6955 1.9092 0.2500
1.7012 0.4508 0.1416 1.7064
Nun möchte ich die Spalten einer andere Matrix Q(:,i)' mit den transponierten zeilen einer der obigen matrix von V multiplizieren. Wie ist das am besten zu machen? Bei mir klappts einfach nicht...
Ich hoffe mein problem war verständlich
VG
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 09.10.2010, 01:00
Titel: Re: Gezielt zugreifen: Vektor von Matrizen
|
 |
Hallo Anfänger00,
Zitat: |
Bei mir klappts einfach nicht... |
Dann zeige doch mal, wie Du es versucht hast und welche Fehler aufgetreten sind.
Ich würde auf jeden Fall keine CELLs verwenden, sondern lieber ein 3D-Array. Das macht den Zugriff auf einzelne Sub-Vektoren viel einfacher.
Gruß, Jan
|
|
|
Anfänger00 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 06.10.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.10.2010, 12:59
Titel:
|
 |
Hallo Jan,
ich habe das Problem jetzt doch gelöst bekommen, hatte wohl einen fehler beim index. Ich greife jetzt so zu:
Ich habe jetzt aber ein anderes Problem:
ich möchte eine Matrix spaltenweise durch einen Vektor teilen.
B =
0.0080 0.0056 0.0076
A =
0.0080 0.0056 0.0076
0.0080 0.0056 0.0076
0.0080 0.0056 0.0076
Dafür formatiere ich erst B um in eine matrix
C=repmat(B,3,1)
und erhalte eine Matrix die mit A identisch ist. Als nächstes muss ich A durch C dividieren und bekomme da als Ergebnis:
Warning: Matrix is singular to working precision.
ans =
NaN NaN NaN
NaN NaN NaN
NaN NaN NaN
Ich versteh nicht wo da das Problem liegt-
Gruß
|
|
|
Anfänger00 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 06.10.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.10.2010, 13:06
Titel:
|
 |
manchmal hat man ein brett vorm kopf...hab die lösung
A./C
Danke trotzdem
|
|
|
Anfänger00 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 06.10.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.10.2010, 14:07
Titel:
|
 |
Das war zu früh gefreut, es klappt in der function leider nicht:
Ich habe jetzt folgende Matrizen:
f =
[3x3 double]
[3x3 double]
g =
[1x3 double]
[1x3 double]
W =
[3x3 double]
[3x3 double]
Dahinter stecken jeweils die Werte:
>> f{:,1}
ans =
0.0079 0.0019 0.0071
0.0079 0.0019 0.0071
0.0079 0.0019 0.0071
ans =
0.0093 0.0069 0.0070
0.0005 0.0019 0.0001
0.0048 0.0066 0.0024
>> g{:,1}
ans =
0.0079 0.0019 0.0071
ans =
0.0049 0.0051 0.0032
>> W{:,1}
ans =
1.0000 0.2359 0.8995
1.0000 0.2359 0.8995
4.2391 1.0000 3.8133
ans =
1.9120 1.4157 1.4384
0.0954 0.4006 0.0219
0.9381 1.2835 0.4635
----------------------------------
Mein Problem ist, dass er eigentlich den spaltenvektor von g in eine Matrix der Dimension von f umwandeln soll und in W soll er mir f/g wieder geben.
folglich müsste die erste Matrix von W nur aus 1 bestehen.
Sieht jemand meinen Fehler?
Mein Code:
edit by denny: Bitte die Code-Umgebung verwenden. Danke!
|
|
|
Anfänger00 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 12
|
 |
|
 |
Anmeldedatum: 06.10.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 09.10.2010, 20:26
Titel:
|
 |
|
|
Sco |

Forum-Meister
|
 |
Beiträge: 699
|
 |
|
 |
Anmeldedatum: 15.08.10
|
 |
|
 |
Wohnort: Dundee
|
 |
|
 |
Version: 2008a, 2010a
|
 |
|
|
 |
|
Verfasst am: 09.10.2010, 21:19
Titel:
|
 |
Hallo,
die ist schon klar das wir Wochenende haben und somit die Wahrscheinlichkeit eine Antwort innerhalb von 6 Stunden zu bekommen beträchtlich geringer ist als in der Woche. Ausserdem werden am WE so 'wenige' Threads erstellt bzw. beatwortet, so dass dein Tread immer noch unter den ersten 5 bleibt. Der push ist wirklich überflüssig...
MFG
Sco
|
|
|
denny |

Supporter
|
 |
Beiträge: 3.853
|
 |
|
 |
Anmeldedatum: 14.02.08
|
 |
|
 |
Wohnort: Ulm
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 10.10.2010, 19:06
Titel:
|
 |
Hallo
ich denke so sollte es hinhauen, kann aber nicht überprüfen.
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|