Professional Documents
Culture Documents
Olga Pinheiro
00000000
4 de julho de 2014
Sumrio
1 Problema Proposto
3.1
Consistncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2
Acurcia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3
Estabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4
Convergncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1
Cdigo Computacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2
Caso 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
5.3
Caso 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
6 Soluo Analtica
18
20
1 Problema Proposto
O problema proposto baseado na Equao da Difuso de Calor, em sua forma unidimensional, transiente
e sem gerao de calor, discretizada na formulao trapezoidal.
k
Na equao diferencial (Equao 1.1), = c
a difusividade trmica, T a funo distribuio de
temperatura, o ndice t representa a derivada temporal e o ndice xx representa a segunda derivada espacial.
Alm disso, k a condutividade trmica, a densidade e c o calor especco do material.
(1.1)
Tt = Txx
Na formulao trapezoidal (Equao 1.2), os ndices subscritos representam a posio espacial do n com
relao ao n analisado, i.e, o n i o n analisado, o n i 1 est sua esquerda e o n i + 1 aquele
sua direita, ambos a uma distncia x. J o ndice sobrescrito indica o momento em que o n est sendo
analisado, sendo o tempo t = n t, e t o intervalo de tempo entre o ponto em n e n + 1. A Figura 1
ilustra a nomenclatura utilizada.
O fator , que deve ser 0 1, pode ser escolhido arbitrariamente de acordo com o mtodo desejado.
Se = 0, a equao discretizada representa o mtodo explcito no tempo. J para = 1, o mtodo dito
totalmente implcito. O mtodo de Crank-Nicholson obtido com = 1/2.
c
Tin+1 Tin
t
k
n+1
n+1
Ti1
2Tin+1 + Ti+1
x2
k(1 )
n
n
Ti1
2Tin + Ti+1
x2
=0
(1.2)
Tt = Txx (1 + )
= Txx + (1 ) Txx
(2.2)
Expandindo a temperatura no tempo t + t (que ser chamada Tin+1 ) em torno de um ponto em t (i,n),
temos a Equao 2.3.
t2
T(x,t+t) = Tin+1 = Tin + t (Tt )ni +
(Ttt )ni +
(2.3)
2!
Truncando a srie no segundo termo e reorganizando, podemos aproximar a derivada temporal da temperatura como mostrado na Equao 2.4.
T n+1 Tin
(Tt )ni
= i
t
(2.4)
A segunda derivada espacial tambm pode ser aproximada a partir da expanso em srie de Taylor. Para
obter a formulao trapezoidal, o termo da Equao 2.2 que est multiplicado por ser aproximado a partir
da expanso em torno do ponto (i,n + 1), enquanto o termo multiplicado por (1 ) ser aproximado em
torno do ponto (i,n).
A expanso dos pontos (i + 1, n) (a uma distncia x do ponto central, e (i 1, n) (cuja distncia ao
ponto i x), dada pelas Equaes 2.5 e 2.6, respectivamente. Somando, obtm-se a Equao 2.7.
x2
(Txx )ni +
2!
x2
= Tin x (Tin )x +
(Txx )ni
2!
= 2 Tin + x2 (Txx )ni +
n
Ti+1
= Tin + x (Tin )x +
n
Ti1
n
Ti+1
n
Ti1
x3
(Txxx )ni +
3!
x3
(Txxx )ni +
3!
(2.5)
(2.6)
(2.7)
Truncando o lado direito da Equao 2.7 no segundo termo e reorganizando, obtm-se uma aproximao
para a segunda derivada espacial da temperatura (Equao 2.8). Um procedimento anlogo pode ser realizado
para expanso da temperatura nos pontos (i 1,n + 1) e (i + 1,n + 1), obtendo a Equao 2.9.
n
n
Ti1
2Tin + Ti+1
(Txx )ni
=
2
x
n+1
n+1
T
2Tin+1 + Ti+1
i1
(Txx )n+1
=
i
x2
(2.8)
(2.9)
Substituindo 2.4, 2.8 e 2.9 em 2.2 e reorganizando, obtm-se a Equao 2.10, que a formulao trapezoidal, como se queria demonstrar.
!
n+1
n
n+1
n+1
n
Ti1
2Tin+1 + Ti+1
Ti1 2Tin + Ti+1
Ti
Tin
=0
(2.10)
(1 )
t
x2
x2
3.1 Consistncia
Para que o mtodo numrico seja consistente, necessrio provar que a equao discreta , de fato, uma
aproximao da equao diferencial. Para tanto, primeiramente, cada termo da equao na formulao
trapezoidal ser expandido em srie de Taylor em torno do ponto (i, n) (Equaes 3.1 a 3.5).
t2
t3
(Ttt )ni +
(Tttt )ni + O(t4 )
2
6
1 2
= Tin + t(Tt )ni + x(Tx )ni +
t (Ttt )ni + 2tx(Txt )ni + x2 (Txx )ni + O(t2 , x2 )
2
1 2
n
n
n
t (Ttt )ni 2tx(Txt )ni + x2 (Txx )ni + O(t2 , x2 )
= Ti + t(Tt )i x(Tx )i +
2
x2
x3
n
n
= Ti + x (Ti )x +
(Txx )ni +
(Txxx )ni + O(x4 )
2!
3!
x2
x3
= Tin x (Tin )x +
(Txx )ni
(Txxx )ni + O(x4 )
2!
3!
(3.1)
n+1
Ti+1
(3.2)
n+1
Ti1
n
Ti+1
n
Ti1
(3.3)
(3.4)
(3.5)
Somando por partes, para substituir na equao discreta da difuso de calor, obtemos as Equaes 3.6 a
3.9.
n+1
n+1
Ti+1
+ Ti1
2Tin+1 = [Tin + t(Tt )ni ] (1 + 1 2) + x(Tx )ni (1 1) + x2 (Txx )ni + O(x4 )
= x
(Txx )ni
+ O(x )
2
n
n
Ti+1
+ Ti1
2Tin = Tin (1 + 1 2) + x(Tx )ni (1 1) +
= x
(Txx )ni
(3.6)
(3.7)
x
(2 (Txx )ni ) + O(x4 )
2
(3.8)
(3.9)
+ O(x )
t
x2
n
2
t
t
= Tt +
Ttt +
Tttt + O(t3 ) [(Txx )ni ] + (1 ) [(Txx )ni )] + O(x2 )
2
6
i
t
(Ttt )ni + O(t2 , x2 )
= (Tt )ni (Txx )ni +
2
Reorganizando:
"
Tin+1 Tin
t
n+1
n+1
Ti1
2Tin+1 + Ti+1
x2
. . . [(Tt )ni
(1 )
(Txx )ni ]
n
n
2Tin + Ti+1
Ti1
x2
#
(3.10)
t
=
(Ttt )ni + O(t2 , x2 )
2
A Equao 3.10 a equao de consistncia, na qual o lado esquerdo a diferena entre a equao
discreta e a equao diferencial, enquanto o lado direito o erro de truncamento (T ). Como o erro de
truncamento limitado, ou seja, tende a zero quando t e x2 tendem a zero, pode-se conrmar que o
mtodo consistente.
3.2 Acurcia
O Erro de Truncamento dado pela Equao 3.11, e portanto de primeira ordem com relao a t e de
segunda ordem com relao a x.
T =
t
(Ttt )ni + O(t2 , x2 )
2
(3.11)
a soluo exata da equao numrica, substituindo na 3.10, o primeiro termo entre colchetes do
Se T
lado esquerdo ser nulo. Assim, tem-se:
t
(Tt )ni (Txx )ni = (Ttt )ni + O(t2 , x2 )
(3.12)
2
, (Tt )ni = (Txx )ni + O(t, x2 )
(3.13)
Derivando a Equao 3.13 com relao ao tempo:
(3.14)
(3.15)
Substituindo 3.13 em 3.15, obtm-se 3.16, de forma que o Erro de Truncamento pode ser reescrito como
na Equao 3.17
(3.16)
(3.17)
Dessa forma, a Equao Diferencial Equivalente (a equao cuja soluo a soluo exata da equao
numrica) pode ser escrita como:
t 2
(Tt )ni (Txx )ni +
(Txxxx )ni = O(t2 , x2 )
2
(3.18)
3.3 Estabilidade
A estabilidade foi analisada pelo Mtodo de Von Neumann. Em primeiro lugar, realiza-se a substituio
n+k
Ti+m
= V n+k eI(i+m)
onde I =
t I(i1)
Ii
I(i+1)
e
2e
+
e
V n+1 (1 )V n
x2
t I
e
2 + eI V n+1 + (1 )V n
2
x
t
=
(2 cos() 2) V n+1 + (1 )V n
2
x
(V n+1 V n ) =
V n+1
Vn :
2t
(cos 1)(G + 1 )
x2
2t
2t
=
G(cos 1) +
(1 )(cos 1)
x2
x2
G1=
Reorganizando e chamando F o =
t
x2 ,
tem-se:
1 + 2F o(1 )(cos 1)
1 2F o(cos 1)
G=
=
1 + 2F o(1 )(2sen2 ( 2 ))
1 2F o(2sen2 ( 2 ))
1 4F o(1 )sen2 ( 2 )
1 + 4F o(sen2 ( 2 )
=1
4F o sen2 ( 2 )
1 + 4F o(sen2 ( 2 ))
7
(3.19)
Segundo o mtodo de Von Neumann, se |G| 1, o critrio de estabilidade ser atendido. Portanto,
devemos garantir que 1 G 1.
1 G 1
4F o sen2 ( 2 )
1
1 1
1 + 4F o(sen2 ( 2 ))
4F o sen2 ( 2 )
0
1 + 4F o(sen2 ( 2 ))
Como 0 sen2 ( 2 ) 1 , o termo de interesse incondicionalmente menor que zero, sendo suciente
vericar se maior que 2.
2
2
4F o sen2 ( 2 )
1 + 4F o(sen2 ( 2 ))
4F o sen2 ( 2 )
1 + 4F o(sen2 ( 2 ))
(3.20)
(3.21)
(3.22)
(3.23)
F o sen (/2)(4 8) 2
F o(1 2)
1
2 sen2 ( 2 )
(3.24)
Como
sen2 (/2) 1
1
1
2 sen2 ( 2 )
2
1
t
Garantindo que F o(1 2) , garantimos que 3.24 seja satisfeita. Lembrando que F o = x
2, a
2
Equao 3.25 estabelece um critrio de estabilidade para a formulao trapezoidal, dependente de , da
escolha da malha e do passo no tempo.
t
1
(1 2 )
(3.25)
x2
2
Analisando a Equao 3.25, observa-se que:
Se 0 < <
1
Finalmente, se < 1 (incluindo a formulao totalmente implcita), (1 2) < 0, e novamente a
2
inequao satisfeita para qualquer valor de F o. Formulao incondicionalmente estvel.
8
Ou seja, se a formulao utilizada for mais prxima da formulao explcita ( mais prximo de zero
do que de um), o mtodo ser condicionalmente estvel. J se for mais prxima da formulao totalmente
implcita, o mtodo ser incondicionalmente estvel, incluindo quando = 1/2.
3.4 Convergncia
O Teorema da Equivalncia de Lax pode ser anunciado como:
Para um problema linear de valor inicial bem posto e uma discretizao consistente, estabilidade
condio necessria e suciente para a convergncia
O problema matemtico matemtico em questo bem posto, ou seja:
Existe soluo
A soluo nica
A soluo varia continuamente com as Condies de Contorno e Iniciais
Tendo provado que a discretizao consistente, pode-se garantir a convergncia do mtodo desde que o
problema atenda ao critrio de estabilidade (Equao 3.25).
% k = 14;
%W/m.K, condutividade da barra
% rho = 1200;
%kg/m^3, densidade da parede
% c = 1500;
%J/(kg.K), calor especfico
% alpha = k/rho*c;
%m^2/s, difusividade trmica
alpha = 1.5*10^(-6);
%m^2/s, difusividade trmica
L = 0.24;
%m, comprimento da barra
fprintf('%s\n', 'Como ser a discretizao? Defina um valor tal que 0<=theta<=1;');
teta = input('theta = ');
%valor entre 0 e 1
fprintf('%s\n', 'Em quantos ns a barra ser dividida?');
m = input('m = ');
%nmero de ns
dx = L/(m+1);
%delta x - comprimento de cada volume de controle
if teta~=1
CE = dx^2/(2*alpha*(1-teta));
%Critrio de estabilidade
fprintf('%s %2.2f\n', 'Escolha o passo no tempo (dt) de forma que dt <=', CE);
dt = input('dt = ');
%
while dt>CE
%
fprintf('%s %2.2f\n', 'ERRO! Escolha o passo no tempo (dt) de forma que dt <=', CE);
%
dt = input('dt = ');
%
end
else
fprintf('%s\n', 'Escolha o passo no tempo (dt)');
dt = input('dt = ');
end
fprintf('%s\n', 'Qual o tempo mximo em segundos? Estado estacionrio: digite "0".');
tmaximo = input('tmaximo = ');
%Tempo mximo
n = fix(tmaximo/dt);
%Nmero de passos no tempo
tfinal = dt*n;
G = alpha*dt/(dx^2);
%No de Fourier
T = zeros(m,2);
NewT = zeros(m,1);
%Condio inicial
fprintf('%s\n', 'Qual a funo que descreve a condio inicial?');
Tinicial = input('Tinicial = f(x) = ', 's');
for i=1:m
x = i*dx;
T(i,1) = eval(Tinicial);
%Temperatura inicial em cada n
T(i,2) = T(i,1);
end
%Condies de Contorno
fprintf('%s\n', 'Qual a temperatura na parede esquerda?');
T0 = input('T(x=0) = ');
10
E = abs(NewT - T(:,2));
Emax = max(E);
iter = iter+1;
T(:,2) = NewT;
end
dT = T(:,2) - T(:,1);
absdT = abs(dT);
t(j) = j*dt;
Ttempo(:,2) = T(:,2);
end
if t(j) == 1000*dt
Ttempo(:,3) = T(:,2);
end
if t(j) == 10000*dt
Ttempo(:,4) = T(:,2);
end
end
Tgraf(1,j) = T(1,2);
Tgraf(2,j) = T(fix(m/2),2);
Tgraf(3,j) = T(m,2);
fprintf('%s\n','-----------------------------------------------------------------------');
fprintf('%s\n','
RESULTADOS
');
fprintf('%s\n','-----------------------------------------------------------------------');
12
%Posio na barra
x = zeros(m+2,1);
for i=1:(m+2)
x(i) = (i-1)*dx;
end
X = zeros(M+2,1);
for i=1:(M+2)
X(i) = (i-1)*Dx;
end
Tj = zeros(m+2,1);
Tj(1,1) = T0;
Tj(2:m+1,1)=T(:,2);
Tj(m+2,1)=TL;
% %Grficos
figure(1)
plot(x,Tj,'*--')%, X, Tan(:,1))
title('Distribuio Final de Temperaturas na barra');
xlabel('Posio na Barra (m)');
ylabel('Temperatura (oC)');
legend('Soluo Numrica')%,'Soluo Analtica');
figure(2)
plot(x,[T0;Ttempo(:,1);T0],x,[T0;Ttempo(:,2);T0],x,Tj)
title('Distribuio de Temperaturas na barra para diferentes tempos');
xlabel('Posio na Barra (m)');
ylabel('Temperatura (oC)');
legend('dt','100dt','tfinal');
figure(3)
plot(t,Tgraf(1,:),t,Tgraf(2,:),t,Tgraf(3,:),'--')
title('Evoluo da temperatura com o tempo em alguns pontos');
xlabel('Instante de tempo (s)');
ylabel('Temperatura (oC)');
legend('x1 = 0 +dx','x2 = L/2', 'x3 = L-dx');
13
5.2 Caso 1
No caso 1, foi utilizada uma barra de L = 0,24m de comprimento, com difusividade trmica = 1,5 106 .
As condies de contorno e inicial utilizadas foram:
T(x=0,t) = 25o C
T(x=L,t) = 25o C
T(x,0) = 25 + 5sen( x
L )
Foram realizadas simulaes para = 0, = 1/2 e = 1, mantendo x = 1mm (23 ns) e Deltat = 30s.
Mtodo Explcito:
=0
Obteve-se as Figuras 2(a) a 4. Na Figura 2(a) pode-se comparar a soluo numrica com a soluo analtica
para um tempo especco arbitrrio, observando que, de fato, a soluo numrica converge para a soluo
analtica do problema proposto. A Figura 3 mostra o comportamento da soluo numrica da distribuio de
temperaturas na barra em alguns instantes de tempo selecionados, cando claro que a temperatura apresenta
um comportamento senoidal em funo da posio a qualquer instante, o que est de acordo com a soluo
analtica. J a Figura 4 apresenta o decaimento exponencial da soluo numrica em pontos selecionados da
barra, tambm de maneira coerente com a soluo analtica.
(a)
(b)
=0
= 0.5
Figura 2: Comparao ente a soluo numrica e a soluo analtica no Caso 1, para o instante de tempo
t=2000s.
Ao aumentar o t de maneira que o critrio de estabilidade no obedecido, obtm-se o resultado da
Figura 5, demonstrando a importncia da anlise de estabilidade.
15
(a)
(b)
t = 200s
t = 1000s
Figura 6: O mtodo continua estvel, mesmo aumentando bastante o t, porm a preciso diminui.
=1
Neste caso, o mtodo incondicionalmente estvel, portanto possvel escolher qualquer relao entre os
valores de x2 e t sem incorrer em instabilidade numrica. A preciso da mesma ordem que a do mtodo
explcito, porm um pouco menor que a do mtodo de Crank-Nicolson.
16
5.3 Caso 2
No caso 2, utilizou-se a mesma barra do caso 1, porm com as seguintes condies de contorno e inicial:
T(x=0,t) = 0o C
T(x=L,t) = 0o C
T(x,0) = 25o C
Foram realizadas simulaes para = 0, = 1/2 e = 1, mantendo x = 1mm (23 ns) e t = 30s
(exceto quando a estabilidade estava sendo testada).
Mesmo quando estvel, a soluo numrica no convergiu para a soluo analtica para nenhum valor de
. Isso aconteceu porque existe uma descontinuidade nas extremidades da barra. Da mesma forma que no
Caso 1, quando = 0 existe um limite de estabilidade (Figura 9).
(a)
(b)
=0
(c)
= 0.5
=1
17
6 Soluo Analtica
Relembrando a equao diferencial estudada:
Tt = Txx
A soluo analtica ser desenvolvida a partir do mtodo de separao de variveis para soluo de EDPs,
considerando as seguintes condies de contorno e inicial:
T(x=0,t) = T0
(6.1)
T(x=L,t) = T0
T(x,0)
= f(x)
Ser denida uma nova funo v(x,t), tal que
v(x,t)
vt
vxx
T(x,t) T0
= Tt
= Txx
(6.2)
vt
v
(0,t)
v(L,t)
v(x,0)
= vxx
= 0;
= 0;
= f(x) T0 = F(x) ;
(6.3)
Utilizando agora o mtodo da separao de variveis para resolver o problema 6.3, supe-se que a funo
18
v(x,t) pode ser escrita como o produto de uma funo apenas de x por uma funo apenas de t.
d(t)
vt
= (x)
;
dt
v = (t) (x)
2
d
d2
= 2
dt
dx
1 d
1 d2
=
= 2
=
dt
dx2
2
d + = 0
dx2
d + 2 = 0
dt
(6.4)
(0)
ou
(t)
=0
=0
(soluo trivial)
C1 = 0
(L) = C2 sen(L) = 0
n =
n
L
=0
(L)
ou
(t) = 0
(soluo trivial)
(soluo trivial)
C3 = 0
ou
L = 0
n = 1, 2, 3...
Sendo assim, as solues particulares so obtidas para cada valor individual de n, enquanto a soluo
geral dada pela combinao linear das solues particulares (Equao 6.5).
v(x,t) =
An en t sen(n x)
n=1
19
(6.5)
v(x,0) = F(x)
X
=
An e0 sen(n x)
=
n=1
An sen(n x) = F(x)
n=1
Z
X
ZL
An sen(n x)sen(m x)dx =
n=1 0
ZL
sen
nx
L
sen
mx
L
(
dx =
1
2,
0,
se n = m
se n =
6 m
An
1
=
2
ZL
F(x) sen(n x)dx
0
ZL
An = 2
Por m, podemos substituir para encontrar a soluo analtica para v(x,t) (Equao 6.6) e para T(x,t) ,
que o nosso real interesse (Equao 6.7).
ZL
nx
nx
X
n 2
2 F(x) sen
dx e( L ) t sen
(6.6)
v(x,t) =
L
L
n=1
0
ZL
nx
nx
X
n 2
2 (f(x) T0 )sen
T(x,t) = T0 +
dx e( L ) t sen
(6.7)
L
L
n=1
0