Você está na página 1de 47

Métodos Numéricos para

determinação de raízes reais de


funções no SciLab
Ministrantes: Bruno Vieira Abreu e Marcelo Viana de Souza

Este curso é destinado aos alunos da área de ciências exatas e afins que desejam
compreender métodos numéricos de cálculo de raízes de uma função, utilizando
algoritmos no SciLab. Inicialmente, discutiremos sobre a definição de raíz de uma função e
revisaremos a sintaxe de comandos da linguagem de programação SciLab. O aluno
aprenderá as vantagens e limitações de cada método e aplicações.
Raíz de uma função
• O problema para determinar um zero de uma função real 𝑓 contínua
em um intervalo 𝐼 , é determinar, se existir, um número 𝑥 ∈ ℝ
pertencente ao domínio da função 𝑓, tal que:
𝑓 𝑥 =0

• Logo, o zero da função é dado pelo valor de x que faz com que a
função assuma o valor zero.
Raíz de uma função
• Graficamente, as raízes de uma função são os pontos que “cortam” o
eixo x.
Atribuição Comparação
O sinal de igualdade (=) é O sinal de igualdade (==)
usado para denotar a atribuição também é usado em operadores
de valor(es) a variável(eis). de comparação.

• a = expressão • a == b, igualdade
• a ~= b, desigualdade
Os três pilares da lógica de programação

• Entrada e saída de dados;

• Estruturas de repetição;

• Estruturas condicionais.
Entrada e saída de dados
Entrada Saída

variável=input(“texto”)
printf(“texto + especificações de
variável=input(“texto”,”string”) formatação”,variável)

function y=G(x) disp(variável)


y=f(x)
endfunction
Estruturas de repetição

i=0
while i<=5 for i = 0:1:5
disp(i) disp(i)
i=i+1 end
end

0. 1. 2. 3. 4. 5. 0. 1. 2. 3. 4. 5.
Estruturas condicionais

if cor == “vermelho” then if cor == “vermelho” then


disp(“Pare”) disp(“Pare”)
else elseif cor == “amarelo” then
disp(“Siga”) disp(“Atenção”)
end else
disp(“Siga”)
end
Símbolos de comparação lógica

Símbolo Significado
<> ou =~ Diferente
< Menor do que
> Maior do que
<= Menor do que ou igual a
>= Maior do que ou igual a
& e
| ou
Métodos Numéricos
Computacionais
 Para que servem?

 Ideia Central
Método da Falsa Posição
• Para uma função 𝑓 contínua no intervalo 𝑎, 𝑏 com 𝑓(𝑎) e 𝑓(𝑏) com sinais
opostos, sempre haverá uma quantidade ímpar de números com 𝑓 𝑝 = 0

• O método utiliza a média ponderada entre os números extremos do intervalo


𝑎, 𝑏 com pesos 𝑓(𝑏) e 𝑓 𝑎 :

𝑎 × 𝑓 𝑏 − 𝑏 × 𝑓(𝑎)
𝑥1 =
𝑓 𝑏 − 𝑓(𝑎)
Método da Falsa Posição

• Após determinado o primeiro valor aproximado da raiz 𝑥1 , substitui-


se um dos extremos do intervalo por 𝑥1 para aquele entre 𝑓 𝑎 e
𝑓 𝑏 que tenha o mesmo sinal de 𝑓 𝑥1 .

• Repete-se o processo até atingir a precisão ou o número de iterações


fornecido para o programa.
Exemplo 1
• Calcular a raíz da equação 𝑓 𝑥 = 4𝑥² − 9 utilizando o método da Falsa Posição com intervalo 1,3 :

𝑎 × 𝑓 𝑏 − 𝑏 × 𝑓(𝑎) 1 × 𝑓 3 − 3 × 𝑓(1) 1 × 27 − 3 × −5 27 + 15 42 21
𝑥1 = = = = = =
𝑓 𝑏 − 𝑓(𝑎) 𝑓 3 − 𝑓(1) 27 − (−5) 32 32 16

21
𝑓 = −2,11
16

