Sei sulla pagina 1di 88

Captulo 1

Introdu
c
ao
Varios fenomenos da natureza podem ser descritos, utilizando-se leis da fsica, em termos
de equacoes diferenciais. Em algumas situacoes extremamente simples pode-se encontrar
solucoes analticas, nas outras busca-se solucoes aproximadas para o problema.
Os metodos para a obtencao de solucoes aproximadas de equacoes diferenciais podem
ser divididos em duas classes gerais:
(i)Metodo de Diferencas Finitas: As derivadas da funcao sao substitudas pela diferenca
dos valores que a funcao assume em certos pontos do domnio. A equacao diferencial da
origem a um sistema de equacoes algebricas onde as incognitas sao os valores da funcao nos
pontos escolhidos para representar as derivadas. As ideias basicas de Metodos de Diferencas
Finitas sao mostradas no exemplo a seguir:
Exemplo 1:
+ u = 0, para 0 < x < 1,
Resolver: x du
dx
c.c: u(0) = 1.
A solucao sera aproximada atraves do calculo do valor da funcao em um n
umero nito
de pontos do domnio.
Se o domnio for dividido em N 1 intervalos atraves de N pontos (nos), deve-se obter
o valor aproximado de u(x) em cada no, ou seja, um problema com N incognitas. As N
equacoes necessarias para resolver este problema sao obtidas aproximando a derivada em
funcao dos valores nodais desconhecidos nas posicoes dos N nos.
Olhando nas proximidades do no 4:

du 
U5 U3
=
.

dx x4
2x
A equacao diferencial no ponto x4 e aproximada como:


U5 U3
x4
x4
x4
+ U4 = 0
U3 + U4 +
U5 = 0.
2x
2x
2x

Figura 1.1: Aproximacao da derivada da funcao por diferencas nitas.


O resultado deste procedimento sera um sistema linear N N , onde as incognitas sao os
valores de U nos N nos.
(ii)Metodos Variacionais: A solucao aproximada e escrita como combinacao linear de
funcoes base apropriadamente escolhidas:
u(x) =

N


ci i .

i=1

Os coecientes ci sao obtidos de forma que a equacao diferencial seja satisfeita. Para
obter a solucao aproximada atraves de um metodo variacional, deve-se rescrever o problema
em sua forma fraca (integral ou variacional). A necessidade do uso da formulacao fraca
e ilustrada no Exemplo 2. Os diferentes metodos variacionais utilizam diferentes formas
integrais, funcoes base e funcoes peso.
O Metodo de Elementos Finitos se encaixa na classe de metodos variacionais, onde as
funcoes base sao diferentes de zero apenas em uma pequena parte do domnio, como sera
mostrado a seguir.
N
cao diferencial nao
A simples substituicao da aproximacao u(x) =
i=1 ci i na equa
garante a obtencao de N (n
umero de coecientes ci ) equacoes algebricas linearmente independentes, por isso em metodos variacionais utiliza-se a forma integral do problema, como
mostrado no exemplo a seguir.
Exemplo 2:
d du
(x ) + u = 0 para 0 < x < 1,
dx dx
sujeito a`s condicoes de contorno:

u(0) = 1 ; (x
2

du
)x=1 = 0.
dx

Solucao aproximada na forma:

u(x) = 0 (x) +

2


ci i (x),

i=1

onde as funcoes base escolhidas sao:


0 (x) = 1,
1 (x) = x2 2x,
2 (x) = x3 3x.
Precisamos encontrar os coecientes c1 e c2 , o problema possui 2 incognitas. Entao
substituindo 0 , 1 e 2 , a solucao aproximada torna-se:
u(x) = 1 + c1 [x2 2x] + c2 [x3 3x], derivando
du(x)
= 2c1 x 2c1 + 3c2 x2 3c2 .
dx
Observe que as condicoes de contorno sao satisfeitas para qualquer valor de c1 e c2 , que
devem ser determinados de forma que a aproximacao satisfaca a equacao diferencial em
algum sentido.
Obrigando a solucao aproximada a satisfazer a equacao diferencial no sentido exato, isto
e, em todos os pontos do domnio:
d
{x[c1 (2x 2) + c2 (3x2 3)]} + 1 + c1 (x2 2x) + c2 (x3 3x) = 0,
dx
2c1 (x 1) 3c2 (x2 1) 2c1 x 6c2 x2 + c1 (x2 2x) + c2 (x3 3x) + 1 = 0,
1 + 2c1 + 3c2 + (6c1 3c2 )x + (9c2 + c1 )x2 + c2 x3 = 0.

Para essa expressao ser valida para qualquer x, o coeciente de cada potencia de x deve
ser nulo:

1 + 2c1 + 3c2 = 0,

6c 3c = 0,
1
2

9c
+
c
2
1 = 0,

c2 = 0.
Esse sistema nao tem solucao! Vamos obrigar a solucao aproximada a satisfazer a
equacao diferencial num sentido integral ao inves de no sentido exato.
Podemos obriga-la a satisfazer a seguinte integral ponderada:

1
d du
w(x){ (x ) + u}dx = 0,
dx dx
0
onde w(x) e a funcao peso.
Esta integral pode representar uma medida do erro na aproximacao. O n
umero de
umero de funcoes
equacoes linearmente independentes que envolvam c1 e c2 sera igual ao n
3

peso utilizadas (tambem linearmente independentes). No exemplo escolhemos 2 funcoes


peso linearmente independentes: w = 1 e w = x , teremos:

d
2
2
3
1 {x[c1 (2x 2) + c2 (3x 3)]} + 1 + c1 (x 2x) + c2 (x 3x) dx = 0,
dx
0

1
d
2
2
3
x {x[c1 (2x 2) + c2 (3x 3)]} + 1 + c1 (x 2x) + c2 (x 3x) dx = 0.
dx
0

Entao:

2/3c1 + 5/4c2 = 1,
3/4c1 31/20c2 = 1/2,

e nalmente, c1 = 222/23 e c2 = 100/23.


As funcoes bases utilizadas e a solucao aproximada estao ilustradas na gura (??):

Figura 1.2: Representacao das funcoes bases e solucao aproximada.

Captulo 2
Formula
c
ao Integral
2.1

Formula
c
ao forte e fraca de um problema

A formulacao forte de um problema de valor de contorno e denida como:


Determine u : [0, 1] R, tal que
2
d u

dx2 + f = 0, em (0, 1);


(S) u(1) = g
c.c. de Dirichlet;

du(0)
= h
c.c. de Newman.
dx
A equacao diferencial e imposta em todos os pontos x (0, 1).
A formulacao fraca equivalente a (S) e denida como:
Determine u U , tal que

1
dw du
(W )
f wdx + w(0)h ; para qualquer w V .
dx =
0 dx dx
0
U e o conjunto de funcoes teste denido como:

1
du
U = {u|u(1) = g e
( )2 dx < }
0 dx
V e o conjunto de funcoes peso e e denido como:

1
dw
V = w|w(1) = 0 e
( )2 dx < }
  
dx
0

** A funcao peso vale zero quando aplicada no contorno onde a condicao e essencial.
Isso porque neste ponto a funcao ja e conhecida.
Antes de continuarmos com a denicao de formulacao fraca e mostrarmos a equivalencia
entre as duas formulacoes precisaremos das denicoes:
Uma funcao f : R pertence ao espaco C k () se
C 0 e o espaco das funcoes contnuas.
O espaco Sobolev de funcoes H k () e denido como:
5

dj f
dxj

e contnua, com 0  j  k.

dw
dk w
H k () = {w|w L2 ;
L2 ; ...; k L2 }, onde
dx
dx

L2 () = {f | f 2 d < }.

Logo podemos escrever U e V como:


U = {u|u H 1 e u(1) = g}
V = {w|w H 1 e w(1) = 0}
Notas:
Se f H 1 f e contnua e limitada.
A condicao de contorno de Dirichlet e imposta na denicao do espaco de funcoes teste
c.c. essencial.
A condicao de contorno de Newman e imposta naturalmente na formulacao c.c.
natural.
Temos que mostrar que as duas formulacoes sao equivalentes:
(i) Se u e solucao de (S) u e solucao de (W ).
(ii) Se u e solucao de (W ) u e solucao de (S).
A demonstracao da parte (i), na realidade, corresponde ao metodo de achar a formulacao
fraca equivalente a uma dada formulacao forte. Se u e solucao de (S), entao u satisfaz a
equacao diferencial em todos os pontos x (0, 1)

1
d2 u
w[ 2 + f ]dx = 0 (w H 1 (0, 1))

dx
0
Fazendo uma integracao por partes:

1
du(1)
du(0)
dw du

wf dx = 0.
dx + w(1)
w(0)
+
dx
dx
0 dx dx
0
Como w V w(1) = 0.
Como u e solucao de (S) du(0)
= h.
dx

dw du
dx = w(0)h +
dx dx

wf dx, w V

Logo, se u e solucao de (S), u satisfaz (W ).


Demonstracao da parte (ii):
Se u e solucao de (W ), entao u U u(1) = g e

1
dw du
wf dx, w V
dx = w(0)h +
0 dx dx
0
6

Integrando por partes obtem-se:

1
d2 u
du(1)
du(0)
w 2 dx + w(1)
wf dx + w(0)h

w(0)
=
dx
dx
dx
0
0

1
du(0)
d2 u
du(1)

+ w(0)[
+ h] = 0.
w[ 2 + f ]dx w(1)
dx
dx
dx
0
Como w V w(1) = 0

1
d2 u
du(0)

w[ 2 + f ]dx + w(0)[
+ h] = 0 ; w V.
dx
dx
0

(2.1)

Para provar que u e solucao de (S), temos que mostrar que:


d2 u
(i) 2 + f = 0 , para qualquer x (0, 1) e
dx
du(0)
(ii)
= h.
dx
Como a equacao (??) e valida para qualquer w V , vamos escolher um w de forma a
2
concluirmos que ddxu2 + f = 0:
d2 u
+ f ]; com (0) = (1) = 0 e (x) > 0, x (0, 1)
dx2
Assim, w(0) = 0, pois,
d2 u
w(0) = (0)[ 2 + f ], como (0) = 0 w(0) = 0 e a equacao (2.1), torna-se:
dx

1
2
du
(x)[ 2 + f ]2 dx = 0
dx
0
d2 u
sendo (x) > 0 (por denicao) e [ 2 + f ]2 0,
dx
d2 u
d2 u
entao a integral sera zero [ 2 + f ]2 = 0 2 + f = 0.
dx
dx
w(x) = (x)[

Assim temos (i). Vamos ver (ii):


Usando (i) a expressao (??) ca simplesmente:
w(0)[

du(0)
+ h] = 0 ; w V.
dx

Como o espaco V nao restringe o valor de w(0), entao


du(0)
du(0)
du(0)
+ h] = 0
+h=0
= h
dx
dx
dx
Com (i) e (ii) vericados, temos que se u e solucao de (W ) entao e tambem solucao de
(S).
w(0)[

Como mencionado anteriormente, o metodo de Elementos Finitos e baseado na formulacao fraca do problema.
A ideia basica e restringir os espacos U e V para espacos de dimensao nita. Isto implica
que qualquer u U pode ser escrito como:
N


u(x) =

ci i ,

i=1

onde os

i s

formam uma base de U .

A m de simplicar, e comum seguir a notacao:

1
dw du
a(u, w) =
f wdx,
e (f, w) =
0 dx dx
0
logo, a formulacao torna-se:
Achar u U , tal que:
a(u, w) = (f, w) + w(0)h ; w V.

2.2

M
etodo dos Resduos Ponderados

Neste curso vamos nos concentrar no Metodo dos Resduos Ponderados (Weighted Residuals).
Vamos novamente analisar o problema:
2
d u

em (0, 1);
dx2 = f,
u(1) = g = 0 considerar g = 0, apenas para simplicar.

du(0)
= h.
dx
Queremos encontrar uma aproximacao uh para a solucao do problema u.
uh vai pertencer a um espaco de dimensao nita Uh , logo podemos escreve-lo como:
uh (x) =

N


ci i ,

i=1

onde N e a dimensao do espaco e i s as funcoes base de Uh . Queremos tambem que


Uh U logo, uh (1) = 0.
2
Como uh e apenas uma aproximacao de u, ddxu2 = f
Vamos chamar de resduo (R) da equacao, a medida de quanto uh aproxima adequadamente o problema.
d2 uh
+ f,
R=
dx2
Observe que se uh = u entao, R = 0.

Metodos dos Resduos Ponderados sao obtidos atraves da seguinte integral:

1
wR = 0
0

Observe que integrando o resduo com o peso w, estamos fazendo com que sua media
ponderada seja 0. Por isso a condicao e dita FRACA, pois nao estamos obrigando ponto a
ponto que u = uh e sim na media (na integral).
Substituindo R, temos:

1
d2 uh

w[ 2 + f ]dx = 0
dx
0
integrando por partes:

1
dw duh
f wdx + w(0)h = 0 Equivalente a` formulacao variacional.

