Blatt 3
Blatt 3
Blatt 3
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Dipl. Math. Kathrin Smetana 14. März 2013Übungsblatt 3Matlab - KompaktkursAufgabe 1 (Schleifen und Vektorisieren)Die Fibonacci-Zahlen sind durch die Rekursionmit F 0 = F 1 = 1 für n ∈ N gegeben.F n = F n−1 + F n−2(a) Schreiben Sie ein Programm fibonacci.m, mit dem Sie die ersten n Fibonacci-Zahlen berechnen können. Verwenden Sie eine for-Schleife.(b) Vektorisieren Sie anschließend den Code in fibonaccivect.m. Verwenden Sie dazudie explizite Darstellung der Fibonacci-Folge(( )F n = √ 1n (− 51 + √ 521 − √ ) n )5.2Lassen Sie sich zur Überprüfung Ihres Codes in beiden Fällen den Quotienten F n/F n−1ausgeben. Approximiert der Quotient den Grenzwert (1 + √ 5)/2? Messen Sie schließlichbei beiden Programmen die Zeit, welche zur Berechnung von n = 50, 100 und 150 Folgengliedernund deren Ausgabe benötigt wird.Aufgabe 2 (Schleifen und Unterscheidungen)Schreiben Sie ein Programm intervallschachtelung.m, welches eine Nullstelle einerstetigen Funktion f mit einer vorgegeben Genauigkeit tol = 1.0e − 8 berechnet. VerwendenSie dafür das Intervallschachtelungsverfahren.Intervallschachtelungsverfahren (IVS)Voraussetzungen: Sei f ∈ C 0 (a, b) mit a < b und f(a) · f(b) < 0.Verfahren: Setze a 0 := a, b 0 := b und x 0 := 1 2 (a 0 + b 0 ).Für n = 0, ..., N führe aus:Falls f(a n )f(x n ) = 0 =⇒Abbruch.Falls f(a n )f(x n ) < 0 =⇒ a n+1 := a n ; b n+1 := x n .Falls f(a n )f(x n ) > 0 =⇒ a n+1 := x n ; b n+1 := b n .Setze x n+1 := 1 2 (a n+1 + b n+1 ).
Ferner gilt für das IVS die folgende Fehlerabschätzung zwischen der exakten Nullstelle xund der approximierten x n :|x − x n | ≤ 2 −(n+1) · (b − a).Hinweise:1. Definieren Sie zu Beginn ihres M-Files eine Funktion f, welche stetig ist und eineNullstelle besitzt. intervallschachtelung.m ist nicht dazu gedacht herauszufinden,ob die Funktion f eine Nullstelle besitzt!2. Realisiseren Sie die Voraussetzungen a < b und f(a) · f(b) < 0 des Verfahrens mitHilfe des Matlab-Befehls error.3. Verwenden Sie die angegebene Fehlerabschätzung, um zu berechnen, wie viele IterationenSie benötigen.