Você está na página 1de 7

Estudo das Soluções das Equações

Transcendentais do Problema de Calor


A. MONTEIRO 1 and L. P. OLIVEIRA SANTOS 2

Resumo: O presente trabalho consiste na criação de uma rotina computacional para


obtenção de autovalores de problema de transferência de calor unidimensional em uma
placa de espessura L com condições de contorno do tipo II, com fluxo zero na superfície e
na outra superfície imposta condição de contorno do tipo III, com uma espessura fixa para
alguns valor de H2 . Sendo uma equação transcendental usamos o método da bisseção e o
método de Newton na obtenção dessas raízes, com uma análise comparativa nos resultados
obtidos através dos métodos utilizados. Portanto, tivemos uma taxa de convergência maior
pelo método de Newton por fator de convergência quadrática em relação ao método da
bisseção que mostrou-se eficaz no problema em questão fornecendo resultados das raízes
próximos aos obtidos pelo método de Newton.

Palavras-Chave: soluções analíticas, método da bisseção, método de Newton,


convergência, raízes.

1. INTRODUÇÃO
As soluções analíticas para problemas de transferência de calor condutivo geral-
mente envolvem somas de termos de funções próprias, valores próprios e outras
propriedades e parâmetros térmicos que caracterizam esses problemas. Considera-
mos um problema unidimensional em uma placa de espessura L com condições de
contorno do tipo II, fluxo zero em uma superfície e condições do tipo III na outra
superfície. A solução da equação não pode ser expressa por uma função elementar
sendo que, a equação possuir uma função que é irredutível, ou seja, como a incóg-
nita aparece tanto como no argumento, a equação é denominado transcendental.
Normalmente as equações do tipo não apresentam soluções exatas por ter essa ca-
racterística. Portanto, recorrem-se aos métodos numéricos para obtenção de raízes
que são os autovalores dessa equação transcendental βm tan(βm L) − H2 = 0, com
m = 1, 2, ... . Porém, nosso objetivo é descrever rotina computacional para obten-
ção das seis primeiras raízes da equação que são os autovalores da placa utilizando
o método da bisseção e o método de Newton, variando o valor de H2 e fixando a
espessura L igualando-a a 1.
1 Programa de Pós-graduação em Modelagem Computacional, IPRJ/UERJ, Nova Friburgo, RJ,
Brasil – E-mail:antonio.monteiro@iprj.uerj.br
2 E-mail:lucas.santos@grad.iprj.uerj.br

1
2. METODOLOGIA
O atual trabalho consiste em dois algoritmos, são as rotinas computacionais(apêndice
A) para os métodos da bisseção e de Newton, as rotinas computacionais foram escri-
tas na linguagem C++17(-std=c++17), compiladas com o compilador g++(versão
6.3.0) no terminal do sistema operacional Windows 11 Home(versão 10.0.22) utili-
zando o processador Intel i3 10º geração(I3-10100F) 3.60GHz com 4 núcleos físicos
e 8 lógicos e 16GB de memoria RAM.
Ambos os métodos tem como objetivo encontrar as raízes de uma mesma fun-
ção que possuem infinitas raízes, logo, queremos encontrar apenas as raízes que se
encontram no intervalo [0, 18), com a função dada por

βm tan(βm L) = H2
f (βm ) = βm tan(βm L) − H2 = 0
Com L = 1 e variando H2 no conjunto {0, 0,5, 1,0, 10,0, 100,0} alterando assim
seu comportamento, e para cada raiz βm obtida informamos as estimativas iniciais
de acordo com o H2 , e a taxa de convergência sendo Dif = |xk − β6 |.

2.1. Método da Bisseção


Utilizemos o Teorema do Valor Intermediário(TVI) para o auxílio da construção do
método da bisseção, que se define, dada uma f (x) contínua no intervalo fechado
[a, b] e um número real l tal que f (a) < l < f (b) ou f (b) < l < f (a), existe pelo
menos um ponto c pertencente ao intervalo [a, b], tal que f (c) = l, isso atrelado ao
teorema de Bolzano definido a seguir, garantimos a existência de pelo menos uma
raiz dentro do intervalo [a, b].
Teorema de Bolzano: Se uma função contínua f (x) assume diferentes valores
nos extremos do intervalo [a, b], isto é, se f (a)f (b) < 0 então, existe pelo menos um
ponto c ∈ [a, b], tal que f (c) = 0.
Apresentamos o algoritmo do método da bisseção, que se inicia definindo uma
estimativa inicial [ak , bk ] sendo k iterações, calcule um novo ponto ck tal que
ak + bk
ck =
2
Avaliamos o ponto ck na função f e verificamos se f (ck ) < 0 ou f (ck ) > 0, e
atualizamos ao seu correspondente ak+1 = ck ou bk+1 = ck de forma que o teorema
de Bolzano se mantenha, ao avaliar o ponto f (ck ) verificamos se |f (ck )| < ϵ, sendo
ϵ um número positivo próximo de zero, sendo este o critério de convergência e se
k > 100, será o critério de parada, com ϵ = 0, 0001 e número max. de iterações 100.

