Mo Logo [Home] [Lexikon] [Aufgaben] [Tests] [Kurse] [Begleitmaterial] [Hinweise] [Mitwirkende] [Publikationen]

Mathematik-Online-Lexikon:

Dünn besetzte Matrizen


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Übersicht

Mit Hilfe der Befehle
  >> A=sprand(100,100,.1); B=sprand(100,100,.2); C=sprand(100,100,.3);
  >> spy(B)
werden zunächst die drei dünn besetzten $ (100\times 100)$-Matrizen A, B und C erzeugt, bei denen rund 10%, 20% bzw. 30% der Elemente von 0 verschieden sind. Das nachfolgende Bild zeigt die mittels spy(B) dargestellte Belegungsstruktur der Matrix B:
\includegraphics[width=7cm]{bsp_sparse_spy1.eps}

Rechnen mit Sparse-Matrizen:

  >> M=(A+B)*C;
  >> nnz(M)
  ans =
          9992
  >> F=full(M);
  >> whos
    Name      Size                    Bytes  Class
  
    A       100x100                   11900  double array (sparse)
    B       100x100                   22100  double array (sparse)
    C       100x100                   31688  double array (sparse)
    F       100x100                   80000  double array
    M       100x100                  120404  double array (sparse)
    ans       1x1                         8  double array
  
  Grand total is 25374 elements using 266100 bytes
Verknüpfungen von Sparse-Matrizen (wie bei der Berechnung von M) ergeben wiederum Sparse-Matrizen. Dabei ist jedoch darauf zu achten, dass der Belegungsgrad steigen und die Verwendung des Sparse-Formats damit ggf. ineffizient sein kann. In dem betrachteten Beispiel ist M aufgrund der 9992 von 0 verschiedenen Elemente nahezu vollbesetzt und benötigt gegenüber der in F gespeicherten Variante im double array Format rund 50% mehr Speicherplatz.

Wie das nachfolgende Beispiel zeigt, enstehen bei der Verknüpfung von Matrizen im dünn- und vollbesetzten Format stets vollbesetzte Ergebnismatrizen:

  >> X=C-F;
  >> whos X
    Name      Size                    Bytes  Class
  
    X       100x100                   80000  double array
  
  Grand total is 10000 elements using 80000 bytes
(Autoren: Hörner/Wipper)

[Verweise]

  automatisch erstellt am 12.  1. 2007