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

Daten aus Schleife in Matrix aufreihen

 

LN

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.09.2009, 14:46     Titel: Daten aus Schleife in Matrix aufreihen
  Antworten mit Zitat      
Hallo,

ich bin ziemlicher Matlab Neuling und bisher konnte ich jedes Problem mit Googel etc lösen. Nur dieses lässt mir einfach keine Ruhe.
Ich habe Daten aus Femlab exportiert, daraus Matrizen erstellt, gekürzt, zusammengefügt und nach der letzten Spalte sortiert.
Dann wird eine Tabelle erstellt, die erste Zeile ist durch B definiert und der Rest wird mit Nullen aufgefüllt, damit ich später etwas einfügen kann.
Dann wird hx definiert als die letzte Spalte von E
und nun kommt mein Problem: ich brauche eine Schleife, welche von der 1. bis zur vorletzten Spalte von E jeweils die Spalte nimmt und dann den gradienten abhängig von hx berechnet (mit einzel extrahierten Spalten funktioniert es, ich brauch es aber der Reihe nach für alle Spalten.)
Das klappt auch soweit noch, dann soll er es aber in "Tabelle" schreiben und zwar beginnend in der 2. Zeile und jeweils eine weiter nach rechts. Deswegen habe ich n=1:ne-1 gesetzt. Allerdings funktioniert dies nicht. Kann mir hier jemand helfen, wie ich die Werte nacheinander eingereiht bekomme? Ich habe bereits versucht eine zweite Schleife in die erste zu integrieren, dann schreibt er aber nur den jeweils letzten berechneten Gradienten in alle Spalten.
Code:

A=fem.sol.u;
B=fem.sol.tlist;
C=fem.mesh.p;
D=1.58e-11;    
[mc,nc]= size(C');
[ma,na]=size(A);
A(mc+1:ma,:)=[];
A(:,na+1)=C';
E=sortrows(A,na+1); %sortieren nach na+1
[me,ne]=size(E);
Tabelle=B;
Tabelle(2:me+1,ne-1)=0; %Nullen setzen
[mt,nt]=size(Tabelle);
hx=E(:,ne);
for f=E(:,1:ne-1)  
    n=1:ne-1
    grad=gradient(f,hx)
    Tabelle(2:mt,n)=grad;
end
 


vielen Dank im Vorraus,
Ellen


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 - 2024 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.