WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Matrix A mit Matrix B anderer Größe überschreiben

 

niii58
Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 15.05.14
Wohnort: Deutschland
Version: ---
     Beitrag Verfasst am: 04.06.2014, 11:27     Titel: Matrix A mit Matrix B anderer Größe überschreiben
  Antworten mit Zitat      
Hallo Smile

ich möchte gerne eine Matrix A mit einer erweiterten Matrix B, die um eine Zeile vergrößert wurde überschreiben.

Das ganze sieht folgendermaßen aus:


matrix_a ist eine (19 x 57) Matrix gefüllt mit Datenwerten

Code:


matrix_b = [zeros(1,57) matrix_a]

matrix_a = matrix_b; % matrix_a wird in einer Schleife verwendet und muss immer aktualisiert werden

 



Der Fehler den ich bekomme:

Zitat:
Size mismatch (size [57 x 19] ~= size [57 x 20]).


Den Fehler verstehe ich schon, aber ich dachte Matlab könnte die Matrix trotz unterschiedlicher Größen ersetzen.

Gibt es da einen Trick?


Vielen Dank und Liebe Grüße!
Private Nachricht senden Benutzer-Profile anzeigen


Nras
Forum-Meister

Forum-Meister


Beiträge: 608
Anmeldedatum: 21.02.12
Wohnort: ---
Version: 7.12.0.635 (R2011a)
     Beitrag Verfasst am: 04.06.2014, 14:02     Titel:
  Antworten mit Zitat      
Hallo,

willst du in der matrix_a als erste Zeile eine Nullzeile einfügen und alle anderen Zeilen somit um 1 nach unten rutschen lassen? Dann einfach so:
Code:
matrix_a = rand(19,57)
matrix_a = [zeros(1,57); matrix_a]

Ansonsten kann ich deinen Fehler damit schon mal nicht reproduzieren, da bereits deine erste Zeile fragwürdig ist so nicht ausführbar ist.

Viele Grüße,
Nras
Private Nachricht senden Benutzer-Profile anzeigen
 
niii58
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 15.05.14
Wohnort: Deutschland
Version: ---
     Beitrag Verfasst am: 04.06.2014, 14:41     Titel:
  Antworten mit Zitat      
Hallo,

erstmal vielen Dank für deine schnelle Antwort!

Ich habe gerade dein Code bei mir eingefügt und laufen gelassen. Dies funktioniert auch.
Bei meinem Code habe ich wohl zunächst einmal das Semikolon vergessen. Leider klappt es aber auch mit diesem nicht.

Jetzt ist mir gerade aufgefallen, dass meine Datenmatrix (19x57) aus komplexen Werten besteht.
Könnte dies das Problem sein?

LG
niii58
Private Nachricht senden Benutzer-Profile anzeigen
 
niii58
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 9
Anmeldedatum: 15.05.14
Wohnort: Deutschland
Version: ---
     Beitrag Verfasst am: 04.06.2014, 15:00     Titel:
  Antworten mit Zitat      
Hey,

ich habe das ganze nun mal mit komplexen Zahlen ausprobiert, dass heißt komplexe Nullen (0 +0j) verwendet.
Dies macht aber ein Unterschied.

Jetzt habe ich das ganze einmal so ausgeführt:

Code:

matrix_b = [zeros(1,57); matrix_a]
 


Dies funktioniert auch! Wenn ich es aber umändere zu:

Code:

matrix_a = [zeros(1,57); matrix_a]
 



kommt erneut die Fehlermeldung:

Zitat:

Size mismatch (size [19 x 57] ~= size [20 x 57]).
The size to the left is the size of the left-hand side of the assignment.


Wie kann das sein?

Ich verstehe das einfach nicht...
Insgesamt arbeite ich gerade in einer Matlab-FKT, die ich in einem Simulink Block einbinde, matrix_a erhalte ich bei der FKT als Eingabewert.

Liebe Grüße
niii58
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.