SlideShare uma empresa Scribd logo
1 de 44
Baixar para ler offline
LCAD - Laboratório de Computação de Alto Desempenho
Departamento de Informática - CT/UFES LCAD
Introdução a Computação
Científica
Lucia Catabriga
TEI: Computação Científica Combinatorial
Sumário
● Processos de Solução
● Método das Diferenças Finitas
● Método dos Elelentos Finitos
● Estrutura de Dados envolvidas
Processo de Solução
• Fenômeno Natural
• Modelo Matemático - Equações Governantes
• Métodos de Aproximação
Diferenças Finitas
Volumes Finitos
Elementos Finitos
Elementos de Contorno
Etapas de Solução
Pré-processamento dos dados:
• Condições de Contorno
• Condições Iniciais
• Definição do domínio discretizado
Processamento de solução:
• Para cada ponto de interesse do domínio discretizado
da malha montar estrutura de solução
• Obter solução aproximada ou solução no tempo corrente
Pós-processamento dos Resultados:
• Visualização e análise dos resultados obtidos
Exemplo do Processo de Solução
Domínio Real Domínio Discretizado
Solução
Aproximada
Dispersão de Poluentes na Baía de Guanabara
Processo de Solução
Equação Diferencial
Parcial
Aproximação do domínio
Solução do Sistema
(Linear ou Não-Linear)
Não dependem do Tempo
Equação Diferencial
Parcial
Aproximação do domínio
Eq. Diferencial Ordinária
Aproximação no Tempo
Solução do Sistema
em cada passo de tempo
Dependem do Tempo
Método das Diferenças Finitas (MDF)
Equação Diferencial
Discretização do
Domínio
Equação de
Diferenças Finitas
Solução de Sistemas
Lineares ou Não Lineares
Método dos Elementos Finitos
Equação Diferencial
Discretização do
Domínio
Equação Integral
Aproximação
Solução de Sistemas
Lineares ou Não Lineares
MDF: exemplo de solução para equação 1D
0 1 1 1 1
0
0 1
i i i n
i
x x x x x x
x x i x
  
      
  
 
Equação diferencial contínua
1- Discretização do Domínio:
2 - Aproximação das derivada por “diferenças”:
1
' , ( )
i i
u u
u O x
x


 

1
' , ( )
i i
u u
u O x
x
 
 

2
1 1
' , ( )
2
i i
u u
u O x
x
 

 

2
1 1
2
2
'' , ( )
i i i
u u u
u O x
x
 
 
 

'' (0,1)
(0) (1) 0
u f em
u u



 

MDF: exemplo de solução para equação 1D
2 - Aproximação das derivada por “diferenças”:
     
2 2 2
1 1
1 2 1 , 1, ,
i i i i
b a b
u u u f i n
x x x
 
    
  





 


 




A é tridiagonal
1 1 0
2 2
1 1
1
n n
n n n
u f bu
a b
u f
b a b
u f
b a b
u f bu
b a
 


   
 
   
 
   
 

   
 
   
 
   
 
   
  
     
 
  
0
0
a b
b a b
b a b
b a
 
 
 
 
 
 
 
 
  
MDF: exemplo de solução para equação 2D
0 1 1 1 1 0
0 1 1 1 1 0
0 1,
0 1,
i i i n i
j j j m j
x x x x x x x x i x
y y y y y y y y j y
  
  
         
         
 
 
Equação diferencial contínua
1- Discretização do Domínio:
2 - Aproximação das derivada por “diferenças”:
1, 1, 2
, ( )
2
i j i j
u u
u
O x
x x
 


 
 
2
1, 1, 2
2 2
2
, ( )
i j ij i j
u u u
u
O x
x x
 
 

 
 
2 2
2 2
2 2
(0,1) (0,1)
( , ) / ( , )
u u
u f em
x y
u
u g x y e ou h x y em
  
     

  


   
 
 n

MDF: exemplo de solução para equação 2D
Numeração das incognitas:
1, 1, , 1 , 1
2 2
1 1
2 2
2 2
, 1, , 1, ,
2 2
, 1, ,
i j ij i j i j ij i j
ij
I I I I n I I n
I
u u u u u u
f i n j m
x y
u u u u u u
f I N
x y
   
   
   
   
 
   
  
 
 

