Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Datenstrukturen 6. Thema: Arbeiten mit Feldern. Was sind Felder? Ein Feld ist eine Datenstruktur, deren Elemente alle von derselben skalaren Datenart.

Ähnliche Präsentationen


Präsentation zum Thema: "Datenstrukturen 6. Thema: Arbeiten mit Feldern. Was sind Felder? Ein Feld ist eine Datenstruktur, deren Elemente alle von derselben skalaren Datenart."—  Präsentation transkript:

1 Datenstrukturen 6. Thema: Arbeiten mit Feldern

2 Was sind Felder? Ein Feld ist eine Datenstruktur, deren Elemente alle von derselben skalaren Datenart sind Elemente sind ein- oder mehrdimensional angeordnet Anordnung in einer Dimension wird durch einen Index beschrieben

3 Eigenschaften von Feldern: gleichwertige Elemente Länge einer Dimension ist unabhängig vom Wert der Indices in den anderen Dimensionen (keine Lücken)

4 Unterteilung: Felder (arrays) Matrizen Skalare (1*1-Matrizen) Vektoren (Zeilen- und Spaltenvektoren) n*m-Matrizen Mehrdimensionale Felder

5 Anlegen von Feldern (per Hand): Matrizen A = [a11 a12 a13; a21 a22 a23] Vektoren - Zeilenvektoren: - b = [a11 a12 a13] - Spaltenvektoren - d = [a11; a21; a31]

6 Anlegen von Feldern (per Hand): mehrdimensionale Felder Matrix A Matrix B ____________ C(:, :, 1) = A C(:, :, 2) = B

7 Besondere Funktionen zum Anlegen von Zeilenvektoren c = [Start: Schrittweite: Ende] linspace linspace(-2,+3,50) liefert einen Vektor mit 50 zwischen -2 und +3 äquidistant verteilten Werten. logspace logspace(-2,+2,2000) liefert einen Vektor mit 2000 Werten, die auf einer logarithmisch skalierten Strecke zwischen 1.0e-2 und 1.0e+2 äquidistant verteilt sind.

8 Besondere Funktionen zum Anlegen von Matrizen Magisches Quadrat A = magic(Länge) Einheitsmatrizen B = eye(Länge (, Länge) ) ones - liefert Felder beliebiger Gestalt, bei denen alle Elemente den Wert 1 haben. zeros - liefert Felder beliebiger Gestalt, bei denen alle Elemente den Wert 0 haben.

9 Besondere Funktionen zum Anlegen von mehrdimensionalen Feldern Die Matlab-Funktion rand liefert Felder, deren Elemente gleichverteilte Zufallszahlen im Intervall(0,1) sind. rand(1,n) liefert einen Zeilenvektor der Länge n rand(n,1) liefert eine Spaltenvektor der Länge n rand(n) liefert eine quadratische n*n Matrix rand(n,m) liefert eine n*m Matrix rand(n,m,p) liefert ein n*m*p Feld

10 Besondere Funktionen zum Anlegen von mehrdimensionalen Feldern randn liefert Felder beliebiger Gestalt, bei denen die Elementwerte normalverteilt mit Mittelwert 0 und Standardabweichung 1 sind.

11 Zugriff auf Feldbereiche Vektoren - a(Index_D1) Matrizen und mehrdimensionale Felder - Elemente:B(Index_D1, Index_D2) - Bereiche:B(Index_D1, b23: b25) - Zeilen:B(Index_D1, :) - Spalten:B(:, Index_D2)

12 Rechenoperation auf Felder Matrizen transponieren: A‘ Matrizen mit Matrizen oder Vektoren multiplizieren - B * C - D * e Komponentenweise Berechnung - t. * t Inverse einer Matrix:inv(A) Rangrank(A) Determinantedet(A) Summe (Differenz)A + B (A - B) p-te PotenzA^p Skalarprodukt zweier Vektorenx‘ * y Äußeres Produkt zweier Vektorenx * y' Multiplikation mit Skalar cc * x Matrix-Vektor ProduktA * x Eine Besonderheit in MATLAB stellt die Matrix-Division dar. Hierbei gilt: X=A\B ist Lösung der Gleichung A*X=B X=B/A ist Lösung der Gleichung X*A=B Wenn bei der Matrix-Division anstelle der Matrix B ein Vektor b verwendet wird, so stell x=A\b gerade die Lösung des linearen Gleichungssystems A*x=b dar; bei der Lösung wird der Gaußsche Algorithmus verwendet. Eigenwerte und Eigenvektoren einer Matrix A können folgendermaßen berechnet werden: Vektor x der Eigenwerte: x=eig(A) Matrix X der Eigenvektoren, Diagonalmatrix D der Eigenwerte: [X,D]=eig(A)

13 Rechenoperation auf Felder sum(Feld) – Addition aller Spalten sum(Feld‘) – Addition aller Zeilen sum(sum(Feld)) – Addition aller Feld Feldelemente, is auch mit dem Platzhalter ‘:‘ kombinierbar

14 Rechenoperation auf Felder Cat – Mit Hilfe dieser Funktion kann man aus Feldern solche mit höheren Dimension aufbauen. Bsp.:cat(3, 2.0, 2.2, 2.4) ans(:,:,1) = 2 ans(:,:,2) = ans(:,:,3) =


Herunterladen ppt "Datenstrukturen 6. Thema: Arbeiten mit Feldern. Was sind Felder? Ein Feld ist eine Datenstruktur, deren Elemente alle von derselben skalaren Datenart."

Ähnliche Präsentationen


Google-Anzeigen