Vorlesung Systemtheorie und Regelungstechnik I (SR1) Albert-Ludwigs-Universit¨at Freiburg – Sommersemester 2015 ¨ Python Einf¨ uhrung Ubungsblatt II - Scientific Python Prof. Dr. Moritz Diehl, Dr. J¨org Fischer und Lukas Klar 1. Erstellen von Arrays (a) Importieren Sie das Modul numpy und geben ihm einen einfachen Alias wie z.B. ’np’ (b) Wir wollen folgende 2x3-Matrix A als Array in numpy erstellen: 3 2 5 A= . 4 6 7 Definieren Sie dazu zun¨ achst die Liste L = [[3, 2, 5], [4, 6, 7]] . Das Array A kann nun mittels A = np.array(L) erstellt werden. (c) Warum ben¨ otigen wir den Datentyp Array? Reichen Listen nicht aus? Eine Antwort liefert ein Vergleich der Resultate von 2*A und 2*L. (d) Erstellen Sie eine 1x10 Matrix, die nur Nullen enth¨alt. Hinweis: numpy-Methode zeros() (e) Erstellen Sie eine 2x10-Matrix, die nur Einsen enth¨alt. Hinweis: numpy-Methode ones() 2. Arbeiten mit Arrays (a) Geben Sie das Element in der ersten Reihe und ersten Spalte von A aus Aufgabenteil 1b) aus. Hinweis: Indizierung wie bei Listen (b) Berechnen Sie die Matrix B = AT A. Hinweis: myArray.T, np.dot() (c) Welche Dimension hat B? Hinweis: myArray.shape (d) Addieren Sie 5 zu allen Elementen der letzten Reihe von B. (e) Geben Sie die 2. Spalte von B aus. 3. Plotting (a) Importieren Sie die plotting library matplotlib.pyplot und geben ihr einen Alias, z.B. plt (b) Was macht folgender plot Befehl? plt.plot([4,3,7,5],’o-’) Anmerkung: Wenn kein Plot erscheint, m¨ ussen Sie zus¨ atzlich plt.show() nach dem Plot Befehl aufrufen. (c) Verwenden Sie den Befehl np.linspace(arg1, arg2, arg3), um ein Zeitraster (d.h. ein dimensionales Array) zu erstellen, das den Bereich von 0 bis 10 in 100 ¨aquidistante Schritte unterteilt. Verwenden Sie dieses Zeitraster, um eine Cosinus-Funktion zu plotten. Hinweis: die Cosinus Funktion ist Teil des numpy Pakets Anmerkung: Mit plt.figure k¨ onnen Sie bei Bedarf ein ”frisches”’ Plot-Fenster erstellen. (d) Was ver¨ andert sich, wenn Sie anstatt ’o-’ den String ’b–’ oder ’r*’ in der Plot-Funktion verwenden? 1
© Copyright 2024 ExpyDoc