MDF: exemplo de solução para equação 2D
2 - Aproximação das derivada por “diferenças”:
 
 
2 2 2 2
1
2 2
1
1 1 1 1
2
1 1 , 1, ,
I n I I
b
c a
I I n I
b c
u u u
y x x y
u u f I n m
x y
 
 
   
  
   
   
   
 
    
 
 
 








 








 



A é Pentadiagonal
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
0
0
0
0
S O
S
S L
O
L
O N
N
N L
u f cu bu
a b c
u f cu
b a b c
u f cu bu
b a c
u f bu
c a b c
u f
c b a b c
u f bu
c b a c
u f bu cu
c a b
u f cu
c b a b
u f cu bu
c b a
 
   
 
   
  
   
 
 
   
 
   
 

   
 
   
  
  
 

  
 
  
   
  
 

  
 
  
   
     






MDF: Matrizes Esparsas Resultantes
7
1 1 1
2 2 2 2
3 3 3
4 4 4 4
5 5 5 5 5
6 6 6 6
7 7
8 8 8 8
9 9 9
0
0
0
0
a b c
b a b c
b a c
c a b c
c b a b c
A
c b a c
c a b
c b a b
c b a
 
 
 
 
 
 
 

 
 
 
 
 
 
 
Diferenças Finitas 2D → Matrizes pentadiagonais
MEF: exemplo de solução para a equação 1D
Formulação Forte
Formulação Variacional ou Formulação Fraca
'' (0,1)
(0) (1) 0
u f em
u u



 

1 1
0 0
1 1
1
0 0 0
"( ) ( ) ( ) ( )
'( ) ( ) '( ) '( ) ( ) ( )
u x v x dx f x v x dx
u x v x u x v x dx f x v x dx

 
 
 
1 1
0 0
, ' '
Encontrar u V tal que v V u v dx fvdx
    
 
Formulação Variaconal Aproximada
Escolher Φk com suporte compacto, isto é:
k k+1
k-1
1
MEF: exemplo de solução para a equação 1D
0 1 1 1 1
0
0 1
i i i n
i
x x x x x x
x x i x
  
      
  
 
 
1
:[0,1] , , [ , ] , 0, , (0) (1) 0
k k
V u u é contínua u x x é linear k n e u u

    
 
1
1
1
1
1
1
1 1
[ , ]
( ) [ , ]
0 [ , ]
k
k k
k k
k
k k
k k
k k
x x
se x x x
x x
x x
x se x x x
x x
se x x x







 



 



 



 


Φk
MEF: exemplo de solução para a equação 1D
1 1
0 0
, ' '
Encontrar u V tal que v V u v dx fvdx
    
 
1
( ) ( )
n
h
k k
k
u x u x


 
1
( ) ( )
n
h
k k
k
f x f x


 
 
 
1 1
0 0
1
1 1
0 0
1
' ( ) ' ( ) ( ) , 1, ,
' ( ) ' ( ) ( ) , 1, ,
n
h
j j i i i
j
n
h
j i j i i
j
u x x dx f x dx i n
x x dx u f x dx i n
   
   


   
   

 
  


1 1
0 0
, ' '
h h h h h h h h
Encontrar u V tal que v V u v dx f v dx
    
 
MEF: exemplo de solução para a equação 1D
b
Au  A é tridiagonal
Como Φi possui suporte compacto, Φi’(x) Φi’’(x) é diferente de
zero somente para i = j-1, j e j+1
j j+1
j-1
1
Φj
MEF: exemplo de solução para a equação 1D
b
Au 
1
( ) ( )
n
h
k k
k
u x u x


 
1
Nel
e
e
A k

 A 1
Nel
e
e
b f

 A
11 12
21 22
e e
e
e e
k k
k
k k
 
  
 
MEF: exemplo de solução para equação 2D
Equação diferencial contínua
2 2
2 2
2 2
(0,1) (0,1)
0
u u
u f em
x y
u em
  
     

 

  


Formulação Variacional ou Formulação Fraca
, .
Encontrar u V tal que v V u vd f vd
 
        
 
MEF: exemplo de solução para equação 2D
1
( , ) ( , )
n
h
k k
k
u x y u x y


  1
( , ) ( , )
n
h
k k
k
f x y f x y


 
Formulação Variacional Aproximada
, .
h h h h h h h
Encontrar u V tal que v V u v d f v d
 
        
 
 
 
1
1
0
1
. , 1, ,
. , 1, ,
n
h
j j i i i
j
n
h
j i j i i
j
u d f d i n
d u f d i n
   
   
 



       
       

 
  