2.2. Método de Newton


Um dos métodos mais eficientes para a solução numérica de uma função f (x) = 0
é o método de Newton, pois possui convergência quadrática, dependendo de uma
boa estimativa inicial.

2
Seja f (x) um função contínua com raiz no intervalo [a, b] representamos com
expansão de Taylor, sendo x ≤ ξk ≤ xk , e suponha α a solução de f (α) = 0
1 ′′
f (x) = f (xk ) + f ′ (xk )(x − xk ) + f (ξk )(x − xk )2
2!
1 ′′
0 = f (xk ) + f ′ (xk )(α − xk ) +
f (ξk )(α − xk )2
2!
Suponha α suficientemente próximo à xn , podemos desconsiderar o termo 2!
1 ′′
f (ξn )(α−
xn ) , observe que já havíamos descartado os termos seguintes da expansão de Tay-
2

lor, com isso chegamos na aproximação


f (xk )
α ≈ xk+1 = xk −
f ′ (xk )
Podemos agora montar o algoritmo do método de Newton com o mesmo critério
de convergência que o método da bisseção, com ϵ = 0, 0001 e número máximo de
iterações 100, tomando cuidado para que não haja divisão por zero, logo f ′ (xk ) ̸= 0.

3. RESULTADOS
3.1. Autovalores obtidos pela bisseção e Newton
As tabelas a seguir apresentam as aproximações das raízes reais da equação variando
H2 , com L fixo, para os dois métodos discutidos, juntamente com a tabela de
suas estimativas iniciais, observamos o comportamento da função ao alterar H2
que influenciava na convergência do método, quanto maior H2 , mais a função se
comportar como uma assintota passando pela raiz, como na figura 1, logo há uma
necessidade de um maior refinamento em suas estimativas, como observamos na
tabela 2.
β1 β2 β3
H2
biss. Newton biss. Newton biss. Newton
0 0 0,00877 3,14160 3,14159 6,28317 6,28319
0,5 0,65332 0,65327 3,29230 3,29231 6,36163 6,36162
1,0 0,86035 0,86033 3,42560 3,42562 6,43730 6,43730
10,0 1,42887 1,42887 4,30580 4,30580 7,22811 7,22811
100,0 1,55525 1,55525 4,66577 4,66577 7,77637 7,77637

β4 β5 β6
H2
biss. Newton biss. Newton biss. Newton
0 9,42477 9,42478 12,56640 12,56640 15,70800 15,70800
0,5 9,47748 9,47749 12,60600 12,60600 15,73970 15,73970
1,0 9,52930 9,52934 12,64500 12,64530 15,77100 15,77130
10,0 10,20026 10,20030 13,21419 13,21420 16,25936 16,25940
100,0 10,88713 10,88710 13,99809 13,99810 17,10931 17,10930

Tabela 1: Resultado das raízes pelos métodos da bisseção e Newton variando H2 .

3
β1 β2 β3
H2
biss. Newton biss. Newton biss. Newton
0 [-1;1] 0,5 [2;4] 4,0 [6;7] 7,0
0,5 [-1;1] 1,0 [2;4] 4,0 [6;7] 7,0
1,0 [-1;1] 1,0 [2;4] 4,0 [6;7] 7,0
10,0 [1;1,5] 1,5 [4;4,5] 4,5 [7;7,5] 7,5
100,0 [1,55;1,56] 1,57 [4,66;4,67] 4,7 [7,76;7,78] 7,8

β4 β5 β6
H2
biss. Newton biss. Newton biss. Newton
0 [9;10] 10,0 [12;13] 13,0 [15;16] 16,0
0,5 [9;10] 10,0 [12;13] 13,0 [15;16] 16,0
1,0 [9;10] 10,0 [12;13] 13,0 [15;16] 16,0
10,0 [10;10,5] 10,5 [13;14] 13,5 [16;17] 16,5
100,0 [10,88;10,89] 10,9 [13,99;14] 14,0 [17,1;17,12] 17,2

Tabela 2: As estimativas inicias correspondentes as raízes da Tabela 1.

Figura 1: Gráfico das funções variando H2 .

3.2. Taxa de convergência


Na tabela 3 comparamos a taxa de convergência entre os dois métodos, fixamos
H2 = 10, com β6 = 16, 2594 e as mesmas estimativas fornecidas pela tabela 2.
Podemos observar uma superioridade no método de Newton na quantidade de
iterações necessárias para chegar ao valor aproximado, o método de Newton possui
ordem de convergência quadrática, enquanto a bisseção possui ordem de convergên-
cia linear, porém ambos os métodos chegaram em boas aproximações das raízes,
tendo Newton uma melhor taxa de convergência, ao fazer Dif = |xk − β6 |.