• Como 𝑓 𝑎 = 𝑓 1 = −5, 𝑓 𝑥1 tem o mesmo sinal de 𝑓 𝑎 , logo, o novo intervalo será entre 𝑥1 , 𝑏 =
21
,3 .
16
Exemplo 1
• Calcular a raíz da equação 𝑓 𝑥 = 4𝑥² − 9 utilizando o método da Falsa Posição com intervalo 1,3 :

21 21 21
𝑥1 × 𝑓 𝑏 − 𝑏 × 𝑓(𝑥1 ) 16 × 𝑓 3 − 3 × 𝑓( ) × 27 − 3 × −2,11 35,44 + 6,33
𝑥2 = = 16 = 16 = = 1,435
𝑓 𝑏 − 𝑓(𝑥1 ) 21 27 − (−2,11) 29,11
𝑓 3 − 𝑓(16)

𝑓 1,435 = −0,76

21
Como 𝑓 𝑥1 = 𝑓 = −2,11, 𝑓 𝑥2 tem o mesmo sinal de 𝑓 𝑥1 , logo, o novo intervalo será entre 𝑥2 , 𝑏 =
16

1,435; 3 .

Continua-se sucessivamente até encontrar o valor da raíz com a precisão ou o erro estimado.
Método da Falsa Posição
Método da Falsa Posição
Vantagens:
Desde que se conheça o intervalo com uma quantidade ímpar de
raízes, o método sempre convergirá.
Desvantagens:
É necessário conhecer e estudar o intervalo no qual contenha as
raízes.
Em relação aos métodos seguintes, tem uma velocidade de
convergência menor.
Algoritmo do Método da Falsa Posição
Dados Iniciais:

Intervalo [𝑎, 𝑏];

Número máximo de iterações (𝐾𝑚á𝑥 );

Precisão (𝐸𝑟𝑟𝑜).

Se 𝑓 𝑎 × 𝑓 𝑏 > 0:

O intervalo não tem raíz ou tem números pares de raízes. FIM.

𝑎×𝑓 𝑏 −𝑏×𝑓(𝑎)
𝑥 =
𝑓 𝑏 −𝑓(𝑎)

𝐾 = 1
Algoritmo do Método da Falsa Posição
 Enquanto 𝐾 < 𝐾𝑚á𝑥 e 𝑏 − 𝑥 > 𝐸𝑟𝑟𝑜 e 𝑎 − 𝑥 > 𝐸𝑟𝑟𝑜
𝑎×𝑓 𝑏 −𝑏×𝑓(𝑎)
 Se 𝑓 𝑎 < 0 e 𝑓 𝑥 < 0, então: 𝑥 = 𝑓 𝑏 −𝑓(𝑎)

• 𝑎=𝑥

 Se 𝑓 𝑏 < 0 e 𝑓 𝑥 < 0, então: 𝐾 =𝐾+1

• 𝑏=𝑥
 FIM.
 Se 𝑓 𝑎 > 0 e 𝑓 𝑥 > 0, então:

• 𝑎=𝑥

 Se 𝑓 𝑏 > 0 e 𝑓 𝑥 > 0, então:

• 𝑏=𝑥
Método de Newton-Raphson

• O método de Newton-Raphson é baseado na escolha de um função


iteração 𝜑(𝑥) tal que a sua derivada seja igual a zero, logo:

𝜑′ 𝑥 = 0

• Para isto, a função iteração é igual a:

𝑓(𝑥)
𝜑 𝑥 =𝑥−
𝑓′(𝑥)
Método de Newton-Raphson
• Para funcionamento do método, é necessário dar como dado de entrada uma aproximação inicial
𝑥0 :

𝑓 𝑥
𝑥1 = 𝑥0 −
𝑓′ 𝑥

• Em seguida, utiliza-se o valor de 𝑥1 como aproximação inicial para próxima iteração. Repete-se o
processo até atingir a precisão ou o número de iterações fornecido para o programa.

𝑓 𝑥
𝑥2 = 𝑥1 −
𝑓′ 𝑥
Método de Newton-Raphson

• É assegurado a convergência do método de Newton-Raphson quando


atendida as seguintes condições:

𝑓 ′ 𝑥 é suficientemente distante de zero;

 𝜑′ 𝑥 < 1.
Exemplo 2

• Calcular a raíz da equação 𝑓 𝑥 = 4𝑥² − 9 utilizando o método de