dx +
0 dx dx
0
A integracao por partes alivia as restricoes impostas a` funcao aproximada uh . A ex2
h
e nao mais da segunda ddxu2h .
pressao passa a depender da primeira derivada de uh , du
dx
h
Logo, a restricao sobre uh devera ser que sua derivada pertenca a L2 , du
L2 , isto e, o
dx
duh
quadrado de dx seja integravel. Observe que ate funcoes contnuas com descontinuidades
nas derivadas podem satisfazer a estas condicoes, como ilustrada na gura(??):

Figura 2.1: Funcoes contnuas com derivadas descontnuas.


Como uh Uh uh (x) =

N

i=1 ci i .

E entao,

duh
dx

N

di
i=1 ci dx

Sendo o espaco Uh de dimensao N precisaremos de N equacoes linearmente independentes a m de determinar os coecientes ci .


As funcoes peso w devem pertencer a um espaco nito Vh V . Esse espaco pode ser
representado pela base i . Cada equacao esta relacionada com as funcoes peso i .
Deste modo as N equacoes L.I. para determinar os ci sao:
 N


1
di  dj
dx +
cj
f i dx + i (0)h = 0
Ri =
dx
0 dx
0
j=1


1
N 
1

di dj
f i dx + i (0)h ; i = 1, ..., N.

dx cj =
dx
dx
0
0
j=1 





bi

Aij

Temos matricialmente
Ac = b
Algumas referencias chamam A de matriz de rigidez.
O Metodo dos Resduos Ponderados recebe diferentes denominacoes de acordo com as
funcoes base i e peso i .

 METODO
DE GALERKIN
O espaco das funcoes peso e identico ao espaco das funcoes teste i = i
Matriz A e simetrica.

 METODO
DE PRETROV-GALERKIN
i = i Matriz A nao e simetrica.

 METODO
DOS MINIMOS QUADRADOS

Os coecientes ci da aproximacao uh (x) = N
ao obtidos atraves da minimizacao
i=1 ci i s
da integral do quadrado dos resduos:

1
R

2
R dx = 0
Rdx = 0.
ci 0
0 ci
i =

R
.
ci

 METODO
DE COLOCACAO

10

O resduo R e identicamente nulo em N pontos do domnio.


R(xi ) = 0.
Tambem e um caso particular de metodo dos Resduos Ponderados.

1
wi = (x xi )
(x xi )Rdx = 0 R(xi ) = 0.
0

EXERCICIO #1
Considere o problema:

d2 u
2

dx2 u + x = 0,
u(0) = 0,

u (1) = 1.

onde 0 x 1;

Vamos assumir que uma solucao aproximada uh possa ser escrita como:
u(x) =

N


ci i

onde, i (0) = 0 ;

i=1

1 (x) = x ,
2 (x) = x2 ,
3 (x) = x3 .
Detemine a solucao para o problema utilizando:
Metodo de Galerkin, ou seja , i = i .
Compare a solucao aproximada com a exata do problema:
2cos(1 + x) sen(x)
u(x) =
+ x2 2.
cos(1)
Solucao do Exerccio #1
R(x) =

d2 uh
uh + x 2 .
dx2

Queremos que:

1
w(x)R(x)dx = 0,

onde w(x) e o vetor das funcoes peso i .

i [
0

d2 uh
uh + x2 ]dx = 0
dx2

d2 uh
i 2 dx
dx

i uh dx +
0

11

i x2 dx = 0

Integrando por partes, evitando assim a segunda derivada,temos:


1
1

1
duh 
di duh
(
i uh dx +
i x2 dx = 0
i
)dx
dx 0
dx
dx
0
0
0
Usando que:
uh (1) = 1.
i (0) = 0.

i (1) +
0

Como u(x) =

di duh
)dx
(
dx dx

N

du
dx

ao
i=1 cj j , ent

N


cj
0

i=1

i uh dx +
0

N

j
i=1 cj dx

; substituindo temos:

1
di dj
i j dx = i (1)
i x2 dx
dx dx
0



 
bi

Pelo Metodo de Galerkin i = i ; entao,



 1  di dj
1
Aij = 0 dx dx i j dx e bi = i (1) 0 i x2 dx
Assim, usando
1
1 (x) = x ; d
=1
dx
d1
2
2 (x) = x ; dx = x
1
= 3x2
3 (x) = x3 ; d
dx
Calculamos a matriz A e o vetor b:

A=

2
3

3
4

4
5

3
4

17
15

4
3

4
5

4
3

58
35

b=

3
4
4
5

5
6

Fazendo Ac = b
2280
1777

i x2 dx = 0

Aij

Encontramos c(1) =

; c(2) =

203
1777

; c(3) =

12

175
.
7108

c=

2280
1777
203
1777

175
7108

1.2
line 1
line 2

0.8

0.6

0.4

0.2

0
0

0.2

0.4

Figura 2.2:

0.6

0.8

uh e u

O graco mostra a solucao exata e a aproximada. Observe que a solucao aproximada rep evidente que
resenta muito bem a solucao exata, utilizando-se apenas de tres funcoes base.E
a escolha de funcoes base apropriadas e fundamental para o bom desempenho do metodo.

13

Captulo 3
Discretiza
c
ao e Fun
c
oes Base
3.1

Ponto de Vista Global

Podemos perceber que para obter os elementos da matriz A, precisamos integrar as


funcoes teste e peso (e/ou suas derivadas) em todo o domnio.
O metodo dos elementos nitos consiste na escolha apropriada de funcoes i e i , de
tal forma que as funcoes e suas derivadas so sao diferentes de zero em uma pequena parte
do domnio. Deste modo, a integral no domnio ca reduzida a uma integral na parte do
domnio onde a funcao e diferente de zero, como mostrado na gura(1.1) :

Figura 3.1: Exemplo de funcao base diferente de zero apenas em uma pequena porcao do
domnio.

x2

( )i dx =
0

( )i dx
x1

A ideia e dividir o domnio em elementos, denidos por nos. Por exemplo: o domnio de
0 a 1 foi dividido em 8 elementos (9 nos).

14

Figura 3.2: 8 elem. 9 nos


Uma escolha simples que facilita a computacao e denir i e i de tal forma que:

1 se i = j,
i (xj ) = ij i (xj ) =
0 se i = j,
conforme mostrado na Fig.1.3 (Elementos Lagrangeanos).
Desta forma o n
umero de funcoes base (dimensao do espaco) esta associado ao n
umero
de nos da malha. Quanto mais renada a malha, maior sera a dimensao do espaco de
funcoes e desta forma, mais precisa sera a solucao aproximada.

Figura 3.3: i (xj ) = ij


Se as funcoes teste i sao denidas da maneira mostrada anteriormente, os coecientes
ci passam a ter um signicado especial :

15

u(xi ) =

N

j=1

cj j (xi ) =
  
ij

N


cj ij = ci

j=1

ci = u(xi )
O coeciente ci e igual ao valor da funcao u no ponto xi .
Uma outra conseq
uencia importante da denicao das funcoes teste e que varios elementos da matriz A sao iguais a zero, conforme ilustrado na Figura 1.4.
Por exemplo:

A26 =
0

d2 d6
dx = 0
dx dx

Figura 3.4: Calculo de A26 .


A matriz A, do exemplo, passa a ser uma matriz esparsa:

16

A=

3.2

0 0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0 0

Ponto de Vista Elementar

Ate agora vimos o metodo dos elementos nitos de uma forma global, isto e, cada funcao
i e denida em todo o domnio com a particularidade de ser diferente de zero somente em
uma pequena parte dele.
Como cada funcao i so e diferente de zero em uma pequena parte do domnio, e mais
eciente se a tratarmos nestas opcoes apenas. Isto leva a uma descricao local do metodo
(elementar).
No exemplo mostrado anteriormente (Figura 1.3), existem duas funcoes diferentes de zero
em cada elemento e uma mesma funcao e diferente de zero em dois elementos, conforme
mostrado na tabela a seguir:
elemento
1
2
3
4
5
6
7
8

no inicial
1
2
3
4
5
6
7
8

no nal
2
3
4
5
6
7
8
9

i s = 0
1-2
2-3
3-4
4-5
5-6
6-7
7-8
8-9

Podemos pensar em uma matriz elementar A(e) , de modo que a matriz global A seja
escrita como:

A = 8e=1 A(e)
A maneira com que essa montagem ou uniao e feita sera discutida a seguir.
Como so existem dois i s = 0 em cada elemento, a matriz elementar A(e) sera uma
matriz 2 2.
Por exemplo, a matriz do elemento 3, A(3) , e igual a:
 x4 d3 d4
 x4 d3 d3

dx
dx
x3 dx dx
x3 dx dx

 x4 d4 d3
 x4 d4 d4
A(3) =

dx
dx
x3

dx dx

17

x3

dx dx

A forma de cada funcao nos elementos e sempre a mesma, independentemente do elemento em questao. Isto sugere uma troca de coordenadas para que possamos fazer uma
descricao elementar das funcoes.
Descricao Elementar: O elemento se extende de = 1 a = +1 e possui dois nos como
mostrado na gura:

Figura 3.5: Funcoes base lineares no sistema de coordenadas local.


As funcoes base elementares sao escritas como:
(e)

1 () =
Assim

(e)

d1
d

= 12 ;

(e)

d2
d

1
2

(e)

2 () =

1+
2

1
2

Todos os elementos do domnio sao mapeados para esse elemento padrao.


Por exemplo, o mapeamento do elemento 3, que vai de x3 a x4 , para o elemento padrao,
de = 1 a = 1, pode ser escrito como:
x = x3 = 1,

(x)

x() =

x = x4 = 1.

18

2x(x3 +x4 )
,
x4 x3
(x4 x3 ) +x3 +x4
,
2

As integrais sao reescritas como:

(3)
A12

x4

d3 d4
dx =
dx dx

x3
(e)
d1

(e)
d2

d
dx


=x

(e)

(e)

d1 d d2 d dx
d =
d dx d dx d
d,

2
2
= (e)
4 x3
h

onde h(e) e o tamanho do elemento.


2
(3)
h

(e)

(e)

d1 d2
d.
d d



 1

=para todos os elementos

A matriz do terceiro elemento entao ca:


1
(3)

d1 d1
d
1 d d


1
1

2
= (3)
h

d2 d1
d
d d

1

d1 d2
d
1 d d

1
1

,
d2 d2
d
d d

(3)

onde os Aij sao:


(3)
A11
(3)

A12

(3)

A22

1
2
1 1
2 1
1
= (3)
( )( ) d = (3) 2 = (3)
h
2
h 4
h
1 2

1
2
1 1
1
(3)
= (3)
( )( ) d = (3) = A2,1
h
2
2
h
1

1
2
1 1
1
= (3)
( )( ) d = (3)
h
h
1 2 2
(3)

1
= (3)
h

1 1
1
1


.

Montagem da Matriz Global


Precisamos obter a matriz global a partir das matrizes elementares. Para isso, precisamos
saber a correspondencia entre a numeracao local dos nos no elemento com a numeracao
global dos nos no domnio.
#local dos n
os
  
iele ) que fornece a nuLogo, vamos denir a matriz DomNodeID ( ilnode , 
#do elemento

meracao global do no local ilnode do elemento iele.


DomNodeID
19

ilnodeiele
1
2

1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
2 3 4 5 6 7 8 9

A matriz global e montada segundo a correspondencia entre a numeracao local e a global.


Por exemplo, a matriz local do elemento 3 (2 2) e montada na seguinte posicao da
matriz global:

A=

DomN odeID(1, 3) = 3,

(3)

A11

(3)
A12

(3)

A21

(3)
A22

A33
A34
A43
A44

DomN odeID(2, 3) = 4.
O processo de montagem tambem serve para o vetor f
(3)

f1 f3
(3)

f2 f4
Um algoritmo geral para a solucao por elementos nitos pode ser escrito como:
do iele = 1, N ELE
NELE # de elementos
call getelem A rotina para calcular a matriz A(iele) (local).
call getelem f rotina para calcular o vetor local f (iele) .
do ilnode = 1, N LOCALN ODES
ignode = DomNodeID (ilnode, iele) # global do n
o ilnode
do jlnode = 1, N LOCALN ODES
jgnode = DomNodeID (jlnode, iele)
A(ignode, jgnode) = A(ignode, jgnode) + Aelem(ilnode, jlnode)
end
end
end
20

Nota : Repare que a entrada A55 da matriz global tem contribuicao de 2 elementos
(elementos 4, 5).
(4)
(5)
A55 = A22 + A11
Isto ocorre, pois:

A55 =
0

3.3

d5 d5
dx =
dx dx

x5

x4

d5 d5
dx +
dx dx

x6

x5

d5 d5
(4)
(5)
dx = A22 + A11
dx dx

Elemento de Segunda Ordem

No exemplo anterior as funcoes base eram lineares. Cada elemento possuia 2 nos e
conseq
uentemente duas funcoes (uma associada a cada no). Isso porque a funcao i foi
denida tal que :
i (xj ) = i,j ,
ou seja, 1 (x1 ) = 1,
2 (x1 ) = 0,
1 (x2 ) = 0,
2 (x2 ) = 1.
dois pontos denem uma reta i e linear.

Figura 3.6: Elemento linear


Se desejamos ter uma aproximacao melhor podemos denir funcoes base quadraticas
dentro de cada elemento. Como para denir uma funcao quadratica sao necessarios 3 pontos, os elementos quadraticos possuem 3 nos.

21

Figura 3.7: Elemento Quadratico


Repare que i (xj ) = i,j .
Nas coordenadas elementares, as funcoes base sao escritas como:
( 1)
,
2
( + 1)
2 () =
,
2
3 () = ( + 1)( 1).
Logo, derivando-as temos:
d1
1 d2
1 d3
= ;
=+ ;
= 2.
d
2 d
2 d
1 () =

Correspondencia entre descricao global e local:


DomNodeID
ilnodeiele
1
2
3
As matrizes A(e) sao 3 3.
1

d1 d1
d
1 d d

2
A3 = (3)
h


1
1

1

d2 d1
d
d d

d3 d1
d
1 d d

1
1
3
2

2
3
5
4

3 4 5 6
5 7 9 11
7 9 11 13
6 8 10 12

1

1

1

1

d1 d2
d
1 d d
d2 d2
d
1 d d

1

d3 d2
d
1 d d

22

d1 d3
d
1 d d

1
1

d2 d3
d

d d

d3 d3
d
d d

Figura 3.8: Correspondencia da numeracao global e local.


A Matriz A(3) e montada na seguinte posicao:

A=

(3)

A11 A55
(3)

A12 A57
(3)

A13 A56
...

23

3.4

Problema Unidimensional

Vamos mostrar todos os passos para a solucao de um problema de conveccao/difusao


usando o metodo dos elementos nitos.
2
d u

P e du
= 0, 0 < x < 1;

dx2
dx

du(0)
= u(0) 1;
dx

u(1) = 0.
Formulacao Fraca (Metodo de Galerkin)


d2 u
du
Ri =
Pe
i dx = 0
dx2
dx
0

1
du
du
du di
du
dx + (1) i (1) (0)i (0) P e
i dx = 0

dx
dx
0 dx dx
0 dx

1
du di
du
du
du

+ Pe
i dx =
(1) i (1) (0) i (0)
dx dx
dx
dx
0
dx 
Ri =
0

du di
du
+ Pe
i
dx dx
dx

u(0)1


dx =

du
(1) i (1) (u(0) 1)i (0)
  
dx
=0

Tendo como c.c u(1) = 0, impoe - se i (1) = 0.


MEF
Usar elementos lineares: 8 elementos / 9 nos (N = 9)

u(x) =

N


Ui i

sem se preocupar com as condicoes de contorno.

i=1

Ri =

N 


j=1

!

N

di dj
dj
(
Uj j (0) 1 i (0); (i = 1, ..., N )
+ Pe
i )dx Uj =
dx dx
dx
j=1

Observe que x = 0 e o no 1, entao 1 (0) = 1 e j (0) = 0, j = 1. Assim, temos que:



N 
1

di dj
dj
Ri =
(
+ Pe
i )dx Uj = [U1 1]i (0).
dx dx
dx
0
j=1
c.c. essencial u(1) = 0
UN N (1) = 0 UN = 0.

N
j=1

Uj j (1) , lembrando que x = 1 e o no N

24

Figura 3.9: Discretizacao do domnio atraves de 8 elementos lineares.

i=1
R1

N 

j=1


dj
d1 dj
+ Pe
1 )dx Uj = [U1 1]
(
dx dx
dx

i = 2, ..., N 1

N 
1

di dj
dj
Ri
(
+ Pe
i )dx Uj = 0
dx
dx
dx
0
j=1
i=N
RN UN = 0

..
.

...

...


0 0 0 0 0 0 0 1

Ponto de Vista Local:

25

U1
U2
U3
U4
U5
U6
U7
U8
U9

1
0
0
0
0
0
0
0
0

Formulacao Fraca:

(
0

du di
du
+ P e i ) dx = [u(0) 1] i (0) .



dx dx
dx
condic
ao de contorno.

O ideal e montar as matrizes e vetores elementares sem se preocupar com as condicoes


de contorno e depois modica-las em funcao destas.
!
!
(e)
(e)
(e)
A
f
A
11
12
1
;
f (e) =
;
A(e) =
(e)
(e)
(e)
A21 A22
f2

1
dj di
dj
2
(e)
Aij = (e)
d + P e
i d;
h
1 d d
1 d

d
2
= (e) .
dx
h
(e)

fi

= 0.

1
d1
1

=
,
2
d
2
d2
1
1+
(e)

= .
2 () =
2
d
2
(e)

1 () =

1
2
1
1 1
1
= (e)
( ) ( ) d + P e
( ) (
) d =
h
2
2
2
2
1
1

1
1
Pe
2
d
(1 ) d =
= (e)
h
1 4
1 4
1
Pe
= (e)
h
2
e assim por diante...
(e)
A11

Apos obter as matrizes elementares, temos que nos preocupar com as condicoes de
contorno.
Os termos correspondentes a`s condicoes de contorno se anulam em todos os termos
menos no primeiro e no u
ltimo.
i (1) = 0 , so para i = N
i (0) = 0 , so para i = 1.
No primeiro elemento, temos que acrescentar:

