Relatório - Parte B

19
Instituto Superior Técnico Curso: Mestrado Integrado em Engenharia Mecânica Ramo: Energia UC: Complementos de Transmissão de Calor Relatório Trabalho Computacional nº 12 – Parte B 2º Semestre 2012/2013 Elaborado por: Pedro Couto, nº 63649 Pedro Gomes, nº 76634 Lisboa, 23 de Maio de 2013

description

calculo do perfil de temperatura de um corpo

Transcript of Relatório - Parte B

  • Instituto Superior Tcnico

    Curso: Mestrado Integrado em Engenharia Mecnica

    Ramo: Energia

    UC: Complementos de Transmisso de Calor

    Relatrio

    Trabalho Computacional n 12 Parte B

    2 Semestre 2012/2013

    Elaborado por:

    Pedro Couto, n 63649

    Pedro Gomes, n 76634

    Lisboa, 23 de Maio de 2013

  • 1

    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.

  • 2

    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).

    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.

    Figura 1 Interseco dos 2 casos unidimensionais.

    Definindo as variveis temperatura adimensional, , distncia adimensional, X e o nmero de

    Fourier, Fo, a soluo do caso unidimensional (2) toma a forma de uma srie (6) onde o parmetro

    funo do nmero de Biot, Bi, e obtido resolvendo a equao (7).

    2

    3

    4

    5

    ,

    cos 6

    tan 7

    8

  • 3

    Para o caso bidimensional tm-se:

    , , = , , 9

    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:

    Coordenadas cartesianas ou coordenadas cilndricas (axi simtrico);

    Regime estacionrio ou transiente;

    Condutividade trmica uniforme ou varivel (com a temperatura ou com o espao);

    Quatro tipos de condies de fronteira:

    Temperatura imposta;

    Fluxo imposto;

    Conveco;

    Simetria;

    4 Mtodo dos volumes finitos

    No mtodo dos volumes finitos um domnio computacional dividido em vrios volumes de

    controlo dando origem a uma malha que pode ser estruturada (cartesiana, cilndrica, etc.) ou no

    estruturada.

    O valor das variveis dependentes calculado para ns que normalmente se situam no centro

    do volume de controlo.

    Neste mtodo uma equao diferencial integrada em cada volume de controlo e num

    intervalo de tempo (no caso de problemas no estacionrios) aplicado o teorema da divergncia de

    Gauss e a equao resultante discretizada de forma a transform-la numa equao algbrica que

    traduz a aplicao de um princpio de conservao. O sistema de equaes matricial resultante da

    aplicao deste procedimento a todos os volumes de controlo pode ento ser resolvido para as

    variveis dependentes.

    Em comparao com outros mtodos numricos destacam-se as seguintes caractersticas: ao

    contrrio do mtodo das diferenas finitas garante-se conservao ao nvel global (desde que os

  • 4

    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.

    5 Anlise e discusso de resultados

    Foram realizados diversos clculos considerando as propriedades do ao inoxidvel AISI 302,

    (utilizado para fins estruturais, equipamentos para indstria aeronutica, alimentcia, ferroviria,

    rodoviria, etc.) e as condies mostradas na tabela 1.

    Tabela 1 Valores considerados nos clculos.

    (C) 900

    (C) 80,0

    h (W.m^-2.K^-1) 1000

    Seco da barra (mm) 100x100

    k (W.m^-1.K^-1) 15,1

    (kg.m^-3) 8055

    c (J.kg^-1.K^-1) 480

    De forma a reduzir a complexidade computacional do problema tirou-se partido da simetria

    existente em relao aos eixos x e y, a figura 2 mostra as condies fronteira consideras e no anexo

    V podem consultar-se as alteraes efectuadas funo PROMOD do programa Teach C.

    Figura 2 Condies fronteira utilizadas.

    Como no caso do Teach C os ns se situam no centro dos volumes de controlo e as fronteiras

    dos volumes extremos do domnio coincidem com as fronteiras do corpo, a forma como o problema

    foi modelado (simetria) no permite que a temperatura no centro da barra seja calculada

  • 5

    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.

    5.1 - Refinamento de malha Nmero de ns

    Para analisar as caractersticas de convergncia do mtodo no espao fixou-se o incremento

    de tempo em 0,25s e reduziu-se progressivamente a dimenso dos volumes mantendo-os

    quadrangulares. O erro calculado refere-se ao instante t=350s, devido a neste instante a mais rpida

    variao de temperatura dar origem a maiores diferenas entre a soluo numrica e a soluo

    analtica (T=319,56C, determinada utilizando 100 termos na srie).

    Na tabela 2 e figuras 3 e 4 so apresentados os resultados, note-se que o nmero de ns

    apresentado o total sendo que em cada direco dois no esto contidos no domnio

    computacional.

    Tabela 2 Influncia do n de ns.

    Nmero de ns 22 x 22 17 x 17 12 x 12 9 x 9 7 x 7 5 x 5

    x (m) 0,00250 0,00333 0,00500 0,00714 0,01000 0,01667

    Intervalo de tempo (s) 0,25 0,25 0,25 0,25 0,25 0,25

    Soma dos residuos mxima 0,00001 0,00001 0,00001 0,00001 0,00001 0,00001

    Iteraes mximas no espao 7 7 5 5 4 4

    Erro absoluto (C) para t=350s 0,395 0,528 0,907 1,610 2,910 7,361

    Erro relativo (%) para t=350s 0,1236 0,1653 0,2838 0,5039 0,9107 2,3034

    Na figura 5 representa-se o erro em funo de x e o ajuste de uma curva do tipo:

    = + 12

    Onde C uma constante de erro, p a ordem de convergncia observada e o valor do erro

    quando x tende para 0, este valor no nulo devido influncia da discretizao no tempo. Como

    era esperado a ordem de convergncia prxima de 2 (a diferena deve-se a erros numricos) pois

    na aproximao dos fluxos por diferenas finitas desprezam-se os termos de ordem superior a esta.

  • 6

    Figura 3 Evoluo da temperatura no centro da barra ao longo do tempo.

    Figura 4 Temperatura no centro da barra entre 300 e 400 segundos.

    Figura 5 Erro em funo da dimenso da aresta dos volumes.

    0

    100

    200

    300

    400

    500

    600

    700

    800

    900

    1000

    0 200 400 600 800 1000 1200

    T (C)

    Tempo (s)

    22 x 22

    17 x 17

    12 x 12

    9 x 9

    7 x 7

    5 x 5

    exacta

    270

    290

    310

    330

    350

    370

    390

    300 320 340 360 380 400

    T (C)

    Tempo (s)

    22 x 22

    17 x 17

    12 x 12

    9 x 9

    7 x 7

    5 x 5

    exacta

    e = 5513x^1,907+0,06104

    R^2 = 1

    0,0

    0,5

    1,0

    1,5

    2,0

    2,5

    0,000 0,005 0,010 0,015 0,020

    erro relativo (%)

    x(m)

  • 7

    Mesmo com malhas grosseiras os erros so reduzidos, se as propriedades no fossem

    constantes para o mesmo erro seria necessria uma malha mais fina. O nmero de iteraes no

    espao necessrio aumenta com o nmero de ns.

    5.2 - Refinamento de malha Incremento de tempo

    De modo a analisar-se as caractersticas de convergncia no tempo fixou-se a malha e variou-

    se o incremento de tempo, o parmetro para o clculo do erro continuou a ser a temperatura em

    t=350s. Os resultados so apresentados na tabela 3 e figuras 6 a 8.

    Como esperado, por se recorrer ao mtodo implcito, a convergncia linear [3]. Mais uma vez

    no se obtm = 0 devido influncia da discretizao no espao.

    Tambm no caso do incremento de tempo possvel obter erros satisfatrios com incrementos

    relativamente grandes (i.e. poucos passos no tempo at ao instante desejado). Interessa porm notar

    que medida que se aumenta o incremento de tempo o nmero de iteraes no espao tambm

    aumenta (porque as variaes no campo de temperaturas so mais significativas) e por isso o esforo

    computacional no se reduz proporcionalmente.

    Tabela 3 Influncia do intervalo de tempo.

    Nmero de ns 17 x 17 17 x 17 17 x 17 17 x 17 17 x 17 17 x 17

    Soma dos resduos mxima 0,00001 0,00001 0,00001 0,00001 0,00001 0,00001

    Intervalo de tempo (s) 0,25 1,00 3,50 5,00 10,0 17,5

    Iteraes mximas no espao 7 11 23 29 50 79

    Erro relativo (%) (t=350s) 0,1236 0,3327 1,0258 1,4388 2,7998 4,7956

    Figura 6 Evoluo da temperatura.

    0

    100

    200

    300

    400

    500

    600

    700

    800

    900

    1000

    0 200 400 600 800 1000 1200

    T (C)

    Tempo (s)

    0.25s

    1 s

    3.5 s

    5 s

    10 s

    17.5 s

    exacta

  • 8

    Figura 7 Evoluo da temperatura no centro entre 300 e 400 segundos.

    Figura 8 Erro em funo do incremento de tempo.

    5.3 Influncia da soma dos resduos

    Para a malha de 17 x 17 ns testou-se a influncia da soma dos resduos (critrio de

    convergncia na soluo iterativa do sistema de equaes) afim de determinar a partir de que valor

    este parmetro deixava de influenciar significativamente a soluo. Os resultados so apresentados

    na tabela 4.

    Tabela 4 Influncia do valor da soma dos resduos.

    Nmero de ns 17 x 17 17 x 17 17 x 17

    Soma dos resduos mxima 0,1 0,0001 0,00001

    h (W/m2.K) 1000 1000 1000

    Intervalo de tempo (s) 0,25 0,25 0,25

    Iteraes mximas no espao 3 6 7

    Erro relativo (%) (t=350s) 0,528 0,165 0,165

    260

    280

    300

    320

    340

    360

    380

    400

    300 320 340 360 380 400

    Temperatura

    (C)

    Tempo (s)

    0.25s

    1 s

    3.5 s

    5 s

    10 s

    17.5 s

    exacta

    e = 0,2886 t 0,9786 + 0,04591

    R^2 = 1

    0,0

    1,0

    2,0

    3,0

    4,0

    5,0

    6,0

    0,0 5,0 10,0 15,0 20,0

    erro relativo (%)

    t (s)

  • 9

    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.

    5.4 Campo de temperaturas

    Interessa tambm comparar os campos de temperatura obtidos analtica e numericamente. Na

    figura 9 mostram-se os campos de temperatura em dois instantes diferentes, (t=35s, Fo=0,0547 e

    t=350s, Fo=0,547). A soluo numrica foi obtida com uma malha de 17x17 ns e incrementos de

    tempo de 1s e a analtica com 100 termos.

    Figura 9 Comparao entre campos de temperatura obtidos analitica e numericamente.

    Qualitativamente os resultados obtidos so bastante semelhantes, quantitativamente o erro

    mximo 1,2% e ocorre para t=35s numa zona onde os gradientes espaciais de temperatura so

    mais intensos, sabido que por este motivo nestas zonas a malha deve ser mais refinada [2].

    Para t=350s o erro alm de mais reduzido (0,3%) praticamente uniforme e as suas isolinhas

    semelhantes s isotrmicas. Este comportamento pode ser justificado notando que neste instante os

    gradientes espaciais so menores e portanto a contribuio maior para o erro vem da discretizao

    no tempo.

  • 10

    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

  • 11

    Anexo I Clculo dos coeficientes para a soluo analtica.

    function qsi = raizes(Bi,n)

    % RAIZES n primeiras razes positivas da equao qsi*tan(qsi)=Bi

    % Bi - Nmero de Biot

    % n - Nmero de valores de qsi pretendidos

    % Considera-se uma tolerncia de 1e-6 para o resduo e para a correco

    % Valores limite de qsi (a soluo pertence a intervalos peridicos)

    low=pi*((1:n)-1);

    up =pi*((1:n)-0.5);

    % Valores iniciais

    qsi=pi*((1:n)-0.75);

    r=1; %resduo

    c=1; %correco

    % Iterao

    for i=1:n

    while abs(r)>1e-6 || abs(c)>1e-6

    r=residuo(qsi(i),Bi);

    c=r/derivada(qsi(i));

    qsi(i)=qsi(i)-c;

    % Se o novo valor de qsi estiver fora dos limites

    % gerada uma nova aproximao inicial aleatoriamente

    if qsi(i)up(i)

    qsi(i)=low(i)+(up(i)-low(i))*rand();

    r=1;

    c=1;

    end

    end

    r=1;

    c=1;

    end

    function a = residuo(qsi,Bi)

    a=qsi*tan(qsi)-Bi;

    end

    function b = derivada(qsi)

    b=tan(qsi)+qsi/cos(qsi)^2;

    end

    end

  • Anexo II Clculo da evoluo da temperatura no centro de barra sujeita a conveco na fronteira.

    %% 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

    Anexo III Evoluo do campo de temperaturas. %% 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, comprimento e nmero de termos da srie

    dt=35;

    N=10;

    x=(1/30):(1/15):(29/30);

    n=100;

    % Parmetros Adimensionais

    Bix=hx*Lx/(2*k);

    Biy=hy*Ly/(2*k);

    dFox=Dif*dt/(Lx/2)^2;

    dFoy=dFox*(Lx/Ly)^2;

    clear('hx','hy','k','ro','cp','dt')

    %% Clculos

    % Raizes 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));

    % Animao

    for i=0:N

    % Temperatura adimensional em x e y

    tetax=zeros(size(x));

    tetay=tetax;

    for j=1:n

    tetax=tetax+Cx(j)*exp(-qsix(j)^2*dFox*i)*cos(qsix(j)*x);

    tetay=tetay+Cy(j)*exp(-qsiy(j)^2*dFoy*i)*cos(qsiy(j)*x);

    end

    T=transpose(tetay)*tetax*(T0-Tf)+Tf;

    [X,Y]=meshgrid(0.5*Lx*x,0.5*Ly*x);

    contourf(X,Y,T,20);

    caxis([min(Tf,T0) max(Tf,T0)]);

    pause(0.2)

    end

    clear('qsix','Cx','qsiy','Cy','tetax','tetay','i','j','n','T0','Tf','N','x'

    ,'Lx','Ly')

  • 14

    Anexo IV Funo principal do programa Teach C com as alteraes efectuadas.

    %% ---------------------- Capitulo 0 - Preliminares ----------------------%

    %Apaga variveis e limpa a consola

    clear all; clc;

    %Cria ficheiro para escrever os resultados

    fid=fopen('RESULTS.txt','w');

    %Define o nmero de pontos da malha segundo x e y

    NI=17; NJ=17;

    %Constante

    GREAT=1.0E30;

    %% ------------ Capitulo 1 - Parmetros e ndices de controlo ------------%

    %Define o tipo de coordenadas (cartesianas- 0 0;

    %cilndricas vertical 1 0; cilndricas horizontais 0 1)

    INCYLX=0; INCYLY=0;

    %Varivel intermdia

    NIM1=NI-1; NJM1=NJ-1;

    %Dimenses totais do domnio de soluo, largura e altura [m]

    W=0.05; H=0.05;

    %Clculo as abcissas na direco xx

    DX=ones(1,NI)*W/(NIM1-1);

    X=((0:NIM1)-0.5)*DX(1);

    %Calcula as abcissas na direco yy

    DY=ones(1,NJ)*H/(NJM1-1);

    Y=((0:NJM1)-0.5)*DY(1);

    %Estabelece limites do Domnio

    JS=ones(1,NI)*2;

    JN=ones(1,NI)*(NJ-1);

    %Estabelece ponto monitor segundo x e y (IMON e JMON)

    IMON=3; JMON=3;

    %Propriedades do material. Meio homogneo

    TCON=ones(NI,NJ)*15.1;

    BK=15.1;

    CV=ones(NI,NJ)*480;

    DENSIT=ones(NI,NJ)*8055;

    %Temperatura inicial

    TINIC=900;

    %Parmetros de controlo do programa

    %Nmero mximo de iteraes

    MAXIT=200;

    %Nmero mximo de interaes no tempo

  • 15

    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);

  • 16

    %Escreve as especificaes do problema

    fprintf(fid,'CONDUCTION IN RECTANGULAR BAR WITH PRESCRIBED SURFACE

    TEMPERATURE \r\n \r\n');

    fprintf(fid,'HEIGHT, H [M]--------------------------------= %10.3f\r\n',H);

    fprintf(fid,'WIDTH, W [M]--------------------------------= %10.3f\r\n',W);

    fprintf(fid,'SPECIFIC HEAT, CV [J/KG.K]-------------------=

    %10.3f\r\n',CV(1,1));

    fprintf(fid,'THERMAL CONDUCTIVITY, TCON [W/M.K]-----------=

    %10.3f\r\n',TCON(1,1));

    fprintf(fid,'DENSIT, DENSIT [KG/M3] ----------------------=

    %10.2f\r\n',DENSIT(1,1));

    fprintf(fid,'INITIAL TIME STEP, DT [S] -------------------=

    %10.1f\r\n',DT);

    fprintf(fid,'SOURCE NORMALIZATION FACTOR, SNORM ----------=

    %8.3E\r\n',SNORM);

    fprintf(fid,'NUMBER OF NODES IN X DIRECTION, NI ----------= %10d\r\n',NI);

    fprintf(fid,'NUMBER OF NODES IN Y DIRECTION, NJ ----------= %10d\r\n',NJ);

    fprintf(fid,'\r\n');

    %Chama a funo PRINT para imprimir o campo de temperaturas inicial

    PRINT(1,1,NI,NJ,X,Y,T,fid)

    TDist(1,:,:)=T(2:(NI-1),2:(NJ-1));

    %% -------------- Capitulo 3 - Iteraes no tempo e no espao ------------%

    %Iteraoes no tempo

    for NSTEP=1:MAXSTP;

    TIME=TIME+DT;

    TOLD=T;

    %Imprime o rtulo das informaes das iteraes no ponto monitor

    if mod(NSTEP,NITPRI)==0

    fprintf(fid,'NITER SOURCE T(%d,%d) TIME(s)

    DT(s) NSTEP',IMON,JMON);

    fprintf(fid,'\r\n');

    end

    %Iteraoes no espao

    for NITER=1:MAXIT;

    %Chama a funo CALCT para o clculo das temperaturas

    [AN,AS,AE,AW,SU,SP,GAMH,CV,DENSIT,TOLD,T,RESORT]=CALCT(NI,NJ,NIM1,NJM1,RX,D

    XEP,SEW,RU,RY,DYNP,SNS,RV,AN,AS,AE,AW,SU,SP,GAMH,CV,DENSIT,TOLD,T,URFT,JS,J

    N,INTIME,DT,Y,X,XU,YV,GREAT);

    %Chama a funo PROPS no caso de as propriedades variarem

    if INPRO==1

    [GAMH]=PROPS(NI,NJ,TCON,GAMH);

    end

    %Clculo do resduo normalizado

    SOURCE=(RESORT/SNORM);

    %Imprime a informao das iteraes no ponto monitor

    if mod(NSTEP,NITPRI)==0

    fprintf(fid,'%5d',NITER);

    fprintf(fid,'%14.1E',SOURCE);

    fprintf(fid,'%14.3E',T(IMON,JMON));

    fprintf(fid,'%11d',TIME);

  • 17

    fprintf(fid,'%10d',DT);

    fprintf(fid,'%9d',NSTEP);

    fprintf(fid,'\r\n');

    end

    %Testa resduo do processo iterativo

    if SOURCE=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)

  • 18

    Anexo V Excertos das alteraes efectuadas funo PROMOD.

    ... CFN=3;

    CFS=4;

    CFW=4;

    CFE=3;

    ... %Conveco

    elseif CFN==3;

    HCONV=1000; %%%%% altervel %%%%%

    TF=80; %%%%% altervel %%%%%

    RDYN=YV(NJ)-Y(NJM1);

    AN(NJM1)=0;

    DN1=RDYN/GAMH(IL,NJM1)+1/HCONV;

    DN=SEW(IL)*RV(NJ)/DN1;

    SU(NJM1)=SU(NJM1)+DN*TF;

    SP(NJM1)=SP(NJM1)-DN;

    T %simetria

    elseif CFS==4;

    AS(2)=0;

    T(IL,1)=T(IL,2);

    T %simetria

    elseif CFW==4

    if IL==2;

    for J=2:NJM1;

    AW(J)=0;

    T(1,J)=T(2,J);

    end

    T %Conveco

    elseif CFE==3;

    if IL==NIM1;

    HCONV=1000; %%%%% altervel %%%%%

    TF=80; %%%%% altervel %%%%%

    DXE=XU(NI)-X(NIM1);

    for J=2:NJM1

    AE(J)=0;

    DE1=DXE/GAMH(IL,J)+1/HCONV;

    DE=SNS(J)*RY(J)/DE1;

    SU(J)=SU(J)+DE*TF;

    SP(J)=SP(J)-DE;

    end

    end

    T