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

Elementweise Division

 

yukterez
Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 19.11.11
Wohnort: ---
Version: R2012b
     Beitrag Verfasst am: 24.11.2011, 07:33     Titel: Verständnisfrage zur Matrix
  Antworten mit Zitat      
Am einfachsten zeigt sich das Problem hier:



Da sollte als Ergebnis überall 10 herauskommen. Vielleicht verwende ich die falsche Funktion - wie muss ich das machen, wenn ich versteht was ich meine ? Bei + kommt auf jeden fall das erwartete Ergebnis, aber fange ich an zu dividieren, wurzel zu ziehen oder zu quadrieren, dann wird´s furchtbar. Wie kann ich das umgehen ?

Ich hätte ja eine 3x3 Matrix mit den Werten der 9 Planeten und würde gerne den Wert der Sonne durch diese dividieren um dann ein Ergebnis a ala

Sonne/Venus - Sonne/Merkur - Sonne/Erde
Sonne/Mars ..etc

zu erhalten und habe es jetzt händisch gemacht - nur wie stelle ich das in Zukunft an ? Wie man sieht funktioniert es ja bei Additionen wunderbar:



Warum nicht auch bei Divisionen ?
Private Nachricht senden Benutzer-Profile anzeigen


papiertigre
Forum-Anfänger

Forum-Anfänger


Beiträge: 26
Anmeldedatum: 23.11.11
Wohnort: ---
Version: R2011b
     Beitrag Verfasst am: 24.11.2011, 09:59     Titel:
  Antworten mit Zitat      
Ich verstehe zwar nicht genau warum du den Beitrag auf meine Frage stellst, aber ich glaube ich habe eine Antwort.

Matrizenweise addieren und subtrahieren hat nur eine Möglichkeit und zwar die elementweise.

Multiplizieren geht jedoch auf mehrere Weisen. Die vektorielle Multiplikation und die skalare. Du willst einfach elementweise dividieren. Dazu benutzt man einen Punkt vor dem Operator, also b./a
und siehe da:

Code:

>> a=[1,2,3;4,5,6]

a =

     1     2     3
     4     5     6

>> b=[10 20 30;40 50 60]

b =

    10    20    30
    40    50    60

>> b./a

ans =

    10    10    10
    10    10    10
 


Nächstes Mal bitte den Code nicht als Bild einstellen, damit man ihn auch kopieren kann...
Private Nachricht senden Benutzer-Profile anzeigen
Gesplittet: 24.11.2011, 10:10 Uhr von Jan S
Von Beitrag Verständnisfrage zu Funktionen aus dem Forum Programmierung
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 24.11.2011, 10:29     Titel: Re: Verständnisfrage zur Matrix
  Antworten mit Zitat      
Hallo yukterez,

Für eine neue Frage öffnet man immer einen neuen Thread.

Das Posten des codes als Image hat zwei große Nachteile: 1. man kann ihn nicht kopieren um schnell eine Antwort zu geben, 2. wenn man diesen Thread in einigen Jahren liest, sind die Bilder eventuell vom Hoster 666kb.com gelöscht worden und die Frage wird unlesbar.

Die Frage wurde bereits beantwortet.
A/B ist die Matrix-Division, siehe:
Code:
help rdivide
help ldivide
help mldivide
help mrdivide

Die elementweisen Operationen gelten auch für das Potenzieren:
Code:
x = rand(2, 2);
x ^ 2    % mtimes(x, x)
x .^ 2   % times(x, x)
x .^ 0.5  % sqrt(x)


In den "Getting Started"-Kapiteln von Matlab wird der Unterschied zwischen elementweiser und der Matrix-Division ausgiebig erklärt. Um das Lesen der Dokumentation kommt man bei einer so mächtigen Sprache wie Matlab nicht herum.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
yukterez
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 19.11.11
Wohnort: ---
Version: R2012b
     Beitrag Verfasst am: 24.11.2011, 19:43     Titel:
  Antworten mit Zitat      
Danke ! Ja, um´s Handbuch werde ich nicht herumkommen, das ist wohl leider wahr... aus der Bild und Videobearbeitung bin ich´s gewohnt dass die Programme intuitiv sind aber in der Mathematik kann ich mir das wohl wieder abgewöhnen (: Ich habe schon geahnt dass es irgendwo im Handbuch steht, deshalb wollte ich auch keinen eigenen Thread aufmachen, trotzdem danke für die Hilfe und den Hinweis auf die help Funktion !
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 - 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.