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

Funktion mit x im Nenner plotten

 

pablosen_gast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.03.2010, 17:17     Titel: Funktion mit x im Nenner plotten
  Antworten mit Zitat      
Hallo Forum

Das Skript generiert mir IMMER den gleichen Fehler:
f=1/(1+x.^2);
plot(x,f);
grid


> Matrix dimensions must agree.

Und wenn ich den Kehrwert der Funktion plotte, dann geht es prima. Wie kann ich obenstehende Funktion plotten? Büdde dringend um Hilfe.

Kann doch nicht sooo schwer sein, oder?
Grüsse


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 05.03.2010, 17:32     Titel:
  Antworten mit Zitat      
Hallo,

es ist auch nicht schwer:
Code:
f=1./(1+x.^2);


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
pablosen_gast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.03.2010, 17:36     Titel:
  Antworten mit Zitat      
Harald hat Folgendes geschrieben:
Hallo,

es ist auch nicht schwer:
Code:
f=1./(1+x.^2);


Grüße,
Harald
Okay, danke vielmals. Schönen Abend.
 
pablosen_gast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.03.2010, 19:55     Titel: noch eine Frage
  Antworten mit Zitat      
Sorry nochmals, Harald. Es ist doch noch eine Frage aufgetaucht:

Wenn ich bspweise Interpolationspolynome plotte... warum darf ich dann nie diesen Punkt nach dem x setzen, wenn ich diese Variable mit Exponent=1 benutze?

Bei allen anderen Exponenten muss dieser Punkt anscheinend gesetzt werden. Aber wenn man nur mit x rechnet, darf der nicht hin.

Was ist da die Erklärung?
Grüsse&schöne Abig
Pablosen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 05.03.2010, 19:59     Titel:
  Antworten mit Zitat      
Hallo,

ich verstehe leider nicht, was du meinst. Kannst du vielleicht ein Code-Beispiel geben?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
pablosen_gast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.03.2010, 20:57     Titel:
  Antworten mit Zitat      
Harald hat Folgendes geschrieben:
Hallo,

ich verstehe leider nicht, was du meinst. Kannst du vielleicht ein Code-Beispiel geben?

Grüße,
Harald
Code:
clear;
d=1/8;
n=4;
x=-d:.01:d;
f=1./(1+x.^2);

p_5_10=1-2.85619302642246e-015*x-0.674208144796378*x.^2-2.17034505246937e-015*x.^3+0.197375565610858*x.^4-4.57457502546398e-016*x.^5-0.0244117647058821*x.^6+2.96473857272628e-017*x.^7+0.00126696832579184*x.^8-5.9912773064436e-019*x.^9-2.262443438914e-005*x.^10;

plot(x,f,x,p_5_2);
legend('f(x)','P_{1/8,2}(x)');
grid

Sobald ich hier beim Zuweisen des p_5_10 beim 1. x x. hinschreibe anstatt x (-2.85619302642246e-015*x. anstatt -2.85619302642246e-015*x), dann motzt Matlab.

Warum darf man bei diesem einen x KEIN PUNKT hintun und bei allen anderen aber schon.

Klaro?

Grüsse[/code]
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 05.03.2010, 21:12     Titel:
  Antworten mit Zitat      
Jetzt ja. Sorry, hellsehen ist nicht meine Stärke Wink

Weil der . nichts mit dem x zu tun hat, sondern mit der Multiplikation, Division bzw. hier Exponentiation. Du kannst z.B. auch zwischen dem x und dem . ein Leerzeichen machen, aber nicht zwischen dem . und dem * bzw. ^, da .* bzw. .^ oder ./ ein Operator sind.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
pablosen_gast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.03.2010, 21:46     Titel:
  Antworten mit Zitat      
Harald hat Folgendes geschrieben:
Jetzt ja. Sorry, hellsehen ist nicht meine Stärke Wink

Weil der . nichts mit dem x zu tun hat, sondern mit der Multiplikation, Division bzw. hier Exponentiation. Du kannst z.B. auch zwischen dem x und dem . ein Leerzeichen machen, aber nicht zwischen dem . und dem * bzw. ^, da .* bzw. .^ oder ./ ein Operator sind.

Grüße,
Harald
Ah ok, danke. Dann brauchts das also für bspweise die Addition und Subtraktion nicht.

Cool.

Grüsse&schönes Wochenende.
Pablo
 
michai
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 83
Anmeldedatum: 22.02.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.03.2010, 09:32     Titel:
  Antworten mit Zitat      
Vielleicht noch als kleine Erklärung, was der Unterschied zwischen * und .* ist [Klugscheißmodus an]:

Wenn du 2 Matritzen A und B hast, versucht Matlab bei A*B eine Matritzenmultiplikation mit allen mathematisch notwendigen Vorbedingungen. Bei A.*B wird eine elementweise Multiplikation durchgeführt also quasi A(1,1)*B(1,1), A(1,2)*B(1,2) usw.

Also eine rein mathematische Unterscheidung, die bei bestimmten Berechnungen (z.B. *, /) Sinn macht und bei anderen nicht (z.B. +, -).
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.