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 abhängig von zwei Variabeln

 

Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.08.2016, 13:42     Titel: Matrix abhängig von zwei Variabeln
  Antworten mit Zitat      
Hallo,
ich bin ein Matlab-Anfänger und habe folgendes Problem:

Code:
x = (1000:500:5000);
y = 5;

for i = 1:1:length(x)
 
A=[x(i) 1 2 y
   2 x(i)/2 y 5
   5 2 3 6
   1 x(i) 2 y];

   
B=[8.4403  3.1678  0.2223  2.0048];
 

f=[0;0;0;1];

 
s=inv(A)*f;
 

k(i,:)=B*s

end


Ich habe eine Matrix die abhängig von x und y ist. Die verrechne ich dann weiter und am Ende kriege ich einen Wert für k raus.
Ich hab es geschafft x zu variieren im Bereich von 1000 bis 5000, sodass ich folgende Vektoren für k rauskriege.

Code:
k =

    0.1433


k =

    0.1433
    0.1428


k =

    0.1433
    0.1428
    0.1426


k =

    0.1433
    0.1428
    0.1426
    0.1424


k =

    0.1433
    0.1428
    0.1426
    0.1424
    0.1423


k =

    0.1433
    0.1428
    0.1426
    0.1424
    0.1423
    0.1423


k =

    0.1433
    0.1428
    0.1426
    0.1424
    0.1423
    0.1423
    0.1422


k =

    0.1433
    0.1428
    0.1426
    0.1424
    0.1423
    0.1423
    0.1422
    0.1422


k =

    0.1433
    0.1428
    0.1426
    0.1424
    0.1423
    0.1423
    0.1422
    0.1422
    0.1421


Meine 1. Frage ist: Wie kann ich nur den letzten Vektor angezeigt bekommen und nicht die ganzen davor?

Die wichtigere 2. Frage: Ich möchte jetzt auch y variieren, und zwar im Bereich 5 bis 10 in einser Schritten. Wie schaff ich das, dass ich am ende eine Matrix k bekomme, die mir x Spalten und y Zeilen darstellt?
Also dass quasi so eine Tabelle ensteht

Code:
         y 5   6   7   8   9   10  
    x
    1000    #   #   #   #   #   #
    1500    #   #   #   #   #   #    
    2000    #   #   #   #   #   #
    2500    #   #   #   #   #   #    
    3000    #   #   #   #   #   #
    3500    #   #   #   #   #   #
    4000    #   #   #   #   #   #
    5000    #   #   #   #   #   #


Ich hoffe das war verständliche erklärt.


gs
Forum-Century

Forum-Century


Beiträge: 172
Anmeldedatum: 17.03.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.08.2016, 14:06     Titel:
  Antworten mit Zitat      
Hi,

Dein Ansatz war doch schon mal dich so schlecht.
Ich habe mal auf Basis deines Quellcodes die Erweiterung vorgenommen, hab es aber nicht getestet...

Code:
x = 1000:500:5000;
y = 5:10;
B = [8.4403  3.1678  0.2223  2.0048];
f = [0; 0; 0; 1];
k = ones(length(x),length(y));

for i = 1:length(x)
    for j = 1:length(y)

        A = [x(i) 1      2    y(j) ;
             2    x(i)/2 y(j) 5    ;
             5    2     3     6    ;
             1    x(i)  2     y(j)];
 
        s = inv(A) * f;
        k(i, j) = B * s;
    end
end


Gruß gs
_________________

Mein Seite.
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.08.2016, 14:34     Titel:
  Antworten mit Zitat      
Ach, das war ja echt super leicht. Vielen Dank!
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.08.2016, 14:57     Titel:
  Antworten mit Zitat      
Meine nächste Frage ist, ob es möglich ist das ganze rückwärts zurechnen. Sprich ich gebe einen Wert k vor und matlab rechnet mir dann aus, welche Kombination aus x und y es gibt, die zu dem Wert führen. Geht das?
 
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.