1
( ) = [U1 1]
0

N


( ) Uj + U1 = +1

j=1
(1)

(1)

A1,1 = A1,1 + 1
(1)

(1)

f1 = f1 + 1
26

No u
ltimo elemento temos uma condicao de contorno essencial.
U9 = 0 Essa e a equacao que se quer impor.
(8)

(8)

A2,1 0 A2,2 1
(8)

f2 0.
(8)

se a c.c. fosse u(1) = g f2 g.


Para calcularmos os elementos de cada matriz, temos que integrar funcoes ao longo do
elemento. De um modo geral, temos que calcular:

1
F ()d.
1

Para um problema simples, podemos calcular a integral analiticamente. Porem, e mais


interessante faze-lo numericamente, pois engloba a resolucao nao so de problemas simples
como tambem complicados e ainda temos um programa generico.
Um metodo comumente utilizado e o da QUADRATURA GAUSSIANA, onde

F ()d =

N
GP


F ()Wi

i=1

onde N GP e o n
umero de pontos utilizados para a integracao. Quanto maior o n
umero de
pontos, melhor a aproximacao.
A tabela a seguir fornece o valor de i e Wi para diferentes N GP .
i

Wi

0.0

2.0

0.57735
+0.57735

1.0
1.0

0.77459
0.0
+0.77459

0.555
0.888
0.555

N GP

PROJETO #1

2
d u
du

dx2 P e dx = 0
du(0)
= u(0) 1
dx

u(1) = 0

27

A solucao analtica do problema e dada por:


u(x) =

eP ex eP e
1 P e eP e

Escreva um programa para obter a solucao do problema com:


(a) Malha de 10 elementos lineares uniformemente espacados com P e = 5, P e =
10, P e = 30.
(b) Malha de 5 elementos quadraticos uniformemente espacados com P e = 5, P e =
10, P e = 30.
(c) Malha de 10 elementos lineares concentrados em x = 1, com P e = 30. Utilize a
seguinte funcao para gerar a malha concentrada:

a
(N N ODES i)
xi = 1
(N N ODES 1)
a parametro que regula a concentracao da malha.
(d) Compare as solucoes obtidas com a solucao analtica em cada ponto da malha.

ESTRUTURA SUGERIDA PARA O PROGRAMA


CALL INPUT Rotina para ler os dados do problema.
Pe

linear
Tipo de Elemento
Quadr
atico
N
umero de Elementos
Uniforme
Malha
Concentrada
CALL GLOBALPOINTERS rotina para:
Calcular o n
umero de n
os (NNODES).
Gerar a matriz com o mapeamento da numera
ca
~o local global
(DomNodeID) para cada tipo de elemento.
CALL MESH Gerar a malha (coordenadas xi ).
CALL SOLUTION Calcular a solu
ca
~o por EF.
CALL EXACT Calcular a solu
ca
~o exata em cada ponto da malha.
CALL OUTPUT Criar uma tabela com :
xi | sol. exata | sol.

28

aprox.

erro %

SUBROTINE SOLUTION
do iele = 1, N ELE
NELE # de elementos
call getelemA rotina para calcular a matriz A(iele) (local).
call getelemb rotina para calcular o vetor local f (iele) .
call BoundCond rotina para impor condi
co
~es de contorno.
do ilnode = 1, N LOCALN ODES
ignode = DomNodeID (ilnode, iele) # global do n
o ilnode
do jlnode = 1, N LOCALN ODES
jgnode = DomNodeID (jlnode, iele)
A(ignode, jgnode) = A(ignode, jgnode) + Aelem(ilnode, jlnode)
end
end
end
CALL SOLVER

SUBROTINE getelmA
A(e) 0
do igp = 1,NGP
XI = XGP (igp)
CALL BASISFUNC (XI(igp), P HI, DP HIdXI )



vetor

do ilnode = 1, N LOCALN ODES


do jlnode = 1, N LOCALN ODES
2

A(ilnode, jlnode) = A(ilnode, jlnode) + (w(igp) h(e)


dP HIdXI(ilnode) dP HIdXI(jlnode) + P e P HI(ilnode)
dP HIdXI(jlnode))
end do
end do
end do

29

Captulo 4
Problema Bi-Dimensional Linear
Vamos considerar o problema 2-D de conducao de calor.

(kT ) = 0; x ,
T = 0; x 1 ,

n T = q; x 2 .

Figura 4.1: Problema bi-dimensional.


k condutividade termica. Vamos considerar k constante 2 T = 0.
T |1 = 0 c.c. Dirichlet (temperatura prescrita)
| = q c.c Newman (uxo prescrito)
n T = q T
n 2
Formulacao Fraca : Ache T U tal que:

w2 T d = 0 , w V ;

onde:
30


U = {T  |T |2 d < ; T (1 ) = 0},

V = {w  |w|2 d < ; w(1 ) = 0}.
Desenvolvendo a expressao do resduo ponderado:
Observe que:


d
dT
dw dT
d2 T
w
=
+w 2
dx
dx
dx dx
dx


2
d
dT
dT
dw dT
+
w
,
w 2 =
dx
dx dx dx
dx
usando a mesma idea para duas variaveis:

 2






w T

T
2T
w T
T

T
dxdy =
w
+
+
dxdy +
w
+
w
dxdy
x2
y 2
y y
x
y
y

x x
x

w T d = w T d + (wT )d.

Usando o Teorema da Divergencia, que diz:

f d =
n f d

A formulacao fraca ca:

2
w T d = w T d +
n (wT )d

Dividindo o contorno em dois pedacos e como w|1 = 0 (a funcao peso deve ser identicamente nula ao longo do contorno onde e imposta uma condicao de contorno de Dirichlet)

wn T d =

wn
T d1 +
 
0

wn
T d2
 

Formulacao Fraca:

Discretizacao Uh U

w T d +


2

w q d2 = 0

Uh de dimensao N .
Th =

N

j=1

onde Cj s sao as N incognitas.

31

Cj j ,

As N equacoes linearmente independentes serao obtidas escolhendo-se N funcoes peso


tambem linearmente independentes :
Ri

i T d =

Sendo Th =

N
j=1


2

i q d2
N

Cj j , entao, T =

j=1

Cj j :

N

i (
Cj j ) d =
i q d2

j=1

Cj
i j d =
i q d2

2
j=1

 




N


Aij

bi

Aij cj = bi

i j d

Aij =

bi =

i q d2
2

Metodo dos Elementos Finitos

Escolher i tal que (xj ) = ij i (xj ) =

1 se i = j
0 se i = j

Figura 4.2: Funcoes base bi-dimensional (xj ) = ij


Ponto de Vista Elementar
Elemento Bi-Linear

32

Figura 4.3: Funcoes base de elemento bi-linear.

( 1)( 1)
4
( 1)( + 1)
2 (, ) =
4
( + 1)( + 1)
3 (, ) =
4
( + 1)( 1)
4 (, ) =
4

(e)
Aij =
i j d

1 (, ) =

(e)
Aij

=
(e)

(e)


i j i j
+
d
x x
y y

A matriz A(e) e uma matriz 4 4 no caso de elementos bi-lineares.


Precisamos saber as derivadas das funcoes base,
sao denidos em termos de e .

i
i
;
x
y

, para i = 1..4, ja que os i s

Da mesma forma que no caso 1-D, precisamos de um mapeamento do sistema de coordenada local (, ) para o sistema de coordenadas global (x, y).
Uma vez obtida as matrizes elementares, temos que montar a matriz global. O processo de montagem e analogo ao caso unidimensional. Precisamos da matriz
DomNodeID(ilnode, iele) = n
umero global do no local ilnode do elemento iele.
33

