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

meshgrid

 

gudrun_abc

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.06.2013, 23:03     Titel: meshgrid
  Antworten mit Zitat      
Hallo zusammen.

Langsam bin ich am verzweifeln. Mein Problem ist folgendes: ich habe eine matrix a [34 80] und eine matrix b [34 80] und jetzt muss ich aus dem produkt der beiden matrizen den mittelwert bilden:

Code:

c = mean(a.*b)
 


Daraus ergibt sich jetzt ein vektor (1x80). Das Problem ist nur, dass ich c als contourplot darstellen muss, dazu brauche ich doch aber wieder eine 2D matrix.

Leider arbeite ich noch nicht so lange in matlab, gibts irgendeine möglichkeit den mittelwert so zu bilden, dass am ende wieder eine matrix rauskommt? Bzw. habe ich mit dem meshgrid-Befehl probiert, mir eine matrix zu erstellen.

Code:

x = 1:34;
%c = 1x80
ff = meshgrid(x,c)
 


ich hatte dann zwar eine 34x80 matrix nur leider war der plot komplett falsch.

hoff ihr könnt mir weiter helfen!!!

thx.


RiFLoK
Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 26.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.06.2013, 00:07     Titel:
  Antworten mit Zitat      
Hallo gudrun.

C ist doch dein Mittelwertvektor.
Wie willst du dann C als contourplot darstellen?

mean(x) liefert immer den mittelwert des vektors x.
Sei x eine Matrix so liefert mean(x) einen Vektor der aus den Mittelwerten der Spalten der Matrix x besteht.

mean(mean(x)) liefert so den Mittelwert aller Elemente der Matrix x.

lg, Tobi
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.06.2013, 00:17     Titel:
  Antworten mit Zitat      
hi tobi,

danke schonmal für deine antwort. aber gibt es eine möglichkeit, aus meinen mittelungsvektor wieder eine matrix zu machen und diese als contourplot darzustellen?

lg.
 
RiFLoK
Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 26.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.06.2013, 01:38     Titel:
  Antworten mit Zitat      
In Matlab kann man aus beinahe allem eine Matrix machen.
Die Frage ist nur, was du damit bezwecken willst bzw. was du mit dem contourplot darstellen willst. Um aus einem Vektor eine Matrix zu machen braucht man weitere Daten, die man verwendet um die Matrix zu erzeugen.

Tobi
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.06.2013, 17:48     Titel:
  Antworten mit Zitat      
hi tobi,

ich möchte gerne einen Energiefluss berechnen und die formel ist F = mean(T'*v')

Bei T' und v' handelt es sich um jeweils [34 52] matrizen. Und wie gesagt, wenn ich mittle bekomme ich einen vektor raus.

Die Aufgabenstellung lautet, diesen berechneten wärmestrom als conturplot darzustellen. Nur leider weiß ich jetzt nicht, wie ich aus den vektoren wieder eine matrix bekomme.

lg.
 
RiFLoK
Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 26.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.06.2013, 20:55     Titel:
  Antworten mit Zitat      
Mir ist die Aufgabenstellung noch immer nicht klar.
Könntest du die gesamte Aufgabe online stellen?

lg, Tobi
Private Nachricht senden Benutzer-Profile anzeigen
 
hugo_berlin

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.06.2013, 20:56     Titel: matrix dimension erweitern
  Antworten mit Zitat      
hallo zusammen,

leider weiß ich nicht mehr weiter: ich habe eine 37x40 matrix und eine 36x40 matrix und diese beiden muss ich miteinander multiplizieren. Dazu müssen natürlich die dimensionen passen. ich probier jetzt schon eine zeit lang herum, dass ich die 36x40 matrix mit nan-werten auf eine 37x40 matrix erweitere. Kann mir vielleicht jemand einen tipp geben, wie das am besten funktioniert.

thx
 
RiFLoK
Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 26.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.06.2013, 22:18     Titel:
  Antworten mit Zitat      
hallo

Um Matrizen zu multiplizieren müssen die Inneren Dimensionen gleich sein.
D.h. A( axb ) * B( bxc );

Code:

A = rand(37,40);
B = rand(36,40);
% A*B funktioniert so noch nicht. Es muss B auf die Dimension 40x40 %erweitert werden
B(40,40) = 0; % Das erweitert B auf eine 40x40 Matrix mit Nullen

C = A*B;
 


lg, Tobi
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.06.2013, 00:22     Titel:
  Antworten mit Zitat      
hi tobi,

ich hoff, ich kann es einigermaßer verständlich erklären: ich habe zwei matrizen T und V, die jeweils eine größe von [34 52]. diese zwei matrizen enthalten temperatur- bzw. geschwindigkeitswerte. die dimensionen sollen die breitengrade und die höhe darstellen, in denen die temp- und geschwindigkeitswerte vorliegen.

aus diesen beiden matrizen soll ich den energiefluss bestimmen. die formel lautet <T'*v'>. T' und v' hab ich mir bestimmt, das sind wieder matrizen mit [34 52]. damit ich zum energiefluss komme, muss ich das produkt dieser beiden vektoren mitteln. daraus entsteht dann ein vektor [1x52].

Ein weiterer teil der aufgabe besteht darin, die berechneten energieflusswerte als contourplot darzustellen. wobei auf der x-achse die breitengrade und auf der y-achse die höhe aufgetragen werden soll.

die berechnung des energieflusses hat geklappt, nur steh ich jetzt vor dem problem, dass ich nicht weiß, wie ich diesen plotten soll.

hoff, das war einigermaßen verständlich beschrieben, und hoffe, dass du mir weiter helfen kannst.

lg.
 
Thomas84
Forum-Meister

Forum-Meister


Beiträge: 546
Anmeldedatum: 10.02.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.06.2013, 08:13     Titel:
  Antworten mit Zitat      
Ich hätte gedacht der Energiefluss ist so etwas wie:

j_e = c \rho v (\frac{d}{d\vec{r}} T)

Ich sehe also kein Grund für eine Mittlung. Wird diese explizit in der Aufgabenstellung verlangt?

viele Grüße
Thomas
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.06.2013, 09:07     Titel:
  Antworten mit Zitat      
ja, wir haben die formel für den energiefluss vorgegeben (läuft unter reynold'sche mittelung): <T'v'>.

lg.
 
Thomas84
Forum-Meister

Forum-Meister


Beiträge: 546
Anmeldedatum: 10.02.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.06.2013, 10:12     Titel:
  Antworten mit Zitat      
Die Reynold'sche Mittlung ist eine Mittlung über die Zeit. D.h. du hast nur ein eindimensionales Gebiet? Dann wäre der contour-Befehl natürlich fehl am Platz.
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.06.2013, 15:33     Titel:
  Antworten mit Zitat      
problem gelöst, hab eine schleife darüber gemacht und es plottet wunderbar.
 
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.