b
Au 
A é esparsa
MEF: exemplo de solução para equação 2D
1
nen
e
k k
k
u u 

 
1
Nel
e
e
A k

 A 1
Nel
e
e
b f

 A













nen
nen
nen
nen
nen
nen
e
k
k
k
k
k
k
k
k
k
k
,
2
1
,
2
22
21
,
1
12
11







MEF: Montagem da Matriz Esparsa
MEF: Montagem da Matriz Esparsa
FEM: Matrizes Esparsas Resultantes





























99
98
96
95
89
88
87
84
78
77
74
69
66
65
63
59
58
56
55
54
53
52
47
45
44
42
41
36
35
33
32
25
24
23
22
21
14
12
11
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
K
K =
Matrizes Esparsas x Grafo Associado
Grafo Ordenado
Grafo não-ordenado
Matrizes Esparsas Resultantes x
Reordenamento de Grafos
Ordenamento Natural Reordenamento Cuthill-Mckee
Matrizes Esparsas Resultantes x
Reordenamento de Grafos
Ordenamento Natural
Reordenamento Reverse Cuthill-Mckee
Matrizes Esparsas Resultantes
● Matrizes esparsas x Solução de sistemas
Lineares
● Armazenamentos Globais
● Armazenamentos Locais
Matrizes Esparsas x Métodos de Solução
● Métodos diretos:
– Solução exata a menos de erros de arredontamento.
Transformação do sistema em sistemas triviais
modificando os coeficientes da matriz esparsa e
alterarando a esparsidade.
● Métodos Iterativos:
– Solução aproximada com tolerância pré-fixada. Não há
alteração dos coeficentes nem da esparsidade da
matriz
– Dependem de condições de convergência
– Necessidade do produto matriz-vetor
Armazenamento de Matrizes Esparsas
Estratégias Globais
7 7
1 1 1 1 1 1
2 2 2 2 2 2 2 2
3 3 3 3 3 3
4 4 4 4 4 4 4 4
5 5 5 5 5 5 5 5 5 5
6 6 6 6 6 6 6 6
7 7 7 7
8 8 8 8 8 8 8 8
9 9 9 9 9 9
0 0
0 0
0 0
0 0
a b c a b c
d a b c d a b c
d a c d a c
e a b c e a b c
e d a b c e d a b c
A AA
e d a c e d a c
e a b e a b
e d a b e d a b
e d a e d a
   
   
   
   
   
   
   
  
   
   
   
   
  
  
   
1 1 1
2 2 2 2
3 3 3
4 4 4 4
5 5 5 5 5
6 6 6 6
7 7 7
8 8 8 8
9 9 9
0
0
0 0 0
0 0 0
0 0
0 0 0
0 0 0
0 0
0 0
a b c
d a b c
d a c
e a b c
ou AA e d a b c
e d a c
e a b
e d a b
e d a
 
 
 
 
 
 
 

 
 
 
 
  
  
 
A matriz de ordem nxn AA matriz de ordem nx5 ou nx(2p+1)
Compressed Diagonal Storage (CDS)
Armazenamento de Matrizes Esparsas
Estratégias Globais
11 12 14
21 22 23 24 25
32 33 35 36
41 42 44 45 47
52 53 54 55 56 58 59
63 65 66 69
74 77 78
84 87 88 89
95 96 98 99
k k k
k k k k k
k k k k
k k k k k
A k k k k k k k
k k k k
k k k
k k k k
k k k k
 
 
 
 
 
 
 

 
 
 
 
 
 
 
   
 
 
9 36
1 4
11 12 14 21 22 25 32 33 89 95 96 98 99
1 2 4 1 2 5 2 3 9 5 6 8 9
1 4 9 13 18 25 29 32 36 40
AA k k k k k k k k k k k k k
JA
IA
 
  
 
 


 
 
A: matriz de ordem nxn
nnz: número de coeficientes
não nulos
AA, JA: vetores de ordem nnz
IA: vetor de ordem n+1
Compressed Sparse Row (CSR)
Armazenamento de Matrizes Esparsas
Estratégias Globais
11
21 22
32 33
41 42 44
52 53 54 55
63 65 66
74 77
84 87 88
95 96 98 99
k
k k
k k
k k k
A k k k k
k k k
k k
k k k
k k k k
 
 
 
 
 
 
 

 
 
 
 
 
 
 
    
 
4 6 27
1 2
11 21 22 32 33 41 42 44 95 96 98 99
0 0
1 2 4 6 10 14 18 22 27 31
AA k k k k k k k k k k k k
IA
 
  
 
 


