|
|
Brauche dringend Hilfe!!! |
|
faceman |

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 27.10.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.10.2009, 12:07
Titel: Brauche dringend Hilfe!!!
|
 |
Hi, ich bin Matlab Anfänger und komme überhaupt nicht klar mit einer Aufgabe. Ich weiß gar nicht, wie ich diese Aufgabe in den Editor schreibe. Könnt ihr vllt mir dabei helfen? Danke
Gegeben sei die gebrochenrationale Funktion
f(x)=(x³+(a1)x²+(a2)x+a3)/((b1)x²+(b2)x+b3)
Man berechne alle kritischen Punkte (Nullstellen, Polstelle, Lücken) dieser Funktion und stelle die Funktion einschließlich der berechneten Punkte graphisch dar. Der Darstellungsbereich auf der y-Achse ist auf das Intervall [-5,5] zu begrenzen.
Die als Vektoren a=[ a1 , a2 , a3 ] und b=[ b1 , b2 , b3 ] bereitgestellten Koeffizienten sind für den Testbetrieb fest einzuprogrammieren, wahlweise ist aber auch das Einlesen beliebiger Vektoren zu gestatten.
a = [ 0, 3, -2] b = [ 3, -2, 3]
Hinweis: Die Nullstellen der Polynome im Zähler und im Nenner können mit der Funktion "roots" berechnet werden.
Ihr würdet mir dabei so helfen!
|
|
|
|
|
Titus |

Forum-Meister
|
 |
Beiträge: 871
|
 |
|
 |
Anmeldedatum: 19.07.07
|
 |
|
 |
Wohnort: Aachen
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.10.2009, 12:26
Titel:
|
 |
Hallo,
der Hinweis ist eigentlich schon recht aussagekräftig, oder? Ansonsten hilft auch die Funktion polyval weiter ...
Wo genau haperts denn? Bei der Mathematik oder der Umsetzung in MATLAB?
Titus
|
|
|
faceman |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 27.10.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.10.2009, 18:14
Titel:
|
 |
es hapert gewaltig an der umsetzung, hab das programm grad in info und wir müssen diese aufgabe als vorleistung für die prüfung abgeben. aber alle leute aus dem kurs sehen überhaupt nicht durch. allgemein hab ich von anderen studenten gehört dass matlab nicht gerade beliebt bei den studenten ist. würde mich sehr um jede hilfe freuen.
|
|
|
faceman |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 27.10.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.10.2009, 18:15
Titel:
|
 |
p.s. mathematisch sehe ich da eher nicht die probleme, an der umsetzung scheiterts dann...
|
|
|
Petz |

Forum-Anfänger
|
 |
Beiträge: 15
|
 |
|
 |
Anmeldedatum: 27.08.08
|
 |
|
 |
Wohnort: Lübeck
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.10.2009, 10:34
Titel:
|
 |
Moinmoin!
Gib einfach mal die gegebenen Werte ganz stur mathematisch in den Editor ein, ungefähr so:
Dann brauchst du einen x-Vektor. Den erzeugst du dir durch
x=(Anfangswert:Schrittweite:Endwert).
Jetzt kannst du einfach mal rumspielen und schauen ob dus hinbekommst. Zum plotten (Funktionsverlauf einfach mal anschauen hilft immer) schau dir mal die Funktionen
und
.
Dann einfach mal die schon empfohlene Funktion
anschauen, da siehst du dann auch warum ich den a-Vektor verlängert habe.
Zum finden der Nullstellen gibts aber auch noch unzählige andere Möglichkeiten!
Versuch dich mal dran!
Peter
|
|
|
faceman |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 27.10.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.10.2009, 11:19
Titel:
|
 |
cool danke, und wie mach ich das mit den polstellen und den lücken?
|
|
|
Petz |

Forum-Anfänger
|
 |
Beiträge: 15
|
 |
|
 |
Anmeldedatum: 27.08.08
|
 |
|
 |
Wohnort: Lübeck
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.10.2009, 11:27
Titel:
|
 |
