Slide 1

Slide 1 text

Final Project GHS_psde@apache1 Matrix Edgar Marca [email protected] GA-026 — Ciência da Computação: Algoritmos I Prof. Carla Osthoff e Prof. Roberto Souto Petrópolis, Rio de Janeiro - Brazil September 8th, 2015 1 / 20

Slide 2

Slide 2 text

Summary Introduction Matrix Properties Computational Experiments Conclusions References 2 / 20

Slide 3

Slide 3 text

Introduction

Slide 4

Slide 4 text

Introduction Introduction I Structural analysis is the determination of the effects of load on physical structures and their components. Structures subject to this type of analysis include all the must withstand loads, such as buildings, bridges, vehicles, machinery, furniture, attire, soil strata, prostheses and biological tissue. Solving this kind of problems using partial differential equations it leads to a sparse matrix using a discretization method like finite differences method or finite elements method. 4 / 20

Slide 5

Slide 5 text

Introduction Introduction II Standard discretizations of Partial Differential Equations typically lead to large and sparse matrices. A sparse matrix is defined as a matrix which has very few nonzero elements. But, in fact, a matrix can be termed sparse whenever special techniques can be utilized to take advantage of the large number of zero elements and their locations. The methods to solve this kind matrices should economical, both in terms of storage and computational effort. Sparse direct solvers can handle very large problems that cannot be tackled by the usual "dense" solvers. GHS_psde@apache1 Matrix appears while using 3D finite differences in the structural analysis. 5 / 20

Slide 6

Slide 6 text

Introduction Example For example, if we model the displacements of a bridge, see image 8, we will end up with a matrix equation of the form Kd = f (1) where ▶ K: Stiffness Matrix. ▶ d: Vector of Displacement. ▶ f: Vector of forces/tensions. Figure: Design and Structural Analysis of a bridge. 6 / 20

Slide 7

Slide 7 text

Matrix Properties

Slide 8

Slide 8 text

Matrix Properties GHS_psde@apache1 Matrix Properties I GHS_psde@apache1 Matrix is a sparse, semi definite positive and structured matrix and the other properties can be seen in Table 1. (a) GHS_psde@apache1 Matrix Structure. (b) Undirected Graph of GHS_psde@apache1. 80800 nodes, 230692 edges. 8 / 20

Slide 9

Slide 9 text

Matrix Properties GHS_psde@apache1 Matrix Properties II Matrix properties Number of rows 80,800 Number of columns 80,800 Nonzeros 542,184 Structural full rank? yes Structural rank 80,800 Structure symmetric Type real Cholesky candidate? yes Positive definite? yes Table: Properties of GHS_psde@apache1 Matrix. 9 / 20

Slide 10

Slide 10 text

Computational Experiments

Slide 11

Slide 11 text

Computational Experiments Environment For the computational experiments we used a computer with the following characteristics: ▶ Model Name: MacBook Pro. ▶ Processor Name: Intel Core i7. ▶ Processor Speed: 3 GHz. ▶ Operating System: OSX Yosemite 10.10.4 ▶ RAM: 16 GB. ▶ Octave: 3.8.2 11 / 20

Slide 12

Slide 12 text

Computational Experiments Experiement Results [L] = col(A, ’lower’) Matrix mnz(A) mnz(L) flops nit T(s) A 542,184 64,785,843 52,242,136,069 3 3.8672 Apost 542,184 64,785,843 52,242,136,069 3 4.4576 Aamd 542,184 12,720,302 8,395,899,568 13 0.8320 Arcm 542,184 43,696,522 26,530,498,454 4 2.9529 Table: Experiment results of A, Apost , Aamd and Arcm matrices. ▶ A: Sparse Matrix. ▶ Apost : Sparse Matrix permutated according Ordered Tree Elimination (etree). ▶ Aamd : Sparse Matrix permutated according with Approximate Minimum Degree (AMD) method. ▶ Arcm : Sparse Matrix permutated using Symmetric reverse Cuthill-McKee (SymRCM) method. ▶ T(s): Average Time in seconds. ▶ nit: Number of running times. 12 / 20

Slide 13

Slide 13 text

Computational Experiments Matrix Structures (c) A Matrix Structure. (d) Apost Matrix Structure. (e) Aamd Matrix Structure. (f) Arcm Matrix Structure. 13 / 20

Slide 14

Slide 14 text

Computational Experiments Matrix Structures (g) L Matrix Structure. (h) Lpost Matrix Structure. (i) Lamd Matrix Structure. (j) Lrcm Matrix Structure. 14 / 20

Slide 15

Slide 15 text

Conclusions

Slide 16

Slide 16 text

Conclusions Conclusions ▶ Our experiments show that Aamd is a good strategy to factorize and calculate the cholesky factorization of GHS_psde@apache1. 16 / 20

Slide 17

Slide 17 text

Conclusions Conclusions ▶ Our experiments show that Aamd is a good strategy to factorize and calculate the cholesky factorization of GHS_psde@apache1. ▶ Aamd is effective in memory and number of operations according to table 2. 17 / 20

Slide 18

Slide 18 text

Conclusions Conclusions ▶ Our experiments show that Aamd is a good strategy to factorize and calculate the cholesky factorization of GHS_psde@apache1. ▶ Aamd is effective in memory and number of operations according to table 2. ▶ Apost has the worst performance. 18 / 20

Slide 19

Slide 19 text

References

Slide 20

Slide 20 text

References References [1] John W. Eaton et al. GNU Octave. 2015. url: https://www.gnu.org/software/octave/octave.pdf (visited on 09/07/2015). [2] The University of Florida Sparse Matrix Collection. Matrix: GHS_psdef/apache1. 2015. url: http://cise.ufl.edu/ research/sparse/matrices/GHS_psdef/apache1.html (visited on 09/07/2015). [3] Joe Polin. Design and Structural Analysis of Bridge SolidWorks, Finite Element Analysis. 2015. url: https: //fling.seas.upenn.edu/~jpolin/cgi-bin/projects.php (visited on 09/07/2015). [4] Yousef Saad. Iterative Methods for Sparse Linear Systems. Second. Society for Industrial and Applied Mathematics, 2003. [5] Wikipedia. Structural analysis. 2015. url: https://en.wikipedia.org/wiki/Structural_analysis (visited on 09/07/2015). 20 / 20