Escolar Documentos
Profissional Documentos
Cultura Documentos
Relatrio
2 Semestre 2012/2013
Elaborado por:
Pedro Couto, n 63649
Pedro Gomes, n 76634
ndice
1 - Introduo e objectivos .................................................................................................................... 2
2 Soluo analtica ............................................................................................................................. 2
3 Programa Teach-C ......................................................................................................................... 3
4 Mtodo dos volumes finitos ............................................................................................................ 3
5 Anlise e discusso de resultados ................................................................................................. 4
5.1 - Refinamento de malha Nmero de ns .................................................................................. 5
5.2 - Refinamento de malha Incremento de tempo ......................................................................... 7
5.3 Influncia da soma dos resduos .............................................................................................. 8
5.4 Campo de temperaturas .............................................................................................................. 9
6 Concluses ................................................................................................................................... 10
7 Bibliografia .................................................................................................................................... 10
Anexos:
Anexo I - Clculo dos coeficientes para a soluo analtica.
Anexo II - Clculo da evoluo da temperatura no centro de barra sujeita a conveco na fronteira.
Anexo III - Evoluo do campo de temperaturas.
Anexo IV - Funo principal do programa Teach C com as alteraes efectuadas.
Anexo V - Excertos das alteraes efectuadas funo PROMOD.
1 - Introduo e objectivos
Neste trabalho apresentam-se para diversas hipteses a evoluo no tempo da temperatura no
centro de uma barra de seco quadrangular com conveco na fronteira. Para as diversas hipteses
so obtidos resultados atravs do programa TEACH-C e comparados com os obtidos da soluo
analtica de forma a estimar o erro. Determinou-se ainda a influncia de parmetros como a dimenso
da malha, passo no tempo e soma dos resduos no erro e convergncia do mtodo.
2 Soluo analtica
O problema proposto um caso de conduo trmica bidimensional em regime transiente que
para propriedades constantes descrito pela equao (1).
Do mtodo da separao de variveis resulta que a soluo de (1) dada pela interseco da
soluo de dois casos unidimensionais de conduo transiente numa placa plana, ver figura 1.
4
,
cos
tan
6
7
, , = , ,
No anexo I encontra-se uma sub-rotina para determinar as razes da equao (7) (os
resultados obtidos com a mesma foram validados utilizando valores tabelados [1]), no anexo II uma
sub-rotina para determinar a evoluo da temperatura no centro da barra e no anexo III uma
subrotina que permite obter o campo de temperaturas para vrios instantes. So referidos alguns
pormenores computacionais nos comentrios dos cdigos.
3 Programa Teach-C
O programa Teach C, desenvolvido no Imperial College of Science Technology and Medicine,
pertence famlia de cdigos que utilizam o mtodo dos volumes de controlo (ou volumes finitos).
Neste trabalho foi utilizada a verso realizada pelo aluno Filipe Soares, do Instituto Superior
Tcnico. Esta verso verso do programa TEACH-C permite a resoluo de problemas de conduo
de calor bidimensionais com as seguintes variantes:
Temperatura imposta;
Fluxo imposto;
Conveco;
Simetria;
fluxos sejam aproximados de forma coerente, i.e. o que sai da fronteira de um volume tem de entrar
na fronteira do volume vizinho); No se assume nenhum tipo de variao da varivel dependente
dentro do volume de controlo como acontece com os elementos do mtodo dos elementos finitos.
900
(C)
80,0
h (W.m^-2.K^-1)
1000
100x100
k (W.m^-1.K^-1)
15,1
(kg.m^-3)
8055
c (J.kg^-1.K^-1)
480
directamente, por isso necessrio extrapola-la a partir dos ns mais prximos. A funo mais
simples que cumpre as condies fronteira junto ao centro um polinmio da forma:
, = + + (0,0)
10
As trs constantes deste polinmio so determinadas a partir das temperaturas nos 3 ns mais
prximos do centro (ver figura 2). Para o caso em que os volumes de controlo so quadrangulares
tm-se:
0,0 = (10 )
11
A funo principal do programa Teach C foi modificada de forma a realizar esta extrapolao e
para permitir traar a evoluo da temperatura independentemente do ficheiro de resultados, como as
alteraes foram significativas a totalidade do cdigo encontra-se no anexo IV.
22 x 22
x (m)
0,25
17 x 17
0,25
12 x 12
0,25
9x9
7x7
5x5
0,00714
0,01000
0,01667
0,25
0,25
0,25
0,00001
0,00001
0,395
0,528
0,907
1,610
2,910
7,361
0,1236
0,1653
0,2838
0,5039
0,9107
2,3034
= +
12
T (C)
1000
900
800
700
600
500
400
300
200
100
0
22 x 22
17 x 17
12 x 12
9x9
7x7
5x5
exacta
0
200
400
600
800
1000
T (C)
390
22 x 22
370
17 x 17
350
12 x 12
330
9x9
7x7
310
5x5
290
exacta
270
300
320
340
360
380
400
Tempo (s)
e = 5513x^1,907+0,06104
R^2 = 1
0,5
0,0
0,000
0,005
0,010
0,015
0,020 x(m)
17 x 17
17 x 17
17 x 17
17 x 17
17 x 17
17 x 17
0,00001
0,00001
0,00001
0,00001
0,00001
0,00001
0,25
1,00
3,50
5,00
10,0
17,5
11
23
29
50
79
0,1236
0,3327
1,0258
1,4388
2,7998
4,7956
T (C)
1000
900
800
700
600
500
400
300
200
100
0
0.25s
1s
3.5 s
5s
10 s
17.5 s
exacta
0
200
400
600
800
1000
Temperatura
(C)
400
0.25s
380
1s
360
3.5 s
340
5s
320
10 s
300
17.5 s
280
exacta
260
300
320
340
360
380
400
Tempo (s)
2,0
1,0
0,0
0,0
5,0
10,0
20,0 t (s)
15,0
17 x 17
17 x 17
17 x 17
0,1
0,0001
0,00001
h (W/m .K)
1000
1000
1000
0,25
0,25
0,25
0,528
0,165
0,165
Tal como refere o manual do programa [4] para nveis de preciso simples a alterao da soma
dos resduos no reflecte variaes significativas nas solues. Como seria de esperar quanto menor
o valor deste parmetro menor o erro mas maior o esforo computacional devido ao maior
nmero de iteraes necessrias no espao.
6 Concluses
O mtodo dos volumes finitos permite obter solues para problemas de transferncia de calor
que no podem ser resolvidos analiticamente, seja devido complexidade da geometria, das
condies fronteira, das propriedades e fontes dependerem da temperatura, etc. (ou seja problemas
reais).
Quanto maior a intensidade dos gradientes de temperatura (espaciais e temporais) e a
complexidade do problema mais refinadas tm de ser as malhas e menores os incrementos de
tempo.
A taxa de convergncia no espao quadrtica e no tempo linear quando se usa o mtodo
implcito. A soma dos resduos pode ser reduzida at nveis em que deixa de ter influncia na
soluo.
Contrariamente ao que seria esperado a complexidade computacional no inversamente
proporcional ao incremento de tempo, j que apesar do nmero de sistemas de equaes ser, o
nmero de iteraes necessrias para a sua soluo aumenta com o incremento de tempo.
7 Bibliografia
[1] Introduction to Heat Transfer, Frank P. Incropera, John Wiley & Sons, 6a Edicao;
[2] Mtodos Numricos em Problemas de Difuso, Viriato Semio, IST, 2004;
[3] Numerical Methods Heat Conduction, Pedro Coelho, IST, 2013;
[4] Manual do Utilizador Programa Teach C, Filipe Soares, 2011;
[5] An Introduction to Computational Fluid Dynamics, H.K. Versteeg and W. Malalasekera
10
11
%% Dados
% Espessuras e Temperatura Inicial
Lx=0.1;
Ly=0.1;
T0=900;
% Propriedades do Material
k=15.1;
ro=8055;
cp=480;
Dif=k/(ro*cp);
% Propriedades do Fludo
Tf=80;
hx=1000;
hy=1000;
% Intervalos de tempo e nmero de termos da srie
t=0:10:1000;
n=100;
% Parmetros Adimensionais
Bix=hx*Lx/(2*k);
Biy=hy*Ly/(2*k);
Fox=Dif*t/(Lx/2)^2;
Foy=Fox*(Lx/Ly)^2;
clear('Lx','Ly','hx','hy','k','ro','cp')
%% Clculos
% Razes e Constantes
qsix=raizes(Bix,n);
Cx=4*sin(qsix)./(2*qsix+sin(2*qsix));
qsiy=raizes(Biy,n);
Cy=4*sin(qsiy)./(2*qsiy+sin(2*qsiy));
% Temperatura adimensional em x e y no centro da barra
tetax=zeros(size(Fox));
tetay=tetax;
for j=1:n
tetax=tetax+Cx(j)*exp(-qsix(j)^2*Fox);
tetay=tetay+Cy(j)*exp(-qsiy(j)^2*Foy);
end
teta=tetax.*tetay;
% Temperatura no centro da barra
T=teta*(T0-Tf)+Tf;
plot(t,T)
clear('qsix','Cx','qsiy','Cy','tetax','tetay','j','n','T0','Tf')
13
14
MAXSTP=350;
%O output dever conter os valores de T em intervalos de
NITPRI=35;
%Factor de sub relaxao, Mximo resduo e intervalo de tempo (s)
URFT=1;
SORMAX=0.00001;
DT=1;
%Selecciona o Regime---Estacionrio->INTIME=0, Transiente->INTIME=1
INTIME=1;
if INTIME==0;
MAXSTP=1;
end
%Indica se as propriedades so constantes --- constantes->INPRO=0,
%variveis->INPRO=1
INPRO=0;
%% ------------------ Capitulo 2 - Operaes iniciais --------------------%
% Varivel para guardar as distribuies de temperatura ao longo do tempo
TDist=zeros(floor(MAXSTP/NITPRI)+1,NI-2,NJ-2);
%Calcula dimenses da malha e anula vectores/matrizes
%Chama funo INIT
[RX,DXEP,DXPW,SEW,XU,RU,RY,DYPS,DYNP,SNS,YV,RV,AN,AS,AE,AW,SU,SP,GAMH,TOLD,
T,X,Y]=INIT(INCYLX,INCYLY,NI,NJ,NIM1,NJM1,X,Y,TINIC);
TIME=0;
%Valores de fronteira
TTOP=80;
TBOT=900;
TLEFT=900;
TRIGHT=80;
for I=2:NIM1
T(I,1)=TBOT;
T(I,NJ)=TTOP;
end
for J=2:NJM1
T(1,J)=TLEFT;
T(NI,J)=TRIGHT;
end
%Inicializa varivel dependente
%Inicializa campo de propriedades do material
[GAMH]=PROPS(NI,NJ,TCON,GAMH);
%Clculo do factor de normalizao do resduo
AK=BK;
SNORM=AK*(TTOP-TBOT)*W/H;
SNORM=abs(SNORM);
15
16
fprintf(fid,'%10d',DT);
fprintf(fid,'%9d',NSTEP);
fprintf(fid,'\r\n');
end
%Testa resduo do processo iterativo
if SOURCE<SORMAX
break
elseif NITER>=MAXIT
error('myApp:argChk','No Convergiu segundo o critrio
especificado \n')
end
%Termina ciclo no espao
end
%Imprime a soluo convergida no intervalo especificado por NITPRI
if mod(NSTEP,NITPRI)==0
PRINT(1,1,NI,NJ,X,Y,T,fid)
TDist(NSTEP/NITPRI+1,:,:)=T(2:(NI-1),2:(NJ-1));
end
%Termina ciclo no tempo
end
fclose(fid);
time=(0:floor(MAXSTP/NITPRI))*DT*NITPRI;
X=X(2:(NI-1));
Y=Y(2:(NJ-1));
T=TDist;
clearvars -except T X Y time
%% Reorganizao das temperaturas
[I M N]=size(T);
T2=zeros(I,N,M);
for i=1:I
T2(i,:,:)=transpose(squeeze(T(i,:,:)));
end
T=T2;
clear T2 i M N
%% Animao da evoluo do campo de temperaturas
[X,Y]=meshgrid(X,Y);
for i=1:I
contourf(X,Y,squeeze(T(i,:,:)),20)
caxis([80 900])
pause(0.25)
end
clear i
%% Extrapolao da temperatura no centro
tc=zeros(1,I);
for i=1:I
tc(i)=0.125*(10*T(i,1,1)-T(i,1,2)-T(i,2,1));
end
clear i
plot(time,tc)
17
18