Skip to main content

Numerische Standardverfahren

  • Chapter
  • First Online:
Computerphysik
  • 5845 Accesses

Zusammenfassung

Genauso vielfältig wie die bei physikalischen Problemen auftretenden mathematischen Gleichungen sind auch deren numerische Lösungsverfahren. Es gibt jedoch eine Reihe von Standardverfahren der Numerik, die allgemein anwendbar sind und bei unterschiedlichen Problemen auftreten. Dazu gehören Verfahren zur numerischen Ableitung, Nullstellensuche, Interpolation, numerischen Integration und Fourieranalyse. Diese treten bei der numerischen Lösung von physikalischen Problemen immer wieder auf und gehören deshalb zum Grundwissen eines Computerphysikers. In diesem Kapitel werden die wichtigsten dieser numerischen Verfahren besprochen, untereinander verglichen und deren Probleme bzw. Anwendbarkeit diskutiert.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 29.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 39.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stefan Gerlach .

Aufgaben

Aufgaben

9.1

Bestimmen Sie für eine feste Schrittweite die Ableitung der Funktion \(f(x)=\sin (x^2)\) mit der Vorwärts- und der zentralen Differenz numerisch. Wann weicht die Näherung deutlich vom exakten Ergebnis ab?

9.2

Schreiben Sie in C oder Python ein Programm, um die Nullstelle der Funktion \(f(x) = \cos x -x\) mit dem Sekantenverfahren  zu berechnen.

9.3

Mithilfe des Newton-Verfahrens  lässt sich die Quadratwurzel einer Zahl a berechnen, indem man die Funktion \(f(x)=x^2-a\) betrachtet (babylonisches Wurzelziehen). Wie lautet für f(x) die (vereinfachte) Newton-Iteration? Programmieren Sie dafür das Newton-Verfahren, um die Wurzel aus 3 zu berechnen. Nach wie vielen Schritten ist die Maschinengenauigkeit erreicht?

9.4

Schreiben Sie ein Python-Programm, dass das Interpolationspolynom für drei beliebige Datenpunkte mit der Neville-Aitken-Interpolation findet. Testen Sie Ihr Programm anhand von drei gewählten Punkten und der SciPy-Funktion scipy.interpolate.lagrange. Stellen Sie das Ergebnis mit den Datenpunkten grafisch dar.

9.5

Analog zur Fourier-Reihe lässt sich eine Funktion auf dem Intervall \([-1,1]\) auch in die orthonormalen Legendre-Polynome  \(P_l(x)\) (Normierung: \(\int _{-1}^1 P_i(x)P_j(x) \text {d}x = \frac{2}{2j+1} \delta _{ij}\)) entwickeln (s. Abschn. 18.2.2):

$$\begin{aligned} f(x)=\sum _{l=0}^\infty a_l P_l(x), \; a_l = \frac{2l+1}{2}\int _{-1}^1 f(x) P_l(x)\,\text {d}x. \end{aligned}$$
(9.79)

Berechnen Sie die Entwicklungskoeffizienten \(a_l\) durch numerische Integration  für die Funktion \(f(x)=\sin (\uppi x)\) und stellen Sie die Näherungen grafisch dar.

9.6

Berechnen Sie die Gewichte der Trapez- und Simpson-Regel in Tab. 9.2 und damit die angegebenen Regeln (9.48) und (9.53). Überprüfen Sie die Gewichte der 2-Punkt-Gauß-Quadratur mit Formel (9.70).

9.7

Das radiale Beugungsmuster einer runden Lochblende ist gegeben durch die Intensität \(I(r) = (J_1 (kr)/kr)^2\) mit \(k = 2\uppi /\lambda \) und den Bessel-Funktionen

$$\begin{aligned} J_m(x) = \frac{1}{\uppi } \int _0^\uppi \cos (m\vartheta - r \sin \vartheta )\,\text {d}\vartheta . \end{aligned}$$
(9.80)

Schreiben Sie ein Python-Programm zur Berechnung von \(J_0(x)\), \(J_1(x)\) und \(J_2(x)\) mit der Trapezmethode  (\(N=100\)). Vergleichen Sie die Ergebnisse mit den entsprechenden Python-Funktionen (s. Abb. 6.2).

Stellen Sie damit das Beugungsmuster einer Lochblende als Dichteplot für verschiedene Wellenlängen dar.

9.8

Eine ebene Welle der Wellenlänge \(\lambda \) wird an einer scharfen Kante gebeugt. Die Intensität auf einem Schirm im Abstand z ist dann gegeben durch

$$\begin{aligned} I = \frac{I_0}{8}\left( (2C(u) + 1)^2 + (2S(u) + 1)^2 \right) \end{aligned}$$
(9.81)

mit \(u = x\sqrt{2/(\lambda z)}\) und den Fresnel-Integralen  (6.3).

Schreiben Sie ein Programm zur numerischen Berechnung der Fresnel-Integrale und damit der Intensität (9.81) und stellen Sie das Ergebnis für verschiedene Wellenlängen und Abstände zum Schirm grafisch dar.

9.9

Berechnen Sie die Koeffizienten \(a_i\) der reellen Fourier-Reihe

$$\begin{aligned} f_n(x;\varvec{a}) = \sum _{i=0}^n a_i \cos (k_i x) \end{aligned}$$
(9.82)

mithilfe der Kleinste-Quadrate-Methode , d. h.

$$\begin{aligned} \chi ^2(\varvec{a}) = \int \left( f(x) - f_n(x;\varvec{a})\right) ^2\,\text {d}x. \end{aligned}$$
(9.83)

Es ergeben sich die bekannten Fourierkoeffizienten (s. Abschn. 9.4), die also die quadratischen Abweichungen der Näherung \(f_n\) von der Funktion f minimieren.

9.10

Bestimmen Sie mit einem Python-Programm die Parameter a und b einer Linearen Regression für die drei Datenpunkte \((-1;0)\), (0; 2) und (1; 1). Bestimmen Sie nun mit scipy.optimize.curve_fit() die Nichtlineare Anpassung  an die Datenpunkte.

Berechnen Sie dann das interpolierende Polynom 2. Ordnung mittels Polynomregression  und nähern Sie das Polynom mit einer linearen Funktion durch Polynomapproximation  (s. Abschn. 18.2.2) mithilfe der Legendre-Polynome . Vergleichen Sie die Approximation mit der Regression bzw. Anpassung.

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer-Verlag GmbH Deutschland, ein Teil von Springer Nature

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Gerlach, S. (2019). Numerische Standardverfahren. In: Computerphysik. Springer Spektrum, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-59246-5_9

Download citation

Publish with us

Policies and ethics