Esta matriz e obtida a partir da numeracao dos elementos e nos usados para dividir o
domnio de calculo. A numeracao tanto dos nos como dos elementos e aleatoria. Como essa
numeracao esta diretamente relacionada com a estrutura da matriz global, e interessante
usar uma numeracao otimizada, que minimize a banda da matriz global.

Figura 4.4: Exemplo de numeracao dos nos e elementos.


A Fig.4.4 ilustra um exemplo de numeracao dos elementos e nos. A matriz DomN odeID
para este problema e dada por:
DomNodeID
ilnodeiele
1
2
3
4

1 2 3
1 2 3
5 6 7
6 7 8
2 3 4

4 5 6 7 8 9
5 6 7 9 10 11
9 10 11 13 14 15
10 11 12 14 15 16
6 7 8 10 11 12

34

A Matriz A(5) e montada na seguinte posicao:

A=

(5)

A1 1 A6 6
(5)

A1 2 A6 10
(5)

A1 3 A6 11
(5)

A1 4 A6 7
...
A estrutura da matriz global e funcao direta da numeracao global dos nos, como ja foi
OTIMIZADO pode levar a uma matriz global com banda alta,
dito. Um esquema NAO
como mostrado na Fig.4.5. Existem diversos algoritmos para otimizar a numeracao dos nos.
Estes metodos nao serao tratados neste curso.
Para calcular elementos da matriz elementar, precisamos calcular as derivadas das
funcoes base com relacao a x e y:



i j i j
(e)
Aij =
+
d
x x
y y
(e)
Mas, a funcao (, ) esta denida em termos de e , logo temos que mudar de
coordenadas e para isso vamos usar um mapeamento que escreva x e y como funcao de e
:
x = x(, ) e
y = y(, ).

MAPEAMENTO ISOPARAMETRICO:

35

Figura 4.5: Dois esquemas de numeracao de nos e suas respectivas matriz global.
Requisitos para mapeamento:
Linhas de contorno do elemento sao mapeadas em linhas de contorno.
Nos globais sao mapeados em nos locais.
Um exemplo de mapeamento muito utilizado e denido por:


x(, ) = 4i=1 Xi i (, )

y(, ) = 4i=1 Yi i (, )
Repare que :
x1 = X1 1 (1, 1) +X2 2 (1, 1) +X3 3 (1, 1) +X4 4 (1, 1) = X1
  
  
  
  
=1

e assim em diante...

=0

=0

=0

A funcao interpolacao ultilizada no mapeamento e a mesma funcao interpolacao ultilizada para aproximar a funcao T elemento isoparametrico.
EXERCICIO #2:
Mostre que o mapeamento isoparametrico satisfaz a condicao que a imagem da linha
= 1 e mapeada no contorno do elemento entre os nos 3 e 4.
36

Figura 4.6: Mapeamento isoparametrico

Uma vez conhecendo o mapeamento entre as coordenadas, pode-se determinar :


i
.
y

i x
i y
i

= x + y

i x
x

i y
y



i
x

i
y

Jacobiano da Transformac
ao

Logo:

i
x

= J1

i
y

|J| =

x y

; J1 = 1
|J|

y x
.

37

Inverso do Jacobiano

i
x

Assim:
i
=
x
i
=
y

x y

x y


y x

y x

y i y i

x i x i

Para um mapeamento isoparametrico temos que:


N

i=1

i
Xi
;

N

i
Xi
; ...

  i j i j 
Logo, a integral elementar e
+ y y dxdy pode ser reescrita em funcao das
x x
variaveis locais:

(e)

Aij =


(e)

i=1

i j dxdy =

(e)
Aij


(e)

J1 i J1 j |J| d d

1 1 "
1

i
+( x
+

j
y i
y j
)(
y
)+


#
j
j
x i
1
)( x
+ x
) |J|
dd