A: matriz simétrica de ordem nxn
AA: vetor de ordem nnz+q
IA: vetor de ordem n+1
Skyline Storage (SKS)
Armazenamento de Matrizes Esparsas
Estratégias Globais
Algoritmo Produto Matriz-vetor CSR
para i=1,2,…,n
k1 = IA(i)
k2 = IA(i+1)-1
para j = k1,…, K2
y(i)= y(i) + AA(j)*v(JA(j))
fim_para ! j
Fim_para ! i
Armazenamento de Matrizes Esparsas
Estratégias Locais
Elemento por Elemento (EBE)
K =
k1
k2
kNel
k3

1
nel
e
e
K k

 A













nen
nen
nen
nen
nen
nen
e
k
k
k
k
k
k
k
k
k
k
,
2
1
,
2
22
21
,
1
12
11







Armazenamento de Matrizes Esparsas
Estratégias Locais
Algoritmo Produto Matriz-Vetor EBE
1 1
( )
nel nel
e e e
e e
A A v
 
 
Av v
A A
para e=1,2,…,nel
localize: ve  v(e)
produto: ave  ke*ve
espalhe e acumule: v(e)  v(e) + ave
fim_para ! e
Armazenamento de Matrizes Esparsas
Estratégias Locais
Aresta por Aresta (EDS)
 Desmembramento da matriz elemento nas componentes
das arestas
































































0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
2
1 Aresta
Aresta
Aresta
Elemento
 Soma das contribuições das arestas dos elementos
adjacentes
I
J
K
L
E1
E2




























2
1 E
E
ArestaIJ




Armazenamento de Matrizes Esparsas
Estratégias Locais
Aresta por Aresta (EDS)
K =
1
nedges
s
s
K k

 A













ned
ned
ned
ned
ned
ned
s
k
k
k
k
k
k
k
k
k
k
,
2
1
,
2
22
21
,
1
12
11








