Sparse Matrix Storage Lecture #3 EEE 574 Dr. Dan Tylavsky.

Slides:



Advertisements
Similar presentations
Foundation of Computing Systems Lecture 2 Linked Lists.
Advertisements

ECE 552 Numerical Circuit Analysis Chapter Four SPARSE MATRIX SOLUTION TECHNIQUES Copyright © I. Hajj 2012 All rights reserved.
Lecture #14 EEE 574 Dr. Dan Tylavsky Matrix Inversion Lemma.
Matrices CSE, POSTECH.
Triangular Linear Equations Lecture #5 EEE 574 Dr. Dan Tylavsky.
MATH 685/ CSI 700/ OR 682 Lecture Notes
1 Copyright © 2015, 2011, 2007 Pearson Education, Inc. Chapter 4-1 Systems of Equations and Inequalities Chapter 4.
Systems of Linear Equations
Matrix Factorization Lecture #7 EEE 574 Dr. Dan Tylavsky.
CSCI 317 Mike Heroux1 Sparse Matrix Computations CSCI 317 Mike Heroux.
Numerical Triangular Factorization Lecture #11 EEE 574 Dr. Dan Tylavsky.
Sparse Triangular Matrix Equations Lecture #6 EEE 574 Dr. Dan Tylavsky.
Sparse Vector & Matrix Algebra Lecture #4 EEE 574 Dr. Dan Tylavsky.
Lecture #22 EEE 574 Dr. Dan Tylavsky Newton-Raphson Power Flow Implementation.
Graphs and Matrix Storage Structures EEE 574 Dr. Dan Tylavsky.
Lecture 19 Quadratic Shapes and Symmetric Positive Definite Matrices Shang-Hua Teng.
Analysis of Triangular Factorization Lecture #8 EEE 574 Dr. Dan Tylavsky.
EGR 106 – Week 2 – Arrays Definition, size, and terminology Construction methods Addressing and sub-arrays Some useful functions for arrays Character arrays.
EGR 106 – Week 2 – Arrays Definition, size, and terminology Construction methods Addressing and sub-arrays Some useful functions for arrays Character arrays.
Introduction to Graphs
Newton-Raphson Power Flow Algorithm
Lecture #15 EEE 574 Dr. Dan Tylavsky Breaker to Bus Modeling.
Fill Lecture #9 EEE 574 Dr. Dan Tylavsky. Fill © Copyright 1999 Daniel Tylavsky 4 When we solve Ax=b, (A sparse), fill-in will occur in the L,U factor.
Lecture #12 EEE 574 Dr. Dan Tylavsky Optimal Ordering.
1 EE 616 Computer Aided Analysis of Electronic Networks Lecture 4 Instructor: Dr. J. A. Starzyk, Professor School of EECS Ohio University Athens, OH,
Department of Geography and Urban Studies, Temple University GUS 0265/0465 Applications in GIS/Geographic Data Analysis Lecture 3: Network Data Models.
Matrix table of values
Table of Contents Matrices - Inverse of a 2  2 Matrix To find the inverse of a 2  2 matrix, use the following pattern. Let matrix A be given by... Then.
Section 8.1 – Systems of Linear Equations
Doubly Linked Lists Deleting from the end of the list – Have to traverse the entire list to stop right in front of tail to delete it, so O(n) – With head.
Matrices Write and Augmented Matrix of a system of Linear Equations Write the system from the augmented matrix Solve Systems of Linear Equations using.
ECON 1150 Matrix Operations Special Matrices
Data Structure (Part I) Chapter 2 – Arrays Data Abstraction and Encapsulation in C++ Section 1.3 –Data Encapsulation Also called information hiding.
Chapter 6 Matrices and Determinants Copyright © 2014, 2010, 2007 Pearson Education, Inc Matrix Solutions to Linear Systems.
Data Structure (Part II) Chapter 2 – Arrays. Matrix A matrix with 5 rows and 3 columns can be represented by n = 3 m = 5 We say this is a 5×3 matrix.
Arrays and 2D Arrays.  A Variable Array stores a set of variables that each have the same name and are all of the same type.  Member/Element – variable.
Two dimensional arrays in Java Computer Science 3 Gerb Objective: Use matrices in Java.
Efficiency and Flexibility of Jagged Arrays Geir Gundersen Department of Informatics University of Bergen Norway Joint work with Trond Steihaug.
Linear algebra: matrix Eigen-value Problems Eng. Hassan S. Migdadi Part 1.
JAVA AND MATRIX COMPUTATION
Solution of Sparse Linear Systems
Sparse Vectors & Matrices Jyh-Shing Roger Jang ( 張智星 ) CSIE Dept, National Taiwan University.
Parallel Solution of the Poisson Problem Using MPI
Direct Methods for Sparse Linear Systems Lecture 4 Alessandra Nardi Thanks to Prof. Jacob White, Suvranu De, Deepak Ramaswamy, Michal Rewienski, and Karen.
Slide Copyright © 2009 Pearson Education, Inc. 7.3 Matrices.
CSCI 171 Presentation 9 Matrix Theory. Matrix – Rectangular array –i th row, j th column, i,j element –Square matrix, diagonal –Diagonal matrix –Equality.
Matrices and Systems of Equations
ECE 530 – Analysis Techniques for Large-Scale Electrical Systems Prof. Hao Zhu Dept. of Electrical and Computer Engineering University of Illinois at Urbana-Champaign.
Sparse Matrices Matrix  table of values. Sparse Matrices Matrix  table of values Row 2 Column 4 4 x 5 matrix.
ECE 530 – Analysis Techniques for Large-Scale Electrical Systems Prof. Hao Zhu Dept. of Electrical and Computer Engineering University of Illinois at Urbana-Champaign.
Lab 3. Why Compressed Row Storage –A sparse matrix has a lot of elements of value zero. –Using a two dimensional array to store a sparse matrix wastes.
1 Chapter 2 Notation and Definitions Data Structures Transformations.
2.5 – Determinants and Multiplicative Inverses of Matrices.
Lecture 16 Linked Lists. In this lecture Fundamentals Applications Memory Allocation Creating a List Inserting Nodes.
Two dimensional arrays A two dimensional m x n array A is a collection of m. n elements such that each element is specified by a pair of integers (such.
Table of Contents Matrices - Definition and Notation A matrix is a rectangular array of numbers. Consider the following matrix: Matrix B has 3 rows and.
Graph Representations And Traversals. Graphs Graph : – Set of Vertices (Nodes) – Set of Edges connecting vertices (u, v) : edge connecting Origin: u Destination:
Solution of Sparse Linear Systems Numerical Simulation CSE245 Thanks to: Kin Sou, Deepak Ramaswamy, Michal Rewienski, Jacob White, Shihhsien Kuo and Karen.
Introduction Types of Matrices Operations
Programming Application in Civil Engineering
Databases and DBMSs Todd S. Bacastow January
13.4 Product of Two Matrices
1.5 Matricies.
Matrix Operations.
Abstract Data Types Sparse Matrices CSCI 240
Reminder: Array Representation In C++
Reminder: Array Representation In C++
ECEN 615 Methods of Electric Power Systems Analysis
Matrices An appeaser is one who feeds a crocodile—hoping it will eat him last. Winston Churchhill.
ENERGY 211 / CME 211 Lecture 11 October 15, 2008.
Presentation transcript:

Sparse Matrix Storage Lecture #3 EEE 574 Dr. Dan Tylavsky

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –Apply BRR(C)O/U to the following matrix

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –It is common to take advantage of symmetry when storing numerically symmetric and incidence symmetric. –When matrices are not symmetric. Any complete representation (i.e., RR(C)U/O) can be used to store asymmetric matrices. –Let’s look at some additional complete storage schemes.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –Knuth’s Storage: Used when fast access to elements by row and column is needed. Store indices to each element. Link row elements. Link column elements. Store initial row and column pointers.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –Modified Knuth’s Storage: Less storage, but longer time needed for index determination. –Use Knuth’s method with the following changes. Eliminate RIndx & CIndx Arrays Replace row (col.) end link with negative row (col.) indices

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –To find (3,1) element: Scan Row 3 and list locations of all elements. Scan column 1 and list locations of all elements. The location which occurs in both lists must be A(3,1); otherwise the (3,1) entry is a zero.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –To find indices of Scan row associated with -23 until neg. row index occurs. Scan column associated with -23 until neg. col index occurs.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –Teams: What is the (4,5) element of this matrix.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –Teams: What are the row and column indices of the entry.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –Teams: Construct the sparse matrix from the following (Modified Knuth) sparse storage scheme.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –Comparison of Static and Dynamic Matrix Sotrage Schemes. Static - Number and location of nonzeros is known apriori. (Data structure set in symbolic program seg.) Dynamic - Number and location of non-zeros is a numerical function of the matrix data or is time varying.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky Advantages of Static and Dynamic Matrix Storage Static 1) Simple storage schemes. 2) Symbolic & numerical processing done separately. 3) Separable symbolic and numerical processing leads to code simpler to create, debug, maintain. Dynamic 1) Can be used where sparsity pattern is a function of numerical content. factorization of indefinite matrices. 2) Can be used where sparsity pattern is a function of time. evolution of a network topology under switching conditions.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky Disadvantages of Static and Dynamic Matrix Storage Static 1) Must know apriori: # of non-zero elements. Position of non-zero elements. Dynamic 1) Intertwining of numerical and symbolic segments leads to complex code creation, debugging and maintenance.

The End

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –Teams: What is the (4,5) element of this matrix.

Sparse Matrix Storage © Copyright 1999 Daniel Tylavsky –Teams: Construct the sparse matrix from the following (Modified Knuth) sparse storage scheme.