y i
(

Como a expressao para o calculo da matriz elementar contem |J| no denominador, por
isso e importante que |J|  0. Se o elemento car muito distorcido isto pode acontecer e a
(e)
precisao do calculo de Aij ca comprometida, como no caso mostrado a seguir:

Figura 4.7: Elemento distorcido.


dA = |J|dd = |dr1 ||dr2 |sen
|J| =

|dr1 ||dr2 |sen


dd

Quando 0 ou 180 graus , |J| 0. Deve-se monitorar o valor de |J|. Se


car negativo ou muito pequeno, os calculos devem ser interrompidos e uma nova malha
38

deve ser criada.


Integracao Numerica
Quadratura Gaussiana:
1 1
1

F (, )dd =
1

N GP I N GP J
igp=1

jgp=1

F (i , j ) wI wJ

Figura 4.8: Localizacao dos Pontos de Gauss.


ELEMENTO

NUM.PONTOS

INTEGRAC
AO

PESOS
w

COORDENADAS

linear

22=4

1.0
1.0
1.0
1.0

1.0
1.0
1.0
1.0

-0.57735
+0.57735
-0.57735
+0.57735

-0.57735
-0.57735
+0.57735
+0.57735

quadratico

33=9

0.555
0.888
0.555
0.555
0.888
0.555
0.555
0.888
0.555

0.555
0.555
0.555
0.888
0.888
0.888
0.555
0.555
0.555

-0.77459
0.0
+0.77459
-0.77459
0.0
+0.77459
-0.77459
0.0
+0.77459

-0.77459
-0.77459
-0.77459
0.0
0.0
0.0
+0.77459
+0.77459
+0.77459

39

A Localizacao dos pontos esta representada na Fig.4.8:


Algoritmo para o calculo de A(e)

do igp = 1, N GP
XI = XGP (igp)
W I = W (igp)
do jgp = 1, N GP
N ET A = XGP (jgp)
W J = W (jgp)
W = WI WJ
Calcular fun
co
~es base no ponto de Gauss
i
i
(, ) i = 1, ..., N LOCALN ODES
i (, ), (, ),

 LN i
= N
i=1 Xi
N LN
i
= i=1 Xi

 LN i
= N
i=1 Yi
N LN
i
= i=1 Yi

Calcular

y
x
Calcular
detJ = x
y


i
i
Calcular
= ...
= ...
x
y
do ilnode = 1, N LOCALN ODES
do jlnode = 1, N LOCALN ODES
A(ilnode,$jlnode) = A(ilnode, %
jlnode)+
j
j
i
i
W x x + y y detJ
end do
end do
end do

end do

Para executar os passos de calculo de forma eciente, pode-se utilizar uma estrutura matricial para armazenar e operar as variaveis. Um exemplo de tal estrutura e descrito a seguir.
i i
Armazenar as funcoes i (, ),
,
da seguinte forma:

1 2
1

P HI(i) =
GradP
HI(i,
j)
=
3
1
2

Armazenar as coordenadas dos pontos nodais de cada elemento da seguinte forma:




X1 X2 X3 X4
XY (i, j) =
Y1 Y2 Y3 Y4
40

A matriz Jacobiana pode ser calculada por:


JAC(i, j) = GradP HI XY T

X1
X2

X3
X4

Y1
Y2

Y3
Y4

detJ = JAC(1, 1) JAC(2, 2) JAC(1, 2) JAC(2, 1)

JACIN V (1, 1) = JAC(2, 2)/detJ

JACIN V (1, 2) = JAC(1, 2)/detJ


J1 =

JACIN V (2, 1) = JAC(2, 1)/detJ

JACIN V (2, 2) = JAC(1, 1)/detJ


As derivadas das funcoes base em relacao a`s coordenadas global sao armazenadas na
matriz
1 2 3 4
GradP HI XY (i, j) =

1
y

2
y

3
y

4
y

GradP HI XY (i, j) = J1 GradP HI

1
|J|

1
x

2
x

3
x

4
x

1
y

2
y

3
y

4
y

O algoritmo pode ser escrito como:

CALL BASISFUNC (XI, N ET A, P HI, GradP HI)


CALL MAPPING (XY, P HI, GradP HI, JAC, JACIN V, detJ)
GradP HI XY (i, j) = J1 GradP HI
do ilnode = 1, 4
do jlnode = 1, 4
A(ilnode, jlnode) = A(ilnode, jlnode) + W detJ
(GradP HI XY (1, ilnode) GradP HI XY (1, jlnode)+
GradP HI XY (2, ilnode) GradP HI XY (2, jlnode))
end do

41

end do

EXERCICIO # 3
Escreva a rotina BASISFUNC 1 para elementos bi-lineares e BASISFUNC 2 para elementos quadraticos.
EXERCICIO # 4
Escreva a rotina MAPPING indicada no algoritmo acima.

42

Captulo 5
Problema N
ao Linear
Vamos considerar o seguinte problema uni-dimensional:

du
d2 u

u dx + dx2 = f (x); x (0, 1),


u = 0;
x = 0,

u = 0;
x = 1.

Desenvolvendo a formulacao do Metodo dos Resduos Ponderados (Galerkin), obtem-se:



du d2 u
Ri =
u + 2 + f i dx = 0
dx dx
0

1
du di
du
du
du
dx + (1) i (1) (0) i (0) +

u i dx +
f i dx = 0,
   dx
  
dx
dx
0 dx dx
0
0
=0
=0

1
du
du di
u i dx +
f i dx = 0.
Ri =
dx +
dx
0 dx dx
0
0

Substituindo a expansao da funcao u(x) =

Ri =
0

N
1

dj di
Cj
dx +
dx dx
j=1

 N


N

Cj j

j=1

j=1

Cj j (x):

 N


dk
Ck
dx
k=1

i dx +

f i dx = 0.
0

Trocando a ordem da integracao e somatorio em j, a expressao pode ser reescrita como:




1 
N
N
"
1 d d
#
1

dk
j
i
j i dx =
Cj

Ck
f i dx.
dx +
dx dx
dx
0
0
0
j=1
k=1






bi

Aij

43

A expressao acima representa o produto matricial Ac = b. Porem, como o problema e


nao linear, os elementos da matriz A dependem dos coecientes Ck , solucao do problema.
A notacao mais precisa de representar o problema acima seria
A(c) c = b.
O sistema de equacoes nao lineares deve ser resolvido por um metodo iterativo.
importante perceber a diferenca entre metodos iterativos para resolver um sistema de
E
equacoes nao lineares e metodos iterativos para resolver um sistema de equacoes lineares.
Muitos programas de simulacao numerica utilizam um metodo iterativo para resolver o
sistema linear Ac = b oriundo de um problema linear. A vantagem de metodos iterativos e
a economia de memoria, pois a matriz A nao e armazenada inteira na memoria, e as grandes
desvantagens sao a nao garantia de convergencia e o tempo computacional. O que estamos
analisando neste captulo sao metodos iterativos para resolver um sistema nao linear. A
princpio, neste curso, sistemas lineares sao resolvidos por metodos diretos (alguma variacao
de eliminacao gaussiana).

5.1

Solu
c
ao de problema n
ao-linear com uma vari
avel

Vamos considerar o seguinte problema de uma variavel:


3
x
2x + 4 = 0
 
f (x)

O metodo mais simples de determinar a raiz desta equacao e conhecido como Metodo de
Picard.

METODO
DE PICARD:
A funcao f (x) e reescrita como f (x) = x g(x). A solucao do problema, x , satisfaz a
equacao x = g(x ).
x0 chute inicial
Repetir at
e |xn+1 xn | <
xn+1 = g(xn )

A interpretacao geometrica do metodo de Picard e apresentada na Figura 3.1. O metodo


de Picard pode divergir ate quando o valor inicial e bem proximo da solucao do problema,
como no caso 3 da Figura 3.1 O criterio de convergencia do metodo:
CONVERGE |g  (x )| < 1,

44

Figura 5.1: Interpretacao geometrica do Metodo de Picard.


DIVERGE |g  (x )| > 1.

METODO
DE NEWTON:
O procedimento iterativo e determinado atraves da expansao da funcao f (x) em serie
de Taylor ao redor da solucao x .
f (x ) = f (x + x) f (x) + xf  (x) = 0
x = x x =

f (x)
f (x)
x = x  .

f (x)
f (x)

x0 chute inicial
Repetir at
e |xn+1 xn | <
n)
xn+1 = xn ff(x
(xn )

45

A interpretacao geometrica do metodo de Newton e ilustrada na Figura 3.2.

Figura 5.2: Interpretacao Geometrica do Metodo de Newton.


O metodo de Newton possui uma propriedade de convergencia muito forte. Se o valor
inicial do processo iterativo for proximo da solucao, o metodo converge quadraticamente,
isto e, o valor do erro decai seguindo uma funcao quadratica, conforme a prova desenvolvida
a seguir.
Prova
Vamos assumir que x e uma raiz simples: f  (x ) = 0.
Vamos denir o erro como n = xn x . Logo x = xn n .
Expandindo a funcao f (x) por serie de Taylor ao redor da solucao x :

46

1
f (x ) = 0 = f (xn ) + (x xn )f  (xn ) + (x xn )2 f  (); (xn , x )
2
1

2 
(x

x
)
f
()
f (xn )
n
+ (x xn ) = 2

f  (xn )
f  (xn )


1
(x xn )2 f  ()
f (xn )

2
=

x xn 
f (xn )
f  (xn )



xn+1

x xn+1 = n+1 =

1 2 
f ()
2 n
f (xn )

1 f  ()
n+1 = 2n 
.
2 f (xn )

Logo, tomando o limite quando x x :


n+1

1 2 f  (x )
= n  ,
2 f (x )

n+1
= C n+1 = C 2n .
n 2
n
lim

Por exemplo, se na quarta iteracao, a aproximacao x4 estiver perto da solucao do problema e 4 = 103 , pela prova acima, 5 = 106 e 6 = 1012 .

5.2

Sistema de Equa
c
oes N
ao-Lineares

Vamos agora considerar um sistema de equacoes nao-lineares, respresentado por


fi (x1 , x2 , x3 , ..., xn ) = 0;

i = 1, ..., n.

METODO
DE PICARD:
Como no caso de uma equacao apenas, cada expressao do sistema deve ser reescrita
como
xi = gi (x1 , x2 , x3 , ..., xn );

i = 1, ..., n.

O processo iterativo e similar ao caso de apenas uma variavel.


(0)

(0)

(0)

x(0) = (x1 , x2 , ..., xn ) chute inicial


47

Repetir at
e |x(k+1) x(k) | <
(k+1)
(k)
(k)
(k)
xi
= gi (x1 , x2 , ..., xn ); i = 1, ..., n
As propriedades de convergencia sao similares as do caso com uma variavel. O procedimento iterativo converge se:
D(x) 1;

Dij =

gi
.
xj

METODO
DE NEWTON:
Como no caso de uma equacao apenas, cada expressao do sistema deve ser desenvolvida
por serie de Taylor ao redor da solucao do problema x = (x1 , x2 , ..., xn ):

(k)
(k)
(k)
f1
f1
f1

(x1 x1 ) + x
(x2 x2 ) + ... + x
(xn xn ) = 0;
f1 (x ) = f1 (x(k) ) + x

n
1
2

f2 (x ) = f2 (x(k) ) + f2 (x x(k) ) + f2 (x x(k) ) + ... + f2 (x x(k)


n ) = 0;
1
2
1
2
n
x1
x2
xn
.
..

f (x ) = f (x(k) ) + fn (x x(k) ) + fn (x x(k) ) + ... + fn (x x(k) ) = 0.


n

x1

x2

xn

Reescrevendo a expressao em notacao matricial:


f (x) = 0 = f (x(k) ) + J(x x(k) )
J (x x(k) ) = f (x(k) ).
  
x(k+1)

A matriz J e chamada de Matriz Jacobiana e denida como:


Jij =

fi
.
xj

O algoritmo do metodo de Newton para um sistema de equacoes nao-lineares pode ser


escrito como:
(0)

(0)

(0)

x(0) = (x1 , x2 , ..., xn ) chute inicial


Repetir at
e |x(k+1) x(k) | <
(k+1)
) = f (x(k) )
J(x
x(k+1) = x(k) + x(k+1)

48

5.3

M
etodo de Newton aplicado a uma Equa
c
ao Diferencial n
ao linear

Como mostrado no incio do captulo, no caso da solucao de uma equacao diferencial


nao linear pelo metodo de elementos nitos, a discretizacao leva a um sistema de equacoes
algebricas nao linear:
Ri = Ri (C1 , C2 , ..., CN ) = 0 ; para i = 1, ..., N.
Cada equacao do sistema corresponde a um resduo ponderado:

1
du
du di
Ri =
u i dx +
f i dx = 0.
dx +
dx
0 dx dx
0
0
A solucao pelo Metodo de Newton leva ao seguinte processo iterativo
J(C(k+1) ) = R(C(k) ),
C(k+1) = C(k) + C(k+1) .
Os elementos da matriz Jacobiana, J, representam a sensibilidade da equacao a cada
incognita do problema.

1
#
du di
Ri
"
du
Ji,j =
Ri =
=
u i dx +
f i dx
dx +
Cj
Cj
dx
0 dx dx
0
0



1
du

du
du

di
(u) + u
dx +
i dx.
Ji,j =
dx
Cj
dx
Cj dx
0 dx Cj
0
A derivada da funcao u e de sua derivada du
em relacao aos coecientes Cj sao calculados
dx
da seguinte forma:
 N



(u) =
Ck k =
(C1 1 + ... + Cj j + ... + CN N ) = j ,
Cj
Cj k=1
Cj

Cj

du
dx

=
Cj

 N


dk
Ck
dx
k=1

=
Cj

d1
dj
dN
+ ... + Cj
+ ... + CN
C1
dx
dx
dx

dj
.
dx

Logo, os elementos da matriz Jacobiana para este problema sao dados por:


1
dj
dj di
du
Ji,j =
j
dx +
+u
i dx.
dx
dx
0 dx dx
0
O algoritmo de solucao de um problema nao linear pelo metodo de elementos nitos
acoplado com o metodo de Newton pode ser escrito como mostrado a seguir:
Ler Chute inicial C(0)
49

do iter = 1, N IT ER
CALL FORMRV (C(iter1) )
Rotina para c
alculo do vetor res
duo global
CALL FORMJM (C(iter1) )
Rotina para c
alculo da matriz Jacobiana global
Resolver o sistema JC = R
C(iter) = C(iter1) + C
Erro = |R| + |C|
if Erro < then STOP (Problema Convergiu)
end do

OBSERVAC
OES
IMPORTANTES:
A cada passo do metodo de Newton, o sistema linear de equacoes JC = R deve
ser resolvido.
Se o problema for linear, o metodo de Newton converge em uma iteracao.
A visao elementar do problema ca inalterada. No lugar de calcular a matriz e o vetor
elementar A(e) e b(e) , deve-se calcular a matriz jacobiana elementar J(e) e o vetor resduo
elementar R(e) .

5.4

No
c
oes de T
ecnicas de Continua
c
ao

O raio de convergencia do metodo de Newton e tipicamente menor do que o raio de


convergencia do metodo de Picard. Isto signica que o metodo de Newton somente ira
convergir se o chute inicial for proximo a` solucao do problema. Porem, se o chute inicial
for adequado, o metodo de Newton converge quadraticamente, levando poucas iteracoes
ate o calculo da solucao do problema. O metodo de Picard, apesar de possuir um raio de
convergencia maior, tipicamente gasta um n
umero muito maior de iteracoes para calcular
a solucao do problema e em muitas vezes nao converge, independente do valor do chute
inicial.
Logo, o procedimento mais seguro e eciente numericamente e utilizar o metodo de
Newton acoplado com tecnicas para procura de chutes iniciais adequados. Este processo de
calculo de chutes iniciais `a medida que um parametro do problema e variado e denominado
de Continuacao.
Um sistema de equacoes algebricas originado a partir da discretizacao de uma equacao
diferencial que descreve um determinado fenomeno fsico pode ser representado de uma
forma geral como:
f (x, ) = 0,

50

fi sao as equacoes a serem resolvidas, xi representam a solucao do problema, e um


parametro do problema (n
umero de Reynolds, por exemplo).
Geralmente a solucao do problema para uma determinada faixa do parametro e bem
simples. Se for o n
umero de Reynolds, o problema f (x, 0) = 0 e linear, e o metodo de
Newton converge em uma iteracao, independente do valor do chute inicial.
O processo de continuacao consiste em, sabendo-se a solucao do problema para = i ,
determinar o chute inicial para o problema com = i+1 .
O procedimento mais rudimentar e utilizar a solucao anterior (com = i ) como chute
inicial:
x(o) (i+1 ) = x(i )
Este procedimento e conhecido como Continuacao de Ordem 0.
Um chute inicial bem melhor pode ser obtido usando o valor da derivada da solucao
em relacao ao parametro , como descrito a seguir. Este procedimento e denominado
Continuacao de Primeira Ordem.
O sistema a ser resolvido e representado por
f (x, ) = 0.
Diferenciando esta expressao em relacao a , obtem-se:
f dx
f
dx
f

+
=0 J
=

x d
d


J



f
dx
f
1

=J
x = J1 .
d

Logo, o valor do chute inicial para = i+1 e obtido pela seguinte expressao:
f
.

Observe que se o metodo de Newton tiver sido utilizado para obter a solucao do problema
nao linear para = i , o custo computacional do calculo do chute inicial e bem pequeno,
uma vez que a matriz Jacobiana ja foi invertida para o calculo de x(i ).
A Figura 3.3 ilustra o chute inicial obtido com os dois procedimentos de continuacao
descritos nesta secao.
x(o) (i+1 ) = x(i ) J1

51

Figura 5.3: Chute inicial obtido com continuacao de ordem zero e primeira ordem.

52

Captulo 6
Formula
c
ao Integral da Equa
c
ao de
Navier-Stokes
A equacao de Navier-Stokes para uidos incompressveis :

u u = T, (em regime permanente);
u = 0;

(6.1)

onde para um Fluido Newtoniano ; T = pI + [u + uT ].


As variaveis do problema sao o campo de velocidade u e o campo de pressao p.

Figura 6.1: Domnio para problema de escoamento.


As condicoes de contorno para a equacao de Navier-Stokes podem ser em velocidade ou
forca agindo no contorno do domnio. A condicao de contorno utilizada depende da fsica
do problema. As fronteiras de um escoamento sao, em geral:
Entrada de uido.
Sada de uido.
Paredes solidas.
53

Interface entre dois uidos.


Vamos assumir que para x 1 , prescrevemos a velocidade; i.e.
u = V em x 1 .

(6.2)

Esta e uma condicao de contorno essencial. Corresponde a`s condicoes de impermeabilidade e nao deslizamento.
u n = V n impermeabilidade,
u t = V t nao deslizamento.
Para x 2 , vamos prescrever a forca supercial
n
T = f
 

em x 2 .

(6.3)

trac
ao

Esta e uma condicao de contorno natural. Prescreve a forca na fronteira. A forca prescrita f depende da fsica do problema.
Para resolver este sistema de equacoes diferenciais parciais pelo metodo dos resduos ponderados, temos que multiplicar o resduo da aproximacao de cada equacao por um funcao
peso e forcar a integral ao longo de todo o domnio a ser nula.

Metodo dos Resduos Ponderados


Como a equacao de consevacao da quantidade de movimento (4.1) e uma equacao vetorial, o resduo ponderado correspondente a esta equacao sera calculado atraves do produto
interno do resduo da aproximacao com um funcao peso vetorial W. A equacao da continuidade e uma equacao escalar e desta forma, a funcao peso utilizada w e uma funcao
escalar, como as utilizadas ate o captulo anterior.

Rm = { u u T} W d = 0;

{ u}w d = 0.

Rc =

Resduo associado a` equacao de quantidade de movimento:

54

{ u u T} W d =

=
(u u) Wd ( T) W d.

Rm =

O termo T apresenta segunda derivadas da velocidade (variavel primitiva do problema). Vamos integrar por partes para transferir a derivada para a funcao peso, conforme
ja feito anteriormente, usando a seguinte igualdade tensorial:
T : W = (T W) ( T) W

( T) W d =

T : W + (T W) d.



Usando o teorema de Gauss podemos escrever: (T W) d = n (T W) d

logo,

( T) W d =

T : W +

n (T W) d.

Finalmente:

(u u) W +

Rm =

T : W

(n T) W d.

A funcao peso vetorial W pode ser escrita em termos de suas componentes: W =


[W1 , W2 ] e cada termo do resduo da equacao de conservacao da quantidade de movimento
escrito em termos de suas componentes. No caso particular de sistema cartesiano, cada
termo do resduo ponderado e escrito como:
$
%
$
%
u
u
v
v
1) (u u) W = W1 u x + v y + W2 u x + v y .




u
u v
W1
2) T : W =
+
) +
p + 2
+ y (
x
y x






Txx
Txy




u v
v
W2
W2
+ x (
+
) + y p + 2
.
y x
y






W1
x

Tyx =Txy

Tyy

3) (n T) W = fx W1 + fy W2 .

Cada componente da funcao peso vetorial pode ser escrita como combinacao linear de
funcoes base escalar i . Se cada componente W1 e W2 pertence a um espaco vetorial de
55

dimensao n, a funcao peso vetorial W pertence a um espaco de dimensao 2n que e gerado


pela seguinte base de funcoes:

W=



W1
W2

1
0

Espacos de dim=2n


,

2
0


, ... ,



n
0

 
 



0
0
0
,
, ... ,
.
,
2
n
1
 



n func
oes

n func
oes

Denindo o espaco das funcoes peso desta forma, as componentes da equacao de conservacao podem ser desacopladas, pois para as primeiras n funcoes base aparecem termos
ltimas n
correspondentes a` primeira componente da velocidade, ja que W2 = 0 e para as u
funcoes base aparecem temos correspondentes `a segunda componente da velocidade, ja que
para estas funcoes base W1 = 0.
Usando o fato do uido Newtoniano, ou seja, T = pI + [u + uT ], as 2n equacoes
algebricas associadas a` equacao de conservacao da quantidade de movimento sao escritas
como:




u
u
i
u
=
i u
+v
+
p + 2
+
x
y
x
x




u v
i
i fx d ; i = 1, ..., n.
(
+
) d
+
y
y x

i
Rmx





v
v
i
u v
=
i u
+v
+
(
+
) +
x
y
x
y x




v
i
i fy d ; i = 1, ..., n.
p + 2
d
+
y
y

i
Rmy

Resduo associado a` equacao da continuidade:

Rc = { u}w d = 0.

Onde w esta no espaco gerado pelas seguintes funcoes peso: {1 , 2 , ..., m }. As m


equacoes algebricas associadas a equacao da continuidade sao escritas como:

u v
i
+
) i d ; i = 1, ..., m.
Rc = (
y
x
Os campos de velocidade e pressao devem ser escritos em termos de funcoes base. Os
diferentes termos dos resduos associados a equacao de conservacao de quantidade de movimento contem pressao ou derivadas da velocidade. Como estes termos devem ter a mesma
56

precisao de discretizacao, as funcoes bases utilizadas para pressao nao precisam ser da
mesma ordem que as usadas para o campo de velocidade. Quando os dois campos de
variaveis pertencem a espacos diferentes, diz-se que a Formulacao e Mista (Mixed Finite
Element).
As variaveis do problema sao escritas em termos de funcoes base como:

   n
U

u
i
i
i=1
2 n incognitas;
u=
= n
v
i=1 Vi i
p=

m


Pi i m incognitas.

i=1

Repare que a funcao peso ultilizada na equacao de continuidade e a mesma funcao ultilizada para interpolar a pressao (i ) e assim o n
umero de incognitas (2n + m) e o mesmo
que o n
umero de equacoes.
Como a formulacao nao apresenta derivadas da pressao ou da funcao peso i , o espaco
das funcoes i pode ser menor que o das funcoes i ultilizadas para interpolar a velocidade

ser descontnuas. As funcoes i s devem ser contnuas,
(m < N ) e as funcoes
 i s podem
2
pois tem que satisfazer |i | < . Nao existe essa restricao para i s.
Nao e qualquer combinacao arbitraria de i s e i s que leva a formulacoes com bom
desempenho numerico. Uma ma escolha de i s e i s pode levar a metodos instaveis.
Um exemplo simples de um dos problemas que podem ocorrer e discutido a seguir. Para
facilitar a interpretacao geometrica, vamos analisar um problema de elasticidade linear
de materiais incompressveis. As equacoes que descrevem o problema sao identicas ao do
problema de Stokes (Re = 0), sendo u o deslocamento.
T=0 ;
u = 0.
Vamos considerar a situacao de dois elementos triangulares, como mostrado na Figura
4 e funcoes base i linear e i constante.

( u) i d = 0
u d = 0

(e)
(e)
cte

A condicao de incompressibilidade com i constante leva a uma condicao de area constante em todos os elementos.

u d = 0. Area
do elemento I e constante.
I

Observe que em se tratando de um triangulo, se a area e constante , entao o produto


base por altura nao muda, logo o no A so pode deslocar-se na vertical.
Por outro lado,

u d = 0 Area
do elemento II e constante.
II

57

Figura 6.2: Exemplo de formulacao instavel - malha truncada.


Para manter a area II xa o no A so pode deslocar-se na horizontal.
uA = 0 Malha Trancada
Isso se deve a uma ma escolha da funcao peso. A tabela a seguir lista diferentes combinacoes de funcoes base i e i que levam a metodos estaveis.
Elementos Retangulares
i
i
bilinear (n = 4)
constante (m = 1)
biquadratico (n = 9)
bilinear (m = 4)
biquadratico (n = 9) linear discontnuo (m = 4)
bic
ubico (n = 16)
biquadratico (m = 9)
Elementos Triangulares

quadratico (n = 4)
c
ubico (n = 4)

linear (m = 3)
quadratico (m = 6)

Existe uma condicao que determina se uma certa combinacao de espacos de funcoes para
DE BABUSKA-BREZZI.
a velocidade e pressao e valida CONDIC
AO
A condicao de Babuska-Brezzi verica a consistencia das aproximacoes das derivadas.
A interpolacao de u e p nao podem ser escolhidas arbitrariamente.
i ; i

sup

i i d

1
{ |i |2 d} 2


1
c { 2i d} 2

A vericacao e prova se uma determinada combinacao de i e i satisfazem a condicao


de Babuska-Brezzi sao complicados matematicamente e estao fora do escopo do curso, devendo ser tratado em um curso mais avancado de elementos nitos.
A formulacao mista apresentada pode ser interpretada como solucao de uma equacao
diferencial (quantidade de movimento) com uma restricao imposta (continuidade) pelos
58

metodos dos Multiplicadores de Lagrange.

Na apresentacao do metodo de elementos nitos para equacao de Navier-Stokes, vamos


nos concentrar no seguinte elemento : Bi-quadratico para a velocidade e linear discontnuo
para pressao. Neste elemento, cada componente da velocidade possui 9 graus de liberdade
e o campo de pressao e representado por 3 graus de liberdade.

Figura 6.3: Elemento bi-quadratico de 9 nos.


9
i=1

9
i=1

p=

Ui i
Vi i
m
i=1

9 graus de liberdade para cada componente da velocidade,

Pi i 3 graus de liberdade para pressao.

Cada elemento possui 21 graus de liberdade. As matrizes elementares sao 21 21.


As funcoes base elementares i utilizadas para expandir o campo de velocidade serao
lagrangeanas, isto e:
i (Xj ) = ij ,
cada funcao base e igual a 1 no associado a funcao e nula nos demais. Cada coeciente Uj
e Vj representa o valor da velocidade u e v no no j. Em termos das coordenadas locais, as
funcoes base para a velocidade sao:

1 (, ) =

( 1)( 1)
4
59

( + 1)( 1)
4
( + 1)( + 1)
3 (, ) =
4
( 1)( + 1)
4 (, ) =
4
2
(1 )( 1)
5 (, ) =
2
( + 1)(1 2 )
6 (, ) =
2
2
(1 )( + 1)
7 (, ) =
2
( 1)(1 2 )
8 (, ) =
2
9 (, ) = (1 2 )(1 2 )

2 (, ) =

A gura 4.4 ilustra a forma destas funcoes base.


As funcoes base utilizadas para expandir o campo de pressao nao sao Lagrangeanas. Para
este elemento, elas sao escolhidas de forma que o primeiro grau de liberdade de pressao P1
represente o valor da pressao no centro do elemento; o segundo grau de liberdade P2 , a
derivada da pressao na direcao ; e o terceiro grau de liberdade P3 , a derivada da pressao
na direcao . Para isto, a variacao da pressao em cada elemento deve ser escrita como:
p = P1 + P2 + P3 , consequentemente, as funcao base i sao:
1 (, ) = 1
2 (, ) =
3 (, ) =
Observe que:
p( = 0, = 0) = P1 ;
dp
= P2 e
d
dp
d = P3 .
Substituindo as expansoes para o campo de velocidade e pressao nas equacoes dos
resduos ponderados, obtem-se um sistema de 2n + m equacoes algebricas nao lineares.
As nao linearidades vem dos termos convectivos da equacao de Navier-Stokes. Neste curso,
o sistema nao linear sera resolvido pelo metodo de Newton. Para isto, deve-se calcular a matriz Jacobiana que representa a sensibilidade de cada equacao em relacao a cada incognita:
i
Derivada do Resduo i em relacao ao coeciente cj .
Jij = R
cj
Ate este captulo, a numeracao dos graus de liberdade dos elementos se confundia com
a propria numeracao dos nos. Como agora estamos resolvendo um sistema de equacoes
diferenciais parciais para os campos de velocidade (campo vetorial) e pressao (escalar),
60

Figura 6.4: Funcoes base bi-quadraticas.


o n
umero de graus de liberdade de cada elemento e maior do que o n
umero de nos do
elemento. O elemento que estamos trabalhando possui 9 nos e 21 graus de liberdade. Sao
eles: U1 , ..., U9 ; V1 , ..., V9 ; P1 , P2 , P3 .
A numeracao dos graus de liberdade elementar e totalmente arbitraria. A numeracao
local adotada aqui e mostrada na tabela a seguir:

61

# grau de liberdade local


1
2
3

grau de liberdade
U1
U2
..
.

4
5
6
7
8
9
10
11
12

U8
U9
V1
V2
..
.

13
14
15
16
17
18
19
20
21

V8
V9
P1
P2
P3

Figura 6.5: Numeracao local dos graus de liberdade.


Para a montagem da matriz jacobiana elementar e interessante construir um vetor que
aponte o n
umero do grau de liberdade elementar associado a cada no:
ivxlocaldof (1) = 1
(2) = 2
62

..
.
(9) = 9
ivylocaldof (1) = 10
(2) = 11
..
.
(9) = 18
ipresslocaldof (1) = 19
ipresslocaldof (2) = 20
ipresslocaldof (3) = 21

Algoritmo para c
alculo de A(e)
do igp = 1, N GP
XI = XGP (igp)
W I = W GP (igp)
do jgp = 1, N GP
N ET A = XGP (jgp)
W J = W GP (jgp)
W = WI WJ
CALL BASISFUNC (XI, N ET A, P HI, GradP HI, P SI)
CALL MAPPING (XY, P HI, GradP HI, JAC, JACIN V, detJ)
GradP HI XY = JACIN V GradP HI
v
v
, u
, v, x
, y
.
Calcular u, u
x
y
do ilnode = 1, 9
ivx = ivxlocaldof (ilnode)
ivy = ivylocaldof (ilnode)
do jlnode = 1, 9
jvx = jvxlocaldof (jlnode)
jvy = jvylocaldof (jlnode)
JacElem(ivx,jvx) = ...
JacElem(ivx,jvy) = ...
JacElem(ivy,jvx) = ...
JacElem(ivy,jvy) = ...
end do
do jpress = 1, 3
jpress = ipresslocaldof (jlpress)
JacElem(ivx,jpress) = ...
JacElem(ivy,jpress) = ...

63

end do
do jpress = 1, 3
jpress = jpresslocaldof (ilpress)
do jlnode = 1, 9
jvx = ivxlocaldof(jlnode)
jvy = ivylocaldof(jlnode)
JacElem(ipress, jvx) = ...
JacElem(ipress,jvy) = ...
end do
end do
Final do algoritmo JacElem (21 21)
Precisamos agora montar a matriz global. Vamos fazer esse processo para umas malha
simples com 4 elementos.
EXEMPLO
*FIG
Malha com 4 elementos e 25 nos.
Nos A numeracao global segue de acordo com a numeracao DomNodeID (ilnode, iele)
dos elementos.
DomNodeID
ilnode iele
1
2
3
4
5
6
7
8
9

1
1
2
3
4
5
6
7
8
9

2 3
4 2
3 16
10 17
11 3
7 18
12 19
13 20
14 6
15 21

4
3
17
22
10
20
23
24
12
25

Numeracao local dos nos.


Graus de liberdade A numeracao global segue de acordo com a numeracao dos
elementos.
FIGS*
AssMtrx
64

ildof iele
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

2
4
3
22
23
7
24
25
26
27
13
12
28
29
16
30
31
32
33
34
35
36

3
2
37
38
3
39
40
41
6
42
11
43
44
12
45
46
47
15
48
49
50
51

4
3
38
52
22
41
53
54
24
55
12
44
56
28
47
57
58
30
59
60
61
62

ALGORITMO DETALHADO PARA SOLUC


AO
DE NAVIER-STOKES
DA EQUAC
AO

JC = R

METODO
DE NEWTON
C(k+1) = C(k) + C

 PROGRAMA PRINCIPAL

Inicializar - Ler chute inicial ou inicializar o valor dos coeficientes

Calcular o vetor de Res


duo global
CALL FormRV R
Se R < stop. O chute inicial era solu
ca
~o do problema.
Repetir enquanto R >
- Calcular a matriz Jacobiana global
65

CALL FormJM J
- Resolver JC = R
CALL SOLVER (J, R, C)
- Calcular C = C + C
- Calcular o vetor Res
duo global
CALL FormRV R
Gravar a solu
ca
~o C

 FormRV C
alculo do vetor de Res
duo global
do iele = 1, N ELE
CALL getelemRV ( elemRV )
do ildof = 1, N DOF ELE
igdof = ASSMtrx (ildof, iele)
RV (igdof ) = RV (igdof ) + elemRV (ildof )
end do
end do

 FormJM C
alculo da matriz jacobiana global
do iele = 1, N ELE
CALL getelemJM ( elemJM )
do ildof = 1, N DOF ELE
igdof = ASSMtrx (ildof, iele)
do jldof = 1, N DOF ELE
jgdof = ASSMtrx (jldof, iele)
JM (igdof, jgdof ) = JM (igdof, jgdof ) + elemJM (ildof, jgdof )
end do
end do
end do

O que precisaremos para o calculo do Resduo elementar:


Formulas:




u
u
i
u
=
Re i u
+v
+
p + 2
+
x
y
x
x



u v
i
(
+
) d
+
y
y x

i
Rmx

66





v
v
i
u v
=
Re i u
+v
+
(
+
) +
x
y
x
y x



v
i
p + 2
d
+
y
y

i
Rmy

u u
+
) i d
x
x
Lembrar que vamos usar um mapeamento isoparametrico para transformar as coordenadas x, y em , .

F (x, y) dxdy =
F (, ) |J| dd.
Rci

Lembrar que vamos usar integracao de Gauss para calcular a integral:


F (, ) dd =
F (igp , jgp ) Wigp Wjgp .

igp jgp

Estrutura de Dados:
Denir os seguintes vetores / matrizes:

1
GradP HI(i, j)
2
P HI(i)

i = 1, 2
P HI
..
i = 1, ..., 9

.
j = 1, ..., 9
9

P SI(i)
i = 1, 2, 3

P SI

velocity(i, j)
i = 1, 2
j = 1, ..., 9

1
2
3


velocity


GradP HI XY

JAC

dx
d
dx
d

dy
d
dy
d

1
dx
1
dy

!
=

1
d
1
d

67

XY

X1 . . . X9
Y 1 . . . Y9

1
d
1
d

...

9
d

...

9
d

pressure(i)
i = 1, 2, 3


=J

...
...

9
d
9
d

1
d
1
d

...
...

pressure

9
d
9
d

X1 Y1

..
...
.
X9 Y9

9
dx
9
dy

...
...

GradP HI

XY (i, j)
i = 1, 2
j = 1, ..., 9
U1 . . . U9
V1 . . . V9

P1
P2
P3


UV =

P =

U
V


GradU V XY


=

du
dx
du
dy

dv
dx
dv
dy

U1 . . . U9
V1 . . . V9

P1 P2 P3


=

1
dx
1
dy

...
...

...
9

1
2
3

9
dx
9
dy

U1 V1

..
...
.
U9 V9

 getelemRV C
alculo do Res
duo elementar
do igp = 1, N GP
XI = XGP (igp)
W I = W GP (igp)
do jgp = 1, N GP
N ET A = XGP (jgp)
W J = W GP (jgp)
W = WI WJ
CALL BASISFUNC (XI, N ET A, P HI, GradP HI, P SI)
CALL MAPPING (XY, P HI, GradP HI, JAC, JACIN V, detJ)
CALL VELOCITY (velocity, P HI, U V )
CALL PRESSURE (pressure, P SI, P )
GradP HI XY = JACIN V GradP HI
GradU V XY = GradP HI XY U V T
do ilnode = 1, 9
ivx = ivxlocaldof (ilnode)
ivy = ivylocaldof (ilnode)
elemRV (ivx) = elemRV (ivx) + W detJ (Re P HI(ilnode)
(U V (1) GradU V XY (1, 1) + U V (2) GradU V XY (1, 2))+
GradP HI XY (1, ilnode) (P (1) + 2 GradU V XY (1, 1))+
GradP HI XY (2, ilnode)(GradU V XY (1, 2)+GradU V XY (2, 1)))
end do
end do
end do

68

Desta forma, as primeiras 9 linhas da matriz Jacobiana elementar correspondem aos 9


resduos da componente x da equacao de Navier-Stokes; as 9 linhas seguintes, aos 9 resduos
da componente y; e as 3 u
ltimas linhas, aos 3 resduos da equacao de continuidade. Da
mesma forma, as 9 primeiras colunas estao associadas aos coecientes Uj ; as 9 seguintes,
ltimas colunas, aos 3 coecientes Pj . Seguindo a numeracao dos
aos coecientes Vj ; e as 3 u
graus de liberdade apresentada na tabela, a matriz Jacobiana elementar possui a seguinte
estrutura:

i
Rmx
Uj

i
Rmx
Vj

i
Rmx
Pj

i
Rmy
Uj

i
Rmy
Vj

i
Rmy
Pj

Rci
Uj

Rci
Vj

Rci
Pj

A expressao de cada cada bloco desta estrutura a apresentada a seguir:


i
:
Jacobiano de Rmx





i
j
j
Rmx
u
i j
=
+u
+v
+
Uj
x
x
y
e

i
j
i j
+
2
+
de ;
x
x
y y
i
Rmx
=
Vj

i
Rmx
=
Pj



i j
u
i j
+
de ;
y
y x
e

i
i de .
x

i
Jacobiano de Rmy
:

69

i
Rmy
=
Uj



i j
v
i j
+
de ;
x
x y
e





i
Rmy
j
j
v
i u
=
+ j
+v
+
Vj
x
y
y
e

i j
i j
+
+ 2
de ;
x x
y y
i
Rmy
=
Pj

i
i de .
y

Jacobiano da Continuidade :
Rci
=
Uj
Rci
=
Vj

j
i de ;
x
j
i de ;
y

Rci
= 0.
Pj
O mapeamento da matriz elementar para a matriz global e feito de maneira semelhante
aos problemas anteriores. A diferenca e que agora cada no possui mais de 1 grau de liberdade. As linhas e colunas da matriz elementar estao associadas ao grau de liberdade e nao
aos nos. Nos exemplos dos captulos anteriores, as duas numeracoes eram coincidentes. O
mapeamento deixa de ser por nos (usando a matriz DomN odeID) e passa a ser por graus
de liberdade.
Defne-se a matriz:
AssM tx(ildof, iele) = # global do grau de liberdade local ildof do elemento iele
Apos a montagem de todas as matrizes elementares, a matriz jacobiana global ca com
a seguinte forma:

i
Rmx
Uj

i
Rmx
Vj

i
Rmx
Pj

i
Rmy
Uj

i
Rmy
Vj

i
Rmy
Pj

Rci
Uj

Rci
Vj

Rci
Pj

=0
70

CT

O bloco de zeros na diagonal da matriz pode representar um problema a mais na


solucao do sistema linear J C = R em cada passo do metodo de Newton.
Existem outras formulacoes alem da formulacao mista discutida anteriormente utilizadas
para resolver o problema de escoamento incompressvel.
Metodo da Penalidade
A ideia basica e escrever uma equacao que relacione a pressao com a velocidade. Se
esta equacao de estado for quase incompressvel, entao a solucao obtida pelo metodo da
penalidade vai ser proxima da solucao do problema incompressvel.
A formulacao do problema pelo Metodo da Penalidade e:

u u = T ; T = pI + [u + uT ];
u = p ; onde e pequeno.
Quando 0, recupera-se a formulacao incompressvel.
Pode-se substituir a pressao na equacao de Navier-Stokes p = 1 u :
)
*
u u = 1 u + (u + uT ) .
A vantagem do Metodo da Penalidade e que a pressao foi eliminada e nao e mais variavel
do problema. O n
umero de variaveis do problema foi reduzido.
A proximidade da solucao obtida com a solucao do problema incompressvel depende
do valor de . Deve-se utilizar um pequeno (o menor possvel). Porem a medida que
diminui (e consequentemente 1 aumenta), a contribuicao relativa dos termos viscosos da
tensao diminui e a solucao obtida nao satisfaz corretamente a equacao de Navier-Stokes.
Esta e uma grande desvantagem do metodo.
Metodo da Penalidade com Interpolacao Mista.
uma combinacao da Formulacao de Penalidade e Formulacao Mista. O objetivo e
E
evitar o problema descrito anteriormente . Como a formulacao e mista, resolve-se o campo
de velocidade e pressao, porem a continuidade nao e satisfeita totalmente:

u u = [p + (u + uT )];
u = p.

+
,
u u = [p + (u + uT )] w d = 0;
Rm =

Rc =
{ u p} m d = 0;

71

u=

9


Ui i ;

v=

i=1

9


Vi i ;

i=1

p=

m


Pi i .

i=1

Os resduos da equacao de quantidade de movimento sao identicos aos da formulcao


mista. A u
nica diferenca e na equacao de continuidade.



u
v
i
Rc =
+
p i d;
y
x

j
Rci
=
i d;
Uj
x

j
Rci
=
i d;
Vj
y

Rci
=
i j d.
Pj

A matriz Jacobiana global ca com a seguinte estrutura:

K
CT

onde Mij =

i j d.

A diferenca para a formulacao mista usual e que o bloco de zeros na diagonal e substituido por M.
Como M possui inversa, pode-se desacoplar a velocidade e pressao:

CT

U
=



P

Rm

Rc

K U C P = Rm
CT U + M P = Rc P =

1


M1 [Rc CT U].

Substituindo-se P em funcao de U, pode-se chegar a um sistema de equacoes somente para o passo de velocidade:

72

K U C
[K +

1


+1


,
M1 (Rc CT U) = Rm

C M1 CT ] U = Rm

1


C M1 Rc

O Problema desacoplado pode ser reescrito como:

K+

1


CM
CT

U
=



P

Calcula-se primeiramente a velocidade e depois a pressao:


1
p = u.

73

Rm
Rc

1


CM

Rc
.

Captulo 7
Condi
c
oes de Contorno
As condicoes de contorno de um problema em mecanica dos uidos podem ser de 2 tipos:
Condicao de contorno em velocidade (Dirichlet) : Especica o valor da velocidade
ou de um de seus componentes na fronteira do domnio.
Condicao de contorno em tracao (Newman) : Especica a forca ou um de seus componentes na fronteira do domnio.
As diversas situacoes fsicas de interesse se enquadram nestas categorias:
i) Paredes solidas condicao de nao deslizamento e impermeabilidade.

u = Vx ,
impermeabilidade n v = n V
v = Vy ;
nao deslizamento t v = t V;
onde t e o vetor tangencial, n o normal a` parede e V a velocidade da parede.
ii) Condicao de entrada do domnio considera-se um perl de velocidade conhecido.