Newton-Raphson com aproximação inicial igual a 3:

𝑓 𝑥 4 × 32 − 9 36 − 9 27
𝑥1 = 𝑥0 − ′ =3− =3− =3− = 1,875
𝑓 𝑥 8×3 24 24

𝑓 𝑥 4 × 1,8752 − 9
𝑥2 = 𝑥1 − ′ = 1,875 − = 1,875 − 0,3375 = 1,5375
𝑓 𝑥 8 × 1,875
Exemplo 2
𝑓 𝑥 = 4𝑥² − 9 Método da Falsa Erro Método de Erro
Posição Newton-Raphson

Primeira Iteração: 1,3125 1,3125 − 1,5 1,875 1,875 − 1,5


𝑥1 = 0,1875 = 0,375

Segunda Iteração: 1,435 1,435 − 1,5 1,5375 1,5375 − 1,5


𝑥2 = 0,065 = 0,0375

Para comparar a velocidade de convergência dos dois métodos, verifica-se a razão do erro dos dois métodos:

𝐸𝑟𝑟𝑜 1 0,1875 Método de 𝐸𝑟𝑟𝑜 1 0,375


Método da Falsa Posição: = ≅ 2,88 = = 10
𝐸𝑟𝑟𝑜 2 0,065 Newton-Raphson: 𝐸𝑟𝑟𝑜 2 0,0375
Exemplo 3

• Calcular a raíz da equação 𝑓 𝑥 = 4𝑥² − 9 utilizando o método de


Newton-Raphson com aproximação inicial igual a 0:

𝑓 𝑥 4 × 02 − 9 −9
𝑥1 = 𝑥0 − ′ =0− =0− = 0 − −∞ = +∞
𝑓 𝑥 8×0 0

O método de Newton-Raphson diverge, pois, 𝑓 ′ 0 = 0.


Método de Newton-Raphson
Método de Newton-Raphson

Vantagens:

 O método tem a maior velocidade de convergência entre os métodos


aqui apresentados.

Desvantagens:

 É necessário fazer uma análise para verificar se a aproximação inicial


dada converge.
Algoritmo do Método de Newton-Raphson
 Dados Iniciais:

 Aproximação inicial 𝑥0 ;

 Número máximo de iterações (𝐾𝑚á𝑥 );

 Precisão (𝐸𝑟𝑟𝑜).

 Se 𝑓 ′ 𝑥0 = 0:

 Como a derivada da função no ponto é zero, não é possível encontrar a raíz. FIM.

𝑓 𝑥
 𝑥1 = 𝑥0 − 𝑓′ 𝑥

𝐾 = 1
Algoritmo do Método de Newton-Raphson
Enquanto 𝐾 < 𝐾𝑚á𝑥 e 𝑥1 − 𝑥0 > 𝐸𝑟𝑟𝑜

𝑥0 = 𝑥1

𝑓 𝑥
𝑥1 = 𝑥0 −
𝑓′ 𝑥

𝐾 = 𝐾 + 1

FIM.
Método das Secantes

• Uma grande desvantagem de Método de Newton é a necessidade de


calcular sua derivada e seu valor numérico a cada iteração.

• Uma forma de se contornar este problema, é substituir a derivada


pelo quociente das diferenças:


𝑓 𝑥𝑘 − 𝑓 𝑥𝑘−1
𝑓 𝑥𝑘 ≈
𝑥𝑘 − 𝑥𝑘−1
Método das Secantes
• Logo, a função de iteração fica igual a:

𝑥𝑘−1 × 𝑓 𝑥𝑘 − 𝑥𝑘 × 𝑓 𝑥𝑘−1
𝜑 𝑥𝑘 =
𝑓 𝑥𝑘 − 𝑓 𝑥𝑘−1

• Para funcionamento do método, é necessário dar como dado de entrada duas


aproximações iniciais 𝑥0 e 𝑥1 :

𝑥0 × 𝑓 𝑥1 − 𝑥1 × 𝑓 𝑥0
𝑥2 =
𝑓 𝑥1 − 𝑓 𝑥0
Método das Secantes

• É assegurado a convergência do método das Secantes quando


atendida as seguintes condições:

𝑓 𝑥0 e 𝑓 𝑥1 apresentam valores suficientemente distantes entre si;

 𝜑′ 𝑥 < 1.