k1
knedges
k2
k3
Armazenamento de Matrizes Esparsas
Estratégias Locais
Algoritmo Produto Matriz-Vetor EDS
1 1
( )
nedges nedges
e e e
e e
A k v
 
 
Av v
A A
para s=1,2,…,nedges
localize: vs  v(s)
produto: avs  ks*vs
espalhe e acumule: v(s)  v(s) + avs
fim_para ! s
Processamento Paralelo
Armazenamento Local x Coloração de
Grafos
Necessitamos de um Algoritmo de Coloração de Grafos !!
Atualmente é usado um algoritmo “Guloso”
Partição de Grafos
Algoritmos de Partição de Grafos
Metis (http://people.sc.fsu.edu/~burkardt/c_src/metis/metis.html):
família de particionamento de grafos não estruturados considerando
redução de banda da matriz associada (www.cs.umn.edu/~metis )
Processamento Paralelo
Processamento Paralelo x
Partição de Grafos

Mais conteúdo relacionado

Semelhante a intro-scs-2009.pdf

Equações e enequações modulares.
Equações e  enequações modulares.Equações e  enequações modulares.
Equações e enequações modulares.
Noely Menezes
 
ÁLGEBRA: polinómios e sistemas de equações até três incógnitas
ÁLGEBRA: polinómios e sistemas de equações até três incógnitasÁLGEBRA: polinómios e sistemas de equações até três incógnitas
ÁLGEBRA: polinómios e sistemas de equações até três incógnitas
wilkerfilipel
 

Semelhante a intro-scs-2009.pdf (20)

Matemática - Módulo 02
Matemática - Módulo 02Matemática - Módulo 02
Matemática - Módulo 02
 
PROVAS EMEF
PROVAS EMEFPROVAS EMEF
PROVAS EMEF
 
Provas
ProvasProvas
Provas
 
ajuste de curva
ajuste de curvaajuste de curva
ajuste de curva
 
Aula 1 a 15 vol1
Aula 1 a 15 vol1Aula 1 a 15 vol1
Aula 1 a 15 vol1
 
9 mat ti_v2_21mar2014_sol
9 mat ti_v2_21mar2014_sol9 mat ti_v2_21mar2014_sol
9 mat ti_v2_21mar2014_sol
 
I lista de exercícios resolucao para o blog
I lista de exercícios   resolucao para o blogI lista de exercícios   resolucao para o blog
I lista de exercícios resolucao para o blog
 
Mat140questoesresolvidasvoli 111209133424-phpapp01
Mat140questoesresolvidasvoli 111209133424-phpapp01Mat140questoesresolvidasvoli 111209133424-phpapp01
Mat140questoesresolvidasvoli 111209133424-phpapp01
 
Matemática 140 questoes resolvidas
Matemática 140 questoes resolvidasMatemática 140 questoes resolvidas
Matemática 140 questoes resolvidas
 
IV Lista de Exercícios
IV Lista de ExercíciosIV Lista de Exercícios
IV Lista de Exercícios
 
387 matemática ime 2010
387 matemática ime 2010387 matemática ime 2010
387 matemática ime 2010
 
Equações e enequações modulares.
Equações e  enequações modulares.Equações e  enequações modulares.
Equações e enequações modulares.
 
Inequacoes1
Inequacoes1Inequacoes1
Inequacoes1
 
Os métodos iterativos de Jacobi e Gauss-Siedel implementados no Matlab e Octave
Os métodos iterativos de Jacobi e Gauss-Siedel implementados no Matlab e OctaveOs métodos iterativos de Jacobi e Gauss-Siedel implementados no Matlab e Octave
Os métodos iterativos de Jacobi e Gauss-Siedel implementados no Matlab e Octave
 
Aula flexao composta assimétricas
Aula flexao composta assimétricasAula flexao composta assimétricas
Aula flexao composta assimétricas
 
ÁLGEBRA: polinómios e sistemas de equações até três incógnitas
ÁLGEBRA: polinómios e sistemas de equações até três incógnitasÁLGEBRA: polinómios e sistemas de equações até três incógnitas
ÁLGEBRA: polinómios e sistemas de equações até três incógnitas
 
Problemas Inversos
Problemas InversosProblemas Inversos
Problemas Inversos
 
Radiciação
RadiciaçãoRadiciação
Radiciação
 
Equacao_Diferencial_Ordinaria.pdf
Equacao_Diferencial_Ordinaria.pdfEquacao_Diferencial_Ordinaria.pdf
Equacao_Diferencial_Ordinaria.pdf
 
Fatec1 mat
Fatec1 matFatec1 mat
Fatec1 mat
 

Último (6)

SEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptx
SEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptxSEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptx
SEG NR 18 - SEGURANÇA E SAÚDE O TRABALHO NA INDUSTRIA DA COSTRUÇÃO CIVIL.pptx
 
Proposta de dimensionamento. PROJETO DO CURSO 2023.pptx
Proposta de dimensionamento. PROJETO DO CURSO 2023.pptxProposta de dimensionamento. PROJETO DO CURSO 2023.pptx
Proposta de dimensionamento. PROJETO DO CURSO 2023.pptx
 
CONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADE
CONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADECONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADE
CONCEITOS BÁSICOS DE CONFIABILIDADE COM EMBASAMENTO DE QUALIDADE
 
treinamento de moldagem por injeção plástica
treinamento de moldagem por injeção plásticatreinamento de moldagem por injeção plástica
treinamento de moldagem por injeção plástica
 
ATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdf
ATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdfATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdf
ATIVIDADE 1 - FSCE - FORMAÇÃO SOCIOCULTURAL E ÉTICA II - 52_2024.pdf
 
ST 2024 Apresentação Comercial - VF.ppsx
ST 2024 Apresentação Comercial - VF.ppsxST 2024 Apresentação Comercial - VF.ppsx
ST 2024 Apresentação Comercial - VF.ppsx
 

intro-scs-2009.pdf

  • 1. LCAD - Laboratório de Computação de Alto Desempenho Departamento de Informática - CT/UFES LCAD Introdução a Computação Científica Lucia Catabriga TEI: Computação Científica Combinatorial
  • 2. Sumário ● Processos de Solução ● Método das Diferenças Finitas ● Método dos Elelentos Finitos ● Estrutura de Dados envolvidas
  • 3. Processo de Solução • Fenômeno Natural • Modelo Matemático - Equações Governantes • Métodos de Aproximação Diferenças Finitas Volumes Finitos Elementos Finitos Elementos de Contorno
  • 4. Etapas de Solução Pré-processamento dos dados: • Condições de Contorno • Condições Iniciais • Definição do domínio discretizado Processamento de solução: • Para cada ponto de interesse do domínio discretizado da malha montar estrutura de solução • Obter solução aproximada ou solução no tempo corrente Pós-processamento dos Resultados: • Visualização e análise dos resultados obtidos
  • 5. Exemplo do Processo de Solução Domínio Real Domínio Discretizado Solução Aproximada Dispersão de Poluentes na Baía de Guanabara
  • 6. Processo de Solução Equação Diferencial Parcial Aproximação do domínio Solução do Sistema (Linear ou Não-Linear) Não dependem do Tempo Equação Diferencial Parcial Aproximação do domínio Eq. Diferencial Ordinária Aproximação no Tempo Solução do Sistema em cada passo de tempo Dependem do Tempo
  • 7. Método das Diferenças Finitas (MDF) Equação Diferencial Discretização do Domínio Equação de Diferenças Finitas Solução de Sistemas Lineares ou Não Lineares
  • 8. Método dos Elementos Finitos Equação Diferencial Discretização do Domínio Equação Integral Aproximação Solução de Sistemas Lineares ou Não Lineares
  • 9. MDF: exemplo de solução para equação 1D 0 1 1 1 1 0 0 1 i i i n i x x x x x x x x i x                Equação diferencial contínua 1- Discretização do Domínio: 2 - Aproximação das derivada por “diferenças”: 1 ' , ( ) i i u u u O x x      1 ' , ( ) i i u u u O x x      2 1 1 ' , ( ) 2 i i u u u O x x       2 1 1 2 2 '' , ( ) i i i u u u u O x x        '' (0,1) (0) (1) 0 u f em u u      
  • 10. MDF: exemplo de solução para equação 1D 2 - Aproximação das derivada por “diferenças”:       2 2 2 1 1 1 2 1 , 1, , i i i i b a b u u u f i n x x x                          A é tridiagonal 1 1 0 2 2 1 1 1 n n n n n u f bu a b u f b a b u f b a b u f bu b a                                                            0 0 a b b a b b a b b a                   
  • 11. MDF: exemplo de solução para equação 2D 0 1 1 1 1 0 0 1 1 1 1 0 0 1, 0 1, i i i n i j j j m j x x x x x x x x i x y y y y y y y y j y                               Equação diferencial contínua 1- Discretização do Domínio: 2 - Aproximação das derivada por “diferenças”: 1, 1, 2 , ( ) 2 i j i j u u u O x x x         2 1, 1, 2 2 2 2 , ( ) i j ij i j u u u u O x x x          2 2 2 2 2 2 (0,1) (0,1) ( , ) / ( , ) u u u f em x y u u g x y e ou h x y em                       n 
  • 12. MDF: exemplo de solução para equação 2D Numeração das incognitas: 1, 1, , 1 , 1 2 2 1 1 2 2 2 2 , 1, , 1, , 2 2 , 1, , i j ij i j i j ij i j ij I I I I n I I n I u u u u u u f i n j m x y u u u u u u f I N x y                              
  • 13. MDF: exemplo de solução para equação 2D 2 - Aproximação das derivada por “diferenças”:     2 2 2 2 1 2 2 1 1 1 1 1 2 1 1 , 1, , I n I I b c a I I n I b c u u u y x x y u u f I n m x y                                                            A é Pentadiagonal 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 0 0 0 0 S O S S L O L O N N N L u f cu bu a b c u f cu b a b c u f cu bu b a c u f bu c a b c u f c b a b c u f bu c b a c u f bu cu c a b u f cu c b a b u f cu bu c b a                                                                                                 
  • 14. MDF: Matrizes Esparsas Resultantes 7 1 1 1 2 2 2 2 3 3 3 4 4 4 4 5 5 5 5 5 6 6 6 6 7 7 8 8 8 8 9 9 9 0 0 0 0 a b c b a b c b a c c a b c c b a b c A c b a c c a b c b a b c b a                              Diferenças Finitas 2D → Matrizes pentadiagonais
  • 15. MEF: exemplo de solução para a equação 1D Formulação Forte Formulação Variacional ou Formulação Fraca '' (0,1) (0) (1) 0 u f em u u       1 1 0 0 1 1 1 0 0 0 "( ) ( ) ( ) ( ) '( ) ( ) '( ) '( ) ( ) ( ) u x v x dx f x v x dx u x v x u x v x dx f x v x dx        1 1 0 0 , ' ' Encontrar u V tal que v V u v dx fvdx       
  • 16. Formulação Variaconal Aproximada Escolher Φk com suporte compacto, isto é: k k+1 k-1 1 MEF: exemplo de solução para a equação 1D 0 1 1 1 1 0 0 1 i i i n i x x x x x x x x i x                  1 :[0,1] , , [ , ] , 0, , (0) (1) 0 k k V u u é contínua u x x é linear k n e u u         1 1 1 1 1 1 1 1 [ , ] ( ) [ , ] 0 [ , ] k k k k k k k k k k k k x x se x x x x x x x x se x x x x x se x x x                           Φk
  • 17. MEF: exemplo de solução para a equação 1D 1 1 0 0 , ' ' Encontrar u V tal que v V u v dx fvdx        1 ( ) ( ) n h k k k u x u x     1 ( ) ( ) n h k k k f x f x         1 1 0 0 1 1 1 0 0 1 ' ( ) ' ( ) ( ) , 1, , ' ( ) ' ( ) ( ) , 1, , n h j j i i i j n h j i j i i j u x x dx f x dx i n x x dx u f x dx i n                           1 1 0 0 , ' ' h h h h h h h h Encontrar u V tal que v V u v dx f v dx       
  • 18. MEF: exemplo de solução para a equação 1D b Au  A é tridiagonal Como Φi possui suporte compacto, Φi’(x) Φi’’(x) é diferente de zero somente para i = j-1, j e j+1 j j+1 j-1 1 Φj
  • 19. MEF: exemplo de solução para a equação 1D b Au  1 ( ) ( ) n h k k k u x u x     1 Nel e e A k   A 1 Nel e e b f   A 11 12 21 22 e e e e e k k k k k       
  • 20. MEF: exemplo de solução para equação 2D Equação diferencial contínua 2 2 2 2 2 2 (0,1) (0,1) 0 u u u f em x y u em                   Formulação Variacional ou Formulação Fraca , . Encontrar u V tal que v V u vd f vd             
  • 21. MEF: exemplo de solução para equação 2D 1 ( , ) ( , ) n h k k k u x y u x y     1 ( , ) ( , ) n h k k k f x y f x y     Formulação Variacional Aproximada , . h h h h h h h Encontrar u V tal que v V u v d f v d                  1 1 0 1 . , 1, , . , 1, , n h j j i i i j n h j i j i i j u d f d i n d u f d i n                                      b Au  A é esparsa
  • 22. MEF: exemplo de solução para equação 2D 1 nen e k k k u u     1 Nel e e A k   A 1 Nel e e b f   A              nen nen nen nen nen nen e k k k k k k k k k k , 2 1 , 2 22 21 , 1 12 11       
  • 23. MEF: Montagem da Matriz Esparsa
  • 24. MEF: Montagem da Matriz Esparsa
  • 25. FEM: Matrizes Esparsas Resultantes                              99 98 96 95 89 88 87 84 78 77 74 69 66 65 63 59 58 56 55 54 53 52 47 45 44 42 41 36 35 33 32 25 24 23 22 21 14 12 11 k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k k K K =
  • 26. Matrizes Esparsas x Grafo Associado Grafo Ordenado Grafo não-ordenado
  • 27. Matrizes Esparsas Resultantes x Reordenamento de Grafos Ordenamento Natural Reordenamento Cuthill-Mckee
  • 28. Matrizes Esparsas Resultantes x Reordenamento de Grafos Ordenamento Natural Reordenamento Reverse Cuthill-Mckee
  • 29. Matrizes Esparsas Resultantes ● Matrizes esparsas x Solução de sistemas Lineares ● Armazenamentos Globais ● Armazenamentos Locais
  • 30. Matrizes Esparsas x Métodos de Solução ● Métodos diretos: – Solução exata a menos de erros de arredontamento. Transformação do sistema em sistemas triviais modificando os coeficientes da matriz esparsa e alterarando a esparsidade. ● Métodos Iterativos: – Solução aproximada com tolerância pré-fixada. Não há alteração dos coeficentes nem da esparsidade da matriz – Dependem de condições de convergência – Necessidade do produto matriz-vetor
  • 31. Armazenamento de Matrizes Esparsas Estratégias Globais 7 7 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 7 7 7 7 8 8 8 8 8 8 8 8 9 9 9 9 9 9 0 0 0 0 0 0 0 0 a b c a b c d a b c d a b c d a c d a c e a b c e a b c e d a b c e d a b c A AA e d a c e d a c e a b e a b e d a b e d a b e d a e d a                                                          1 1 1 2 2 2 2 3 3 3 4 4 4 4 5 5 5 5 5 6 6 6 6 7 7 7 8 8 8 8 9 9 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 a b c d a b c d a c e a b c ou AA e d a b c e d a c e a b e d a b e d a                                A matriz de ordem nxn AA matriz de ordem nx5 ou nx(2p+1) Compressed Diagonal Storage (CDS)
  • 32. Armazenamento de Matrizes Esparsas Estratégias Globais 11 12 14 21 22 23 24 25 32 33 35 36 41 42 44 45 47 52 53 54 55 56 58 59 63 65 66 69 74 77 78 84 87 88 89 95 96 98 99 k k k k k k k k k k k k k k k k k A k k k k k k k k k k k k k k k k k k k k k k                                      9 36 1 4 11 12 14 21 22 25 32 33 89 95 96 98 99 1 2 4 1 2 5 2 3 9 5 6 8 9 1 4 9 13 18 25 29 32 36 40 AA k k k k k k k k k k k k k JA IA                A: matriz de ordem nxn nnz: número de coeficientes não nulos AA, JA: vetores de ordem nnz IA: vetor de ordem n+1 Compressed Sparse Row (CSR)
  • 33. Armazenamento de Matrizes Esparsas Estratégias Globais 11 21 22 32 33 41 42 44 52 53 54 55 63 65 66 74 77 84 87 88 95 96 98 99 k k k k k k k k A k k k k k k k k k k k k k k k k                                     4 6 27 1 2 11 21 22 32 33 41 42 44 95 96 98 99 0 0 1 2 4 6 10 14 18 22 27 31 AA k k k k k k k k k k k k IA            A: matriz simétrica de ordem nxn AA: vetor de ordem nnz+q IA: vetor de ordem n+1 Skyline Storage (SKS)
  • 34. Armazenamento de Matrizes Esparsas Estratégias Globais Algoritmo Produto Matriz-vetor CSR para i=1,2,…,n k1 = IA(i) k2 = IA(i+1)-1 para j = k1,…, K2 y(i)= y(i) + AA(j)*v(JA(j)) fim_para ! j Fim_para ! i
  • 35. Armazenamento de Matrizes Esparsas Estratégias Locais Elemento por Elemento (EBE) K = k1 k2 kNel k3  1 nel e e K k   A              nen nen nen nen nen nen e k k k k k k k k k k , 2 1 , 2 22 21 , 1 12 11       
  • 36. Armazenamento de Matrizes Esparsas Estratégias Locais Algoritmo Produto Matriz-Vetor EBE 1 1 ( ) nel nel e e e e e A A v     Av v A A para e=1,2,…,nel localize: ve  v(e) produto: ave  ke*ve espalhe e acumule: v(e)  v(e) + ave fim_para ! e
  • 37. Armazenamento de Matrizes Esparsas Estratégias Locais Aresta por Aresta (EDS)  Desmembramento da matriz elemento nas componentes das arestas                                                                 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 2 1 Aresta Aresta Aresta Elemento  Soma das contribuições das arestas dos elementos adjacentes I J K L E1 E2                             2 1 E E ArestaIJ    
  • 38. Armazenamento de Matrizes Esparsas Estratégias Locais Aresta por Aresta (EDS) K = 1 nedges s s K k   A              ned ned ned ned ned ned s k k k k k k k k k k , 2 1 , 2 22 21 , 1 12 11         k1 knedges k2 k3
  • 39. Armazenamento de Matrizes Esparsas Estratégias Locais Algoritmo Produto Matriz-Vetor EDS 1 1 ( ) nedges nedges e e e e e A k v     Av v A A para s=1,2,…,nedges localize: vs  v(s) produto: avs  ks*vs espalhe e acumule: v(s)  v(s) + avs fim_para ! s
  • 41. Armazenamento Local x Coloração de Grafos Necessitamos de um Algoritmo de Coloração de Grafos !! Atualmente é usado um algoritmo “Guloso”
  • 42. Partição de Grafos Algoritmos de Partição de Grafos Metis (http://people.sc.fsu.edu/~burkardt/c_src/metis/metis.html): família de particionamento de grafos não estruturados considerando redução de banda da matriz associada (www.cs.umn.edu/~metis )