IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Numerik 2. Sem. Prof. Dr. Karlheinz Blankenbach Hochschule Pforzheim, Tiefenbronner Str. 65 75175 Pforzheim Überblick / Anwendungen / Motivation: Die Numerik beschäftigt sich mit der „nicht-mathematischen“ Lösung mittels Computer von Gleichungen, Nullstellen, Integralen etc. Hierbei können Aufgaben gelöst werden, die „klassisch“ nicht lösbar sind oder die Lösung zu aufwändig ist. Wichtig ist hierbei, dass die Numerik „fehlerbehaftet“ ist und somit Ergebnisse geprüft werden müssen. Beispiel aus der Medizin (Quelle: PTB) Die Elektrokardiografie (EKG) ist eines der am häufigsten eingesetzten Messverfahren im klinischen Alltag. Um die diagnostische Aussagekraft EKG-Signalen zu verbessern, notwendig, den ist von es Zusammenhang zwischen der Quelle dieser Signale, also der elektrischen Erregungsausbreitung im Herzmuskel, und den an der Körperoberfläche gemessenen EKG-Signalen genauer zu analysieren. Die dafür benötigte Rechenzeit ging bisher über Tage. Das numerische Herzmodell, das gegenwärtig in der PTB entwickelt wird, arbeitet inzwischen so schnell, dass Parametervariationen innerhalb von einigen Stunden durchgeführt werden können. Zum selber ausprobieren: jede Programmiersprache, MS EXCEL, MATLAB, … Empfohlene Literatur (als Ergänzung zum Skript, welches für Klausur ausreichend ist): - Knorrenschild: Numerische Mathematik: Eine beispielorientierte Einführung, FV Leipzig - Herzberger: Übungsbuch zur Numerischen Mathematik, Vieweg - Prof. Dietz: Skript Numerik, HS Pforzheim (auch Quelle für einige Beispiele) - Für mathematische Grundlagen: Papula : Mathematik für Ing. und NW, Vieweg Blankenbach / SS2013 / 23.06.2013 1 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Faires-Burden: Das erste Ziel bei numerischen Verfahren ist es, eine Approximation für die Lösung eines Problems zu finden. Numerik - When Things Go Wrong …. Beispiele INTEL PENTIUM mit „Rechenfehler“ Pentium-FDIV-Bug (Quelle: Wikipedia) FDIV-Bug bezeichnet einen Hardwarefehler des PentiumProzessors von Intel. Der Fehler wurde im November 1994 anderthalb Jahre nach der Markteinführung bekannt und sorgt bei Gleitkomma-Divisionen mit bestimmten Werten für falsche Ergebnisse. Kein anderer Fehler in einem CPU-Design hatte jemals zuvor für so viel Wirbel und Aufregung bei Anwendern und Fachleuten gesorgt. Die Bezeichnung FDIV-Bug leitet sich vom Namen eines häufig verwendeten Gleitkommabefehls bei x86-Prozessoren ab. Der Fehler betrifft aber keineswegs ausschließlich den Befehl FDIV, wie man vermuten könnte. Vielmehr sind alle Befehle betroffen, die die fehlerhafte Divisionseinheit benutzen. Gleitkomma-Zahlen: siehe nachfolgend im Skript MS EXCEL mit „Genauigkeitsfehler“ Blankenbach / SS2013 / 23.06.2013 2 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Nicht immer ist die The Mars Climate Orbiter was a 338 kilogram (750 lb) robotic Numerik schuld: space probe launched by NASA on December 11, 1998 to study Satellitenabsturz the Martian climate, atmosphere, surface changes and to act as the durch communications relay in the Mars Surveyor '98 program, for Mars unterschiedliche Polar Lander. However, on September 23, 1999, communication physikalische with the spacecraft was lost as the spacecraft went into orbital Einheiten insertion, due to ground based computer software which produced output in non-SI units of pound-seconds (lbf×s) instead of the metric units of newton-seconds (N×s) specified in the contract between NASA and Lockheed. The spacecraft encountered Mars at an improperly low altitude, causing it to incorrectly enter the upper atmosphere and disintegrate. Quelle Wikipedia Faustregeln für die Numerik: Immer alle Teilschritte und Ergebnisse „kritisch“ beurteilen, mit Werten „spielen“ (Monte Carlo Simulation), Fehlerrechnung durchführen, … Für komplexe Aufgaben „professionelle“ Programme (mit „geprüften“ Algorithmen) verwenden wie MATLAB, NAG-Bibliothek etc. Falls eigene Implementierung, die eigenen Ergebnisse mit solchen Programmen vergleichen. Digitalisierungseffekte in der Messtechnik beachten: Hier liegen Zeit- und Amplitudendiskrete Werte vor und keine mathematischen Funktionen. Dies ist vergleichbar mit FOR-Schleifen und EXCEL. Somit erfolgen Nullstellen-Suche, Differentiation und Integration „anders“, nämlich diskret und nicht mittels Funktionen. Blankenbach / SS2013 / 23.06.2013 3 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Einführung Aufgabe der Numerik Lösen von Aufgabenstellungen, die „zu Fuß“ nicht oder nur mit unverhältnismäßig hohem Aufwand lösbar wären. Rechenverfahren in der digitalen Signalverarbeiten (hier liegen nur diskrete Werte und keine mathematischen Funktionen vor) Probleme der Numerik Alle Zahlen werden digital repräsentiert, die Anzahl der Binärstellen ist begrenzt (also endlich viele Möglichkeiten für unendlich viele reelle Zahlen). Somit können beispielsweise rationale (z.B. 2/3) und irrationalen Zahlen (z.B. ) nur näherungsweise dargestellt werden. Das führt zu Rundungsfehlern bis hin zur „Auslöschung“ (z.B. Subtraktion zweier nah beieinander liegender gebrochener Zahlen kann Null wg. Rundungsfehlern ergeben) Das Ergebnis einer numerischen Rechnung kann sehr stark vom verwendeten Algorithmus abhängen. Eine „kritische“ Betrachtung aller Ergebnisse ist somit notwendig. Einordnung der Numerik Numerische Methoden sind nur ein Teilgebiet der Lösung einer technischen Aufgabenstellung. Beispiel: Freier Fall mit x g , gesucht: Zeit, die für 44,15 m freier Fall benötigt wird. Aus der Physik: s = ½ g t² t = sqr(2s/g) = 3,00 s (gerundet, Rechner zeigt mehr Nachkommastellen) Wo liegen nun die Fehlerquellen? Blankenbach / SS2013 / 23.06.2013 4 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden keine Reibung, g nicht konstant g ist Näherung Fehler beim Wurzelalgorithmus Abschneiden von Nachkommastellen … ist anzugeben. Quelle: Bollhöfer: Numerik Diese Vorlesung: Numerik mit Fokus auf praxisnahen Methoden und Lösungsverfahren. Beispiel: „numerisches Wurzelziehen“ x Zahl 2 2 x mit x 2 als Startwert Wurzel Iterationsformel: mit i als Iterationsindex, Z: Zahl, aus der die Wurzel gezogen werden soll; xi ist zu Beginn der Startwert, z.B. 2. Der Startwert muss immer kleiner als das Ergebnis der Wurzel sein. Blankenbach / SS2013 / 23.06.2013 5 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Beispiel für Numerik-Fehler Gesucht ist der Funktionswert für „0“, d.h. f(0) Hier: MS EXCEL, liefert ähnlich wie Programmiersprachen bei „0“ offensichtlich falsche Ergebnisse, lt. „Mathe“: f(0) = 0,5 Je näher man an „0“ herankommt, desto „falscher“ wird der berechnete Funktionswert: z.B. f(10-10) = 827 ! Der exakte mathematische Funktionswert bei 0 ist 0,5 ! Blankenbach / SS2013 / 23.06.2013 6 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Einschub zur Wiederholung: Allgemeines zu Reihen Anwendungen: Darstellung von Funktionen mit Reihen Numerik Oft „schnellere“ Programmausführung mit Reihenentwicklung im Vergleich zur Verwendung der gegebenen mathematischen Funktion z.B. Sinus etc., welche der Compiler bereitstellt. Berechnung von Funktionswerten auch wenn der Compiler diese Funktion nicht bereitstellt. Integrierbarkeit von 'unlösbaren' Integralen, ebenso Differentiation In der Technik sind viele Zusammenhänge als Reihen angenähert (oft auch, weil keine exakte Formel existiert bzw. experimentell ermittelt) Bsp: Hooke’sches Gesetz, T-abhängige Längenausdehnung bzw. elektrischer Widerstand: X = Xo (1 + T) Definition: a1 + a2 + a3 + ... + an + ... = a (R - 1) n n1 an : n-tes Reihenglied Reihe ist a - konvergent, wenn =S n (Grenzwert S existiert, S < ) (R - 2) n1 - divergent: Grenzwert S existiert nicht a n = n1 Ideal: Unendliche Reihe N Reale Numerik: endliche Reihe a n = <sN> (R - 3) n 1 Partialsumme Vorgehensweise bei Reihen: 1) existiert S ? 2) wenn ja (konvergent), bestimme S bzw. <sN> Blankenbach / SS2013 / 23.06.2013 7 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Reihendefinitionen: - geometrisch : an = a qn-1 - alternierend : a1 - a2 + a3 - … : a0 + a1x + a2x² + … (Polynom) - Potenzreihe - arithmetisch : an = a + (n-1) d - harmonisch : an = 1/n Geometrische Reihen Def.: aq n 1 = a + aq + aq² + aq³ + .... (R - 4) n 1 Konvergenzbed.: |q| < 1 Summe: S Bsp: n1 1 1 n1 2 2 a 1 q n1 1 für |q| < 1 (R - 5) 1 1 ... 2 4 → q = 1/2 also konvergent, a = 1 → S 1 1 1 2 2 Blankenbach / SS2013 / 23.06.2013 8 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Alternierende Reihen Def.: 1 n1 n1 a n = a1 - a2 + a3 - a4 + .... (R - 6) Leibnitz - Konvergenzkriterium: 1) an > an+1 (R - 7) 2) lim an 0 n alternierende Reihe konvergent, wenn beide Bed. erfüllt 1 Bsp: n1 n1 1 1 1 1 ... n 2 3 Leibnitz: 1 1 n n 1 1) an = 1/n 1 0 → Reihe ist konvergent n n 2) lim Potenzreihen Def.: a n0 n x n = ao + a1x + a2x2 + a3x3 + .... (R - 8) mit an R Potenzreihe = Polynom an n a n 1 Konvergenzradius r lim - konvergent : |x| < r - divergent : |x| > r - keine Aussage : |x| = r (R - 9) xn x x2 1 ... Bsp: 1 2 n 0 n! an (n 1)! lim lim(n 1) n a n n n ! n1 r lim → Reihe konvergent für alle x R (Fakultät > Potenz) Blankenbach / SS2013 / 23.06.2013 9 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Potenzdarstellung von Funktionen Eine konvergente Potenzreihe stellt eine reelle Zahl dar: y f ( x) an x n (R - 10) n 0 somit gilt auch: y' f '( x) - Differential ( x) n n a n x n1 n 1 F( x) f ( x) dx a n x n dx n0 - Integral Bsp: d n an x dx n0 an n0 x n1 C n 1 1 - x + x² - x³ + ... n0 mit a = 1, q = -x: geometrische Reihe ( x) n0 n 1 für |x|< 1 1 x f(x) = 1 / (1+x) (Summe) Diff. und Int. Mit obiger Reihendefinition und Summe Diff: f’(x) = -1/(1+x)² = -1 + 2x - 3x² + ... = ( 1) n n x n1 n 1 (so erhält man auch Summen von ‚neuen’ Reihen) Int : dx f ( x) dx 1 x ln(1 x) ‚zu Fuß unmöglich’ – aus Formelsammlung x² x³ ( x )n dx x ... C = ln(1+x) ! 2 3 n 0 C aus ln 1 = 0 für x=0 C = 0 ln(1+x) x – x²/2 + x³/3 … Anwendung: Numerik Blankenbach / SS2013 / 23.06.2013 10 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Beispiele von Potenzreihen (aus Papula Formelsammlung) ACHTUNG: Konvergenz für sin bzw. cos: |x| < - dies gilt aber für große Zahlen nur für sehr viele Reihenglieder. Hier muss unbedingt der Fehler der Reihenapproximation geprüft werden. Blankenbach / SS2013 / 23.06.2013 11 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden MacLaurin - Reihe Kann y = f(x) in eine konvergente Potenzreihe entwickelt werden, so ist dies nur mit der ML - Reihe möglich: f ( x ) f (0 ) f ' (0 ) f ' ' (0 ) f n (0 ) n x x ² ... x 1! 2! n! n0 f ( n ) (0 ) n x n! (R - 11) Achtung: Entwicklung nur um x = 0 ! Beispiele: - lineare Näherung f(x) f(0) + f’(0) x F= 0 + Dx R = Ro + Ro T V = Vo + Vo T Hookesches Gesetz für Feder aus Ro (1 + T) aus Vo (1 + T) - f(x) = ex f(x) = f’(x) = f’’(x) = ……..= ex f(0) = f’(0) = f’’(0) = ……..= e0 = 1 → ex = 1 + x/1 ! + x²/2! + x³/3! - y = x² - f(0) = 0 - f’(x) = 2x ; f’(0) = 0 - f’’(x) = 2 ; f’’(0) = 2 - f’’’ und folgende: Null → f(x) = 0 + 0 + 2/2 x² + 0 + … = x² Blankenbach / SS2013 / 23.06.2013 12 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Taylor - Reihe - allgemeiner Fall der MacLaurin - Reihe für x0 = 0 - Entwicklung um ‚beliebigen’ Wert x0 , der bekannt sein muß - h ist Abstand von x0 f ( x o h) f ( x o ) f ' (x o ) f ' ' (x o ) f n (x o ) n h h² ... h 1! 2! n! n0 f (n) ( x o ) n h (R - 12) n! Bsp: e1,4 e1 = 2,718 bekannt -> xo = 1, xo + h = 1,4 1 1 1 h = 0,4 1 f(1 + 0,4) = e + e h + e /2! h² + e /3! h³ + ... = e1 ( 1 + h + h²/2 + h³/6 + ... ) Vergleich von MacLaurin und Taylor – Reihe für f(x) = ex mit x = 2 Für Taylor : exo mit xo = 1 also e1 = 2,72 ‚bekannt’ Exakt: 7,389 n MacLaurin Taylor 0 e0 = 1,00 e1 = 2,72 1 3,00 5,44 2 5,00 6,80 3 6,33 7,25 4 7,00 7,36 5 7,27 7,38 Mit Taylor-Reihe kommt man ‚schneller’, d.h. für kleiner n, dem exakten Wert näher. Blankenbach / SS2013 / 23.06.2013 13 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Näherungspolynome (aus Papula Formelsammlung) … liefern (nur) in der Nähe des Nullpunkte brauchbare Ergebnisse ! (Bsp: sinx = x und e-x = 1 - x geht für größere x, z.B. 2 ‚schief’) Blankenbach / SS2013 / 23.06.2013 14 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Zahlendarstellung Es gibt zwei Arten: Integer-Werte „Zahlen mit Komma“ Integer-Werte Nur ganze Zahlen, z.B. von 0 – 255 für 8 Bit können auftreten, ggf. mit Vorzeichen Zahlenbereich: - 2(n-1) … + 2(n-1) – 1 Bsp: - 8-Bit: -128 … - 127 (ergibt diskrete 256 Werte) Damit läßt sich aber in der Praxis kaum rechnen Komma-Zahlen In der Praxis sind aber alle digitalen Messdatenerfassungen mit AD-Wandler Integerwerte. Oszilloskope haben üblicherweise 8 Bit Vertikalauflösung, Multimeter ca. 22 Bit. Je höher die Auflösung, desto langsamer ist typischerweise die AD-Wandlung. Die Messdaten liegen dann Zeit- und Amplituden-diskret vor, es gibt also keine mathematische Formel. Eine solche kann höchstens per Fit angenähert werden. Blankenbach / SS2013 / 23.06.2013 15 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Methoden der nicht ganzzahligen Zahlendarstellung • Festkomma-Darstellung • Gleitkomma-Darstellung Festkomma Feste Anzahl von Ziffern vor und nach dem Komma: Vorzeichen | Vorkommateil | Nachkommateil Beispiel für 16-Bit (2 Byte): 8 Bit für Vorzeichen und Vorkomma, 8 Bit für Nachkomma Problem: kleiner Wertebereich In der Praxis haben Festkomma-Prozessoren über die vergangen Jahre an Bedeutung drastisch verloren, da Gleitkomma-Prozessoren praktisch dieselbe Rechengeschwindigkeit erzielen. Blankenbach / SS2013 / 23.06.2013 16 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Numerisch-mathematische Methoden der Nullstellen-Suche Es gibt drei äquivalente Aufgabenstellungen: 1. Nullstellenproblem: Suchen nach einer Nullstelle Zu lösende mathematische Gleichung: f(x) = 0. 2. Schnittpunkt der Kurve f(x) mit der ersten Winkelhalbierenden Zu lösende mathematische Gleichung: f(x) = x Spezialfall von 3. 3. Schnittpunkt zweier Kurven f(x) und g(x) Zu lösende mathematische Gleichung: f(x) = g(x) bzw. h(x) = f(x) – g(x) = 0. Es kann eine Funktion eine Gerade oder Null sein, dann ergeben sich die Fälle 1 und 2. Es existieren mehrere Verfahren zur Nullstellen-Suche: - Bisektions-Verfahren (Intervall-Schachtelung) – nicht schnell, aber „einfach“ - Tangenten-Verfahren (Newton-Verfahren) - … Auswahlkriterien sind beispielsweise die Anzahl der Iterationsschritte bis eine gegebene Genauigkeit erreicht wird, Rechenzeit, Implementierung (Programmierung), … Blankenbach / SS2013 / 23.06.2013 17 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Bisektions-Verfahren (Intervall-Schachtelung) – nicht das schnellste Verfahren, aber einfach Methode / Idee: - Im Intervall zwischen a0 und b0 liegt eine Nullstelle der stetigen Funktion f(x) - f(a0) und f(b0) haben dann unterschiedliche Vorzeichen. - Das Intervall wird in der Mitte geteilt, der zugehörige Teilungspunkt mit p1 bezeichnet. - Je nach dem Vorzeichen von f(p1) ersetzt der Teilungspunkt dann die linke (a0) oder die rechte (b0) Intervallgrenze. - Man erhält ein Intervall der halben Größe, das nach wie vor die Nullstelle einschließt. Der Algorithmus lautet wie folgt, die Werte trägt man bspw. In eine Tabelle ein: 1. Ausgangspunkt: Intervall [a0,b0] mit f (a0 ) f (b0 ) 0 . Hier ist i=0. Berechne f(a0), f(b0). 2. Berechne den Mittelpunkt des Intervalls: MP : p i1 a i a bi bi ai auch i 2 2 sowie f(ai), f(bi) und f(pi+1) 3. Fallunterscheidung für neue Intervallgrenze: - Falls (f ai ) (f pi1 ) 0 liegt die Nullstelle zwischen a und p . i i+1 Dann werden ai+1 = ai und bi+1 = pi+1 die neuen Intervallgrenzen - Sonst: „umgekehrt“: ai+1 = pi+1 und bi+1= bi die neuen Intervallgrenzen. 4. Kontrolle Abbruchkriterium z.B. | ai+1 - bi+1| < gewünschte Toleranz: - Wenn erfüllt: Ende - Sonst: Setzte i = i + 1 und weiter mit 2. Blankenbach / SS2013 / 23.06.2013 18 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Beispiel: Anwendungsbeispiel: Berechnung der Herzfrequenz aus EKG Wie kann man die Herzfrequenz hieraus numerisch bestimmen? Z.B. Grundlinie abziehen und nur positive Peaks: - Vorderkante - Vorderkante - Maximalwert – Maximalwert - Mittelwert Peak to Peak Durch das verrauschte Messignal wird die Genauigkeit reduziert. Allerdings ist der Peak im Vergleich zum Intervall recht kurz und zudem wird gemittelt und auf ganze Zahlen (Schläge pro Minute) gerundet. Blankenbach / SS2013 / 23.06.2013 19 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Differenzieren und Integrieren Hier: Diskrete Werte, z.B. Messdaten Es liegen keine Funktionen, sondern nur zeit- und amplitudendiskrete Werte vor, wie z.B. Messdaten, FOR-Schleifen oder EXCEL. Verfahren: - Differenzieren: „Benachbarter Elemente“ subtrahieren durch Schrittweite dividieren - Integrieren: Mehrere Methoden: - Elemente mit Schrittweite multiplizieren und aufsummieren - Mittelpunkts-Regel benachbarter Elemente mit Schrittweite multiplizieren und aufsummieren - Trapez-Regel, SimpsonRegel, … auf Basis diverser Interpolationsverfahren „Mathematik“: b f ( x)dx [ F ( x)] b a F (b) F (a) a Mittelpunkts-Regel b f ( x)dx (b a) f m a Rechteck-Approximation, das Prinzip kann aber auch auf einzelne Intervallschritte angewandt werden Trapez-Regel b f ( x )dx a ba ( f (a ) f (b)) 2 Geraden-Approximation, das Prinzip kann aber auch auf einzelne Intervallschritte angewandt werden Blankenbach / SS2013 / 23.06.2013 20 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Beispiele mit Sinus Differenzieren (Differentiation_sinus_v1.xlsx) Mathematik ACHTUNG: hier relativ große Schrittweite (0,1) ! Differentiation Sinus Schrittweite h Methode x 0,1 sinx 0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 1,1 1,2 1,3 1,4 1,5 1,6 Nachbar-Differenz / h 0,00000 0,09983 0,19867 0,29552 0,38942 0,47943 0,56464 0,64422 0,71736 0,78333 0,84147 0,89121 0,93204 0,96356 0,98545 0,99749 0,99957 Blankenbach / SS2013 / 23.06.2013 0,99833 0,98836 0,96851 0,93898 0,90007 0,85217 0,79575 0,73138 0,65971 0,58144 0,49736 0,40832 0,31519 0,21892 0,12045 0,02079 Mathe dsin/dx = cos 0,9950042 0,9800666 0,9553365 0,9210610 0,8775826 0,8253356 0,7648422 0,6967067 0,6216100 0,5403023 0,4535961 0,3623578 0,2674988 0,1699671 0,0707372 -0,0291995 absoluter Fehler 0,0033300 0,0082926 0,0131723 0,0179204 0,0224894 0,0268337 0,0309100 0,0346773 0,0380982 0,0411384 0,0437676 0,0459595 0,0476922 0,0489483 0,0497154 0,0499857 relativer Fehler "groß bei kleinen Zahlen" 0,33% 0,85% 1,38% 1,95% 2,56% 3,25% 4,04% 4,98% 6,13% 7,61% 9,65% 12,68% 17,83% 28,80% 70,28% -171,19% 21 Mathe 2 / Numerik – Def. / Zahlen / Methoden IT Beispiele mit Sinus (integration_sinus_v3.xlsx) Integrieren , hier [0, ]: Integralwert = 2 Mathematik ∫ Integration Sinus Schrittweite h Methoden x 0,1 0,0 0,1 0,2 0,3 0,4 0,5 sinx 0,00000 0,09983 0,19867 0,29552 0,38942 0,47943 2,8 2,9 3,0 3,1 3,2 0,33499 0,23925 0,14112 0,04158 -0,05837 Wert x h Mittelpunkt x h 0,00000 0,0049979 0,00998 0,0149438 0,01987 0,0247404 0,02955 0,0342898 0,03894 0,0434966 0,04794 0,0522687 Trapezregel 0 0,0049917 0,0149251 0,0247095 0,0342469 0,0434422 … Summe 0,03350 0,02392 0,01411 0,00416 -0,00584 0,0287478 0,0190423 0,0091465 -0,0008407 -0,0108195 0,0381184 0,0287119 0,0190185 0,0091350 -0,0008397 1,99371 1,98831 1,99663 Vgl Mathe: Int sin = -cos hier 0 … pi cos(0) = 1 cos(pi) = -1 somit -(-1 - 1) = 2 Blankenbach / SS2013 / 23.06.2013 22 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden Übungsaufgaben Numerik Bearbeiten Sie die Aufgaben mit Taschenrechner, MS EXCEL, beliebiger Programmiersprache und MATLAB. In der Klausur genügt ein Taschenrechner. 1. Ziehen Sie mit einem Taschenrechner die Wurzel aus 2 und anschließend aus dem Ergebnis. Wiederholen Sie dies solange, bis nur noch eine „1“ im Display erscheint. Nun quadrieren Sie solange, bis Sie wieder in der „Gegend von 2“ sind. Eine exakte „2“ wird hierbei meist nicht erreicht. Erklären Sie das Ergebnis bzw. die Beobachtung. Lösung: Meist wird mit mehr Stellen gerechnet als angezeigt. Einfache Taschenrechner besitzen lediglich 4-Bit Prozessoren. 2. Beim numerischen Wurzelziehen spielt der Startwert xo und die Zahl Z aus der die Wurzel zu ziehen ist die entscheidende Rolle für die Anzahl der „notwendigen“ Iterationsschritte um eine gewünschte Genauigkeit zu erzielen. - Vergleichen Sie den absoluten und relativen Fehler für Z = 9 für die Startwerte 1 und 2. Lösung: Z.B. beim 2. Schritt mit Startwert 1 ist der relative Fehler ca. 40x so groß wie bei 2. - Der Startwert muss kleiner als das Ergebnis des Wurzelziehens sein. Insofern liegt man für Zahlen größer 1 mit „1“ auf der sicheren Seite. Der Ihr Programm ja den exakten Wert nicht kennt, muss sich die Anzahl der Iterationsschritte „i“ am tolerierbaren Fehler orientieren. Wie viele Schritte benötigen Sie, damit der relative Fehler für Werte bis 1000 (z.B. 10 Bit Messwerte) kleiner als 0,01% bleibt? Lösung: 7 Schritte 3. Berechnen Sie für die folgenden Werte den Funktionswert des Cosinus angenähert durch eine Reihe (Polynom). Berechnen Sie jeweils den relativen und absoluten Fehler. Zahlen: 0; 0,01; 0,1; 0,2; 0,5; 1,0; 2,0; 3,14; 6,28 Wie viele Reihenglieder N sind zu berücksichtigen, damit der relative Fehler für Werte bis einschließlich 1 unter 1% bleibt? Lösung: N 3 Blankenbach / SS2013 / 23.06.2013 23 IT Mathe 2 / Numerik – Def. / Zahlen / Methoden 4. Untersuchen Sie für eine 4-stellige Arithmetik die Subtraktion von ( ) Berechnen Sie das „exakte“ Ergebnis mit dem Taschenrechner und vergleichen die mit der 4-stellige Arithmetik hinsichtlich absolutem und relativem Fehler. Dazu müssen Sie zuerst die beiden Zahlen in 4-stellige Arithmetik ausdrücken und dann die Subtraktion durchführen. Der relative Fehler ist relativ groß – wie nennt man den zugrunde liegenden „Effekt“? Lösung: absoluter Fehler ca. 0,00026, relativer Fehler ca. 21% 5. Bestimmen Sie die Nullstelle der Funktion f(x) = x³ - x + 0,3 im Intervall von 0 bis 0,5 auf eine Nachkommastelle genau. Lösung: Nullstelle zwischen 0,31 und 0,38 6. Differenzieren und Integrieren Sie die Funktion f(x) = cos(x) im Intervall von 0 … . Bestimmen Sie auch den absoluten und relativen Fehler. Lösung: Analog zu Vorlesungsbeispiel „Sinus“. 7. Differenzieren und Integrieren Sie die Funktion f(x) =x³ im Intervall von 0 … 1. Bestimmen Sie auch den absoluten und relativen Fehler. Führen Sie dies auch mit einem Taschenrechner durch mit einer von „Schrittweite“ 0,2. Lösung: Analog zu Vorlesungsbeispiel „Sinus“. Blankenbach / SS2013 / 23.06.2013 24