Exemplo 4
• Calcular a raíz da equação 𝑓 𝑥 = 4𝑥² − 9 utilizando o método das Secantes com aproximações
iniciais igual a 3 e 1:

𝑥0 × 𝑓 𝑥1 − 𝑥1 × 𝑓 𝑥0 3×𝑓 1 −1×𝑓 3 3 × −5 − 1 × 27 −42 21


𝑥2 = = = = =
𝑓 𝑥1 − 𝑓 𝑥0 𝑓 1 − 𝑓(3) −5 − 27 −32 16

21 21 21
𝑥1 × 𝑓 𝑥2 − 𝑥2 × 𝑓 𝑥1 1×𝑓 − ×𝑓 1 1 × −2,11 − × −5
𝑥3 = = 16 16 = 16 = 1,541
𝑓 𝑥2 − 𝑓 𝑥1 21 −2,11 − −5
𝑓 − 𝑓(1)
16
Exemplo 4

Método de
𝑓 𝑥 = Método da Erro Newton- Erro Método das Erro
4𝑥² − 9 Falsa Posição Raphson Secantes

Primeira 1,3125 ȁ1,3125 1,875 1,875 − 1,5 1,3125 ȁ1,3125


Iteração: 𝑥1 = 0,375

Segunda 1,435 1,435 − 1,5 1,5375 ȁ1,5375 1,541 1,541 − 1,5


Iteração: 𝑥2 = 0,065 = 0,041
Exemplo 4

• Para comparar a velocidade de convergência dos três métodos, verifica-se


a razão do erro dos três métodos:
𝐸𝑟𝑟𝑜 1 0,1875
• Método da Falsa Posição: = ≅ 2,88
𝐸𝑟𝑟𝑜 2 0,065

𝐸𝑟𝑟𝑜 1 0,375
• Método de Newton-Raphson: = = 10
𝐸𝑟𝑟𝑜 2 0,0375

𝐸𝑟𝑟𝑜 1 0,1875
• Método das Secantes: = ≅ 4,57
𝐸𝑟𝑟𝑜 2 0,041
Exemplo 5
• Calcular a raíz da equação 𝑓 𝑥 = 4𝑥² − 9 utilizando o método das
Secantes com aproximações iniciais iguais a 3 e -3:

𝑥0 × 𝑓 𝑥1 − 𝑥1 × 𝑓 𝑥0 3 × 𝑓 −3 − −3 × 𝑓 3
𝑥2 = =
𝑓 𝑥1 − 𝑓 𝑥0 𝑓 −3 − 𝑓(3)

3 × 27 − −3 × 27 81 − (−81) 162
= = = = +∞
27 − 27 0 0
O método das Secantes diverge, pois, 𝑓 3 = 𝑓(−3).
Método das Secantes
Método das Secantes

Vantagens:

 O método tem a vantagem de não precisar encontrar a derivada de


uma função quando comparado com o método de Newton-Raphson.

Desvantagens:

 É necessário fazer uma análise para verificar se as aproximações


iniciais dadas convergem.
Algoritmo do Método das Secantes
Dados Iniciais:

Aproximações iniciais 𝑥0 , 𝑒, 𝑥1 ;

Número máximo de iterações (𝐾𝑚á𝑥 );

Precisão (𝐸𝑟𝑟𝑜).

Se 𝑓 𝑥0 = 𝑓 𝑥1 :

Como o denominador é igual a zero então a função iteração irá divergir. FIM.

𝐾 = 1
Algoritmo do Método das Secantes
Enquanto 𝐾 < 𝐾𝑚á𝑥 e 𝑥1 − 𝑥0 > 𝐸𝑟𝑟𝑜

𝑥0 ×𝑓 𝑥1 −𝑥1 ×𝑓 𝑥0
𝑥2 =
𝑓 𝑥1 −𝑓 𝑥0

𝑥0 = 𝑥1

𝑥1 = 𝑥2

𝐾 = 𝐾 + 1

FIM.
Exemplo de Aplicação 1
A concentração C (em miligramas por mililitro) de um remédio na corrente sangüínea de
um paciente é monitorada a intervalos de 1 hora a partir da primeira hora após a
medicação. A cada 6 horas o paciente recebe uma nova dose da medicação. A lei que
simula melhor a concentração desse remédio é:

