|
Sharky |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.10.2008, 15:55
Titel: Matrixelement bestimmen
|
 |
Hallo,
habe folgendes Problem. Ich möchte gerne einen Indize eines bestimmten Elementes meiner Matrix bestimmen. Meine Matrix sieht z.B. so aus
Gibt es eine Funktion, welche die Matrix als Vektor "betrachtet" und ich somit bspw. die Position Zahl 6 in (3,3) bestimmen könnte? Die Position müsste 11 sein, wenn ich die Matrix z.B. von links nach rechts bzw. von oben nach unten durchlaufe.
Ich hoffe es ist klar, was ich meine.
|
|
|
|
|
Sharky |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.10.2008, 15:57
Titel:
|
 |
Anmerkung: Die Darstellung beim Vektor-Format ist nicht korrekt. Hoffe man versteht es auch so.
|
|
|
Tim |

Forum-Century
|
 |
Beiträge: 140
|
 |
|
 |
Anmeldedatum: 03.11.07
|
 |
|
 |
Wohnort: Stuttgart
|
 |
|
 |
Version: 2011b+aktuellstes Release
|
 |
|
|
 |
|
Verfasst am: 24.10.2008, 16:23
Titel:
|
 |
|
|
Sharky |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.10.2008, 16:37
Titel:
|
 |
Also, dass ist nicht das was ich suche. Im Grunde habe ich nur die Angabe über die Zeile sowie die Spalte, d.h. in meinem obigen Beispiel m=3 und n = 3. Hieraus möchte ich die Zahl (Position) ermitteln, die man erhält, wenn man die Matrix Zeilenweise durchlaufen würde.
|
|
|
Tim |

Forum-Century
|
 |
Beiträge: 140
|
 |
|
 |
Anmeldedatum: 03.11.07
|
 |
|
 |
Wohnort: Stuttgart
|
 |
|
 |
Version: 2011b+aktuellstes Release
|
 |
|
|
 |
|
Verfasst am: 24.10.2008, 18:17
Titel:
|
 |
Achso. Du hast eine m (zeilen) * n (spalten) Matrix, du willst den Index des gedachten Vektors für das Element x,y:
-> (x-1)*m + y
|
|
|
Sharky |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.10.2008, 22:09
Titel:
|
 |
Hallo Tim,
erstmal danke für deine Hilfe.
Kann es sein, dass die Formel nicht so ganz korrekt ist? Angenommen ich nehme das Element x=4, y=3 aus der von mir geposteten Matrix:
(x - 1)*m + y
= (4 - 1)*4 + 3
= (16 - 4) + 3
= 12 + 3
= 15
Herauskommen müsste aber (Position) 12.
|
|
|
Maddy |

Ehrenmitglied
|
 |
Beiträge: 494
|
 |
|
 |
Anmeldedatum: 02.10.08
|
 |
|
 |
Wohnort: Greifswald
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.10.2008, 22:22
Titel:
|
 |
Matlab durchläuft die Matrix von oben nach unten und wechselt erst dann weiter nach rechts.
Mittels
kannst du die Matrix zu einem Vektor machen und dir das mal anschauen.
Die Position eines bestimmten Wertes findest du über die find funktion.
_________________
>> why
The computer did it.
|
|
|
Sharky |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.10.2008, 10:01
Titel:
|
 |
Hallo,
ich möchte, die Position aber nicht über den Wert, den sie gespeichert hat bestimmen, sondern über über zwei "Koordinaten", die die Zeile sowie die Spalte wiederspiegeln.
Gruß
|
|
|
Schrank |

Forum-Century
|
 |
Beiträge: 203
|
 |
|
 |
Anmeldedatum: 10.07.08
|
 |
|
 |
Wohnort: Berlin
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.10.2008, 10:18
Titel:
|
 |
Hallo sharky,
die Formel von Tim ist richtig, nur das ihr euch über die Bedeutung von x & y uneinig seit.
Versuch mal
Gruß Schrank
|
|
|
|
|
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.
|
|