Por exemplo, perl parabolico:

u = u(y),
v = 0.

Figura 7.1: perl parabolico.

74

iii) Condicao de simetria




Ft = 0 forca tangencial = 0,
v = 0 velocidade vertical = 0.

y
Linha de simetria
x

Figura 7.2: linha de simetria.




Ft = 0 t (T n) = 0,
v n = 0.

Figura 7.3: linha de simetria.


iv) Condicao de tracao nula.

Figura 7.4: tracao nula.



Tn=0

Ft = t (T n) = 0,
Fn = n (T n) = 0.

75

v) Condicao em interfaces.
ar
n
t

liquido

Figura 7.5: interfaces.

tens
ao supercial

nT=



dt
+ n
ds

press
ao atm


pa

curvatura


n (T n) = K
t (T n) = 0.

+ pa ,

As condicoes de contorno de Dirichlet sao geralmente impostas de uma maneira


essencial. O resduo correspondente a` variavel e simplesmente substituido por:
Ri = Ui U ,
onde U e o valor que deseja-se impor a Ui .
Por exemplo, vamos analisar o problema ja visto anteriormente:
V=1

Figura 7.6: no 7.
A condicao de contorno e:

76

velocidade horizontal u = 1 u 1 = 0,
velocidade vertical v = 0.

Como o grau de liberdade local correspondente a` velocidade horizontal no no marcado


