Grenzwerte bestimmen, Differenzialgleichungen lösen, Testreihen visualisieren und vieles mehr die Ingenieurs- und Naturwissenschaften stecken voller Aufgaben, die Sie elegant mit Python lösen können. Zahlreiche Module und Librarys stehen bereit, mit denen Sie Rechnungen automatisieren, Simulationen erstellen und Daten grafisch aufbereiten. Wie das geht, zeigen Ihnen die übersichtlich strukturierten Kapitel dieses Handbuchs, reich garniert mit praxisbezogenen Erklärungen, Codebeispielen und Musterlösungen.
- Das Praxisbuch für Studium und Beruf
- Die wichtigsten Python-Bibliotheken für Wissenschaftler und Ingenieure: NumPy, SciPy und Matplotlib
- Numerische Algebra, Differenzialgleichungen, Statistik, 3D-Animation
Aus dem Inhalt:
- Python: Grundlagen und Sprachstruktur
- Boolesche Algebra
- Statistische Berechnungen
- Rechnen mit komplexen Zahlen
- Numerische Berechnungen mit NumPy
- Computeralgebra mt SymPy
- Funktionsdarstellungen mit Matplotlib
- Simulationen mit SciPy
- 3D-Grafik mit VPython
Beispielrechnungen und Lösungswege für Studium und Beruf
Autorentext
Dr. Veit Steinkamp hat Elektrotechnik und Deutsch für das Lehramt studiert und dieses Wissen an beruflichen Schulen und Fachhochschulen weitergegeben. Dort hat er E-Technik, Anwendungsentwicklung und Maschinenbautechnik unterrichtet sowie Lehraufträge in Theoretischer Elektrotechnik und den Grundlagen der Elektrotechnik durchgeführt. Die Faszination für Mathematik und das Programmieren gibt er in diesem Buch weiter.Wenn Sie mehr über Veit Steinkamp und seine Python-Bücher erfahren möchten, besuchen Sie seine Webpräsenz auf drsteinkamp.de.
Inhalt
Materialien zum Buch ... 14
1. Einführung ... 15
1.1 ... Entwicklungsumgebungen ... 16
1.2 ... Die Module von Python ... 20
1.3 ... Die Schlüsselwörter von Python ... 25
1.4 ... Ihr Weg durch dieses Buch ... 26
2. Programmstrukturen ... 29
2.1 ... Lineare Programmstruktur ... 29
2.2 ... Funktionen ... 38
2.3 ... Verzweigungsstrukturen ... 47
2.4 ... Wiederholungsstrukturen ... 52
2.5 ... Datenstrukturen ... 67
2.6 ... Funktionaler Programmstil ... 81
2.7 ... Objektorientierter Programmstil ... 84
2.8 ... Projektaufgabe: Dimensionierung einer Welle ... 91
2.9 ... Aufgaben ... 93
3. Numerische Berechnungen mit NumPy ... 95
3.1 ... NumPy-Funktionen ... 95
3.2 ... Vektoren ... 106
3.3 ... Matrizenmultiplikation ... 114
3.4 ... Lineare Gleichungssysteme ... 122
3.5 ... Projektaufgabe: Blitzschutzsystem ... 126
3.6 ... Aufgaben ... 129
4. Funktionsdarstellungen und Animationen mit Matplotlib ... 131
4.1 ... 2D-Funktionsplots ... 131
4.2 ... 3D-Funktionsplots ... 174
4.3 ... Vektoren ... 179
4.4 ... Figuren, Linien und Pfeile darstellen ... 183
4.5 ... Animationen ... 191
4.6 ... Projektaufgabe: Stirling-Kreisprozess ... 200
4.7 ... Projektaufgabe: Animation eines Fadenpendels ... 207
4.8 ... Projektaufgabe: Animation eines Getriebes ... 211
4.9 ... Aufgaben ... 215
5. Symbolisches Rechnen mit SymPy ... 219
5.1 ... Mathematische Grundoperationen ... 223
5.2 ... Matrizen multiplizieren ... 230
5.3 ... Gleichungen ... 233
5.4 ... Vereinfachungen von Ausdrücken ... 239
5.5 ... Reihenentwicklung ... 241
5.6 ... Partialbrüche ... 242
5.7 ... Kettenbrüche ... 244
5.8 ... Grenzwerte ... 248
5.9 ... Differenzieren ... 252
5.10 ... Integrieren ... 255
5.11 ... Differenzialgleichungen ... 260
5.12 ... Laplace-Transformation ... 270
5.13 ... Projektaufgabe: Sprungantwort einer Kettenschaltung ... 279
5.14 ... Projektaufgabe: Durchbiegung eines einseitig eingespannten Balkens ... 281
5.15 ... Projektaufgabe: Reaktionskinetik ... 287
5.16 ... Projektaufgabe: Zweimassenschwinger ... 291
5.17 ... Aufgaben ... 294
6. Numerische Berechnungen und Simulationen mit SciPy ... 297
6.1 ... Nullstellen numerisch berechnen ... 298
6.2 ... Optimierungen ... 300
6.3 ... Interpolationen ... 302
6.4 ... Numerisches Differenzieren ... 304
6.5 ... Numerisches Integrieren ... 312
6.6 ... Differenzialgleichungen numerisch lösen ... 327
6.7 ... Diskrete Fourier-Transformation ... 349
6.8 ... Schreiben und Auslesen von Sounddateien ... 356
6.9 ... Signalverarbeitung ... 359
6.10 ... Projektaufgabe: Simulation eines Wälzlagerschadens ... 365
6.11 ... Projektaufgabe: Räuber-Beute-Modell ... 368
6.12 ... Projektaufgabe: Simulation einer Epidemie ... 373
6.13 ... Aufgaben ... 375
7. 3D-Grafik und Animationen mit VPython ... 379
7.1 ... Das Koordinatensystem ... 380
7.2 ... Grundkörper, Punkte und Linien ... 382
7.3 ... Körper bewegen sich ... 397
7.4 ... Animation von Schwingungen ... 411
7.5 ... Ereignisverarbeitung ... 416
7.6 ... Projektaufgabe: Animation eines gekoppelten Federpendels ... 419
7.7 ... Projektaufgabe: Animation von zwei gekoppelten Fadenpendeln ... 422
7.8 ... Aufgaben ... 425
8. Rechnen mit komplexen Zahlen ... 427
8.1 ... Mathematische Operationen ... 428
8.2 ... Die eulersche Formel ... 430
8.3 ... Rechnen mit komplexen Widerständen ... 432
8.4 ... Funktionsplots mit komplexen Größen ... 435
8.5 ... Projektaufgabe: Elektrisches Energieübertragungssystem ... 439
8.6 ... Aufgaben ... 445
9. Statistische Berechnungen ... 447
9.1 ... Messwerte erzeugen, abspeichern und auslesen ... 449
9.2 ... Häufigkeitsverteilung ... 454
9.3 ... Lageparameter ... 457
9.4 ... Streuungsparameter ... 461
9.5 ... Normalverteilung ... 465
9.6 ... Schiefe ... 468
9.7 ... Regressionsanalyse ... 470
9.8 ... Projektaufgabe: Simulation einer Qualitätsregelkarte ... 475
9.9 ... Aufgaben ... 480
10. Boolesche Algebra ... 483
10.1 ... Logische Verknüpfungen ... 484
10.2 ... Gesetze der booleschen Algebra ... 488
10.3 ... Schaltungssynthese ... 490
10.4 ... Projektaufgabe: Siebensegmentcodierung ... 495
10.5 ... Aufgaben ... 498
11. Interaktive Programmierung mit Tkinter ... 501
11.1 ... Interaktionen mit Befehlsschaltflächen, Textfeldern und Bezeichnungsfeldern ... 503