In vielen Anwendungen ist es notwendig, Funktionen näerungsweise mit Hilfe eines numeriscen Verfarens zu differenzieren: Die analytisce Berecnung der Ableitung ist zum Beispiel unmöglic, wenn die zu differenzierende Funktion selbst nur indirekt (zum Beispiel durc einen numeriscen Algoritmus) gegeben ist und nur punktweise ausgewertet werden kann. Beim Lösen von Differentialgleicungen ist die Funktion, deren Ableitungen gesuct werden, gerade die unbekannte Funktion u. := Verfaren zur näerungsweisen Bestimmung der Ableitungen einer Funktion an einer Stelle zu entwickeln. Ansätze zur numeriscen Differenziation: Taylorreienentwicklung Interpolation mit Polynomen über 1, 2, 3 Punkte Interpolation mit Splines f, f, f Satz von TAYLOR: Vorr: f IV ( von u( eistiert und f im Intervall [;+] bescränkt + f (ξ ); ξ + 2! 3!! Unter der Voraussetzung ausreicend glatter Funktion f können wir das Restglied jeweils unter Verwendung des LANDAU-Symbols O( ) angeben. Der Großbucstabe (damals eigentlic ein großes Omikron als Symbol für Ordnung ) Abbruc der TAYLOR- Entwicklung nac dem linearen Glied: f ( + + O( ) ==> = + O( ) analog: Differenzen-Metode ===> f ( f ( ) Rückwärts Differenziationsformel Idee: Anstelle der Vor- und Rückwärtsdifferenz den Mittelwert als Näerung zu verwenden: I: II: + f (ξ ); 2! 3!! f ( ) f '( + f ''( f '''( + f ( η); 2! 3!! ξ + η I. II. und f ( bescränkt Zentraler Differenzenquotient ===> f ( Vorwärts Differenziationsformel Der zentraler Differenzenquotient entsprict gerade dem Mittelwert aus Vorwärts- und Rückwärtsdifferenz. Man beacte, dass der Feler jetzt quadratisc mit der Verkleinerung der Scrittweite abnimmt, obwol der Aufwand zur Auswertung dieser Formel auc nict öer ist als der bei der Vorwärts- oder Rückwärtsdifferenz. Bei allen drei Formeln benötigen wir Auswertungen der Funktion f an jeweils zwei Stellen. - +
einfaces Beispiel: f( = e f ( = e Sei = 1 Gesuct ist also die Ableitung der Funktion f an der Stelle = 1 a) Nac direkter Berecnung gilt f (1) = e = 2,718281828... Mit Vorwärtsdifferentiationsformel: Es sei =0,1 rel(f (1)) = 5,171% 1,1 1 f (1 + 0,1) f (1) e e f (1) = = 2,85881955 0,1 0,1 Mit Rückwärtsdifferentiationsformel: =0,1 1 0,9 f (1) f (1 0,1) e e f (1) = = 2,586787173 0,1 0,1 rel(f (1)) =,837% Mit Zentralem Differenzenquotient: =0,1 1,1 0,9 f (1 + 0,1) f (1 0,1) e e f (1) = = = 2,7228156 2*0,1 0,2 relativer Feler = 0,1668% Erzielbare Genauigkeit: Wal von (Diskretisierungsfeler) Problem: Auslöscung im Zäler von f(-)-f(+) Genauigkeit nict stetig durc Verkleinerung von zu verbessern Genauigkeit beim zentralen Quotient am besten( l=12)
Die Lösungen können durc zweierlei Einflüsse vom eakten Ergebnis teils beträctlic abweicen. Diskretisierungsfeler () Rundungsfeler ε (Mantissenlänge) Wenn wir davon ausgeen, dass der Feler in der Differenz f( +) f( bei Verwendung der Vorwärtsdifferenzenformel maimal in der Größenordnung der Zalendarstellungsgenauigkeit ε unseres Digitalrecners liegt, so gilt: f( + ) f( f( + ) f( +O( ε) ε = f '( +O () + O( ) Dies bedeutet, dass eine weitere Verkleinerung der Scrittweite nur solange Sinn mact, solange der Rundungsfeler < Diskretisierungsfeler ε Wir gewinnen also die Erkenntnis, dass ε Bei 32-Bit-Systemen liegt die Zalendarstellungsgenauigkeit bei ε 10 sein sollte, wenn unsere Recnung sinnvoll bleiben soll. 16.==> nur 10 16 =10-8 sinnvoll. Höere Ableitungen: Wenn wir die TAYLOR-Darstellungen für f (+) und f (-) addieren, anstatt sie zu subtraieren, und dann durc dividieren, so eralten wir unter der Voraussetzung einer viermal differenzierbaren Funktion f folgende Formel für die zweite Ableitung: I: + f (ξ ); ξ + 2! 3!! II: f ( ) f '( + f 2! ''( f 3! '''( + f! IV ( η); η Um weitere Ableitungen öerer Ordnung approimativ berecnen zu können, lässt sic das folgende Scema verwänden: Dividierte Differenzen Scema (für Vorwärtsdifferenz) + f( f(+) +2 f(+2) f( + ) f( f( + 2) f( + ) f( + 2) 2f( + ) + f( 2 Insgesamt ergibt sic für die Berecnung der Ableitungen: erste Ableitung= f( + ) f( 1! Das Scema lässt sic beliebig fortsetzen, zweite Ableitung= f( + 2) 2f( + ) + f( 2! 2
Beispiel1 f(= ³+²++1 0 =0 gesuct: numerisce Ableitungenswerte für : f (0), f (0) und f (0) =1 Eakte Lösung: f(0)= 1 f (0)=3²+2+1 = 1 f (0)=6+2 = 2 f (0)= = 6 =0,5
=0,25 =0,125