Die können doch nur dann auftreten, wenn die Funktion nicht definiert ist, weil irgendein mathematisches Gesetz verletzt wird ( zum Beispiel: niemals durch Null teilen )...
Darum steht der Nenner daoben auch nochmal einzeln, damit du den auch extra verwursten kannst!
Weisst du was ich meine?
|
|
|
faceman |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 27.10.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 30.10.2009, 12:43
Titel:
|
 |
ja verstehe ich so n bissl dafür muss ich aber doch dann irgendwie das noch in matlab definieren dass der nenner nich null sein darf, weiß bloß nich wie.
du hattest auch das geschrieben:
was hat das zu bedeuten: a(1), a(2)...b(3)?
ich will bzw. muss ja werte für a1 a2...b3 eingeben, hab das jetzt so verstanden dass a mal 1, a mal 2, a mal 3... multipliziert wird.
dachte mir dass ich zum anfang a1 usw. eingeben muss mit input?
wie gesagt, bin matlab anfänger... freue mich aba um jede hilfe
|
|
|
evil1202 |

Forum-Anfänger
|
 |
Beiträge: 48
|
 |
|
 |
Anmeldedatum: 12.08.09
|
 |
|
 |
Wohnort: Erfurt
|
 |
|
 |
Version: 2007 b
|
 |
|
|
 |
|
Verfasst am: 30.10.2009, 13:43
Titel:
|
 |
n das bedeutet das du von deiner a [0,3,-2 ] bei a(1)=0, a(2)=3 usw.
das gilt auch bei b
|
|
|
faceman |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 27.10.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 31.10.2009, 19:06
Titel:
|
 |
wie kann ich die polstellen ermitteln? ich bin soweit dass die koeffizienten im zähler und nenner eingegeben werden, wenn nun aber der nenner=0 ist dann kommt die meldung "Warning: Divide by zero." ich muss ja schon im vorfeld irgendwie den nenner so definieren dass matlab erkennt dass der nenner auch null werden kann, damit ich nachher meine polstellen ausrechnen kann.
hier mein code:
komme einfach nicht weiter da ich ja eigentlich schon oben den nenner als NaN defienieren muss, bloß wie mache ich das?
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.500
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 31.10.2009, 19:32
Titel:
|
 |
Hallo,
die Polstellen sind die Nullstellen des Nenners. Und wenn ich das richtig sehe, hast du die doch auch schon fast. Die Abfrage if nenner == 0 ist allerdings unsinnig, da die Nullstellen des Nenners ja nicht unbedingt auf dem Gitter -5:0.1:5 auftreten müssen.
Ich würde stattdessen folgende Abfrage nehmen:
(nach der Berechnung der polstellen).
Ich gehe mal einfach davon aus, dass du hier nur an reellwertigen Polstellen interessiert bist. Ansonsten gibt es natürlich immer welche, ausser b(1) = b(2) = 0.
Grüße,
Harald
|
|
|
faceman |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 27.10.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 31.10.2009, 19:48
Titel:
|
 |
ja aber wenn ich oben die koeffizienten eingebe und der nenner dann null ist dann zeigt er mir die warnung an, die will ich ja umgehen, kann man den nenner nich irgendwie so definieren dass er null werden kann um die polstellen auszurechnen, ich weiß schon dass wenn man den nenner null setzt die polstellen rausbekommt. nur wenn ich für b1 und b2 werte hab und b3 null is, dann kann man ein x rausklammern und das wird null, d.h. immer wenn b3 null ist, kommt die warnung "warning: divide by zero."
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.500
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 31.10.2009, 23:21
Titel:
|
 |
Hallo,
was ist denn so schlimm an der Warnung? Wenn das das einzige Problem ist, kannst du sie ja ausschalten; siehe Doku zu warning.
Grüße,
Harald
|
|
|
faceman |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 30
|
 |
|
 |
Anmeldedatum: 27.10.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.11.2009, 11:59
Titel:
|
 |
hallo,
wie kann ich nullstellen und pollstellen in der graphik als punkte darstellen?
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.500
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 01.11.2009, 12:20
Titel:
|
 |
Hallo,
in der komplexen Ebene:
Wenn du dir eine andere Visualisierung vorstellst, müsstest du schon noch sagen wie.
Grüße,
Harald
|
|
|
|
Gehe zu Seite 1, 2 Weiter
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|