|
|
|
Polynom dynamisch erstellen |
|
| fish-guts |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.10.2011, 15:51
Titel: Polynom dynamisch erstellen
|
 |
Hallo
Ich muss in der Numerik-Vorlesung folgene Aufgabe lösen:
Schreiben Sie ein Programm, welches Ihnen ein Polynom vom Grad n für ein vorgegebenes x-Intervall zeichnet. Input ist ein Vektor mit dem Koeffizienten , sowie die Intervallsgrenzen. Output ist der Vektor y mit den Funktionswerten und die Grafik am Bildschirm. MATLAB interne Funktionen wie poly() sollen nicht verwendet werden.
Leider habe ich keinen Peil wo ich beginnen soll. Die Input Werte habe ich mal als Vektor
definiert.
Ich hab mir dann überlegt, ob ich eine symbolische Variable y für das Polynom nehmen soll und dann für jeden Durchlauf das entsprechende Glied des Polynoms einfügen soll, also so etwas:
Leider funktioniert das überhaupt nicht. Hat jemand einen Tipp wie ich das hinbekomme?
Danke und Gruss
fish-guts
|
|
|
|
|
|
| DSP |

Forum-Meister
|
 |
Beiträge: 2.117
|
 |
|
 |
Anmeldedatum: 28.02.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2014b
|
 |
|
|
 |
|
Verfasst am: 02.10.2011, 16:34
Titel:
|
 |
In meinen Augen hast du die Lösung doch fast. Warum nicht so...ohne syms?
|
|
|
|
| Kevin |

Forum-Fortgeschrittener
|
 |
Beiträge: 93
|
 |
|
 |
Anmeldedatum: 18.08.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.10.2011, 16:36
Titel:
|
 |
Hallo,
dein Schleifenzähler kann nicht NULL werden, d.h. das kleinste i ist i=1. In der Schleife wird also das Element x^0 nicht berechnet.
Warum machst du das mit einer Schleife? Viel einfacher ist's doch den Vektor a(1,n) mit der Matrix X(n,m) zu multiplizieren.
Gruß
Kevin
_________________
1000 Buchstaben? Warum nur 6?
|
|
|
|
| Kevin |

Forum-Fortgeschrittener
|
 |
Beiträge: 93
|
 |
|
 |
Anmeldedatum: 18.08.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.10.2011, 16:41
Titel:
|
 |
ich mach mal aus dem a(n+1) von DSP ein a(i+1) und x^n ein x^i!
_________________
1000 Buchstaben? Warum nur 6?
|
|
|
|
| fish-guts |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.10.2011, 16:47
Titel:
|
 |
Hi Zusammen
Danke für eure Antworten.
Zur 1. Lösung: Das mit dem Intervall ist mir nicht ganz klar; ein Intervall müsste doch für die Werte von x gesetzt sein, also z.B. [-3, 3] und nicht gleich viele Elemente wie a?
Oder seh ich das falsch?
Zur 2. Lösung: Ich dachte, das wär am einfachsten. Wie sieht denn das aus, wenn ich den Vektor mit dem Matrix multipliziere? Ich kann mir grad keinen Reim drauf machen.
|
|
|
|
| DSP |

Forum-Meister
|
 |
Beiträge: 2.117
|
 |
|
 |
Anmeldedatum: 28.02.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2014b
|
 |
|
|
 |
|
Verfasst am: 02.10.2011, 17:04
Titel:
|
 |
Oh...danke Kevin. Ist mir gar nicht aufgefallen
Du kannst für x doch auch nur 2 Werte vorgeben...allerdings wird man wohl um den Verlauf des Polynoms darstellen zu können, mehrere x Werte innerhalb des Intervalls benötigen
|
|
|
|
| Kevin |

Forum-Fortgeschrittener
|
 |
Beiträge: 93
|
 |
|
 |
Anmeldedatum: 18.08.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.10.2011, 17:09
Titel:
|
 |
Nehmen wir einen einfachen und speziellen Fall:
a=[a0,a1];
x=[x0,x1,x2];
y=a(1)*x^0+a(2)*x^1;
y(1)=a(1)*x(1)^0+a(2)*x(1)^1;
y(2)=a(1)*x(2)^0+a(2)*x(2)^1;
y(3)=a(1)*x(3)^0+a(2)*x(3)^1;
Wenn du das in Matixschreibweise umformst, hast du die Lösung. Die X-Matrix wird aufgestellt durch Multiplikation von x mit einem Einheitsvektor.
_________________
1000 Buchstaben? Warum nur 6?
|
|
|
|
| Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.10.2011, 18:44
Titel:
|
 |
Ich habs jetzt mal mit DSP's Lösung gemacht.
Seh ich das richtig, dass ich für a die Koeffenzienten invers eintragen muss?
Wenn ich also ein Polynom habe:
muss ich dann a so definiert: a = [-105 29 110 -30 -5 1]?
Für x habe ich ein Intervall x = [-10:1:10] definiert.
Das Plot ist attached. Aber irgendwas scheint noch nicht zu stimmen. Ich habe einen Plot vom genau gleichen Polynom erstellt. Siehe pic2. Es gibt da unterschiede. Habe ich im Code einen Fehler?
| Beschreibung: |
|
 Download |
| Dateiname: |
code_zu_pic2.txt |
| Dateigröße: |
646 Bytes |
| Heruntergeladen: |
520 mal |
| Beschreibung: |
|
 Download |
| Dateiname: |
code_zu_pic1.txt |
| Dateigröße: |
673 Bytes |
| Heruntergeladen: |
452 mal |
| Beschreibung: |
|
 Download |
| Dateiname: |
pic2.jpg |
| Dateigröße: |
68.91 KB |
| Heruntergeladen: |
1041 mal |
| Beschreibung: |
|
 Download |
| Dateiname: |
pic1.jpg |
| Dateigröße: |
13.97 KB |
| Heruntergeladen: |
1026 mal |
|
|
|
|
| Kevin |

Forum-Fortgeschrittener
|
 |
Beiträge: 93
|
 |
|
 |
Anmeldedatum: 18.08.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.10.2011, 10:58
Titel:
|
 |
In code 2 steht
wo in code 1
steht. Deshalb sind die Funktionen unterschiedlich.
_________________
1000 Buchstaben? Warum nur 6?
|
|
|
|
|
|
|
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.
|
|