e #7 e o correspondente a` velocidade vertical e #16, vamos substituir estes respectivos
resduos por:
R7 = U7 1,
R16 = V7 0.
Sendo Jij =

Ri
,
Uj

note que:
J7j = 0, para j = 7 e J77 =
J16j = 0, para j = 16 e J16

16

R7
= 1,
U7
=

R16
= 1.
V7

A procedimento usual e calcular os resduos e as jacobianas elementares independentemente das condicoes de contorno. Se o elemento pertencer a` fronteira do domnio, impoe-se
a condicao de contorno. Se a condicao for de Dirichlet, o resduo associado ao grau de
liberdade e substituido por: Ri = Ui U e a linha da matriz jacobiana associada ao grau
de liberdade e zerada a menos do elemento da diagonal, que e substituido por 1.
No caso do exemplo anterior, onde a condicao de contorno e de Dirichlet, para o elemento 2, a matriz jacobiana ca:

0 0 1 0
0 0 0 1
..
.

...
...
...
...
...
...

0
0
..
.

...

As condicoes de Newman aparecem naturalmente na formulacao do problema.


Lembrando a formulacao de resduos ponderados da equacao de Navier-Stokes, tem-se:

77

2
5

Figura 7.7: elemento 2.

{Re u u T} W d =

=
Re (u u) W + T : W n (T W) d.

Rm =





u
u
i
u
=
Re i u
+v
+
p + 2
+
x
y
x
x




i u v
(
+
) d
+
i (n T)x d.
y
y x

i
Rmx





v
v
i u v
=
Re i u
+v
+
(
+
) +
x
y
x y x




v
i
i (n T)y d.
p + 2
d
+
y
y

i
Rmy


Observe que a integral i (n T)x/y d so sera calculada para os elementos da
fronteira do domnio onde a condicao de contorno de Newman e imposta, pois nos elementos
internos nao temos que nos preocupar com a integral ao longo da fronteira do domnio e
nos elementos da fronteira onde a condicao de Dirichlet e imposta o resduo ponderado e
substituido da forma mostrada anteriormente.
Assim, quando a condicao e de Newman e o elemento esta na fronteira, o valor do
integrando (n T)x ou (n T)y vem da condicao de contorno a ser imposta. Por exemplo,
no caso da tracao nula:
(n T)y = 0;
(n T)x = 0,
no caso de interface:
(n T)x =

dtx
+ nx pa,
ds

(n T)y =

78

dty
+ ny pa.
ds

: A forma da equacao de Navier-Stokes a qual se aplica a formulacao


OBSERVAC
AO
fraca e importante na imposicao da condicao de contorno de Newman.
A forma utilizada no curso foi a do divergente da tensao:
T = [pI + u + uT ].
Observe que esse termo pode ser simplicado usando que u = 0, pela equacao da
continuidade;
= [pI + u + uT ]
= p + (u) + (uT )
     
2 u

(u)

= p + u + (
  u)
2

=0

= p + u
2

Esta forma simplicada e muito utilizada na literatura de diferencas nitas, porem o


termo que aparece na integral de linha nao possui signicado fsico, por isso nos problemas
onde as condicoes de contorno de Newman sao forcas atuando na fronteira do domnio nao
e interessante usar a forma simplicada.
DE CONTORNO DE SAIDA DE ESCOAMENTO
CONDIC
AO

Pode ocorrer condicoes de contorno na sada do escoamento que nao representem uma
forca, apenas sao a derivada da velocidade; como no caso do escoamento desenvolvido, que
a condicao de contorno pode ser escrita como n u = 0.

u
u
nx x + ny y = 0,
Em coordenadas cartesianas:

v
v
nx x
+ ny y
= 0.
***Fig de uma fronteira sintetica
A posicao da fronteira de sada do escoamento e arbitraria. Ela deve ser colocada de
forma que o escoamento na regiao de interesse seja independente de sua posicao (uma
maneira de saber se a fronteira esta o mais proximo possvel, por causa de tempo computacional, mas ja com o escoamento desenvolvido, e avaliar um parametro especco).
Esta condicao sera imposta de uma forma natural:

R = ( ) d i (n T) d,
  

(?)

n T = n [p I + u + uT ] = p n + n u + n uT ,
79

( ) d

R=

i [p n + n 
u +n uT ] d.
0

Substitui-se a condicao de contorno, que e apenas um pedaco do argumento da integral


de linha, com isso, permanecem incognitas.

R = ( ) d i [p n + n uT ] d,

onde, p e u sao as incognitas.


Assim, Rmx e Rmy sao:

( ) d

Rmx =

u
v
+ ny ].
x
x

i [p ny + nx

u
v
+ ny ].
y
y

( ) d

Rmy =

i [p nx + nx

v
v
, u
, y
na fronteira nao sao conhecidos e as exObserve que os valores de p , u
x
y x
pressoes em termos das funcoes base devem ser usadas no calculo da integral de linha, isto e:

p=

Pj j ,

u
x

 j
x

Uj , ...

CALCULO
DA INTEGRAL DE LINHA

i ( ) d :

Considera-se o seguinte elemento, localizado na sada de um escoamento, onde a condicao


de escoamento desenvolvido esta sendo imposta como condicao de contorno.
**FIG
1) Calcular R sem se preocupar com a condicao de contorno.
2) Vericar se alguma condicao tem que ser imposta no elemento.

Sendo a condicao de contorno Natural e necessario acrescentar os termos i ( ) d nos
graus de liberdade associados aos nos da fronteira. Assim, acrescenta-se a integral de linha
nos resduos 2, 3, 6, 11, 12 e 15.
R2 = R 2 +
R3 = R 3 +
R6 = R 6 +




(n T)x d,
2

R11 = R11 +

(n T)x d,
3

R12 = R12 +

6 (n T)x d,

R15 = R15 +

80

2 (n T)y d,

3 (n T)y d,

6 (n T)y d.




Utilizando para a integral de linha 3 pontos de Gauss, de forma geral, tem-se:

= 1, ) d d,
F(
F(x, y) d =
d
1

-
2
2
dx
dy
d
=
+
.
onde,
d
d
d
Como o valor de esta xo, a funcao so varia com , assim, a intergracao em coordenadas locais e ao londo da direcao .

2 (n T)x d =
Logo,

3


i (GP ) {pnx + nx

IGP =1

u
v
d
+ ny }GP
WGP .
x
x
d

DE CONTORNO DE PRESSAO

CONDIC
AO
Observe que nas equacoes so aparecem as derivadas de pressao e portanto o nvel de
pressao deve ser xado nas condicoes de contorno ou articialmente.
Re u u = P + . . .
Se P satisfaz a equacao de Navier-Stokes, P1 = P + P0 , com P0 constante, tambem satisfaz,
pois, P1 = P + P0 P1 = P.

0

Exemplos:
1) Para problemas com superfcie livre (interface), o nvel de pressao e especicado automaticamente na condicao de contorno da interface:
**Pode ter uma g para ilustrar...

nT=

dt
+ n Patm .
ds

2) A pressao pode ser tambem especicada nas fronteiras de entrada e/ou sada do
escoamanto. Neste caso, o termo de pressao que aparece na integral de linha nao deve ser
calculado e sim especicado. Por exemplo, se a pressao na fronteira for especicada P , a
tracao e igual a:
n T = P n + n u + n uT ,
81

i (n T)x d =

.
/
i P n + n u + n uT x d.

**Pode ter uma g para ilustrar...

3) No caso de um escoamento sem entrada e nem sada (como o projeto 2), deve-se
especicar o nvel de pressao de um ponto do escoamento. Os resduos associados aos graus
de liberdade de pressao correspondem aos resduos de continuidade. Logo, para especicar
o valor da pressao de um dado elemento, R19 passa a ser R19 = P1 P e J19j = 0, para
j = 19 e J1919 = 1.
**Pode ter uma g para ilustrar...

82

Captulo 8
Problema de Valor Inicial - Regime
Transiente
Vamos comecar analisando o problema de conducao em regime transiente.

u
t

2u
,
x2

u(x, 0) = u0 (x),

condicao inicial.

u
(0, t)
x

= 0.

u
(1, t)
x

condicao de contorno.

Vamos usar a expansao por elementos nitos somente para descrever a variacao de u no
espaco, enquanto que na discretizacao do tempo usaremos diferencas nitas.

u(x, t) =

N

i=1



u
u
i (x)
U i (t)i (x) ;
Ui (t)i (x)
Ui (t)
(x, t) =
(x, t) =
.
t
x
x
i=1
i=1
N

Pode-se tambem utilizar o metodo de elementos nitos para discretizar no tempo, porem
existem poucas evidencias de alguma vantagem.

1
Ri =
[ut uxx ] i dx = 0
0

Integrando por partes:

[ut i + ux ix ] dx [ux i ]10 = 0.


  
=0 pela c.c.

Ri =

[ut i + ux ix ] dx = 0.
0

Substituindo as expansoes de u temos:


83

Ri =

N


j=1


j=1

U j j i +

N


U j jx ix

dx,

j=1

j i dx Uj +
jx ix dx Uj ,
0





Kij

Mij

N


Mij U j Kij Uj ,

j=1

= KU U
= M1 K U.
MU
M e comumente denotada matriz Massa.
A representacao geral para um problema de valor inicial e :
= f (t, U) ; U(0) = U0 .
U

comentario : Talvez seja interessante colocar uma secao para os metodos...


Os metodos para a solucao desse tipo de sistema podem ser divididos em duas categorias
gerais :

METODOS
EXPLICITOS f e calculada no tempo anterior, logo e conhecida
(metodo bastante simples, porem instavel).

METODOS
IMPLICITOS f e calculada no instante presente, logo e desconhecida.

Uma outra classicacao usual e devido a`s informacoes utilizadas na integracao do tempo:

