Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
i
SUMARIO ii
Uma grande parcela dos problemas de engenharia depende, para a obtencao de resulta-
dos, da solucao de uma unica ou ate de um sistema de equacoes diferenciais. Ate a primeira
metade deste seculo buscou-se, de forma intensa, a solucao analtica destas equacoes utilizando
uma grande gama de ferramentas matematicas como transformadas, solucao por series, etc.
Com este esforco concentrado foram obtidos alguns resultados e muitas equacoes diferenciais
puderam ser resolvidas. No entanto, quase todas estas respondem por problemas fsicos simples
e nao representam uma amostra significativa dos problemas de engenharia que normalmente
tem geometria e condicoes de contorno complexas.
Desta forma, a partir da segunda metade do seculo XX, este panorama foi completamente
modificado. Deixou-se de buscar a solucao puramente analtica para estes problemas e passou-
se a trabalhar com os metodos numericos na tentativa da obtencao de solucoes aproximadas.
Embora a grande maioria dos metodos numericos sejam conhecidos a bastante tempo, a sua
utilizacao em massa so ocorreu gracas a um acontecimento: o grande avanco dos computadores.
No passado quando se tentava resolver um problema, mesmo um extremamente simples, atraves
de metodos numericos este processo demandava um enorme tempo em calculos e, muitas vezes,
envolvia uma equipe de pessoas. Esta dificuldade praticamente inviabilizava a sua utilizacao ate
o aparecimento dos computadores de grande porte e, mais recentemente, os super computadores.
Esta situacao se inverteu completamente e nos dias de hoje sao os metodos numericos que
1
Top. Esp. Fluido-Temica 2
respondem praticamente pela totalidade dos problemas complexos em engenharia. Alem disto
o barateamento ocorrido em termos de custo/hora do tempo de CPU tem tornado-a, cada vez
mais, acessvel a um numero maior de pessoas. Um exemplo disto e citado por (Maliska, 1995)
em seu livro: a solucao de um escoamento supersonico usando computadores do tipo IBM 704,
existente na decada de 60, consumiria um tempo de computacao de 30 anos a um custo de
alguns milhoes de dolares enquanto o mesmo problema e resolvido hoje com alguns minutos de
CPU a um custo de algumas centenas de dolares.
Apesar de tudo isto que foi dito aqui os metodos analticos ainda tem grandes utilidades.
Em primeiro lugar, nao tem muito sentido resolver um problema numericamente se a sua
solucao analtica e conhecida e pode fornecer a valores para todo o domnio, ao contrario
da solucao numerica que so so fornece a solucao para os pontos considerados. Alem disto
a solucao analtica e, muitas vezes, utilizada como padrao e ate mesmo fonte de inspiracao
na resolucao de problemas com metodos numericos. Em outras vezes ainda, um modelo e
testado em determinadas condicoes nas quais existe solucao analtica para poder confrontar os
resultados e, so depois do sucesso nesta consideracao, e que o mesmo e estendido para casos
onde a solucao analtica nao e conhecida.
Quando nao existe solucao analtica que permita esta verificacao do metodo numerico outra
ferramenta e entao utilizada: os ensaios experimentais. Da mesma forma que os metodos
analticos os metodos experimentais foram, e diria ate que ainda sao, muito utilizados na
solucao de problemas de engenharia. Isto se deve ao fato que a simulacao pode ser feita sobre
as condicoes desejadas (ou proximas dela) sem se preocupar sequer com as condicoes contorno ou
tipo de equacoes diferenciais. Embora os metodos experimentais tenham os seus atrativos, tem
tambem um grande problema: o seu elevado custo. Tanto a instrumentacao necessaria, como
a montagem do experimento e a mao de obra necessaria necessitam de um alto investimento,
o que dificulta grandes desenvolvimentos nesta area. Alem do mais a presenca de sondas para
tomada de medidas ou quaisquer outros objetos fsicos, tendem a alterar as condicoes ideais para
a retirada de medidas de um experimento, tornando muitas vezes o experimento impraticavel.
Um grande exemplo deste fato e a industria aeronautica que tem substitudo grande parte dos
seus ensaios em tunel de vento por simulacoes numericas com excelentes resultados. Da mesma
forma que a solucao analtica muitas vezes sao utilizados resultados experimentais para validar
resultados de metodos numericos, dispensando a partir de entao a repeticao da experiencia para
casos similares.
Para a solucao de equacoes diferenciais por metodos numericos, da mesma forma que quando
sao resolvidas por metodos analticos, e conveniente o conhecimento de alguns preceitos sobre
equacoes diferenciais:
Top. Esp. Fluido-Temica 3
Equacao Diferencial Parcial: e aquela em que as funcoes solucao para a equacao diferencial
sao dependentes de mais de uma variavel. A maior parte dos problemas envolvendo
geometrias bi e tri dimensionais e analise de transientes em corpos com gradientes internos
recai neste tipo de equacao diferencial. Tomando como exemplo utilizar-se-a a equacao
da quantidade de movimento linear, bidimensional e em coordenadas cartesianas, para
um fluido newtoniano na direcao x:
2
u 2u
u u u P
+u +v = + +
t x y x x2 y 2
Equacao Diferencial Linear: e o tipo de equacao diferencial onde aparece uma composicao
linear da funcao e suas derivadas. Exemplo disto e a equacao da conducao de calor, para
substancias isotropicas e com propriedades fsicas admitidas independentes da tempera-
Top. Esp. Fluido-Temica 4
tura:
2T 2T
+ =0
x2 y 2
A distribuicao de temperaturas em uma placa plana mostrada na figura (??a), e um
exemplo tpico deste tipo de aplicacao.
Equacao Diferencial Nao Linear: e aquela a funcao nao aparece de forma linear na equacao
diferencial, mas sim com termos quadraticos ou atraves de outras funcoes nao lineares. Um
exemplo deste tipo de equacao e a equacao de um pendulo que, com base na figura (??b),
pode ser dada como:
d2 g
+ sin = 0
dt2 l
que tem formas de solucao bem complexa. Prova disto e a propria expressao acima, que
e quase sempre resolvida atraves da linearizacao da equacao (trabalhando-se com angulos
pequenos sin ):
d2 g
+ =0
dt2 l
Equacao Diferencial Homogenea: e aquela em que o termo independente nao se apresenta
como funcao de nenhuma variavel, ou melhor:
y 0 (x) = f (x, y)
e homogenea se f (x, y) for uma constante ou uma expressao que permita uma trans-
formacao de variavel que a deixe independente da variavel transformada (normalmente
um f (y/x)). Um exemplo de equacao diferencial homogenea:
y 000 + 2 y 0 3y = 0
que e uma equacao de terceira ordem e que, consequentemente, precisa de pelo menos
tres condicoes de contorno para ser resolvida. Esta e na realidade a grande vantagem
desta metodologia de classificacao de equacoes diferenciais: indicar instantaneamente o
numero de condicoes de contorno necessarias para resolver o problema.
Mas e importante ressaltar que as caractersticas acima sao importantes tambem para iden-
tificar qual o metodo numerico de solucao que deve ser utilizado na solucao de um problema.
Vejamos por exemplo o tipo de solucao mais utilizados segundo a natureza das equacoes dife-
renciais:
Metodo de Euler
Eq. Diferenciais Ordinarias Metodo de Passos Multiplos (ou Preditor-Corretor)
Metodo de Runge Kutta1
Metodo de Diferencas Finitas
Eq. Diferenciais Parciais Metodo de Volumes Finitos
Metodo de Elementos Finitos
1
Muitas vezes este metodo tambem e utilizado na solucao da parcela envolvendo o tempo de Eq. Diferenciais
Parciais
Top. Esp. Fluido-Temica 6
E importante ressaltar que nada impede que se utilize esquemas de solucao para Eq. Dife-
renciais Parciais em Eq. Diferenciais Ordinarias, uma vez que o seu procedimento e generico,
no entanto a recproca nao e verdadeira. Normalmente se adotam esquemas diferenciados para
solucao de equacoes diferenciais ordinarias, pois estes podem ser um pouco mais simples ou
entao mais precisos permitindo uma maior acuracidade na solucao.
CAPITULO 2
Existem uma serie de ambientes matematicos propcios para a solucao de algumas tarefas a
serem realizadas cotidianamente em calculos da Engenharia: Matlab, Mathemathica, GNU Oc-
tave, SciLab, Maxima, etc. Alguns destes sao capazes, inclusive, de trabalhar com manipulacao
simbolica como o caso do Maxima, Mathemathica, Matlab (versoes posteriores a 5.0), SAGE
e o proprio octave se utilizando de pacotes adicionais.Entretanto, para o caso de utilizacao em
simulacao numerica a manipulacao simbolica nao represbta um fator decisivo.
Este captulo, basicamente, ficara restrito ao uso dos sistemas Matlab/GNU Octave sendo
o primeiro um sistema licensiado e o segundo uma alternativa livre de ambientes matematicos.
Embora similares em grande numero de comandos existem algumas diferencas entre os co-
mandos em cada um dos sistemas. Na maioria das vezes octave suporta tanto a sua sintaxe
especfica como aquela que seria utilizada pelo Matlab. O SciLab tambem e considerado uma
boa alternativa livre ao uso do Matlab, mas o seu uso nao sera abordado neste material.
Existem uma serie de referencias que podem complementar as informacoes aqui fornecidas,
dentre as quais destaco os materiais de (Domingues & Mendes, 2002) e (Eaton, 2006). Outra
importante fonte de ajuda e o proprio programa, onde uma serie de informacoes a respeito de
um comando podem ser obtidas utilizando-se help -i nome_do_comando.
Inicialmente, sera visto simplesmente algumas operacoes fundamentais com matrizes e ve-
7
Top. Esp. Fluido-Temica 8
tores que nao apresentam variacao entre estes sistemas. Com estas informacoes ja sao possveis
realizar uma serie de procedimentos do nosso curso.
Neste tipo de plataformas estao contemplados todos os tipos de operadores, tanto para
operacao com reais com inteiros. Assim sao possveis a soma(+), subtracao(-), divisao(/),
multiplicacao (*) divisao reversa (\) e exponencial (). Operacoes com inteiros sao tambem
possveis como a divisao, utilizando o truncamento dos decimais (floor ), e resto (mod ou rem).
Assim:
octave>mod(5,2)
ans =
1
octave> rem(5,2)
ans =
1
octave> floor(5/2)
ans =
2
O disp e um comando utilizado para escrever na tela e converte a saida para caracteres.
Comandos para arredontamento como round ou ceil tambem estao disponveis no Octave.
Alem disto, existe uma extensa biblioteca matematica pre-implementada que permite o
calculo de uma serie de funcoes hiperbolicas (exp, log, sinh, etc.), trigonometricas (sin, cos,
tan, etc.), de Bessel (besselj , besselk , besseli , etc.) e uma infinidade de outras.
Antes de mais nada e possvel criar vetores e matrizes atraves de um valor inicial, um valor
final e incrementos constantes do tipo:
Top. Esp. Fluido-Temica 9
octave> 1:10
ans =
1 2 3 4 5 6 7 8 9 10
octave> 1:2:10
ans =
1 3 5 7 9
octave> linspace(1,10,5)
ans =
1.0000 3.2500 5.5000 7.7500 10.0000
Para criar uma matriz ou um vetor incluindoos valores de cada posicao e armazena-lo numa
variavel, o procedimento tambem e simples, basta inseri-lo da maneira mostrada abaixo:
octave> a=[1 2; 4 7]
a =
1 2
4 7
octave> b=[3 6
> 9 4]
b =
3 6
9 4
Definidas as matrizes pode-se realizar operacoes entre elas. Veja por exemplo como realizar
uma adicao entre as matrizes a e b, definidas anteriormente.
octave> a+b
ans =
4 8
13 11
Da mesma maneira pode-se utilizar uma resposta anterior, mesmo que nao armazenada em
variavel nenhuma utilizando da variavel ans. Como exemplo disto, veja como apresentar a
segunda coluna da matriz resposta anterior:
Top. Esp. Fluido-Temica 10
octave> c=ans(:,2)
c =
8
11
sendo que para isto e bastante util o :da maneira apresentada. Ele pode representar, quando
usado desta maneira, todas as linhas ou colunas de uma matriz. Caso desejasse mostrar apenas
um componente da matriz, bastaria colocar o seu endereco ente parenteses:
octave> a(2,1)
ans = 4
Da mesma maneira que a adicao, outras operacoes entre as matrizes poderiam ser realizadas,
como por exemplo a multiplicacao:
octave> a*b
ans =
21 14
75 52
Outra forma desta operacao, a chamada multiplicacao termo a termo, pode tambem ser
necessaria e neste caso ela pode ser realizada atraves da forma:
octave> a.*b
ans =
3 12
36 28
sendo ainda existente uma operacao equivalente a esta para a divisao termo a termo, represen-
tada pelo operador ..
Sao ainda possveis uma serie de outras operacoes com matrizes, sendo destacadas aqui:
Determinante (det):
Top. Esp. Fluido-Temica 11
octave> det(a)
ans = -1
octave> inv(b)
ans =
-0.095238 0.142857
0.214286 -0.071429
octave> b
ans =
3 9
6 4
octave> zeros(4)
ans =
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
ou ainda para qualquer matriz nao quadrada definindo-se o numero de linhas e colunas:
octave> zeros(1,7)
ans =
0 0 0 0 0 0 0
octave:1> ones(3,2)
ans =
1 1
1 1
1 1
Matriz de numeros aleatorios (r and): com todos os numeros aleatorios variando entre 0
e 1.
octave> rand(2,4)
ans =
0.539648 0.061666 0.070065 0.324883
0.569649 0.023215 0.673922 0.419023
Top. Esp. Fluido-Temica 12
Em funcao do exposto se o interesse e por uma matriz cujo o valor maximo e 10, basta
mutiplicar o resultado anterior pelo valor maximo.
octave> eye(4)
ans =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
que e uma operacao bastante util se voce estiver interassado em montar uma linha qual-
quer com um valor 1na posicao da diagonal principal e o restante zeros:
octave> eye(10)(5,:)
ans =
0 0 0 0 1 0 0 0 0 0
octave> a=[1 2 3]
a =
1 2 3
octave> diag(a)
ans =
1 0 0
0 2 0
0 0 3
O vetor diagonal tambem pode ser usada para montar uma diagonal secundaria da matriz,
para isto basta fornecer como segundo argumento inteiro que representa a sua posicao
na matriz. Numeros negativos podem ser usados para representar diagonais secundarias
abaixo da posicao atual:
octave> diag(a,-2)
ans =
0 0 0 0 0
0 0 0 0 0
1 0 0 0 0
0 2 0 0 0
0 0 3 0 0
octave:19> diag(b,1)
ans =
5 4 4 6
octave> sum(a)
5 9
Deve-se lembrar ainda que mesmo nos ambientes deste tipo nao existe a comutatividade em
operacoes com matrizes assim:
octave> c*c
ans =
64 88
88 121
e diferente de:
octave> c*c
ans = 185
Bem este texto serve como uma referencia basica para o tratamento de matrizes e vetores
nos referidos sistemas entretanto existem ainda uma serie de diferentes comandos relacionados
a este que podem ser encontrados em documentacoes mais aprofundadas e atraves do Help dos
programas.
Existem uma serie de outras operacoes que permitem operacoes basicas com vetores, prin-
cipalmente com relacao a uniao de vetores (union) e a idendificacao de posicoes que obedeccam
a caractersticas definidas (find ).
Top. Esp. Fluido-Temica 14
Para definir funcoes no octave nomalmente e indicado criar um arquivo com extensao .m no
diretorio corrente obedecendo a uma estrutura basica:
i. a primeira linha deve conter a palavra chave function, em seguida a variavel que armazena
o valor a ser retornado que, por sua vez, e igualada ao nome da funcao seguida da sequencia
de parametros de entrada. E fundamental que o nome da funcao seja identico ao fornecido
ao arquivo .m.
Veja por exemplo a criacao de uma funcao do tipo sinal de um numero. Desta forma sera
editado um arquivo sinal.m do tipo:
# func~
ao sinal
function ret=sinal(x)
if (x!=0) ret=x/abs(x);
else ret=0;
endif
end
A partir deste ponto existe uma funcao pronta no octave de nome sinal que pode ser chamada
em qualquer instante. Cabe ressaltar entretanto que esta funcao deve estar no diretorio corrente
ou no diretorio de funcoes do octave. Assim:
octave> sinal(100)
ans= 1
octave> sinal(-10)
ans=- 1
octave> sinal(0)
ans = 0
Esta mesma funcao poderia ser criada simplesmente digitando a sequencia de comandos apre-
sentada no octave dispensando, assim, a necessidade da criacao de um novo arquivo. O inco-
veniente desta forma e que a mesma so estaria disponvel depois de carregada para a memoria
do octave em cada secao.
Top. Esp. Fluido-Temica 15
Quando se trata de funcoes mais simples, que envolve o seu calculo diretamente a partir
de parametros fornecidos o comandoi nline pode ser uma boa alternativa. Sofre das mesmas
limitacoes de quando se define a funcao no interior de um script, entretanto sua definicao e bem
mais simples:
octave> f=inline("2*x.^2-3*x+4")
f =
f(x) = 2*x.^2-3*x+4
octave> f(2)
ans = 6
sendo que neste caso todos os parametros envolvidos na funcao seriam tambem argumentos da
mesma dificultando, assim, definicoes mais complexas. Existem alternativas para personalizar
esta definicao uma vez que este comando pode ser utilizado com maior numero de parametros.
Maiores detalhes podem ser encontrados com a utilizacao da ajuda da funcao.
Com relacao ao comando para plotagem plot ele pode ser utilizado com a entrada de pelo
menos dois vetores (x, y), mas sua forma geral permite a utilizacao de um formato em sequencia
identificando como vai ser a linha
Apenas para ilustrar, foi feito um grafico personalizado alterando algus parametros mais
importantes do gnuplot via gset e utilizando-se de um script do octave:
e com isto foi criado o grafico mostrado na figura (2.1). Deve-se ressaltar que em versoes antigas
do programa utilizava-se substiturir o comando __gnuplot_set__ por gset.
Um dos aspectos mais complexos e a utilizacao de estilos de linhas e pontos neste tipo
de plotagem. Alem de escolher o ttulo da legenda da curva e ainda possvel nestes graficos,
escolher tanto a cor como a forma das linhas ou pontos da curva. Para tanto e interessante
conhecer os esquemas a serem utilizados:
Alem destas cores pode-se ainda utilizar o w para o branco e os numeros maiores que
cinco para outras variacoes.
Top. Esp. Fluido-Temica 17
Cabe ressaltar ainda que o comando fplot pode ser utilizado diretamente para a elaboracao
de graficos a partir de funcoes diretamente. Ele pode ser utilizada de maneira analoga ao plot,
excetuando-se pelas mudancas de formatos anteriormente demonstradas.
E possvel realizar uma serie de operacoes logicas e testes usando o Octave. As operacoes
mais usuais sao maior (>) ou maior ou igual (>=), menor(<) ou menor ou igual (<=), igual
(==) e diferente (! = ou =). E conveniente notar que o teste de igualdade (==) e diferente
da atribuicao (=).
octave> a=2
2
octave> a=3;
3
while utilizado para o caso de repeticoes onde o teste e feito por diversas vezes a cada
interacao do problema.
octave> z=1;
octave> while (z<5) disp(z); z+=2; endwhile
1
3
for no caso de operacoes que usam um contador com incrementos constantes o comando
for e o mais indicado.
switch permite a selecao de uma alternativa entre diversas. Pode ser substituido por um
conjunto de if s em cascata.
octave> nlados=3;
octave> switch (nlados)
> case (3) disp("Tri^
angulo")
> case (4) disp("Quadrado")
> case (5) disp("Pentagono")
> otherwise disp("Figura n~ao classificada")
> endswitch
Tri^
angulo
Em todos os comandos acima o final endif , endwhile, endfor e endswitch pode ser substi-
tuido por end sem comprometer o funcionamento do script (e mantendo compatibilidade com
o Matlab)
Algumas diferencas basicas que podem afetar a compatibilidade entre ambos sao:
Problemas de Valor Inicial: que sao aqueles onde as condicoes de contorno sao estabeleci-
das em um ponto inicial, e partir destas vao sendo calculados os valores para posicoes
subsequentes. Este procedimento e normalmente caracterizado por procedimento de mar-
cha (os transientes sao os melhores exemplos deste tipo de problemas).
Problemas de Valor de Contorno: sao aqueles onde as condicoes de contorno sao estabe-
lecidas em posicoes diferentes dentro de um problema, o que implica em uma solucao que
envolva todo o domnio.
Para exemplificar melhor cada um dos problemas, imagine um caso de conducao unidimen-
sional em um solido de condutividade termica independente da temperatura com geracao de
calor. A equacao diferencial para este problema e:
q
T 00 (x) =
k
19
Top. Esp. Fluido-Temica 20
Por sua vez se, ao inves disso, forem conhecidas as duas temperaturas de parede em ambas
as faces T (x = 0) = T0 e T (x = L) = TL este problema passa a ser um problema de valor de
contorno.
Existem diversos graus para o metodo de Runge Kutta, sera mostrada aqui a deducao
para o metodo de segunda ordem, para os metodos de ordem superior o procedimento e analogo.
Sabe-se que por serie de Taylor e possvel expressar o valor qualquer ponto a partir de um
ponto conhecido:
x2 00
y(x + x) = y(x) + x y 0 (x) + y (x) +
2!
que pode ser escrito para um sistema discreto com espacamento x = h na forma:
h2 00
yn+1 = yn + h yn0 + y +
2! n
Suponhamos que uma dada equacao diferencial pode ser manipulada de forma a obter uma
expressao para a derivada primeira de forma que:
Reescrevendo a expansao por Taylor, mas levando em conta esta informacao tem-se agora
uma expansao para funcoes de duas variaveis :
h2
yn+1 = yn + hf (xn , yn ) + [fx (xn , yn ) + fy (xn , yn )yn0 ] +
2!
Top. Esp. Fluido-Temica 21
ou ainda:
h2
yn+1 = yn + hf (xn , yn ) + [fx (xn , yn ) + f (xn , yn )fy (xn , yn )] + (3.1)
2!
sendo y0 um valor previsto para a derivada para o ponto generico (xn + b1 h, yn + b2 yn0 h).
yn+1 = yn + (a1 + a2 )f (xn , yn )h + a2 b1 fx (xn , yn )h2 + a2 b2 f (xn , yn )fy (xn , yn )h2 (3.3)
a1 + a2 = 1
1
a2 b1 =
2
1
a2 b2 =
2
Este sistema tem mais incognitas que equacoes e a sua famlia de solucoes e dada por:
a2 = 1 a1
1
b1 =
2 2a1
1
b2 =
2 2a1
Top. Esp. Fluido-Temica 22
e
e
uyn+1
K1
K3 2 e
e
K2
K4
2 e
xn xn+1
h/2
h
Uma solucao comum para o sistema seria dada se a1 = a2 que implica em a1 = a2 = 1/2 e
b1 = b2 = 1 que igualaria ao metodo de Runge Kutta ao Metodo de Euler. Maiores detalhes
desta deducao e do metodo de Euler podem ser encontrados em (Ruggiero & Lopes, 1988).
A figura (3.1) mostra graficamente como funciona a aproximacao mais utilizada deste tipo
de esquema: O Runge Kutta de 4a ordem. Sao aproximadas tanto as retas tangentes como os
pontos utilizados para os calculos intermediarios. E apresentada tambem na figura o valor do
ponto calculado numericamente utilizando as escalas dos Ks.
K1 = h f (xn , yn )
K2 = h f (xn + h/2, yn + K1/2)
K3 = h f (xn + h/2, yn + K2/2)
K4 = h f (xn + h, yn + K3 )
Solucao:
"
Qtde de calor
# Qtde de calor
armazenada no = transferida pelo
termometro fluido
dT
merc cmerc Volmerc = h A (T T ) (3.5)
dt
sendo que a area de transferencia de calor por conveccao e: A = dL = (0.006)(0.025) =
4.71 104 m2 .
dT
13600 0.0325 (7.07 107 ) = 25 (4.71 104 ) (T T )
dt
Top. Esp. Fluido-Temica 24
Para resolver este problema basta aplicar o metodo de Runge-Kutta ou entao resolver esta
expressao analiticamente. A solucao exata para este problema pode ser encontrada em (Kreith,
1977) e e dada por:
t = 0 : T=15 C
t = 0.03333
1
T2 = T1 + (K1 + 2 K2 + 2 K3 + K4 )
6
1
T2 = 15 + (31.401 + 2.14.632 + 2.25.163 + 5.66)
6
isto implica em que T2 = 34.44 C.
Utilizando a solucao analtica para o problema a temperatura indicada pelo termometro,
para o mesmo tempo, e de 34.80 C. Isto equivale a um erro de cerca de 1%, indicando a
boa precisao do metodo.
Top. Esp. Fluido-Temica 25
A tabela (3.1) mostra a solucao para este problema para varios valores de tempo. Ela
fornece os valores da temperatura calculada pela solucao analtica e por Runge Kutta, alem de
fornecer o valores para os Ks em cada tempo.
A figura (3.2) mostra o comportamento das temperaturas lidas pelo termometro, exata e
numerica, e a temperatura real do banho. Pela figura e possvel mostrar a boa concordancia
entre o resultado numerico e o resultado exato.
65
Sol. Analitica
Sol. Numerica
60 Temperatura do banho
55
50
45
Temperatura [oC]
40
35
30
25
20
15
10
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Tempo[h]
Para definir esta equacao do problema e preciso criar um arquivo representando esta funcao,
sendo que ambos (a funcao e arquivo) devem ter o mesmo nome. No caso sera criado o arquivo
dert.m, composto por:
function dr=dert(tempo,temper)
dr=37.681*(40+22.48*sin(2*pi*tempo)-temper);
endfunction
e a partir dele e possvel calcular o valor da funcao para qualquer par ordenado T 0 (t, T ). Por
exemplo:
octave> dert(0.15)
ans = 942.02
Top. Esp. Fluido-Temica 27
Cabe ressaltar aqui que no Matlab nao existe o comando endfunction, sendo que o mesmo
nao precisa ser incluido no caso de arquivos deste tipo.
function resp=runge(tempo,temper,h)
k1=h*dert(tempo,temper);
k2=h*dert(tempo+h/2, temper+k1/2);
k3=h*dert(tempo+h/2, temper+k2/2);
k4=h*dert(tempo+h, temper+k3);
resp=temper+(k1+2*k2+2*k3+k4)/6;
endfunction
Com esta funcao agora e possvel realizar a marcha do processo de solucao. Caso se desejasse
a temperatura apos decorridos 2 min, e possvel obte-la usando a funcao recem definida:
octave> runge(0.15,2/60)
ans = 34.443
Para a obtencao da solucao completa e preciso repetir este procedimento por diversas vezes
este procedimento e armazenar a solucao em vetores. Para isto, a sequencia de comandos abaixo
pode ser implementada diretamente ou via arquivo e a solucao armazenada nos valores de te
e TT:
dt=2/60;
te=0:dt:1;
TT=zeros(1,31);
TT(1)=15;
for i=2:31
TT(i)=runge(te(i-1),TT(i-1),dt);
endfor
que se executado no octave. Deve-se observar que o comando te0:2/60:1;= cria um vetor com
todos os termos de 0 a 1, incrementados em intervalos de 2/60.
Feita esta analise implementar ainda solucao analtica do problema e a evolucao da tem-
peratura do banho em funcoes distintas (t exata.m e tbanho.m). O resultado obtido destas
funcoes sao armazenadas em variaveis:
Top. Esp. Fluido-Temica 28
function tex=t_exata(t)
tex=40+22.17*sin(2*pi*t-0.165)-21.36*exp(-37.681*t);
endfunction
function tba=tbanho(t)
tba=40+22.48*sin(2*pi*t);
endfunction
Definidas as funcoes pode-se avaliar as solucoes e armazena-los nas variaveis texv e tba,
a partir das quais, pode-se plotar os resultados. Estes valores estao mostrados no grafico em
funcao do tempo armazenado na variavel te, e o resultado esta mostrado na figura (3.3). Para
comparacao uma tabela de sada de dados foi montada com base nos resultados obtidos. Desta
forma e possvel uma analise dos valores numericos de cada caso:
Neste grafico estao mostradas a solucao numerica e exata do problema, alem da temperatura
do banho. O comando utilizado para plotagem, considerando-se as avriaveis anteriormente
definidas e dado por:
Embora o procedimento acima possa ser realizado sem maiores problemas ele depende,
como foi mostrado, da elaboracao de uma rotina para a solucao do problema, no caso usando
o procedimento de Runge-Kutta. Existe uma alternativa um pouco mais simples que consiste
na utilizacao do procedimento de solucao ja implementado no octave usando o comando lsode.
sendo que:
nome da funcao e o nome do arquivo que contem a expressao da funcao a ser integrada e cujo
nome vem entre . Embora esta seja basicamente igual a definida anteriormente deve-se
Top. Esp. Fluido-Temica 30
tomar o cuidado de que a funcao deve ser chamada sempre com o primeiro argumento
sendo o vetor da grandeza a ser calculada e o segundo o do parametro da solucao.
Nestas condicoes a funcao utilizada na solucao do problema do termometro, chamada de
dert2.m deve ser redefinida como:
domnio representa a faixa de valores para os quais a solucao vai ser obtida. Neste caso deve-se
estabelecer a forma de um vetor do tipo incio: passo: fim ou forma equivalente.
octave> sol2=lsode("dert2",15,te);
considerando o dominio do problema anteriormente definido por te. Depois disto a solucao
poderia ser plotada e comparada com as anteriores ou mesmo verificado a diferenca entre a
nova solucao e a anterior.
Um procedimento similar a este poderia ser elaborado usando-se o Matlab para obter a
solucao deste problema com as seguintes diferencas:
existem uma serie de funcoes que permitem a solucao de odes no Matlab, sendo a mais
utilizada a ode45, que normalmente substituir o lsode.
o domnio pode ser estabelecido atraves de um vetor na forma [incio final ], alem das
formas anteriormente apresentadas.
Agora apresente a solucao numerica deste problema e compare-a com a resposta obtida a partir
da solucao analtica.
O mesmo procedimento mostrado anteriormente pode ser estendido para equacoes di-
ferenciais de ordem superior, mas para isto e necessario algumas adaptacoes no esquema. A
adaptacao utilizada e converter a E.D. (Equacao Diferencial) em um sistema. Este fato e melhor
explicado tomando-se uma E.D. como exemplo:
y 00 + y 0 y + 2 x = 0 = y 00 = y 0 + y 2 x
y0 = Z
y 00 = Z + y 2 x
da aleta trabalhara ha uma temperatura de 50 C e que deve dissipar uma quantidade de calor
de 120 W pergunta-se qual o comprimento mnimo que esta aleta devera ter?
Solucao:
qr = qr+dr + qconv
dT dT
k(2 r t) = k(2 (r + dr) t) + h 2 (2r dr) (T T )
dr r dr r+dr
Note que os valores de avaliacao da derivada deixaram de aparecer uma vez que todas agora
passam a ser avaliadas na posicao r. Expandindo a expressao:
dT dT d2 T dT d2 T 2 h r dr
r =r + r 2 dr + dr + 2 dr2 (T T )
dr dr dr dr dr kt
Substituindo os valores:
dT 120
= = 296.10
dr r=R
2 215 0.06 0.005
Feito isto pode-se partir para a solucao da equacao propriamente dita. Para questao de
nomenclatura utilizar-se-a o sistema de equacoes na forma:
G(r, T, G) = G
1
F (r, T, G) = 93.02 (T 25) G
r
sendo que T 00 = F (r, T, G) e T 0 = G(r, T, G)
1
Os valores dos parametros de F e G sao os mesmos para a mesma posicao e foram somente apresentados
de maneira diferente: sendo indicados em G e calculados em F .
Top. Esp. Fluido-Temica 34
Este mesmo procedimento pode ser repetido por diversas vezes ate que o fluxo de calor G se
anule, que e quando a aleta deixa de transferir calor. Os resultados para este problema podem
ser encontrados na tabela (3.2).
A solucao analtica para este problema tambem pode ser obtida no entanto ele envolve
funcoes de Bessel e pode ser dada na forma:
sendo ainda que os valores calculados por estas funcoes tambem estao presentes na tabela (3.2).
Tambem no caso da EDO de segunda ordem e possvel utilizar estes metodos. Como foi
visto a sada e converter a solucao para um sistema de equacoes diferenciais em que cada
uma representa uma ordem diferente. Uma solucao implementando a tecnica de Runge Kutta
apresentada anteriormente poderia ser vista, entretanto, aqui so sera apresentada a tecnica que
se utiliza da funcao pre-implementada no octave lsode.
0
r T Texata G = dT /dr Texata k1,1 k1,2 k2.1 k2,2 k3,1 k3,2 k4,1 k4,2
Top. Esp. Fluido-Temica
Bem para isto e necessario definir uma funcao que represente a equacao diferencial do
problema que foi apresentada anteriormente, sendo:
1
T 00 (r, T, T 0 ) = 93.02(T 25) T 0
r
que sera representada atraves da funcao sol ale1.m, que tem como parametros de entrada um
vetor que armazena T e suas derivadas e uma variavel para armazenar a posicao radial r.
onde a variavel temr (1) e (2) representam as expressoes para a primeira e segundas derivadas
de T nos pontos considerados, respectivamente.
Feito isto a solucao pode ser obtida estabelecendo a regiao do domnio para a qual seria
solucionada (raios rr), as condicoes iniciais) e executando a chamada do lsode, como mostra
o script a seguir.
Ate agora foi visto apenas casos onde as condicoes iniciais eram conhecidas de antemao.
No entanto existem casos onde se deseja satisfazer condicoes que estejam deslocadas em relacao
ao ponto inicial. O procedimento de Runge Kutta funciona bem tambem neste caso, no entanto
Top. Esp. Fluido-Temica 37
Embora este acerto na condicao de contorno possa ser feito por tentativa e erro existem
procedimentos mais otimizados para a busca dos valores iniciais: sao eles os metodos de busca
de zero de funcoes (metodo da biparticao, secante e Newton-Raphson). O metodo que tende a
ser mais eficiente para este procedimento e o Metodo de da Secante, que e uma adaptacao do
metodo de Newton-Raphson. Para tanto e apresentada a seguir uma breve revisao a respeito
dos metodos.
Metodo de Newton Raphson: e um metodo que permite achar a raiz de expressoes. Sua
forma basica e:
f (xn )
xn+1 = xn
f 0 (xn )
f (x + x) f (x)
f 0 (x) = lim
x0 x
No caso da expressao pela Metodo da Secante e tomada a expressao discreta para a derivada
Top. Esp. Fluido-Temica 38
utilizando-se dos dois pontos anteriormente calculados, ou seja, fazendo x = xn xn1 e assim:
f (xn )
xn+1 = xn
f (xn ) f (xn1 )
(xn xn1 )
f (xn )
ou xn+1 = xn (xn xn1 )
f (xn ) f (xn1 )
Esta mesma expressao pode ser reagrupada na sua forma mais usual que e:
Esta expressao permite o calculo de forma a obter valores estimados para as condicoes
iniciais no caso de condicao de contorno deslocada.
Solucao:
A aleta tera a sua maxima dissipacao de calor se o seu comprimento tender a infinito. Mas
para que o seu comprimento tenda a infinito e preciso respeitar a condicao de contorno:
dT
=0
dr r
No caso da solucao numerica, e preciso estipular um valor para este infinito, neste caso
estipulou-se como infinito o valor de 2 m.
dT /dx|x=0 dT /dx|x= 2
-296.1 307617.567
-300 296887.049
Tomando por base estes dois valores e possvel aplicar a expressao do metodo da secante,
equacao (3.9), e obter uma estimativa do valor que vai anular o fluxo afastado da base da aleta.
Assim:
Este e o novo valor que deve ser utilizado de forma a buscar a condicao de contorno desejada.
Executando o Runge Kutta com este valor inicial obtem-se o resultado mostrado abaixo:
dT /dr|r=0.06 dT /dr|r 2
-407.903415 -2.688E-09
Isto indica que o maximo fluxo de calor que podera ser dissipado por uma aleta deste tipo
e sujeita as condicoes pre-estabelecidas e:
dT
q = k Ab = 215 (2 0.06 0.005) (407.903415) = 165.31 W
dr r=0.06
A solucao exata para este problema tambem e obtida em termos de funcao de Bessel e e
dada por:
Desta forma e possvel verificar que o valor calculado atraves de Runge Kutta, praticamente
coincide com o exato.
2
O valor para o foi adotado como sendo 2 m
Top. Esp. Fluido-Temica 40
Para obter-se a solucao neste caso e necessario o procedimento iterativo, onde admite-se os
valores da funcao e suas derivadas no ponto e busca-se os outros valores nos pontos desejados.
Desta forma imagine o caso resolvido na apostila onde deseja-se saber o fluxo maximo de
calor que pode ser dissipado por uma aleta com estas caractersticas. Admitindo-se que o
comprimento infinito seja uma aleta de 2 m, busca-se o valor da derivada na base que obtenha
fluxo de calor nulo nesta ponta.
octave> rr=0.06:0.01:2;
octave> fx1=-296.1;
octave> fx2=-300;
octave> saida=lsode("sol_ale1", [50 fx1], rr);
octave> y1=saida(end,2)
y1 = 1.1202e+09
octave> saida=lsode("sol_ale1", [50 fx2], rr);
octave> y2=saida(end,2)
y2 = 1.0816e+09
A partir destes valores utiliza-se o metodo da reta tangente mostrado no texto da apostila
para encontrar a nova (neste caso, terceira) estimativa para o dT /dx|r=6 cm .
octave> fx3=(y2*fx1-y1*fx2)/(y2-y1)
fx3 = -409.26
Esta e a nova estimativa da derivada na base da aleta, com a qual podem ser reefetuados
os calculos sucessivas vezes ate que seja encontrado um valor para a derivada da temperatura
nula na posicao desejada. Seguindo o procedimento abaixo:
Top. Esp. Fluido-Temica 41
octave> fx1=fx2;
octave> fx2=fx3;
octave> saida=lsode("sol_ale1", [50 fx2], rr);
octave> y2=saida(end,2)
y2 = -5744.3
octave> fx3=(y2*fx1-y1*fx2)/(y2-y1)
fx3 = -409.25
que resulta num valor para a derivada na base de 409.2547 K/m, e que pode tranquilamente
ser convertido para o valor do fluxo de calor na base q = 164.23 W. O comportamento do
grafico da derivada da temperatura ao longo da posicao pode ser visto utilizando um script de
plotagem similar ao proposto anteriormente na pagina (36).
function rr=ale_inf(x)
raio=0.06:0.01:2;
y=lsode("sol_ale1",[50 x], raio);
rr=y(length(y),2);
endfunction
Definida esta funcao a mesma pode ser facilmente solucionada buscando-se o valor de x que
zera a funcao acima:
obtendo-se com isto um resultado similar ao anterior e o grafico dos valores de tempertura e
sua derivada tambem podem ser montados a partir do valor correto encontrado em solu.
CAPITULO 4
O grupo dos metodos iterativos de solucao tem como caracterstica comum o uso de
procedimentos que vao sucessivamente se repetindo, cada vez com novos argumentos, ate a
obtencao da solucao final (dentro de uma certa tolerancia).
2. admitir uma solucao de partida, em funcao da qual serao calculadas as solucoes posteri-
42
Top. Esp. Fluido-Temica 43
ores.
3. substituir em cada uma das equacoes o valor atual para cada uma das variaveis obtendo,
desta forma, um novo valor para cada variavel.
4. repetir o passo 3 ate que a oscilacao da solucao atinja um valor inferior a tolerancia
adotada.
4 x1 + 3 x2 = 10
2 x1 + 4 x2 + 3 x3 = 19
3 x2 + 5 x3 + 2 x4 = 29
2 x3 + 8 x4 + 2 x5 = 48
3 x4 + 5 x5 + 4 x6 = 61
x5 + 4 x6 + 2 x7 = 43
2 x6 + 3 x7 + x8 = 41
2 x7 + 6 x8 = 62
Solucao:
Top. Esp. Fluido-Temica 44
x1 = 14 (3 x2 + 10)
x2 = 14 (3 x3 2 x1 + 19)
x3 = 51 (2 x4 3 x2 + 29)
x4 = 81 (2 x5 2 x3 + 48)
x5 = 51 (4 x6 3 x4 + 61)
x6 = 41 (2 x7 x5 + 43)
x7 = 31 (x8 2 x6 + 41)
x8 = 61 (2 x7 + 62)
Partindo de um chute inicial onde xi = 0 para 1 < i < 8 tem-se, aplicando os conceitos de
Gauss-Seidel, que:
x1 = 41 (10) = 2, 5
x2 = 14 (2 2.5 + 19) = 3, 5
x3 = 15 (3 3, 5 + 29) = 3, 7
x4 = 18 (2 3, 7 + 48) = 5, 075
x5 = 15 (3 5, 075 + 61) = 9, 155
x6 = 14 (9, 155 + 43) = 8, 461
x7 = 13 (2 8, 461 + 41) = 8, 026
x8 = 16 (2 8, 026 + 62) = 7, 658
Repetido o procedimento por diversas vezes encontra-se as solucoes mostradas na tabela (4.1),
e a solucao foi buscada ate 30 iteracoes, mas notem que para parar neste ponto foi necessario
uma tolerancia superior a 103 .
A1 B1 0 0 0 0 0 0 0
C2 A2 B2 0 0 0 0 0 0
0 C3 A3 B3 0 0 0 0 0
0 0 0 0 Ci Ai Bi 0 0
0 0 0 0 0 0 0 Cn An
Estes metodos diferem dos demais por nao necessitar de procedimento iterativo para
a busca da solucao, eles buscam uma forma de solucionar diretamente o sistema. Dentre
estes metodos destacam-se Metodo de Triangularizacao de Gauss, Metodo de Fatoracao LU,
etc. Existem ainda alguns metodos especficos para matrizes especiais, o caso tpico (e muito
utilizado pela peculiaridade de que na matriz cada ponto esta relacionado somente aos seu dois
vizinhos) e o TDMA (TriDiagonal Matrix Algorithm) ou Metodo Linha a Linha. Este metodo
e extremamente util principalmente quando se trabalha com Diferencas Finitas, como veremos
posteriormente, que geram matrizes como estas.
O metodo TDMA se baseia na triangularizacao de Gauss, mas feita para uma matriz Tri-
diagonal. A figura (4.1) mostra a forma geral deste tipo de matriz.
O procedimento para utilizacao do TDMA e um pouco mais complexo que o de Gauss Siedel,
imaginemos que uma linha qualquer do sistema pode ser expressa por:
Ai xi + Bi xi+1 + Ci xi1 = Di
Repare que para obedecer as condicoes do sistema e necessario que C1 e Bn sejam nulos
resultando em um sistema composto por n incognitas expresso atraves de uma matriz quadrada.
O sistema pode, com isto, ser resolvido atraves da expressao:
xi = Pi xi+1 + Qi
onde:
Bi
Pi =
Ai + Ci Pi1
Di Ci Qi1
Qi =
Ai + Ci Pi1
Top. Esp. Fluido-Temica 46
No entanto para obter o campo de temperaturas e preciso comecar pela ultima linha e ir
regredindo ate a primeira. Sabe-se que Bn = 0 e portanto Pn = 0. Desta forma:
xn = Qn
donde e possvel calcular todos os demais valores para a solucao. Uma descricao mais detalhada
do metodo e sua utilizacao pode ser encontrada em (Maliska, 1995).
Solucao:
B1 3 D1 10
P1 = = = 0, 75 Q1 = = = 2, 5
A1 4 A1 4
sendo todos os demais P e Q calculados da mesma forma. O resultado para os mesmos neste
caso pode ser encontrado na tabela (4.2).
x8 = Q8 = 8
x7 = P7 x8 + Q7 = 0, 607 8 + 11.857 = 7
e assim sucessivamente ate obter a solucao para todas as variaveis. A solucao completa esta a
disposicao na tabela (4.2), exceto pela solucao exata que e identica a obtida pelo TDMA.
Linha A B C D P Q x
1 4 3 0 10 -0.750 2.500 1
2 4 3 2 19 -1.200 5.600 2
3 5 2 3 29 -1.429 8.714 3
4 8 2 2 48 -0.389 5.944 4
5 5 4 3 61 -1.043 11.261 5
6 4 2 1 43 -0.676 10.735 6
7 3 1 2 41 -0.607 11.857 7
8 6 0 2 62 -0.000 8.000 8
Ate agora foi visto metodos de solucao de equacoes diferenciais ordinarias, a partir de
agora comecaremos a ver as formas de solucao numerica das equacoes diferenciais parciais. Na
introducao desta apostila ja foram discutidos alguns aspectos deste tipo de solucao e a partir
de agora sera feito um aprofundamento nestes aspectos com a introducao de alguns conceitos
novos.
Da mesma forma que as equacoes diferenciais ordinarias, as E.D. parciais tambem po-
dem ser subdivididas em subgrupos. Embora estes grupos sejam de interesse eminentemente
matematico e importante conhecer as suas caractersticas principais e assim poder identificar
as caractersticas de suas solucoes. No caso de problemas fsicos nao se deve preocupar-se tanto
com a natureza de uma equacao diferencial como um todo, que e calculada a partir dos valores
dos coeficientes dos termos da equacao diferencial, mas sim como se comportam cada uma das
coordenadas da mesma.
48
Top. Esp. Fluido-Temica 49
c -
(c)
c -
(b)
Ponto P c -
(a)
Equacao Diferencial Elptica e a mais comuns das formas das equacoes diferenciais, e
neste tipo cada ponto esta ligado a todo o domnio e so se pode resolver o problema a partir
do conhecimento da solucao de todo o domnio, vide figura (5.1b). Todos os problemas que
necessitam de condicoes de contorno em dois pontos recaem em situacoes deste tipo, assim o
grande exemplo de equacao diferencial elptica sao as coordenadas envolvendo o espaco.
Equacao Diferencial Hiperbolica e aquela em que a perturbacao tambem tem uma direcao
preferencial, no entanto esta direcao preferencial nao e conhecida, depende dos conhecimento,
muitas vezes da propria solucao do problema, vide figura (5.1c). Desta a solucao deste tipo
e praticamente um misto das outras, quando a direcao preferencial e conhecida ela pode ser
Top. Esp. Fluido-Temica 50
resolvida como uma equacao parabolica, quando nao ela e resolvida como uma elptica. Exem-
plos de equacoes deste tipo sao a parcela convectiva das equacoes de transporte, equacoes de
onda, etc.
Por outro lado, o MEF sempre teve a vantagem de usar malhas nao-estruturadas, o que
permite que problemas em geometrias complexas possam ser resolvidos. 0 MEF nao teve
penetracao forte na area de fluidos por muito tempo, porque se acreditava que a equacao
diferencial a ser resolvida necessitava de um princpio variacional para que o metodo pudesse
ser aplicado. Como a equacao de Navier-Stokes nao tem esta propriedade, a aplicacao do MEF
Top. Esp. Fluido-Temica 51
Ate o inicio da decada de 70, tinha-se, portanto, o MDF com grande experiencia na area de
fluidos, mas sem habilidades para tratar geometrias complexas; e o MEF, habil no tratamento
da geometria, mas sem ferramentas para tratar os termos convectivos presentes nas equacoes do
movimento. Mesmo suplantando a questao do princpio variacional, atraves do uso do metodo
de Galerkin e outras variantes, o MEF nao teve sucesso imediato em problemas de fluidos,
uma vez que o metodo de Galerkin (que e equivalente ao uso de diferencas centrais no MDF)
e adequado apenas para problemas puramente difusivos.
No panorama atual, observa-se que ambos os metodos (MVF e MEF) estao resolvendo
problemas altamente convectivos, inclusive com ondas de choque, em geometrias arbitrarias,
mostrando que existe entre eles uma forte semelhanca em termos de generalidade. Se olhar-
mos do ponto de vista matematico, isto poderia ser diferente, uma vez que todos os metodos
numericos podem ser derivados do metodo dos resduos ponderados, empregando-se diferentes
funcoes peso. Por exemplo, o MDF surge quando a funcao peso e feita igual a funcao delta no
ponto em consideracao; o MVF aparece quando esta funcao peso e feita igual a 1 no volume
elementar, e a zero em todos os outros volumes elementares, ja o MEF-Galerkin surge quando
estas funcoes peso sao feitas iguais as funcoes tentativas. Logo, nao existe sentido em argu-
mentar que um determinado metodo e sempre superior a outro, visto que eles sao derivados
do mesmo principio e diferem apenas na forma de minimizacao escolhida. 0 que se tem, na
pratica, sao diferentes graus de experiencia dos diversos metodos para diferentes problemas.
A preferencia pessoal deste autor pelo metodo dos volumes finitos (MVF) para problemas
de escoamento de fluidos e justificada primeiro pela escola seguida na sua formacao e, segundo,
pelo fato de o MVF, ao criar suas equacoes aproximadas, estar realizando um balanco da propri-
edade em nvel de volumes elementares. Se o que se busca com o metodo numerico e a solucao
da equacao diferencial que representa a conservacao da propriedade em inves de ponto (infinite-
simal), parece logico que as equacoes aproximadas (que formam o sistema linear) representem
a conservacao em nvel de volumes elementares (discreto). A depuracao de um programa com-
putacional tambem fica mais facil quando o analista tem etapas a serem conferidas. Como no
MVF os balanco de conservacao devem ser satisfeitos em nvel de volumes elementares, para
qualquer tamanho de malha, todos os princpios de conservacao podem ser checados em uma
malha bastante grosseira. Ou seja, quase tudo pode ser feito manuseando-se poucos resultados
em execucoes rapidas no computador. Em outros metodos, pode-se apenas conferir a solucao
com uma malha refinada.
questoes especficas.
Um outro metodo que vem ganhando destaque e espaco e o metodo dos elementos no
contorno (Boundary Element Method - BEM da literatura internacional). Sua vantagem e a
possibilidade de tratar apenas com a discretizacao da fronteira, sem necessidade de discretizar
o domnio interno. 0 metodo e aplicado quando e possvel transferir a influencia do operador do
domnio para a fronteira. Apesar de atraente, e um metodo que ainda esta longe de responder
as solicitacoes dos problemas complexos resolvidos pelos outros metodos. Sem duvida e uma
area de pesquisa que merece esforcos.
Depois desta discussao toda o metodo que sera estudado mais a fundo e o metodo de
diferencas finitas (MDF) por se tratar de um metodo tradicional, ainda amplamente utilizado
e, que segundo o proprio texto mostra, nao difere muito dos demais.
Como ja foi discutido a solucao numerica nao gera solucoes contnuas como as analticas
mas sim valores para pontos determinados. Trata-se portanto de uma etapa fundamental na
solucao numerica de um problema a escolha dos pontos para os quais vai se obter solucao, o
que e determinado pela discretizacao do domnio. Muitas vezes se obtem valores para pontos
fora dos pontos da malha, mas estes valores sao obtidos por interpolacao da solucao original, o
que nao garante a correcao do seu valor, embora este procedimento forneca bons resultados na
maior parte dos casos.
Um dos grandes exemplos onde este procedimento falha e quando se tem um problema
de solidificacao ou fusao. Entre o ponto um ponto da malha que e solido e outro lquido ha
uma forte descontinuidade, e uma simples interpolacao linear neste caso nao fornecera bons
resultados, embora a solucao para cada ponto esteja correta.
complexas, o tempo necessario para gerar uma malha manualmente aumenta numa proporcao
muito maior. E importante ressaltar que para se trabalhar com a formulacao de diferencas a
ser apresentada nesta apostila e necessaria que a malha seja ortogonal1 .
Existem formulacoes alternativas para diferencas finitas e volumes finitos que trabalham
com malhas ortogonais. O metodo de elementos finitos nao requer malhas ortogonais.
1
Malha ortogonal e o tipo de malha em que cada ponto tem seus vizinhos diretos numa direcao normal ou
tangencial.
CAPITULO 6
sendo e(x) o desvio, u(x) a aproximacao e uex o valor exato desta aproximacao para este mesmo
ponto.
55
Top. Esp. Fluido-Temica 56
u = f (x, a1 , a2 , a3 , an )
Desta forma obtem-se uma funcao que simplesmente aproxima o comportamento da variavel
ao longo do domnio. Com esta aproximacao podem ser obtidas, dentre outras coisas,:
um expressao simples para uma funcao complexa ou difcil de ser manipulada, valida para
um certo numero de pontos que se deseje ou ainda com boa aproximacao dentro de uma
certa regiao;
x uex (x)
0,0 20 C
0,5 25 C
1,0 22 C
assim:
uex (x = 0) = u(x = 0) = a1 = 20
uex (x = 0, 5) = u(x = 0, 5) a1 + 0, 5 a2 + (0, 5)2 a3 = 25
uex (x = 1) = u(x = 1) a1 + 1 a2 + (1)2 a3 = 22
que resulta em u(x) = 20 + 18 x 16 x2 e representa uma aproximacao do uex (x). Por exemplo,
para uma aproximacao da temperatura na posicao x = 0, 7 pode ser usado:
Exemplo: Solucao aproximada de uma equacao diferencial: Supondo que se tem um pro-
blema de conducao com a geracao de energia variando com a posicao. Neste caso, a equacao
diferencial que rege o problema seria do tipo:
d2 u
= f (x) para 0 x 1
dx2
e sabendo que:
x f (x)
0,25 1
0,75 0,25
Tem-se, ainda, que as temperaturas nas extremidades do problema seriam conhecidas. Neste
caso, as condicoes de contorno adotadas sao:
? x = 0 : a temperatura u = 0
? x = 1 : a temperatura u = 0
Para a obtencao da solucao tambem se faz necessario a escolha de uma funcao que obedeca
as condicoes de contorno. Assim, foi escolhida a seguinte aproximacao:
Normalmente em solucoes deste tipo e mais difcil encontrar uma solucao que satisfaca as
condicoes de contorno do que partir dela, e encontrar a solucao do problema, propriamente
dita. Desta forma tem-se que para este caso, nos dois pontos considerados:
d2 u
= a1 2 sin( xi ) 4a2 2 sin(2 xi )
dx2 x=xi
d2 u
= a1 2 sin(0.25 ) 4a2 2 sin(0.5 ) = 1
dx2 x=0,25
d2 u
2
= a1 2 sin(0.75 ) 4a2 2 sin(1.5 ) = 0.25
dx
x=0,75
Pode-se utilizar ainda a expressao para avaliar a temperatura, ou outra variavel de interesse,
em qualquer ponto. Por exemplo para a posicao x = 0, 25, tem-se:
23 1
u(x = 0, 25) = = 0, 0728
32 2
Este mesmo procedimento pode ser utilizado para expressar uma funcao para uma
variavel generica em funcao dos pontos nodais. Para isto, note primeiro que nos casos an-
teriores poderia se fazer uma aproximacao em funcao das variaveis a1 , , an , bastando para
isto:
u(x) = P1 (x) a1 + P2 (x) a2 + + Pn (x) an
Imagine que se tenha um domnio qualquer e se conheca os valores de uma funcao qualquer
em pontos determinados. Pode-se montar uma funcao que represente o comportamento da
variavel em funcao do seu valor nestes pontos. Para uma funcao u(x) tem-se que para uma
Top. Esp. Fluido-Temica 59
e(x) = 0 se x = xi
Exemplo Aproximacao para quatro pontos: Considere a situacao onde sao escolhidos quatro
pontos alinhados para solucionar o problema unidimensional. Desta forma a aproximacao nodal
e dada por:
u(x) = N1 (x) u1 + N2 (x) u2 + N3 (x) u3 + N4 (x) u4
Neste caso e adotada como funcao de interpolacao que respeite as condicoes anteriormente
expostas: a funcao de Lagrange de terceiro grau,
4
Y (x xj )
Ni (x) = (6.1)
j=1
(xi xj)
j6=i
(x x2 )(x x3 )(x x4 )
N1 (x) =
(x1 x2 )(x1 x3 )(x1 x4 )
Top. Esp. Fluido-Temica 60
1,0
0,8
0,6
0,4
N1(x)
0,2
0,0
-0,2
-0,4
1 2 3 4 5 6 7
x 1 1,5 2 3 4 5 6 7
77
N1 (x) 1 192 0 31 14 0 1
6
0
O comportamento desta funcao pode ser visto para todos os pontos na figura (6.1).
(x x1 )(x x3 )(x x4 ) 1
N2 (x) = = (x 1) (x 5) (x 7)
(x2 x1 )(x2 x3 )(x2 x4 ) 15
(x x1 )(x x2 )(x x4 ) 1
N3 (x) = = (x 1) (x 2) (x 7)
(x3 x1 )(x3 x2 )(x3 x4 ) 24
(x x1 )(x x2 )(x x3 ) 1
N4 (x) = = (x 1) (x 2) (x 5)
(x4 x1 )(x4 x2 )(x4 x3 ) 60
Este e apenas um exemplo unidimensional, no entanto na maior parte dos problemas que sao
tratados em elementos finitos, tem-se duas ou mais dimensoes, e as novas funcoes de interpolacao
passam a ser funcao de todas as variaveis espaciais:
ou ainda
u1
u2
u(~x) = [N1 (~x) N2 (~x) Nn (~x)] = .. = [N ] {u}
.
un
A construcao das funcoes de aproximacao u(x) vao se tornando mais difceis a medida
que o numero de nos aumenta. Uma maior complexidade ainda e verificada quando o domnio
V e irregular ou possui condicoes de contorno mais complexas. Por outro lado, as aproximacoes
nodais de sub-domnio simplificam a obtencao da solucao u(x) e sao extremamente faceis de
serem implementadas em um computador. Este procedimento consiste, basicamente, dos se-
guintes passos:
a escolha de uma aproximacao nodal adequada para cada subdomnio. De maneira geral,
ela depende das dos pontos nodais e aproximacoes utilizadas nas vizinhancas. O metodo
dos elementos finitos e apenas um tipo de aproximacao nodal por sub-domnio, sendo
suas caractersticas principais:
Utilizando para cada um destes elementos de dois nos a funcao Lagrange tem-se que para
cada elemento:
ui (x) = N1 u1 + N2 u2
sendo Ni dado pela expressao de Lagrange, equacao (6.1). Deve-se notar que no exemplo
anteriormente resolvido, utilizava-se um polinomio de Lagrange de quarta ordem, enquanto no
caso de elementos de dois nos utiliza-se apenas o polinomio de segunda ordem.
(a) deve haver sempre uma fronteira comum entre os elementos adjacentes onde estarao os
unicos pontos comuns entre os elementos. Estas fronteiras podem ser compostas por
pontos, linhas ou areas.
Top. Esp. Fluido-Temica 63
(b) nao e permitida a existencia de regioes comuns a mais de um elemento (overlapping) e nem
regioes dentro do domnio que nao pertencam a regiao alguma (holes). Estas anomalias
estao mostradas na figura (6.2).
(c) quando a fronteira do domnio do problema nao coincidem inclui-se uma anomalia (hole)
que acarreta em um erro que nao pode ser mensurado. Entretanto, estes erros, deno-
minados por erros geometricos, podem ser minimizados utilizando-se elementos menores
ou elementos de maior ordem, que melhor se adequam a fronteira. Estes procedimen-
tos sao melhores compreendidos quando discretiza-se uma fronteira do tipo mostrado na
figura (6.3).
Note que na fig. (6.3a) a discretizacao e feita com elementos grosseiros e nao e possvel
representar a fronteira de forma adequada, apresentando maiores vaos (holes), nestas
regioes. Na fig. (6.3b) utiliza-se elementos menores e a fronteira ja pode ser melhor repre-
sentada. E, finalmente, na figura (6.3c), nota-se que foi obtida uma boa representacao da
fronteira mesmo com elementos mais grosseiros, desde que estes sejam de ordem superior
e suas fronteiras possam ser deformadas para se ajustar ao domnio do problema.
(a) Malha Linear Grosseira (b) Malha mais refinada (c) Malha com elementos
de maior ordem
Quando se trabalha com elementos finitos existem dois tipos basicos de sistemas de
coordenadas. A metodologia de elementos finitos usa ferramentas matematicas para efetuar a
transformacao ( ) de um sistema de coordenadas para outro. A figura (6.4) mostra o sistemas
de referencia para um elemento triangular. Os sistemas de coordenadas que coexistem neste
caso sao:
Sistema de coordenadas local: e aquele que existe dentro do elemento ideal e cujas coor-
denadas sao expressas em termos de e .
Sistema de coordenadas global: que existe no sistema fsico real e expresso em termos de
coordenadas globais para todos os elementos.
Esta mesma expressao pode ser escrita em termos de variaveis nodais sendo expressa na
forma:
e : = xe () = N () {xe }
Para que esta transformacao seja feita de maneira adequada sao necessarias algumas condicoes:
Top. Esp. Fluido-Temica 65
o sistema de transformacao deve ser biunvoco (um ponto em cada conjunto tem corres-
pondencia a outro unico ponto do outro sistema).
da mesma forma que os nos cada fronteira do elemento corresponde a uma fronteira global.
x(, ) = N1 (, ) xi + N2 (, ) xj + N3 (, ) xk = [N ] {x}
y(, ) = N1 (, ) yi + N2 (, ) yj + N3 (, ) yk = [N ] {y}
P~ | = R
~ + ~r
~r = i + i
~ = Xi
R
i = Xj Xi
i = Xk Xi
P = Xi + (Xj Xi ) + (Xk Xi )
P = (1 ) Xi + Xj + Xk
Xi
P = {(1 ) } Xj
Xk
E possvel notar que para que a transformacao de coordenadas seja adequada e preciso
considerar as amplitudes da transformacao, assim como a multipla composicao de dimensoes
(, por exemplo, apresenta derivadas tanto na direcao x como y). Para corrigir este fator
e necessario conhecer o Jacobiano [J] da transformacao. O Jacobiano pode ser dado pela
expressao:
" # " #
x y
xj xi yj yi
[J] = x y
=
xk xi yk yi
det[J] = (xj xi )(yk yi ) (xk xi )(yj yi )
Top. Esp. Fluido-Temica 66
E importante notar que o valor do determinante do Jacobiano resulta em duas vezes a area
do mesmo.
Propriedade Fundamental: o valor da funcao deve coincidir com os respectivos valores no-
dais. Com base na expressao geral:
n
X
u(x) = N1 (x) x1 + N2 (x) x2 + Nn (x) xn = Ni (x) xi
i=1
Continuidade no elemento: as funcoes Ni (x) devem ser contnuas em todo elemento, assim
como as derivadas ate a ordem s considerada.
Continuidade entre elementos: tanto os valores da funcao como de suas derivadas devem
ser os mesmos nas fronteiras de elementos adjacentes, sejam eles calculados por um ou
outro elemento.
Alem disto existem algumas definicoes importantes que devem ser destacadas:
se uma funcao e contnua pelas suas fronteiras ele e classificada com C 0 , se a funcao e a
primeira derivada sao contnuas, ela e classificada de C 1 , e assim sucessivamente.
o numero de variaveis nodais associados a cada um dos nos de cada elemento e denominado
por grau de liberdade do sistema.
sendo < P () > a base polinomial e < a > as variaveis generalizadas para montagem da funcao
de interpolacao. A expressao apresentada na eq. (6.2) representa a aproximacao generalizada,
diferenciada da aproximacao nodal.
Top. Esp. Fluido-Temica 68
Expressoes analticas para as funcoes de interpolacao: podem ser obtidas a partir dos
resultados anteriores com respeito da base polinomial e o vetor a. Se substituir-se a eq. (6.3)
na eq. (6.2), obtem-se:
u() =< P () > [Pn ]1 {un }
que implica em dizer que as funcoes de interpolacao para a aproximacao nodal:
Derivadas de u(): podem ser obtidas diferenciando em relacao a cada uma das variaveis
geometricas, como no caso unidimensional:
( ) " # " #
u < P > < N >
= [Pn ]1 {un } = {un } = [B ] {un }
u < P > < N >
Escolha da base polinomial: ja que o elemento possui quatro nos, e preciso escolher uma
base de acordo com este tamanho. Ja que nao existe nenhuma base completa para quatro
nos a melhor escolha, que respeita as condicoes de de simetria e inter-continuidade dos
elementos e:
hP i = h 1 i
Top. Esp. Fluido-Temica 69
Montagem da matriz Pn : e montada com base na avaliacao da base polinomial nos quatro
nos possveis (com seus respectivos valores de e :
1
1
1
1
= , =
1
1
1
1
1 1 1 1
1 1 1 1
[Pn ] =
1
1 1 1
1 1 1 1
1 1 1 1
1 1 1 1 1
hN i = hP i [Pn ]1 = { 1 }
4 1 1 1 1
1 1 1 1
D E
hN i = N1 (, ) N2 (, ) N3 (, ) N4 (, )
1D E
hN i = 1 + 1 + 1 + + + 1 +
4
1 D E
hN i = (1 )(1 ) (1 + )(1 ) (1 + )(1 + ) (1 )(1 + )
4
De forma analoga pode-se enfatizar que transformacao inversa respeita a mesma regra:
x
x x x
y
= y y y
= {x } = [j] { }
z z z z
Com isto e possvel obter qualquer matriz de transformacao, desde que esta seja biunvoca
e, portanto, gere matrizes inversveis.
Unidimensional:
1
[J] = J1,1 [j] = [J]1 =
J1,1
Bi-dimensional:
" # " #
J1,1 J1,2 1 J2,2 J1,2
[J] = [j] = [J]1 =
J2,1 J2,2 det[J] J2,1 J1,1
det[J] = J1,1 J2,2 J2,1 J1,2
Tri-dimensional:
J1,1 J1,2 J1,3
[J] = J2,1 J2,2 J2,3
det[J] = A0 + A1 + A2
e onde:
1
A0 = [(y4 y2 )(x3 x1 ) (y3 y1 )(x4 x2 )]
8
1
A1 = [(y4 y3 ) (x1 x2 ) (y2 y1 )(x3 x4 )]
8
1
A2 = [(y1 y4 )(x2 x3 ) (y2 y3 )(x1 x4 )]
8
Supondo agora que se deseje realizar uma integracao de uma funcao generica f no
domnio elementar, muito mais simples, e transforma-la para o domnio real. Para realizar este
objetivo e preciso analisar a natureza da integracao. Para uma integracao sobre um determinado
volume no espaco real tem-se que:
dV = (dx dy) dz
sendo
que implica que esta mesma funcao dV pode ser representada na forma:
dV = det[J] d d d
A uniao de alguns nos faz surgir os elementos que tambem podem ser numerados sequenci-
almente de 1 ate m (m < n). Estes elementos podem ser descritos atraves do numero dos nos
que o compoem, e que podem ser associados ainda a tabela anterior, que possui as coordenadas
dos pontos. Esta tabela que apresenta as conexoes entre os nos de cada elemento e chamada
de conectividade.
A formulacao por elementos finitos exige alguns cuidados sendo o principal deles o fato
que a mesma deve obedecer uma sequencia de conexao entre os elementos, nao podendo ser
apresentada em uma ordem aleatoria. Normalmente e utilizado um ponto como referencia
inicial e um sentido de numeracao, horario ou anti-horario, para expressar a conectividade.
Considerando todo o procedimento nao faz diferenca qual o ponto que se adota como origem
para o elemento e nem o sentido de rotacao, no entanto, para todos os elementos deve ser
adotado o MESMO sentido de rotacao.
Exemplo Numerico: Considere o volume total de chuva que incide sobre uma determinada
regiao de area A e na qual sao lidos uma serie de pontos ui . Os pontos numerados de 1 a 10
estao mostrados na tabela (6.2) e figura (6.6) sendo apresentados suas coordenadas x e y e os
nveis de chuva medidos sobre o ponto.
Com estes dados determine o valor total da precipitacao sobre a regiao considerada e o
ndice medio de precipitacao (umed ).
Aproximacao nodal:
Top. Esp. Fluido-Temica 75
Elemento 1 2 3 4
1 1 4 5 2
2 2 5 6 3
3 4 7 8 5
4 5 8 9 6
5 7 10 9 8
u
1
D E u
2
u(, ) = N1 (, ) N2 (, ) N3 (, ) N4 (, )
u3
u
4
u 1
1 D E u2
= (1 )(1 ) (1 + )(1 ) (1 + )(1 + ) (1 )(1 + )
4 u3
u
4
Integracao: Z Z
Q= u(x, y) dx dy = u(, ) det [J] d d
A A
ou, na forma matricial:
1 1 1
Z Z
Q= (A0 + A1 + A2 )
4 1 1
u 1
D E
u
2
(1 )(1 ) (1 + )(1 ) (1 + )(1 + ) (1 )(1 + ) d d
u3
u
4
U1 = u2 + u1 + u4 + u3
U2 = u1 u4 + u3 + u2
U3 = u3 u2 u1 + u4
No 1 x1 = 0, y1 = 33, 3, u1 = 4, 62
No 4 x2 = 22, 2, y2 = 30, 1, u2 = 5, 45
No 5 x3 = 49, 9, y3 = 57, 6, u3 = 4, 90
No 2 x4 = 13, 2, y4 = 62, 3, u4 = 3, 81
A = 4 A0
x1 y1 u1 x2 y2 u2 x3 y3 u3 x4 y4 u4
1 0,0 33,3 4,62 22,2 30,1 5,45 49,9 57,6 4,90 13,2 62,3 3,81
2 13,2 62,3 3,81 49,9 57,6 4,90 78,8 78,2 10,35 39,3 84,5 4,76
3 22,2 30,1 5,45 39,3 10,0 4,96 59,7 34,3 4,26 49,9 57,6 4,90
4 49,9 57,6 4,90 59,7 34,3 4,26 73,9 36,2 18,36 78,8 78,2 10,35
5 39,3 10,0 4,96 69,8 5,1 15,69 73,9 36,2 18,36 59,7 34,3 4,26
A0 A1 A2 U1 U2 U3 Q Area
1 228,19 1,64 55,04 18,78 1,92 -1,36 4261,41 912,74
2 241,65 -5,70 12,99 23,82 6,68 6,40 5771,07 966,59
3 217,56 -25,18 -14,01 19,57 -1,13 -1,25 4272,97 870,24
4 182,79 -65,72 29,70 37,87 7,37 19,55 6954,45 731,17
5 159,37 15,94 -66,85 43,27 24,83 1,97 6983,87 637,47
Soma 28243,78 4118,21
P
Qi
Media = P = 6, 86 cm
Ai
C(u) = fs no contorno S.
Top. Esp. Fluido-Temica 78
sendo u a variavel principal do problema e varia de acordo com a posicao no espaco. Define-se
a funcao residual como sendo:
R(u) = L(u) + fv
sendo uma funcao peso dentre as possveis e u a solucao para o problema que satisfaz as
condicoes de contorno C(u).
As transformacoes integrais sao utilizadas para reduzir a ordem das equacoes diferenciais.
Relembrando ainda que para uma integracao generica:
Z Z Z Z
u v = u dv + v du = u dV = v du + u v
V V V V
Caso se aplique este mesmo preceito para a equacao integral de resduos ponderados,
eq. (6.5), este mesmo preceito quando esta acompanha uma derivada tem-se a forma fraca
da equacao, que e dada por:
Unidimensional
Z x2 Z x2
du d
dx = u dx + ( u)|xx21 (6.6)
x1 dx x dx
Z x2 2 Z 1x2 x
du d du du 2
2 dx = dx + (6.7)
x1 dx x1 dx dx dx x1
Z Z I
u
dx dy = u dx dy + ( u) dy
A x A x
Z Z IS
u
dx dy = u dx dy + ( u) dx
A y A y
Z Z S I
u u
+ dx dy = + u dx dy + ( un ) dS (6.8)
A x y A x y S
Top. Esp. Fluido-Temica 79
2u 2u
Z Z I
u u u
+ dx dy = + dx dy + dS (6.9)
A x2 y 2 A x x y y S ~n
I Z Z
u u u
sendo que dS = dx + dy
S ~n S y S x
A forma fraca da equacao, obtida a partir da integracao por partes mostrada anteriormente,
apresenta algumas caractersticas e requisitos diferenciados:
(a) a ordem da maior derivada de variavel de interesse u e reduzida, o que relaxa a condicao
de continuidade necessaria para a convergencia;
Existem varias opcoes de escolha para a funcao peso, sendo que cada uma pode apre-
sentar melhores ou piores resultados de acordo com o tipo de problema a ser solucionado. Esta
escolha pode ser auxiliada com a utilizacao de referencias basicas de elementos finitos, como
(Dhatt & Touzot, 1984).
No entanto existe um esquema de escolha de funcao peso que se destaca pela grande uti-
lizacao nos mais diversos tipos de problemas. Este esquema de solucao, conhecido como o
= hN i
O tratamento das condicoes de contorno atraves do metodo dos elementos finitos nao e
uma tarefa simples, ele vem acompanhado de uma serie de operacoes que nao sao imediatas.
Para simplificar esta tarefa sera utilizado neste estudo um tratamento simplificando, vide (Pa-
tankar, 1980), das condicoes de contorno onde e definida uma condicao de contorno generica
na forma:
u
= c u + c (6.10)
n
Esta equacao e capaz de representar qualquer condicao de contorno usual (das tres especies)
e outras ainda podem ser aproximadas. Para esta representacao e necessario que:
T T h h T
k = h(T T ) = = T+
x x k k
Top. Esp. Fluido-Temica 81
E importante ressaltar que caso se trate de uma fronteira inicial de x, como mostrada na
figura (6.8), ~n e ~i tem direcoes opostas, no entanto o sinal tambem Da expressao para
conveccao tambem se inverte pela posicao da fronteira. Desta forma, o resultado final e
sempre o mesmo e independe de se tratar de uma fronteira inicial ou final.
Desta forma, a variavel de interesse u pode ser expressa em termos da funcao de interpolacao
atraves da aproximacao nodal:
u 1
D
E u
2
u(, ) = N1 (, ) N2 (, ) N3 (, ) N4 (, )
u3
u
4
u 1
1 D E u2
= (1 )(1 ) (1 + )(1 ) (1 + )(1 + ) (1 )(1 + )
4
u3
u
4
Top. Esp. Fluido-Temica 82
Pode-se escolher qualquer uma das fronteiras para realizar a integracao sobre a fronteira,
mudando apenas o sentido da derivada e os pontos considerados e a direcao sobre a qual e feita
a derivada ( ou ).
hN i 1 D E
= (1 )(1 ) (1 + )(1 ) (1 + )(1 + ) (1 )(1 + )
4
1D E
= 1 + 1 1 + 1
4
hN i 1 D E
= (1 )(1 ) (1 + )(1 ) (1 + )(1 + ) (1 )(1 + )
4
1D E
= 1 + 1 1 + 1
4
0
I Z1 Z1 * +
u 1 0
dS = (u + ) d = (u + ) d
S ~n 4 2 (1 + )
=1 =1
2 (1 )
0
u1 0
Z1 * +
Z1 * +
0 D E u2 0
= 0 0 2(1 + ) 2(1 ) d + d
16 2 (1 + )
u 3
4 2 (1 + )
=1
=1
2 (1 ) u 2 (1 )
4
1
0 0 0 0
u 1
0
Z1
0 0 0 0 u 2
0
= d +
16 0 0
(2 + 2)2 (2 + 2) (2 2) u3 4 2 +
2
=1
2 2
0 0 (2 + 2) (2 2) (2 2) u 2
4
1
Top. Esp. Fluido-Temica 83
1
0 0 0 0
0
I
u 0 0 0 0 0
dS = 1 3 4 3
+
S ~n 16
0 0 6
(2 + 2) 3
+ 4
4 4
4 3 1 3
4
0 0 3 + 4 6 (2 2) 1
0 0 0 0 u
1 0
0 0 0 0 u2
0
= 32 16
+
16
0 0 3 3 u3 1
16 32
0 0 3 3 u4 1
0 0 0 0 u
1
0
0
0 0 0 0 u2
=
2
+
0 0 3 3
u 3
2
0 0 3 3 u4
0
0
0 0
= 2 1
+
3
u 3 + 3
u 4
1 u + 2 u
3 3 3 4
0
0
0
I
u 0 0
` = `
0
dS =
2 u + 1 u +
S ~n 3 3 3 4 2
6 2u3 + u4 + 3
1 u + 2 u
u3 + 2u4 + 3
3 3 3 4
Ate agora todas as integrais a serem resolvidas o foram analiticamente, no entanto nao
pode deixar de se considerar a integral numerica como ferramenta importante neste tipo de
solucao. Da forma ja vista anteriormente pode-se dizer que a integral a ser solucionada e:
Z Z 1 ns
X ns
X ns X
X ns
g(x) dx = G(, ) dd j k G(j , k ) = j k G(j , k )
1 j=1 k=1 j=1 k=1
e
Os pontos de integracao sao obtidos assim como a funcao peso para diversas geometrias sendo as
mais comuns a quadratura de Gauss e o metodo de Newton-Cotes para elementos quadrilaterais
Top. Esp. Fluido-Temica 84
4 1/ 3, 1/ 3 1
1/6, 1/6
2/3, 1/6
3 1/6, 2/3 1/6
Um grande forno industrial e suportado por uma longa coluna de tijolos refratarios com
1 m por 1 m de lado. Durante a operacao em regime estacionario, as condicoes sao tais que que
tres superfcies da coluna sao mantidas a 500 K e a outra superfcie e exposta ha uma corrente
de ar com T = 300 K e o coeficiente de pelcula h = 10 W/m2 K. Usando uma malha com
x = y = 0.25 m, determine a distribuicao bidimensional de temperatura bem como a taxa
de calor transmitida ao ar por unidade de comprimento da coluna. (problema apresentado por
(Incropera & DeWitt, 1999), pg 101)
Solucao: Para a solucao deste problema sera utilizada uma malha relativamente grosseira
com 16 nos e 8 elementos, mostrada a seguir:
Top. Esp. Fluido-Temica 85
1D E
hN i = (1 )(1 ) (1 + )(1 ) (1 + )(1 + ) (1 )(1 + )
4
N 1D E
= 1 + 1 1 + 1
4
N 1D E
= 1 + 1 1 + 1
4
" #
1 1 + 1 1 + 1
[B ] =
4 1 + 1 1 + 1
Quanto ao Jacobiano, ele pode ser representado a partir da matriz [B], na forma:
x1 y1
x2 y2 1
[J] = [B ]
x y e [Q] = [J]
3 3
x4 y4
Top. Esp. Fluido-Temica 87
O procedimento descrito ate aqui e generico e e identico para qualquer problema de conducao
simples. A partir de agora o procedimento passa a representar nao so as caractersticas do
problema, como tambem as caractersticas de malha e discretizacao representados pelo numero
de nos e tipo e numero de elementos.
Para o problema considerado, e necessario montar uma tabela com o numero de nos, que
pode ser dada por:
No x y
1 0 0
2 0,25 0
3 0,5 0
4 0 0,25
5 0,25 0,25
6 0,5 0,25
7 0 0,5
8 0,25 0,5
9 0,5 0,5
10 0 0,75
11 0,25 0,75
12 0,5 0,75
13 0 1
14 0,25 1
15 0,5 1
E tambem e necessario montar uma tabela que represente como estes nos estao associados
para formar os elementos, e a chamada tabela de conectividade:
elem. 1 2 3 4
1 1 2 5 4
2 2 3 6 5
3 4 5 8 7
4 5 6 9 8
5 7 8 11 10
6 8 9 12 11
7 10 11 14 13
8 11 12 15 14
Top. Esp. Fluido-Temica 88
Feita a conectividade e possvel notar que todos os elementos sao iguais e a solucao de um
sera identica a todos os demais. Assim, tomando o elemento 1 tem-se:
Z 1Z 1 np np
T T
X X
[B ] [Q] [Q] [B ] det[J]dd{T } = i j [B ]T [Q]T [Q] [B ] det[J] {T }
1 1 i=1 j=1
"
1
1
#
1 1 + 3
3 1 3
3 1 + 31 3 1 13 3
[B ] = 1
4 1 + 3
3 1 13 3 1 + 31 3 1 13 3
" #
0. 105 66 0. 105 66 0. 394 35 0. 394 35
=
0. 105 66 0. 394 35 0. 394 35 0. 105 66
e o Jacobiano para este elemento:
x1 y1 0 0
" #
x2 y2 0. 105 66 0. 105 66 0. 394 35 0. 394 35 0.25 0
[J] = [B ]
x y = 0. 105 66 0. 394 35 0. 394 35 0. 105 66
0.25 0.25
3 3
x4 y4 0 0.25
" #
0. 125 0 8.0 0
= sendo o valor do det [J] = 1. 562 5 102 e o [J]1 = Q =
0 0. 125 0 8.0
e assim
0. 105 66 0. 105 66
" #
0. 105 66 0. 394 35 8.0 0
[B ]T [Q]T [Q] [B ] =
0. 394 35
0. 394 35 0 8.0
0. 394 35 0. 105 66
" #" #
8.0 0 0. 105 66 0. 105 66 0. 394 35 0. 394 35
0 8.0 0. 105 66 0. 394 35 0. 394 35 0. 105 66
1. 429 1. 952 2 5. 333 4 1. 952 2
1. 952 2 10. 667 7. 286 1 5. 333 4
= 5. 333 4 7. 286 1 19. 906 7. 286 1
1. 952 2 5. 333 4 7. 286 1 10. 667
Top. Esp. Fluido-Temica 89
Que se usada toda a expressao para o primeiro ponto de integracao resulta em:
sendo
1. 429 1. 952 2 5. 333 4 1. 952 2
1. 952 2 10. 667 7. 286 1 5. 333 4 1. 562 5 102
[V1 ] = 1 1
5. 333 4 7. 286 1 19. 906 7. 286 1
1. 952 2 5. 333 4 7. 286 1 10. 667
2. 232 8 102 3. 050 3 102 8. 333 4 102 3. 050 3 102
3. 050 3 102 8. 333 4 102
0. 166 67 0. 113 85
= 8. 333 4 102
0. 113 85 0. 311 03 0. 113 85
3. 050 3 102 8. 333 4 102 0. 113 85 0. 166 67
Ponto 2: i = 1, j = 1, = 1/ 3, = 1/ 3 obtem-se det [J] = 0.015625
0. 166 67 0. 113 84 8. 333 1 102 3. 050 2 102
8. 333 1 102
0. 113 84 0. 311 02 0. 113 84
[V2 ] =
8. 333 1 102
0. 113 84 0. 166 67 3. 050 2 102
3. 050 2 102 8. 333 1 102 3. 050 2 102 2. 232 8 102
Ponto 3: i = 1, j = 1, = 1/ 3, = 1/ 3
0. 311 02 0. 113 84 8. 333 1 102 0. 113 84
2
8. 333 1 102
0. 113 84 0. 166 67 3. 050 2 10
[V3 ] =
8. 333 1 102 3. 050 2 102
2. 232 8 102 3. 050 2 102
0. 113 84 8. 333 1 102 3. 050 2 102 0. 166 67
Ponto 4: i = 1, j = 1, = 1/ 3, = 1/ 3
0. 166 67 3. 050 2 102 8. 333 1 102 0. 113 84
3. 050 2 102 2. 232 8 102 3. 050 2 102 8. 333 1 102
[V4 ] =
8. 333 1 102
3. 050 2 102 0. 166 67 0. 113 84
2
0. 113 84 8. 333 1 10 0. 113 84 0. 311 02
2. O mesmo procedimento deve ser repetido para todos os elementos. Neste caso, entretanto,
tem-se o fato conveniente de que todos os elementos se encontram na mesma disposicao e
tem as mesmas caractersticas geometricas e, portanto, esta matriz encontrada vale para
todos os elementos.
3. A proxima etapa consiste na montagem da matriz global a partir das matrizes elementares.
Neste caso utiliza-se a tabela de conectividade para converter da numeracao local para a
numeracao global, e cada linha e coluna da numeracao local passam a responder por uma
outra na numeracao global. Vejamos para como exemplo para o primeiro elemento (onde
a matriz global A ainda esta vazia):
numeracao local 1 2 3 4
numeracao global 1 2 5 4
0 + 0. 666 69 0 0. 166 68 0 0 0. 166 68 0 0. 333 33 0 0 0 0 0 0 0 0 0 0
0 0. 166 68 0 + 0. 666 69 0 0 0. 333 33 0 0. 166 68 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. 166 68 0 0. 333 33 0 0 + 0. 666 69 0 0. 166 68 0 0 0 0 0 0 0 0 0 0
0 0. 333 33 0 0. 166 68 0 0 0. 166 68 0 + 0. 666 69 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
A= 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 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 0 0 0 0 0 0 0 0
Top. Esp. Fluido-Temica 91
4. Deve-se entao incluir as condicoes de contorno que de acordo com a proposicao geral pode
ser expressa na forma da eq.() e respeitando a tabela abaixo(lembrando que l = 0.25 m):
l
No 1 No 2 l
3
l
6 2
1 2 10
1
10300
1
0. 833 33 0. 416 67 375
2 3 10
1
10300
1
0. 833 33 0. 416 67 375
6 6 4 4
4 7 10 500 10 8. 333 3 10 4. 166 7 10 6. 25 107
7 10 106 500 106 8. 333 3 104 4. 166 7 104 6. 25 107
10 13 106 500 106 8. 333 3 104 4. 166 7 104 6. 25 107
13 14 106 500 106 8. 333 3 104 4. 166 7 104 6. 25 107
14 15 106 500 106 8. 333 3 104 4. 166 7 104 6. 25 107
sendo que na linha relativa a cada condicao devem ser somados os respectivos valores.
Veja o exemplo para uma condicao i-j:
i j
l
i l
3
l
6
= 2
l
j l
6
l
3 2
2 3
0.833333 0.416667 0 0 0 0 0 0 0 0 0 0 0 0 0
6 7
6 0.416667 1.66667 0.416667 0 0 0 0 0 0 0 0 0 0 0 0 7
6 7
6
6 0 0.416667 0.833333 0 0 0 0 0 0 0 0 0 0 0 0 7
7
6 7
6 0 0 0 83333.3 0 0 41666.7 0 0 0 0 0 0 0 0 7
6 7
6
6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7
7
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 7
6 7
6 7
6
6 0 0 0 41666.7 0 0 166667. 0 0 41666.7 0 0 0 0 0 7
7
[C] = 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 7
7
6 7
6
6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7
7
0 0 0 0 0 0 41666.7 0 0 166667. 0 0 41666.7 0 0
6 7
6 7
6 7
6
6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7
7
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 7
6 7
6 7
6
6 0 0 0 0 0 0 0 0 0 41666.7 0 0 166667. 41666.7 0 7
7
0 0 0 0 0 0 0 0 0 0 0 0 41666.7 166667. 41666.7
6 7
4 5
0 0 0 0 0 0 0 0 0 0 0 0 0 41666.7 83333.3
375
750
375
7
6.25 10
0
0
8
1.25 10
{Bc } = 0
0
8
1.25 10
0
0
8
1.25 10
8
1.25 10
6.25 107
E a matriz final:
[M ] = [A] + [C]
2 3
1.5 0.25 0 16 31 0 0 0 0 0 0 0 0 0 0
13 31 13
6 7
6 0.25 3. 0.25 0 0 0 0 0 0 0 0 0 7
6 7
6 0
6 0.25 1.5 0 13 16 0 0 0 0 0 0 0 0 0 7
7
6 16 13 31 13
6 7
0 83334.7 0 41666.5 0 0 0 0 0 0 0 7
6 7
6 1 13 31 31 8
31 31 13 31 0 0 0 0 0 0 7
6 3 3 7
6 0 13 61 0 31 4
0 13 61 0 0 0 0 0 0
6 7
3
7
6 7
6 0
6 0 0 41666.5 13 0 166668. 13 0 41666.5 31 0 0 0 0 7
7
=6 0 0 0 13 31 13 31 8
31 13 31 13 0 0 0
6 7
3
7
13 16 13 4
13 16
6 7
6 0 0 0 0 0 0 0 0 0 7
6 3 7
6 0 0 0 0 0 0 41666.5 13 0 166668. 31 0 41666.5 13 0
6 7
7
13 13 31 13 8
13 31 13 31
6 7
6 0 0 0 0 0 0 7
6 3 7
6 0 0 0 0 0 0 0 13 61 0 31 4
0 13 61
6 7
3 7
13
6 7
6 0 0 0 0 0 0 0 0 0 41666.5 0 166667. 41666.5 0 7
6 7
4 0 0 0 0 0 0 0 0 0 13 31 13 41666.5 166668. 41666.5
6 7
5
0 0 0 0 0 0 0 0 0 0 31 16 0 41666.5 83334.
Top. Esp. Fluido-Temica 93
Num. Solucao T2 T3
1 Diferencas finitas ((Incropera & DeWitt, 1999)) 357,0 339,1
2 Elementos finitos (15 pontos) 340,9 331,0
3 Elementos finitos (91 pontos) 346,8 336,5
4 Elementos finitos (231 pontos) 346,8 336,7
5 Idem a 2, mas utilizando T1 = 500 330,2 338,4
A matriz de carga {B}, nao sofre alteracoes neste caso ja que ela e alterada apenas pelas
condicoes de contorno (sendo nula para a matriz elementar). A solucao do sistema fica
sendo:
Nao existe solucao analtica para este problema e nao existe forma de determinar o valor
exato da temperatura para estes pontos, no entanto o refinamento da malha tende a fornecer
solucoes mais proximas da solucao real. Sao mostradas na tabela (6.5) uma serie de solucoes
obtidas para este problema.
CAPITULO 7
O metodo de diferencas finitas foi, durante muito tempo, o unico metodo numerico
utilizado para problemas fluido-termicos. Embora recentemente este venha perdendo espaco
para outros metodos ainda e muito utilizado nesta area.
Como se tratam de series infinitas, pode-se fazer a aproximacao com a ordem do erro que se
desejar. Grande numero de trabalhos envolvendo a primeira derivada foram resolvidos atraves
94
Top. Esp. Fluido-Temica 95
de esquemas de primeira ordem (O(x)2 ), mas atualmente sao muito utilizados os esquemas
de segunda ordem1 . A obtencao das expressoes discretas e facil a partir dai.
No caso das aproximacoes acima, se utilizarmos ate o termo de primeira ordem somente,
cada uma pode resultar em aproximacoes para a primeira derivada. No caso da equacao (7.1):
T Ti+1 Ti
= (7.3)
x i x
que e conhecida como a derivada avancada. Da mesma forma utilizando-se da expressao (7.2)
pode-se chegar numa outra expressao, denominada por aproximacao recuada:
T Ti Ti1
= (7.4)
x x
i
Estas duas expressoes sao aproximacoes de primeira ordem e portanto, em condicoes nor-
mais, apresentam piores resultados que as expressoes de segunda ordem, as mais utilizadas. As
expressoes de segunda ordem sao as mais utilizadas, principalmente em problemas lineares, por
fornecerem melhores resultados. A expressao para a primeira derivada considerando os termos
de ate segunda ordem pode ser obtida trabalhando-se com as expressoes, basicamente fazendo
a subtracao da equacao (7.2) da (7.1). Desta forma obtem-se:
T
Ti+1 Ti1 = 2 x
x i
que rearranjada resulta em:
T Ti+1 Ti1
= (7.5)
x i 2 x
Como se esta trabalhando com os termos de ate segunda ordem pode-se obter tambem uma
expressao para a segunda derivada. Isto e possvel fazendo a soma das equacoes (7.1) e (7.2),
donde obtem-se:
2 T (x)2
Ti+1 + Ti1 = 2 Ti + 2
x2 i 2!
que rearranjada na forma desejada resulta em:
2 T
Ti+1 2 Ti + Ti1
2
= (7.6)
x
i (x)2
Como pode ser visto este procedimento e extremamente generico e pode ser utilizado em
esquemas de ordem superiores sem maiores problemas, dependendo apenas da utilizacao de um
maior numero de pontos. Repare que para chegar nas expressoes de primeira ordem, apenas uma
das expansoes em Serie de Taylor precisava ser conhecida, a partir das expressoes de segunda
ordem ja sao necessarias duas equacoes para resolver o problema (tanto as aproximacoes de
Ti+1 como Ti1 ). Este mesmo raciocnio continua valendo para expressoes de ordem superior.
1
esquemas de ordem superiores tambem tem sido motivos de estudos recentemente.
Top. Esp. Fluido-Temica 96
Exemplo: A partir de uma malha irregular como a mostrada a seguir obtenha as expressoes
de segunda ordem para a primeira e segunda derivadas.
x2 x1
e e e
Ti1 Ti Ti+1
Solucao: Expandindo cada um dos pontos por serie de Taylor, a partir do ponto i:
2 T (x1 )2
T
Ti+1 = Ti + x1 + + O(x)3
x i x2 i 2!
2 T (x2 )2
T
Ti1 = Ti x2 + + O(x)3
x i x2 i 2!
A partir desta expansao e possvel obter a expressao para a primeira derivada fazendo-se a
soma da primeira equacao multiplicada por (x2 )2 e da segunda multiplicada por (x1 )2 :
2 T (x1 x2 )2
2 2 T 2
Ti+1 (x2 ) = Ti (x2 ) + x1 (x2 ) +
x i x2 i 2
T (x2 x1 )2
2
2 2 T 2
Ti1 (x1 ) = Ti (x1 ) + x2 (x1 )
x i x2 i 2
T
Ti+1 (x2 )2 Ti1 (x1 )2 = Ti (x22 x21 ) + (x1 x22 + x2 x21 )
x i
Da mesma forma pode se obter a expressao para a segunda derivada, mas agora pena
multiplicando a expansao em Serie de Taylor de Ti+1 por x2 e a de Ti1 por x1 . Assim:
2 T x21 x2
T
Ti+1 x2 = Ti x2 + x1 x2 +
x i x2 i 2
T x1 x22
2
T
Ti1 x1 = Ti x1 x 2 x 1 +
x i x2 i 2
2
T x1 x2 (x2 + x1 )
Ti+1 x2 + Ti1 x1 = Ti (x1 + x2 ) +
x2 i 2
Repare que estas duas expressoes obtidas se reduzem as expressoes (7.5) e (7.6) respectiva-
mente quando x1 = x2 = x.
1. Discretizacao do domnio, que implica na escolha dos pontos onde serao obtidos valores
para a solucao.
2. Substituicao das derivadas por sua aproximacao calculada a partir de uma serie de Taylor
para um ponto generico i. A aproximacao central de segunda ordem para uma derivada
de primeira ordem e dada pela equacao (7.5), por exemplo. Outras aproximacoes ja foram
mostradas.
3. Transformacao das equacoes diferenciais em sistema de equacoes baseados nos valores dos
pontos discretos. Para isto e necessario a utilizacao da equacao generica para o ponto i,
obtida no passo anterior para cada um dos pontos discretos.
2T 2T
+ =0
x2 y 2
Solucao: Utilizando as aproximacoes centrais para a segunda derivada em cada uma das
direcoes, equacao (7.6) tem-se que: