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

Funktionsschar

 

moros
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 04.12.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2010, 20:41     Titel: Funktionsschar
  Antworten mit Zitat      
Hallo,
bin noch ein Neuling in Matlab, deswegen habt bitte nachsicht.

Ich soll zwei Funktionsscharen plotten und habe in I-Net auch ein Bsp. gefunden.

1) f(x)= (a*x)/(1+|a*x|)
Code:

x = linspace(-2,2);
a = 0:1:5;
z = abs(x);
y = (a'*x)./(1+a'*z);
plot(x,y)
 


Bis hier gibt es keine Probleme, abeer bei der zweiten Fkt.:
2) f(x)=x^a
Code:

x = linspace(-2,2);
a = -5:1:5;
y = x.^a;
 

Fehlermeldung:
??? Error using ==> power
Matrix dimensions must agree.

Wieso???
Private Nachricht senden Benutzer-Profile anzeigen


ppirokke
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 64
Anmeldedatum: 19.11.10
Wohnort: ---
Version: R2010a
     Beitrag Verfasst am: 04.12.2010, 21:31     Titel:
  Antworten mit Zitat      
Das Problem ist, dass du bei dem ersten Beispiel Spalten und Zeilenvektor multiplizierst und dann deine Schaar in einer Matrix erhälst. Im zweiten Fall kann MATLAB das nicht machen, da zeilenvektor elementweise hoch spaltenvektor oder umgekehrt nicht viel Sinn macht.

Wie wäre es mit folgendem Vorgehen:

Code:

% Ich nutze hier mal linspace, vieleicht brauchst du ja genau 100 Elemente?!
x = linspace(-2,2);
% Bilden einer Matrix, Vektor sooft wiederholt, wie a-Werte vorhanden.
x_m = repmat(x,11,1);
% Anlegen einer Matrix mit Konstantenvariationswerten, wiederholt sooft "x"-Werte angelegt.
a_m = repmat((-5:1:5)',1,100);

% Berechnen der Potenzen
y = realpow(x_m,a_m);

 


Ich hoffe das stimmt, habe gerade keine Möglichkeit in MATLAB zu testen Wink
Private Nachricht senden Benutzer-Profile anzeigen
 
moros
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 04.12.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.12.2010, 12:57     Titel:
  Antworten mit Zitat      
Ok, danke für die Erklärung. Jetzt weiß ich wo der Fehler ist, aber eine Lösung hab ich leider noch nicht. Wenn ich deinen Code plotte, kommt etwas komisches raus. Nicht das was eig. sein sollte.
Ich werde heute noch versuchen, eine Lösung zu finden, hoffe es klappt.
Falls jemand da draußen schneller ist, wäre schön, wenn er es hier postet.

Danke Wink

Edit:
Mein Fehler, dein Code ist korrekt, Hab im Plot nicht rangezoomt, deswegen sah es komisch aus.
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.