Python für Ingenieure und Naturwissenschaftler - Einführung in die Programmierung, mathematische Anwendungen und Visualisierungen

Hans-Bernhard Woyand

Python für Ingenieure und Naturwissenschaftler

Einführung in die Programmierung, mathematische Anwendungen und Visualisierungen

2020

354 Seiten

Format: PDF, ePUB, Online Lesen

E-Book: €  23,99

E-Book kaufen

E-Book kaufen

ISBN: 9783446464841

 

Vorwort

6

Inhalt

10

1 Einführung

16

1.1 Die Programmiersprache Python

16

1.2 Hinweise zur Installation

17

1.3 Erste Schritte – der Python-Interpreter

18

1.3.1 Addition und Subtraktion

19

1.3.2 Multiplikation und Division

19

1.3.3 Vergleichsausdrücke

21

1.3.4 Logische Ausdrücke

22

1.3.5 Mathematische Funktionen

22

1.3.6 Grundlegendes über Variablen und Zuweisungen

24

1.3.7 Zeichenketten (Strings)

25

1.3.8 Turtle-Grafik

25

1.4 Python-Programme mit IDLE erstellen

27

1.5 Aufgaben

33

1.6 Lösungen

37

2 Grundlagen

46

2.1 Einfache Objekttypen

46

2.1.1 Ganze Zahlen – Integer

46

2.1.2 Gleitpunktzahlen – Float

48

2.1.3 Komplexe Zahlen – Complex

49

2.1.4 Zeichenketten – Strings

51

2.1.5 Aufgaben

56

2.1.6 Lösungen

58

2.2 Operatoren und mathematische Standardfunktionen

61

2.2.1 Operatoren zur arithmetischen Berechnung

61

2.2.2 Mathematische Standardfunktionen

62

2.2.3 Aufgaben

64

2.2.4 Lösungen

65

2.3 Variablen und Zuweisungen

66

2.4 Funktionen

71

2.4.1 Funktionen mit Rückgabewert

72

2.4.2 Funktionen ohne Rückgabewert

75

2.4.3 Aufgaben

77

2.4.4 Lösungen

79

2.5 Ein- und Ausgabe

80

2.6 Programmverzweigungen

83

2.6.1 Einfache if-Anweisung

83

2.6.2 Erweiterte if-Anweisung

85

2.6.3 Aufgaben

87

2.6.4 Lösungen

88

2.7 Bedingungen

88

2.8 Programmschleifen

90

2.8.1 for-Schleifen

91

2.8.2 while-Schleifen

95

2.9 Aufgaben

99

2.10 Lösungen

100

3 Vertiefung

104

3.1 Listen

104

3.1.1 Aufgaben

109

3.1.2 Lösungen

111

3.2 Tupels

115

3.3 Sets – Mengen

116

3.4 Dictionaries

118

3.4.1 Aufgaben

121

3.4.2 Lösungen

122

3.5 Slicing

125

3.6 List Comprehensions

128

3.7 Iteratoren und die zip-Funktion

129

3.8 Funktionen, Module und Rekursion

131

3.8.1 Schlüsselwort-Parameter

131

3.8.2 Module

132

3.8.3 Rekursion

134

3.8.4 Globale und lokale Variablen

136

3.9 Turtle-Grafik – verbessert

138

3.10 Dateien lesen und schreiben

140

3.11 Aufgaben

145

3.12 Lösungen

151

4 Objektorientiertes Programmieren

164

4.1 Klassen und Objekte

164

4.1.1 Die Grundidee

165

4.1.2 Klassen

166

4.1.3 Methoden

168

4.2 Konstruktoren und Destruktoren

173

4.3 Überladen von Operatoren

176

4.4 Vererbung

180

4.5 Aufgaben

184

4.6 Lösungen

187

5 Numerische Berechnungen mit Numpy

198

5.1 Hinweise zur Installation

198

5.2 Arrays

199

5.3 Darstellung von Matrizen

200

5.4 Spezielle Funktionen

201

5.5 Operationen

202

5.6 Lineare Algebra

203

5.7 Zufallswerte

205

5.8 Aufgaben

205

5.9 Lösungen

207

6 Grafische Darstellungen mit Matplotlib

210

6.1 Hinweise zur Installation

210

6.2 XY-Diagramme

210

6.3 Balkendiagramme

215

6.4 Tortendiagramme

217

6.5 Polardiagramme

218

6.6 Histogramme

219

6.7 Subplots

220

6.8 Axes

222

6.9 Anmerkungen und Legenden

224

6.10 Aufgaben

226

6.11 Lösungen

226

7 Computeralgebra mit Sympy

230

7.1 Hinweise zur Installation

231

7.2 Differentiation

231

7.3 Integration

232

7.3.1 Unbestimmte Integrale

233

7.3.2 Bestimmte Integrale

233

7.3.3 Uneigentliche Integrale

234

7.4 Potenzreihen

235

7.5 Matrizenrechnung – lineare Algebra

235

7.6 Die Datentypen Rational und Float

237

7.7 Nützliche Ergänzungen

238

7.8 Aufgaben

241

7.9 Lösungen

242

8 3D-Grafik mit VPython 7

246

8.1 Hinweise zur Installation

246

8.2 Szenen

247

8.3 Grundkörper

252

8.4 Dreieck- und Viereckflächen (Triangle/Quad)

258

8.4.1 triangle

258

8.4.2 quad

259

8.4.3 STL-Dateien lesen und mit VPython darstellen

260

8.5 Widgets

263

8.6 Steuerung mit Tastatur und Maus

267

8.7 Aufgaben

275

8.8 Lösungen

277

9 Python-Versionen, Programmbibliotheken und Distributionen

286

9.1 Python 2

287

9.2 Die Python-Distribution Anaconda

289

9.3 Die Python-Distribution WinPython

291

9.4 Aufgaben

291

9.5 Lösungen

293

10 Numerische Analysen mit Scipy

296

10.1 Hinweise zur Installation

297

10.2 Numerische Berechnung von Integralen

297

10.3 Interpolation

299

10.4 Berechnung von Nullstellen – Rootfinding

302

10.5 Optimierung

304

10.6 Signalanalyse mit der Schnellen Fourier Transformation (FFT)

308

10.7 Numerische Integration gewöhnlicher Differenzialgleichungen

312

10.8 Delaunay-Triangulierung

318

10.9 Berechnung der konvexen Hülle

319

10.10 Aufgaben

321

10.11 Lösungen

323

11 Bildverarbeitung mit scikit-image

332

11.1 Hinweise zur Installation

332

11.2 Bilder einlesen, darstellen und ausgeben

332

11.3 Farbbilder in Graustufenbilder wandeln und Bilder skalieren

334

11.4 Graustufenbild durch Programmanweisungen erzeugen

335

11.5 Ecken ermitteln – Corner Detection

337

11.6 Kanten detektieren – Canny-Filter

338

11.7 Kreise erkennen – Hough-Transformation

339

11.8 Abgleich von Vorlagen – Template-Matching

342

11.9 Aufgaben

344

11.10 Lösungen

345

Literaturverzeichnis

348

Index

350

 

© 2009-2021 ciando GmbH