−𝒕𝟒
𝑪 𝒕 = + 𝟑𝒕𝟒 + 𝟑𝒕𝟑 − 𝟐𝒕
𝟐

onde 𝑡 é o tempo em horas. Determine uma aproximação 𝑡𝑘 para o tempo 𝑡 para o


𝒎𝒈
instante em que a concentração do remédio é de 𝟓𝟎 , com uma precisão de 𝜖 = 10−5 .
𝒎𝒍
Solução do Exemplo de Aplicação 1
𝒎𝒈
Substituindo a concentração do remédio 𝑪 𝒕 = 𝟓𝟎 :
𝒎𝒍

−𝒕𝟒
𝟓𝟎 = + 𝟑𝒕𝟒 + 𝟑𝒕𝟑 − 𝟐𝒕
𝟐

Que é equivalente a:

−𝒕𝟒
𝟎= + 𝟑𝒕𝟒 + 𝟑𝒕𝟑 − 𝟐𝒕 − 𝟓𝟎
𝟐
Solução do Exemplo de Aplicação 1
Realizando uma análise da função para valores do tempo a cada hora

do momento do recebimento da medicação até a nova dose utilizando

as rotinas do SciLab para cálculo imediato:

𝒇(𝒕) -50 -46,5 10 227,5 774 1877,5 3826


𝒕(𝒉𝒐𝒓𝒂𝒔) 0 1 2 3 4 5 6
Solução do Exemplo de Aplicação 1

Método da Método de Método das


𝑓 𝑡 Falsa Posição Newton- Secantes
Intervalo = Raphson 𝑥𝟎 = 𝟏
[1,2] 𝑥𝟎 = 𝟐 𝑥𝟏 = 𝟐

𝑡1 1.823009 1.912281 1.823009


𝑡2 1.900893 1.906481 1.900893
𝑡3 1.906097 1.906457 1.906802
𝑡4 1.906434 1.906457 1.906456
𝑡5 1.906456 1.906457
𝑡6 1.906457
Exemplo de Aplicação 2
A pressão máxima, P, em Kg/mm² que um cabo metálico suporta é
dada por:
𝑷 𝒅 = 𝟓𝟓𝒅𝟐 + 𝒍𝒏( 𝒅) − 𝟐𝟎

em que d é o diâmetro em mm. Determine uma aproximação dk para


este diâmetro para suportar uma pressão de 9.5 × 10−3 kg/mm2 com
uma precisão de ϵ = 10−5 .
Solução do Exemplo de Aplicação 2
Sabendo que a pressão a ser suportada é 𝑷 𝒅 = 9.5 × 10−3 kg/mm2 :
𝟎, 𝟎𝟎𝟗𝟓 = 𝟓𝟓𝒅𝟐 + 𝒍𝒏( 𝒅) − 𝟐𝟎

Que é equivalente a:

𝟎 = 𝟓𝟓𝒅𝟐 + 𝒍𝒏( 𝒅) − 𝟐𝟎, 𝟎𝟎𝟗𝟓


Solução do Exemplo de Aplicação 2
Realizando uma análise da função para valores do diâmetro variando

de 0,1 mm até 5 mm utilizando as rotinas do SciLab para cálculo

imediato:

𝒇(𝒅) -21,76 34,99 200,68 476,09 861,38 1356,6


𝒅 (𝒎𝒎) 0,1 1 2 3 4 5
Solução do Exemplo de Aplicação 2
Método da Método de Método das
𝑓 𝑑 Falsa Posição Newton- Secantes
Intervalo = Raphson 𝑥𝟎 = 𝟎, 𝟏
[0,1;1] 𝑥𝟎 = 𝟎,1 𝑥𝟏 = 𝟏

𝑑1 0.444959 1.135837 0.444959


𝑑2 0.567537 0.729834 0.567537
𝑑3 0.600111 0.619840 0.616972
𝑑4 0.607988 0.610487 0.610193
𝑑5 0.609848 0.610419 0.610418
𝑑6 0.610285 0.610419 0.610419
𝑑7 0.610387
𝑑8 0.610411
𝑑9 0.610417

Você também pode gostar