4
Estimativa Diferença Estimativa Diferença
k
Bisseção (Dif ) Newton (Dif )
1 16,5 0,2406 16,5 0,2406
2 16,25 0,0094 16,305 0,0455609
3 16,375 0,1156 16,2608 0,00138611
4 16,3125 0,0531 16,2594 0
.. .. ..
. . .
17 16,25936 0,00004

Tabela 3: Diferença da convergência entre os dois métodos.

4. CONCLUSÃO
A modelagem de fenômenos físicos e químicos é uma tarefa desafiadora devido à ne-
cessidade de discretizar as condições de contorno do domínio, buscando transformar
o problema original em um problema análogo expresso em uma equação algébrica.
Diante do presente estudo comparativo usando o método da bisseção e o de Newton
para obtenção e análises dos autovalores da equação transcendental do tipo trigono-
métrica, é comum a utilização de métodos numéricos na obtenção das raízes, uma
vez que, a sua irredutibilidade na forma fraccionária de modo geral, impossibilita a
existência de uma raiz exata.
Portanto, a escolha da utilização dos métodos numéricos escolhidos, deve-se a
uma questão de analisar a rapidez da convergência do método da bisseção em de-
trimento ao de Newton. Como constatamos nas secções anteriores, uma equação
transcendental possuir inúmeras soluções em diferentes condições impostas, vari-
ando os intervalos obtêm-se soluções diferentes chamados de autovalores da função,
uma cada vez mais próxima da outra embora, a ordem de convergência do método
de Newton seja maior e mais eficaz na busca de soluções aproximados da raiz exata
em relação ao da bisseção. Concluímos que, na busca de solução das raízes da
equação transcendental obtida de um problema unidimensional em uma placa de
espessura L com condições de contorno do tipo II, fluxo zero em uma superfície e
condições do tipo III na outra superfície, os autovalores obtidos usando o método
da bisseção em relação ao de Newton, variando os intervalos não divergem muito,
porém, Newton possui uma melhor taxa de convergência.

Referências
[1] P. A. Stark, Introdução aos Métodos Numéricos. Rio de Janeiro: Interciência,
1970.
[2] M. C. C. Cunha, Métodos Numéricos. 2ª edição, Campinas: Editora Unicamp,
2010.
[3] P. Albrecht, Analise Numérica, um curso moderno. Rio de Janeiro: Livros
Técnicos e Ciêntificos Editora, 1973.

5
A.. Rotina Computacional - C++

#include <iostream>
#include <cmath>
#include <vector>
#include <iomanip>

float func(float x, float H2){


return (x * std::tan(x)) - H2;
}

float dFunc(float x, float H2){


return (x * std::pow(1 / std::cos(x), 2)) + std::tan(x);
}

void biss(float H2){


//Estimativas Iniciais
double a, b, media = 1;
double beta6 = 16.2594;

std::cout << "Entre com as estimativas iniciais:" << ’\n’;


std::cin >> a >> b;
std::cout << ’\n’;

int N_MAX_ITERACOES = 100;

if(func(a, H2) * func(b, H2) < 0){


for (int i = 0; i < N_MAX_ITERACOES; i++){
if(std::abs(func(media, H2)) < 0.0001) break;
std::cout << media << " " << std::abs(media - beta6) << ’\n’;

media = (a+b) / 2;

if(func(media, H2) < 0) a = media;


else b = media;
}
std::cout << std::fixed;
std::cout << std::setprecision(5) << media << " " << func(media, H2)
<< ’\n’;
}else{
std::cout << "Refine melhor o sua estimativa inicial [a,b]" << ’\n’;
}
}

void newton(float H2){


//Estimativas Iniciais
double a;
double beta6 = 16.2594;
std::cout << "Entre com o valor inicial:" << ’\n’;
std::cin >> a;
std::cout << ’\n’;

int N_MAX_ITERACOES = 100;

for (int i = 0; i < N_MAX_ITERACOES; i++){


if(std::abs(func(a, H2)) < 0.0001) break;
std::cout << a << " " << std::abs(a - beta6) << ’\n’;

a -= (func(a, H2) / dFunc(a, H2));


}

std::cout << a << " " << func(a, H2) << ’\n’;
}

int main() {
int escolha;
float H2;

std::cout << "Escolha o metodo:\n1 - Bissecao\n2 - Newton" << ’\n’;


std::cin >> escolha;
std::cout << ’\n’;

std::cout << "Entre com o valor de H2: " << ’\n’;


std::cin >> H2;
std::cout << ’\n’;

if(escolha == 1) biss(H2);
else newton(H2);
}

Você também pode gostar