Passo-Unico
Toda a informacao utilizada esta no intervalo tn , tn+1 .
Multi-Passo Usa-se mais de uma solucao em tempos anteriores para aproximar a
solucao em tn+1 .

84

METODOS
DE PASSO UNICO

Metodos Explcitos
Diferenca a frente
du
un+1 un

= f (un , tn ) un+1 = un + t f (un , tn ).


dt
t
Observe que todas as variaveis sao conhecidas explicitamente sem ser preciso calcular nenhum sistema.
Runge - Kuta
A ideia e calcular f (u, t) em varios pontos entre tn e tn+1 e combinar os resultados para
oblter uma boa aproximacao de u em tn+1 .

Metodos Implcitos
Diferenca `a Re (Backward Dierence).
du
un+1 un

= f (un+1 , tn+1 ) un+1 = un + t f (un+1 , tn+1 )


dt
t
Depois e necessario resolver o sistema de equacoes, que pode ou nao ser linear.
Observe que na diferenca a frente o problema e montado no tempo n e o instante seguinte
(n+1) e usado no calculo da derivada, ja na diferenca `a re o problema e montado no instante
n + 1 sendo o tempo anterior (n) usado no calculo da derivada.
Crank-Nickolson (Trapezio)
un+1 un
1
= [f (un+1 , tn+1 ) + f (un , tn )].
t
2

METODOS
MULTI-PASSO
Formula Geral: un+1 =

k1
i=0

i uni + tn

k2
i=0

i f (un+1i , tn+1i ).

Metodos Explcitos
Adams-Bashforth (ordem q)
un+1 = un + tn+1

q1

i=1

85

i f (un+1i , tn+1i ).

Adams-Moulton
un+1 = un + tn+1

q1


i f (un+1i , tn+1i ).

i=0

ESTABILIDADE DOS METODOS

Problema modelo:
y = y,
y(0) = y0 .
Solucao analtica: y = y0 et .
Usando que
y(t) = y0 et ,
y(t + 1) = y0 e(t+1) ,
e fazendo

y(t+1)
y(t)

temos a solucao exata :


y(t + 1) = y(t)et .

(8.1)

Resolvendo por diferenca a frente para comparar:


yn+1 yn = t yn
yn+1 = (1 t) yn .

(8.2)

Erro : n = y(tn ) yn
n+1 = y(tn+1 ) yn+1
Substituindo y(tn+1 ) e yn+1 em n+1 e ainda somando e subtraindo (1 t) y(tn ), temos:
n+1 = et y(tn ) (1 t) yn + (1 t) y(tn ) (1 t) y(tn )
n+1 = (1 t) [y(tn ) yn ] +[et (1 t)] y(tn )



n

n+1 = (1 t) n + [et (1 t)] y(tn )


n

|n+1 |
|n |

= |1 t| < 1.

Se |1 t| > 1 o erro cresce com o tempo, e o metodo e dito instavel.


Para o metodo ser estavel t < 1 , essa condicao impoe um limite no passo do tempo.
Pode-se, assim, exigir passos de tempo muito pequenos.
86

POR ELEMENTOS FINITOS E DIFERENC

FORMULAC
AO
A A RE
Problema Linear:

Ri =
0

du
dt

d2 u
,
dx2

u(x, t = 0) = u0 (x),
du
(x
dx

du
(x
dx

= 0, t) =

du d2 u
[ 2 ] i dx =
dt
dx
u(x, t) =

N


= 1, t) = 0.

du
du dphii
i +
dx.
dt
dx dx

Uj (t)j (x).

j=1


j=1

0

(n+1)
[Uj



j i dx




(n)
Uj ] +

j=1

Mij

0

dj di
(n+1)
= 0.
dx Uj
dx dx


Kij

1
M[U(n+1) U(n) ] = K U(n+1)
t
1
[ t
M K]U(n+1) =

1
t

M U(n) ()

A cada intervalo de tempo resolver o sistema ().


Problema Nao-Linear:

du
dt

+u

du
dx

d2 u
,
dx2

u(x, t = 0) = u0 (x),
du
(x
dx

Ri =

= 0, t) =

[
0

du
(x
dx

= 1, t) = 0.

du
du d2 u
] i dx
+u

dt
dx dx2
87

[
0

du
du
du di
i + u
i +
] dx.
dt
dx
dx dx

u(x, t) =

N


Uj (t)j (x).

j=1

Ri =
0

N
1
j=1

(n+1)
[Uj



(n)
Uj ]

j i +

N


(n+1)
Uj

j=1

N


 (n+1) dj di
dk
Uj
i +
dx
dx dx
j=1
N

(n+1)
Uk

k=1

Sendo um sistema na-linear de equacoes em U(n+1) utilizar o metodo de Newton, ou


seja, para cada instante de tempo resolver:

Ri
(j+1)
Uj

(j+1)

Uj

= Rj ,

U(n+1) = U(n+1) + U(n+1) .


Ri
(j+1)

Uj

1
=
t

0

1
u(n+1)
j i
j
j i dx +
u(n+1)
i +
j i +
dx
x
x
x x
0

 


M

Para cada instante de tempo t(n+1) :


Chutar U(n+1) .
Se R (U(n+1) ) = 0 convergiu Passa para o proximo instante de tempo.
Se nao:

1
( t
M + J) U(j+1) = R (U(n+1) , U(n) ),

U(n+1) = U(n+1) + U(n+1) .

88

Potrebbero piacerti anche