Code
42 + 137)/0.815 (
219.6319018404908
Wenn man es mit komplexen Modellen, vielen Daten, oder nur numerisch lösbaren Problemen zu tun hat, verwendet man in der Mathematik sehr gerne den Computer (deutsch: Rechner, to compute = berechnen) in Verbindung mit einer passenden Software. Aber auch zum Visualisieren und zum Überprüfungen von Handrechnungen ist der Computer sehr hilfreich.
Unter dem Begriff “Scientific Computing” (deutsch: Wissenschaftliches Rechnen) versteht man die computergestützte Entwicklung von Modellen und Algorithmen zur Simulation und Optimierung, um Fragestellungen aus den Natur-, Ingenieur- und Wirtschaftswissenschaften zu beantworten.
Im Diesem Kapitel finden Sie:
Warum Python für wissenschaftliches Rechnen? Python ist eine freie, offene, plattformunabhängige, üblicherweise interpretierte, höhere Programmiersprache. Python Code ist gut lesbar und einfach zu lernen. Es gibt sehr viele Pakete und Einsatzgebiete für Python, siehe PyPI - the Python Package Index. Für den Bereich des wissenschaftlichen Rechnens sind insbesondere folgende Python-Pakete nützlich:
Python erfreut sich einer großen und wachsenden Beliebtheit und besitzt daher eine umfangreiche und breitgefächert Community. So ziemlich jedes Problem mit Lösung/en findet man z. B. unter stackoverflow. Der Name bezieht sich übrigens auf die englische Komikergruppe Monty Python.
In dieser Lehrveranstaltung verwenden wir den Computer nur einführend, vereinzelt und unterstützend für Visualisierungen, Überprüfungen von Handrechnungen und Berechnungen, die von Hand zu aufwendig wären. Dieses ersten Scientific Computing Kompetenzen sind für diese Lehrveranstaltung nicht prüfungsrelevant, sie werden in den anschließenden Semestern aber vertieft und sind ab dem zweiten Semester prüfungsrelevant.
Zu den alternativen Programmiersprachen im Bereich wissenschaftliches Rechnen zählen:
Wir verwenden in dieser Lehrveranstaltung Thonny, eine integrierte Entwicklungsumgebung für Python, die sich an Anfänger richtet. Thonny ist übersichtlich, einfach zu bedienen und wie Python frei, offen und plattformunabhängig.
Unter thonny.org finden Sie Installationsanweisungen, FAQ und ein Wiki. Wenn Sie im Tools
Menü Manage packages...
auswählen, können Sie Python-Pakete installieren, aktualisieren und deinstallieren.
Nach einem Tutorial zum Arbeiten mit Thonny werden einige typische Python-Code-Schnipsel zur Verfügung gestellt. Wer Python von Grund und gründlich lernen möchte, kann z. B. die folgenden Bücher [1], [2] verwenden
Die Seite Thonny: The Beginner-Friendly Python Editor bietet einen guten Einstieg in das User Interface, den Code Editor, den Package Manager und einige weitere wichtige Features von Thonny.
In der Python-Shell können Sie intuitiv Rechnungen eintippen. Hier ein paar Beispiele:
Achtung: Das Dezimaltrennzeichen ist im Englischen ein Punkt, und Potenzieren wird mit **
implementiert!
Um die elementaren mathematischen Funktionen zu verwenden, müssen Sie zuerst, und nur einmal, das NumPy-Paket importieren. Wir verwenden das Kürzel np
, um die Funktionen von NumPy anzusprechen.
Kommentare beginnen mit einem #
. Sie werden vom Computer ignoriert, sind aber für Menschen hilfreich, um den Code besser zu verstehen.
Beachten Sie, dass 3.6739403974420594e-16
gleich \(3{,}6739403974420594 \cdot 10^{-16}\) ist. Das ist im Rahmen der numerischen Rechengenauigkeit “praktisch Null”. Vergleichen Sie den exakten Wert \(3 \cdot e^{j\pi} = 3 \cos(\pi) + 3 j \sin(\pi) = 3 \cdot (-1) + 3j \cdot 0 = -3\).
Hallo! My name is Klaus.
I like_math = True
I am 50 years old. These are about 18250 days.
A value: 12.35
In der Mathematik ist ein Vektor des \(\mathbb{R}^n\) eine geordnete Liste von \(n\) reellen Zahlen. In Python werden Listen (nicht nur von Zahlen) z. .B. mit eckigen Klammern erzeugt:
Allerdings ist z. B. die Addition von Python-Listen nicht elementweise wie die Addition von Vektoren in der Mathematik:
Um den gewünschten Effekt von Addition und Skalarmultiplikation für Vektoren zu erreichen machen wir die Python-Listen zu NumPy-Arrays:
Es gibt einige hilfreiche NumPy-Funktionen, um oft gebrauchte Typen von NumPy-Arrays zu erzeugen, z. B.:
[ 0. 5. 10. 15. 20. 25. 30. 35. 40. 45. 50.]
import matplotlib.pyplot as plt
# define the function f:
def f(x):
return x**2
# 50 grid points distributed between -2 and 2 with equal spacing:
x = np.linspace(-2, 2, num=50)
# plot the function at the grid points:
plt.figure(figsize=(4, 3))
plt.plot(x, f(x), linestyle='-', color='red', marker='.')
plt.xlabel('x')
plt.ylabel('f(x)')
plt.grid(True)
plt.show()
Balance after 1 years = 1050.00 EUR.
Balance after 2 years = 1102.50 EUR.
Balance after 3 years = 1157.63 EUR.
Balance after 4 years = 1215.51 EUR.
Balance after 5 years = 1276.28 EUR.
Wir berechnen die Fakultät einer natürlichen Zahl \(n > 0\):
Wir bestimmen das Vorzeichen von ein paar Zahlen:
-3 hat das Vorzeichen -.
-2 hat das Vorzeichen -.
-1 hat das Vorzeichen -.
0 hat kein Vorzeichen.
1 hat das Vorzeichen +.
2 hat das Vorzeichen +.
3 hat das Vorzeichen +.
Beachte: Eine If-Elif-Else Abfrage muss nicht zwingend elif
oder else
Teile haben.