Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 UNIVERSIDADE REGIONAL INTEGRADA DO ALTO URUGUAI E DAS MISSÕES DEPARTAMENTO DE CIÊNCIAS EXATAS E DA TERRA - DCET CÁLCULO NUMÉRICO COMPUTACIONAL ALUNO/A: SEMESTRE: SANTO ÂNGELO - AGOSTO, 2017 Capítulo 1: Alguns conceitos 2 2 INTRODUÇÃO Para a solução de um problema da Ciência ou da Engenharia deve-se ter em mente o modelo que representa a situação física. Esse modelo matemático poderá ser resolvido ou por métodos analíticos ou por métodos numéricos, tornando-se uma boa alternativa de resolução de problemas. 1 ERROS EM PROCESSOS NUMÉRICOS O conhecimento e controle sobre os possíveis erros envolvidos no processo de cálculos eletrônicos ou métodos numéricos são muito importantes para análise de resultados obtidos, pois esta análise representa uma etapa fundamental no processo das soluções numéricas. 1.1 Método Numérico São métodos de convergência que apresentam uma sequência de cálculos simples, porém repetitivos. Assim, os métodos numéricos: Aplicam-se onde os métodos exatos falham ou são trabalhosos Primam pela simplicidade, sendo que o resultado é possível de refinamento até obter-se a precisão desejada. São conhecidos há muito tempo, mas atualmente encontram larga aplicação valendo-se da evolução dos processos computacionais. Estas considerações podem ser visualizadas no fluxograma: 1 - Um problema de Matemática pode ser resolvido analiticamente, mas esse método pode se tornar impraticável com o aumento do tamanho do problema. 2 - A existência de problemas para os quais não existem métodos matemáticos para solução (não podem ser resolvidos analiticamente) •Exemplo: solução de sistemas de equações lineares. •Exemplos: •a) equações transcendentes •b) certas integrais •c) equações diferenciais parciais não lineares podem ser resolvidas analiticamente só em casos particulares. Capítulo 1: Alguns conceitos 3 3 1.2 Cálculo Numérico É o conjunto de ferramentas ou métodos usados para se obter a solução de problemas matemáticos de forma aproximada. 1.3 Cálculo Direto e Cálculo Iterativo Diretos calculam a solução de um problema em um número finito de passos. Cálculos iterativos realizam sucessivas aproximações que convergem para a solução exata em seu limite. Um teste de convergência é especificado para decidir quando uma solução suficientemente precisa foi encontrada. 1.4 ERROS Nos problemas reais, os dados são medidas e, como tais, não são exatos. Uma medida física não é um número, é um intervalo, pela própria imprecisão das medidas. Daí, trabalha-se sempre com a figura do erro, inerente à própria medição. Ao buscar soluções através de métodos numéricos para resolução dos problemas das mais variadas áreas, podemos chegar a resultados não esperados. Em todo o processo do esquema citado anteriormente podem ocorrer erros: de observação (no levantamento de dados); de modelagem (na escolha do modelo adequado); referente ao método numérico escolhido; Problema, Estudo, Pesquisa Levantamento de Dados Modelo Matemático Processo de Cálculo Exato Solução Exata Solução aproximada Aproximado Refinamento Solução Aproximada 4 4 devido à capacidade de representação dos números nas máquinas (arredondamento ou truncamento); resultante da propagação de outros erros. 1.4.1 Erros na fase de Modelagem Erros causados por distorções que existem entre os possíveis modelos que podem ser usados na descrição do comportamento de um fenômeno físico. Exemplo: Para determinar a altura de um edifício dispondo apenas de uma bolinha de metal, um cronômetro e a seguinte fórmula 2 00 t.a. 2 1 t.vdd , uma pessoa sobe ao topo e mede o tempo que a bolinha gasta para tocar no solo que é de 3 segundos. d = 0 + 0 . 3 + 1/2. 9,8 . 32 = 44,1 m (não é confiável) Precisão do cronômetro? Velocidade do vento? Resistência do ar? Forças? 1.4.2 Erros na fase de Resolução Para a obtenção da solução de determinados modelos matemáticos muitas vezes é necessária a utilização de instrumentos de cálculo que necessitam aproximações e com isso podem gerar erros, como exemplo, os computadores, que tem capacidade limitada para armazenar os dígitos significativos de valores numéricos utilizados nas operações elementares (+, - , x, ÷). 1.4.2.1 Erros na Conversão de Bases: SISTEMAS DE NUMERAÇÃO E SUA REPRESENTAÇÃO: Uma das primeiras tentativas de registro de quantidades sob a forma escrita foi o sistema de numeração indo-arábico, do qual é derivado o atual sistema de numeração decimal. Um sistema de numeração é formado por um conjunto de símbolos utilizados para representação de quantidades (alfabeto) e as regras que definem a forma de representação. Quando falamos em sistema decimal, estamos estabelecendo que a nossa base de contagem é o número 10, pois o sistema decimal possui um alfabeto de 10 símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Este conjunto de símbolos do alfabeto define o que é chamado de base do sistema de numeração. Assim, se temos 10 símbolos, estamos trabalhando sobre a base 10. Um sistema de numeração é determinado fundamentalmente pela sua base. Os Sistemas de numeração podem ser divididos em 2 grupos: os sistemas não- posicionais e os sistemas posicionais. SISTEMAS NÃO-POSICIONAIS: São aqueles em que o valor atribuído a um símbolo não se altera, independentemente da posição em que ele se encontre no conjunto de símbolos que está representando um número. 5 5 Exemplo: O sistema de numeração romano. Neste sistema temos os símbolos I, V, X, L, C, D e M. Em qualquer posição dentro de um conjunto destes símbolos, eles não alteram seus valores (I _ 1, V _ 5, X _ 10, L _ 50, C _ 100 e M _ 1000), o que se altera é a sua utilização para a definição da quantidade representada (porém individualmente eles continuam representando a mesma quantidade), a partir das regras definidas pelo sistema: · Cada símbolo colocado à direita de um maior é adicionado a este. Ex.: XI _ 10 + 1 = 11; · Cada símbolo colocado à esquerda de um maior tem o seu valor subtraído deste. Ex.: IX _ 10 – 1 = 9; Assim, o número XXI representa 21 em decimal (10 + 10 + 1), enquanto que XIX representa 19 (10 + 10 – 1). SISTEMAS POSICIONAIS: O valor atribuído a um símbolo depende da posição em que ele se encontra no conjunto de símbolos que está representando um número. Exemplo: O sistema de numeração decimal, com símbolos de 0, 1,.., 9. Neste sistema, por exemplo, o símbolo 5 pode representar o valor 5, o valor 50, como em 57 (50 + 7), o valor 500, como em 503 (500 + 3), e assim por diante. Isto é, a regra válida para o sistema decimal é que quanto mais à esquerda do número o símbolo está, mais ele vale. Na verdade, a cada posição mais à esquerda, o símbolo vale 10 vezes mais. Se representarmos o número 245 assinalando um símbolo a cada casa, indicando o valor de cada casa, teremos: Valor da casa 1000 100 10 1 0,1 0,01 Dígitos 0 2 4 5 0 0 O significado de cada dígito em determinada posição é o valor da casa multiplicado pelo valor do dígito e a quantidade representada é a soma de todos os produtos.x = (245)10 = Exemplo: O número 3547,21, pode ser representado da seguinte forma: Os computadores atuais representam os números internamente no formato binário, como sequência de zeros e uns. No sistema binário, os símbolos 0 e 1, representam os valores numéricos, onde, cada casa vale 2 vezes mais que aquela que está imediatamente a sua direita e 2 vezes menos que a que está a sua esquerda. Conforme esquema: Se b0, b1, b2, etc., são os valores (0 ou 1) , a quantidade representada valerá: … + b424 + b323 + b222 + b121 + b020 + b-12-1 + ... Para evitar a representação mediante o somatório, adota-se a convenção de separar mediante vírgulas as casas 20 e 2-1, de tal modo que a representação fique: ... b4 b3 b2 b1 b0, b-1 b-2 … Em que bi = 0 ou 1. 6 6 Exemplo: o número binário 10011,01 representa a quantidade: Valor da casa 24=16 23=8 22=4 21=2 20=1 2-1=1/2 2-2=1/4 Dígitos 1 0 0 1 1 0 1 a) x = (10011,01)2 = b) x = (-110,1)2 = A tabela seguinte apresenta alguns sistemas de numeração: Decimal Binário Octal 0 0 0 1 1 1 2 10 2 3 11 3 4 100 4 5 101 5 6 110 6 7 111 7 8 1000 10 9 1001 11 10 1010 12 Exercício 1: Represente os números nas respectivas bases: a. (347)10 = b. (-1059,7)10 = c. (10111)2 = d. (-1001,101)2 = e. (0,10101)2 = 7 7 CONVERSÃO DE BASES: É o processo de converter valores de um sistema de numeração para outro. BASE QUALQUER EM DECIMAL: Basta fazer a representação do número pelo Teorema Fundamental de Numeração (T.F.N.): anβn +...+ a2β2 + a1β1 + a0β0 + a-1β-1+... de forma simplificada: N.a n ni i i e cada ai é um inteiro não negativo e n é um valor que representa a posição mais à esquerda do número, ou posição mais significativa do número. Esta representação de X é única e é chamada de representação de X na base B, representada como (X)B. Exemplo: (11001)2 = (210)3 = Exercício 2: Converta os seguintes números de base binária para base decimal: a. (101111)2 = b. (11,01)2 = c. (101101)2 = d. (11010,101)2 = e. (0,1101)2 = 8 8 DECIMAL EM BINÁRIO: Para a parte inteira mediante divisões inteiras sucessivas por dois, tomando-se os restos das divisões no sentido ascendente. Exemplo: Converta o número de base decimal 197,125 para base binária. Para inteiros: Dividir até que o último quociente seja menor que a base. (197)10 = Para não inteiros usa-se o método das multiplicações sucessivas. Algoritmo: Passo 0: x1 = x; k = 1 Passo 1: Calcule 2.xk Se 2.xk = 1, faça: dk = 1 Caso contrário, faça: dk = 0 Passo 2: Faça xk+1 = 2xk - dk, Se xk+1 = 0, pare. Caso contrário: Passo 3: k = k+1 Volte ao passo 1 E então: 0,d1d2d3...dk Do exemplo anterior: K Xk 2.Xk dk Xk+1= 2.Xk - dk 1 0,125 2 3 Ou: 0,125*2 = 0,25*2 = 0,5*2 = 1 (0,125)10 = (0,d1d2d3)2 = (0,001)2 e (197,125 )10 = (11000101,001)2 9 9 Observação: um número real entre 0 e 1 pode ter representação finita no sistema decimal, mas infinita no sistema binário. Exercício 3: Converter (0,1)10 na base 2. Resp.: (0,0001100110011...)2 Como visto, um número pode ter representação finita em uma base e não-finita em outra. Assim, os dados de entrada são enviados ao computador pelo usuário no sistema decimal; toda esta informação é convertida para o sistema binário, e as operações todas serão efetuadas neste sistema. Os resultados finais serão convertidos para o sistema decimal e, finalmente, serão transmitidos ao usuário. Todo este processo de conversão é uma fonte de erros que afetam o resultado final dos cálculos. Exemplo: Mudança de base Dado o número 12,20 que está na base 4, representá-lo na base 3. 5,040424020,0 6424112 210 01 Portanto (12,20)4 = (6,5)10. Agora: assim: (6,5)10 = Portanto (12,20)4 = (20,11...)3. Observe que o número dado na base 4 tem representação exata na base 10, mas não na base 3. Exercícios : 4) Converta os seguintes números de base decimal para base binária: a. 10)18( = b. 10)347( = c. 10)2,0( = d. 10)875,0( = e. 10)25,13( = f. 10)1875,0( = 5) Determine o inteiro positivo x que verifica a igualdade (10101)x =(651)10 1,530,5 1,530,5 0 resto 23/6 10 1.4.2.2 Erros de Representação dos Números Na memória de um equipamento, cada número é armazenado em uma posição que consiste em um sinal que identifica se o número é positivo ou negativo e um número fixo e limitado de dígitos significativos. ARITMÉTICA DE PONTO FLUTUANTE: Sabemos que os números reais podem ser representados por uma reta contínua. Entretanto, em ponto flutuante, podemos representar apenas pontos discretos na reta real. Um computador ou calculadora representa um número real (inteiro ou não-inteiro) num sistema denominado aritmética de ponto flutuante, pois o ponto da fração “flutua” conforme o número a ser representado e sua posição é expressa pelo expoente e. Definição: Um sistema de ponto flutuante F é um subconjunto dos números reais cujos elementos tem a forma: e t321 e t t 3 3 2 2 1 1 )d...ddd(.) d ... ddd (x Onde: base em que a máquina opera (binária, decimal, hexadecimal, etc..); precisão t da máquina (número de algarismos da mantissa); limites do expoente e de ( máxmín eee ); di: são números inteiros contidos no intervalo 0 di < β; i = 1, 2, ..., t; d1 0; Se d1 0, diz-se que o número está normalizado. A mantissa é fracionária nesta representação (<1). E, para assegurar representação única para cada Fx , faz-se a normalização no sistema de forma que 01 d para 0x . Alguns exemplos da representação de ponto flutuante: Número na respectiva base Representação em ponto flutuante Mantissa Base Expoente (5532)10 0,5532 x 104 0,5532 10 4 (55,32)10 0,5532 x 102 0,5532 10 2 (0,00233)10 0,233 x 10-2 0,233 10 -2 (100)10 0,1 x 103 0,1 10 3 (100)10 = (1100100)2 0,1100100 x 27 0,11001 2 7 Usualmente, procura-se representar um sistema de ponto flutuante por F = F(β, t, emín, emáx), onde emín e emáx são respectivamente o menor e o maior expoente, β é a base e t é a precisão. Alguns exemplos: 1) HP25: F(10, 9, -98,100) 2) IBM 360/370: F(16, 6, -64, 63) 3) B6700: F(8, 13, -51, 77) 11 11 Exercícios: 1) Dado F(10, 3, -4, 4), represente o número x a) x = -279,15 b) x = 25,78 c) x = 1,35 d) x = 0,012412 e) x = -0,00245 2) Dado F(2,10,-15,15), represente o número x a) x = 23 b) x = -7,125 c) x = 1004,8 Propriedades do sistema de ponto flutuante: Menor número em módulo: 0,1*βemín Maior número: 0, vezes t 1]-1]...[-1].[-[ *βemáx A mantissa está contida no intervalo [0.1, 1) e o número máximo de mantissas positivas é dado por: 1t*)1(m O número máximo de expoentes possíveis é: 1eee mínmáxpossível Se x ∈ F, então − x ∈ F e a cardinalidade (número de elementos) de F é: )1ee(**)1(*2NE mínmáx1t +1 Exemplo 1: Considere uma máquina que opere no sistema F(2, 3, -1, 2) a) O menor exatamente representável: b) O maior exatamente representável: c) Número máximo de mantissas positivas possíveis: d) O número máximo de expoentes possíveis: e) Número de elementos positivos representáveis: f) Número total de elementos exatamente representáveis: Pode-se perceber pela tabela que a cardinalidade do sistema de ponto flutuante, é igual ao dobro do número de elementos positivos (por causa dos negativos) mais um (o zero), ou 1)1(**)1(*2 1 mínmáx t eeNE ou Simplesmente 2*mantissas*expoentes possíveis + um (que é o zero) 12 12 Exemplo 2: Considere o sistema F(2,3,1,2). Quantos e quais os números podem ser representados neste sistema? Regiões de overflow e de underflow: O conjunto de números reais é infinito, entretanto, a sua representação em um sistema de ponto flutuante é limitada, pois é um sistema finito, não existe representação exata da totalidade dos números reais, havendo a necessidade de arredondar para o número mais próximo da máquina. Essa limitação tem duas origens: a faixa dos expoentes é limitada ( maxmin eee ); a mantissa pode representar um número finito de números ( t1 1m ) Sempre que uma operação aritmética produz um número com expoente superior ao expoente máximo, tem-se o fenômeno de “overflow”. De forma similar, operações que resultem em expoente inferior ao expoente mínimo têm-se o fenômeno de “underflow”. Observe que, se o expoente for maior que 2 ou menor que -1, não se tem representação no conjunto formado pela aritmética de ponto flutuante. No primeiro caso, tem- se o overflow, no segundo caso, tem-se o underflow. Então: Região de underflow: região situada entre o maior número de ponto flutuante negativo e o zero e, simetricamente, entre o menor número de ponto flutuante positivo e o zero. Região de overflow: regiões situadas aquém do menor número de ponto flutuante negativo e além do maior número de ponto flutuante positivo. Do exemplo: RU = (−1/ 4;0) ∪ (0;1/ 4) e RO = (−∞;−7 / 2) ∪ (7 / 2;+∞) . Os números encontrados na região de overflow são enxergados pela máquina como infinitos, ou seja, o que chamamos de problema de overflow. Os números que estão na região de underflow são vistos pela máquina como zero, ou seja, x ∈ RU ⇒ x → 0 . Quanto ao x representado por um elemento do sistema de ponto flutuante, em geral é feita de uma das duas formas a seguir: a) Representação por Corte ou Truncamento: Desprezam-se os algarismos que ficam acima da (t+1)-ésima casa decimal. Onde t representa o número de dígitos da mantissa. Observe que esta forma de representação pode gerar um grande erro de arredondamento. 13 13 b) Representação por Arredondamento: Nesta representação, x é representado pelo elemento do sistema de ponto flutuante que estiver mais próximo dele, diminuindo ao máximo o erro de arredondamento. Se o valor do algarismo que fica na (t+1)-ésima casa decimal for menor do que 5 arredondamos o número desprezando-se todos algarismos após a t-ésima casa decimal. Se for maior ou igual a 5 soma-se 1 ao algarismo na t-ésima casa decimal e desprezam- se os algarismos restantes. Exercícios: 1) Encontrar a representação dos números abaixo em um sistema de números de aritmética de ponto flutuante, de três dígitos significativos, com 4min e e 4max e . Número Arredondamento Truncamento 1,25 10,053 -236,15 -2,72822 0,000008 6524582,4 2) Considere uma máquina que opere no sistema F(10, 4, -5, 5). Determine: a) O menor e o maior exatamente representável. b) O número máximo de mantissas positivas possíveis. c) O número máximo de expoentes possíveis. d) O número de elementos positivos representáveis. ARREDONDAMENTO EM PONTO FLUTUANTE Arredondar um número x, por outro com um número menor de dígitos significativos, consiste em encontrar um número x , pertencente ao sistema de numeração, tal que xx seja o menor possível. Exemplo 6: a) Calcular o quociente entre 15 e 7: b) Mas se só dispomos de quatro dígitos: 14 14 1.5 ERROS ABSOLUTO E RELATIVO 1.5.1 Erro Absoluto É a diferença em módulo, entre um valor exato x e o valor aproximado x , ou seja,: EAx = | xx |. EAx só poderá ser determinado se x for conhecido com exatidão, caso contrário, costuma-se trabalhar com um limitante superior para o erro, ao invés do próprio erro, | xx |< , onde é o limitante. xxxxx Exemplo 7: Para π e ε = 0,01. EAx = | xx |< 0,01 π(3,14; 3,15) Mesmo não conhecendo o valor exato, sabe-se que se encontra entre valores conhecidos. Exemplo 8: Sejam a = 3876,373 e b = 1,373 Considerando a parte inteira de a (a’) e a parte inteira de b (b’), o erro absoluto será: EAa = |a - a’| = 3876,373 - 3876 = 0,373 e EAb = |b - b’| = 1,373 - 1 = 0,373 Obviamente o resultado é o mesmo nos dois casos, porém, é necessário comparar a ordem de grandeza de a e b, nesse caso a ordem de grandeza de a é maior que de b 1.5.2 Erro Relativo Serve para prescrever a precisão de um cálculo. É definido como o erro absoluto dividido pelo valor aproximado, ou seja: x |xx| ER x . Exemplo 1: O erro relativo pode transmitir perfeitamente os resultados do exemplo anterior: 4 a 10000096,0 3876 |373,0| ER ; 1b 10.5373,0 1 |373,0| ER O erro percentual é dado por xx EREP .100 . Então, tem-se um erro percentual de 0,0096% no primeiro caso e um erro relativo igual a 37% no segundo caso. Observa-se que o número que tem menor erro relativo, terá maior precisão. Logo o peso de aproximação em a é maior do que em b. Exemplo 9: O erro relativo considerando-se os números a’= 2112,9; b’= 5,3 e |EA| = 0,1: 15 15 1.6 ERROS DE TRUNCAMENTO E ARREDONDAMENTO EM UM SISTEMA DE ARITMÉTICA DE PONTO FLUTUANTE Considere um sistema que opera em sistema de ponto flutuante de base 10, e seja x: )1g0 e 1f(0,1 10.10. xx te x e x gfx Sendo: e – número de dígitos inteiros t – número de dígitos significativos Exemplo 10: Para t = 4 e x = 234,57, tem-se: X = 0,23457.103 = (0,2345+ 0,00007).103 = 0,2345.103 + 0, 7.10-1 fx = 0,2345 e gx = 0,7 No truncamento, gxx10e-t é desprezado e ex 10.fx pois 0,1 é o menor valor possível para fx. No arredondamento simétrico (forma mais utilizada): )f de dígito último ao "1" (soma 2 1 g se 1010.f)desprezado é (g 2 1 g se 10.f x xx tee x xx e x Quando se utiliza o arredondamento os erros cometidos são menores que no truncamento, no entanto o arredondamento requer um maior tempo de execução e por esta razão o truncamento é mais utilizado. A demonstração de que no arredondamento incorremos em erros menores que no truncamento pode ser encontrada no livro de Cálculo Numérico da Márcia Ruggiero e Vera Lopes. 1.7 PROPAGAÇÃO DE ERROS Erros descritos anteriormente podem influenciar o desenvolvimento de um cálculo, ou então ocorrem ao se efetuar operações com números já afetados por algum erro. Exemplo 11: Suponha-se que as operações abaixo sejam processadas em uma máquina com 4 dígitos significativos e fazendo-se: x = 0.937*104 e y= 0.1272*102 dois elementos de F(10,4, -98,99). Calcule: a) x + y efetuando truncamento; x + y = 0,937.104 + 0,1272.10² = 0,937.104 + 0,001272.10².10² = (0,937 + 0,001272).104 x + y = (0,938272).104 x + y = (0,9382 + 0,000072).104 x+y = (0,9382 + 0,72.10-4).104 = 0,9382.104 + 0,72.100 fx+y = 0,9382 e gx+y = 0,72 logo: x + y = 9382 16 16 b) x+y efetuando arredondamento; como gx+y = 0,72 > ½ x + y = 0,9383.104 = 9383 c) x.y efetuando truncamento; x.y = 0,937.104 . 0,1272.10² = (0,1191864).106 x.y = (0,1191 + 0,0000864).104 x.y = (0,1191 + 0,864.10-4).104 = 0,1191.104 + 0,864.100 fx.y = 0,1191 e gx+y = 0,864 logo: x.y = 119100 d) x.y efetuando arredondamento. como gx.y = 0,864 > ½ x.y = 0,1192 . 104 = 119200 Exercícios: 1) Considere o sistema F(10,3,-5,5) e x = 234.56, calcule fx e gx. 2) Com as operações em F(10,2,-5,5). Sejam x = 4,32 e y= 0,064, calcular x + y, com truncamento e com arredondamento. 3) Considere uma aritmética de ponto flutuante F(10,2,-5,5). Sejam x = 875 e y =3172. Calcular x + y e também x * y. 4) Suponhamos que as operações indicadas nos itens a. e b. sejam processadas numa máquina com 4 dígitos significativos. Fazendo-se: x1 = 0.3491×104 e x2 = 0,2345×100, tem-se: a. (x2 + x1) – x1 b. x2 + (x1 – x1) 17 17 2 ZEROS DE FUNÇÕES Em muitos problemas práticos de aplicação matemática de Ciências e Engenharia, por exemplo: cálculo de valores extremos de uma função indicativa de um fenômeno físico, como temperatura, energia, etc., ou as raízes de um polinômio característico para a obtenção dos autovalores e autovetores de uma matriz, extremamente importantes na análise do comportamento dos sistemas dinâmicos; há a necessidade de se determinar um número xr para o qual: rr xxf 0)( é raiz de f(x) Equações Algébricas (ou Polinomiais): A variável aparece submetida a operações algébricas, repetidas um número finito de vezes. Se x é esta variável, tem-se: 01 2 2 2 2 1 1 ...)( axaxaxaxaxaxP n n n n n nn onde: R ia n Equações Transcendentes: A variável aparece submetida a operações não algébricas em pelo menos um termo da equação. Nestas equações, em pelo menos um termo, aparecem funções como: exponenciais, logarítmicas, trigonométricas, etc. Aplicação: Equilíbrio de Mecanismos: 18 18 2.1 RESOLUÇÃO DE EQUAÇÕES ALGÉBRICAS E TRANSCENDENTES As equações algébricas de 1° e 2° Graus, certas classes de 3° e 4° graus e algumas equações transcendentes podem ter suas raízes calculadas exatamente por métodos analíticos, mas para polinômio de grau posterior a quatro e para a grande maioria das equações transcendentes o problema só pode ser resolvido por métodos que aproximam as soluções. Embora esses métodos não determinem as soluções exatas, as raízes podem ser calculadas com a exatidão que o problema determina, desde que certas condições de f sejam satisfeitas. 2.1.1 Teorema de Bolzano Para que uma função seja contínua y = f(x) tenha no mínimo uma raiz no intervalo [a, b], é suficiente, que ele tenha valores de sinais opostos nos limites deste intervalo, ou seja, f(x) assume valores de sinais opostos nos pontos extremos do intervalo fechado [a,b]. Observando o gráfico seguinte: Se 0)b(f).a(f , então o intervalo conterá no mínimo uma raiz (ou um n° ímpar de raízes). Se 0)b(f).a(f , então, a f(x) não tem nenhuma raiz real no intervalo (ou o n° de raízes será par). A raiz x será definida e única se a derivada f`(x) for contínua e conservar o sinal dentro do intervalo [a, b]. 2.1.2 Refinamento Isolar a raiz, ou seja, achar um intervalo [a,b], o menor possível, que contenha uma e somente uma raiz da equação f(x) = 0; f(b) f(a) 19 19 Técnicas de Isolamento de Raízes: Para isolar os intervalos que contenham raízes, além do Teorema de Bolzano (procedimento analítico), podemos utilizar um recurso gráfico, ou o isolamento através de tabelas, então: Isolamento através de Tabelas: Observamos as mudanças de sinais da função f(x), quando for atribuído valores para a variável x. Verifique o exemplo, f(x) = x3 – 9x +3, x - -100 -5 -3 -1 0 1 2 3 Tem-se que, 1x ( , ) , 2x ( , ) e 3x ( , ) Visualização Gráfica – método gráfico: Se possível a subdivisão da função dada em outras duas funções, pode simplificar muitas vezes a representação gráfica: 0)x(f)x(h)x(g)x(f )x(h)x(g ou seja, os valores de x para os quais vale a igualdade de g(x) e h(x), são aproximações das raízes de f(x), logo: o zero da função se encontra no ponto x da intersecção das duas novas funções. Do exemplo anterior: f x( ) x 3 9x 3 g x( ) x 3 h x( ) 9x 3 4 2 0 2 40 20 20 f x( ) g x( ) h x( ) x Exercício: Como visto, o Método Gráfico, consiste em traçar o gráfico da função f(x) com o objetivo de determinar o intervalo [a, b] que contenha uma única raiz, então, encontre (isole) os intervalos onde as raízes da função transcendente )x(senx)x(f 3 estão localizadas. (lembrar que: para valores reais, calculadoras em rad) 20 20 Procedimento analítico: Seja f(x) contínua em [a, b], então: o Se f(a).f(b) < 0, um número ímpar de raízes neste intervalo; o Se f(a).f(b) > 0, ou um número par de raízes neste intervalo; o Se f(a).f(b) = 0, temos que f(a) ou f(b) é ou são raízes da função; o supondo que f(x) e f’(x) sejam contínuas em [a, b] e que o sinal de f’(x) se mantenha constante, então: Se f(a).f(b) < 0 uma única raiz em [a, b]; Se f(a).f(b) > 0 raiz real em [a, b]; Observação: o fato de f’(x) manter o sinal constante em [a, b], implica que f(x) poderá ser crescente ou decrescente em [a, b]. o Se f’’(x) indica a direção da concavidade da curva: Se f’’(x) > 0 concavidade voltada para cima; Sef’’(x) < 0 concavidade voltada para baixo; 21 21 Exemplo de uma função qualquer: Com relação a primeira raiz: As funções f(x) e f´(x) são contínuas no intervalo x [-2; -1,5] 22 22 Outros exemplos: 0)x(''f ]b ,a[ em 0)x('f 0)b(f ,0)a(f 0)x(''f ]b ,a[ em 0)x('f 0)b(f ,0)a(f 0)x(''f ]b ,a[ em 0)x('f 0)b(f ,0)a(f 0)x(''f ]b ,a[ em 0)x('f 0)b(f ,0)a(f Exercícios: Localize graficamente as raízes das equações a seguir: 1) 032 xx 2) 01³ xx 3) 0)ln(1 xx Sendo a função 12³)( xxxf . 4) f(x) = 0 será possível em [ 4 ,1] ? 5) Utilize a técnica de isolamento através de uma tabela e encontre o intervalo mais aproximado da raíz? 6) Verifique se a função xexxf 2)( cos4)( possui raízes nos intervalos [-5; -4,5], [-2; -1,5] e [0,5; 1]. 7) Analise ²3³3)( 4 xxxxf no intervalo [-2, -1] e diga se há raízes ou não há raízes neste intervalo. xr b b a xr a xr xr b a a b 23 23 Métodos Iterativos para se obter Zeros de Funções Algébricas e Transcendentes São métodos numéricos para determinação de raízes. A. Método da Bisseção (ou Dicotomia) – Método de quebra Seja f(x) uma função contínua no intervalo [a,b] e f(a).f(b) < 0. (Supor uma única raiz no intervalo) e = precisão. Divide-se o intervalo [a,b] ao meio, obtém-se xo. Então tem-se dois sub-intervalos, [a , xo ] e [xo , b] a serem considerados. Se f(xo) = 0, então a r0 xxraiz , caso contrário, a raiz estará no sub-intervalo onde a f(x) tem sinais opostos nos pontos extremos, ou seja, f(a) . f(xo) < 0, por exemplo. O novo intervalo que contém a raiz é dividido ao meio novamente e obtém-se o ponto x1 e assim sucessivamente até que se tenha uma aproximação para a raiz com a margem de erro desejada. A1. Interpretação geométrica do método: 2 ba x 0)b(f).a(f :como 0 2 bx x 0)b(f).x(f 0 1 0 2 xx x 0)x(f).x(f 10 2 10 dado. com ,x 2 xx x 0)x(f).x(f r 20 3 20 A2. Critério de Parada: 1) |a-b|< 2) |xn – xn-1|< 3) |f(xn)| < 4) Número de iterações 5) Erro relativo f(x) x y x3 = xr a X0 X2 b X1 21 21 Exemplo: Aplicação do método da bisseção no cálculo da raiz da função f(x) = ex - 3x, localizada no intervalo [0; 1], aplicando o critério de parada |a – b| < 10-5. Separando em duas outras funções: f x( ) e x 3x g x( ) e x h x( ) 3x 0 0.5 1 1.5 2 2 4 g x( ) h x( ) f x( ) n a b xn f(a) f(b) f(xn) | a – b | < erro 0 0,00000 1,00000 0,50000 1,00000 -0,28172 0,14872 1,00000 1 0,50000 1,00000 0,75000 0,14872 -0,28172 -0,13300 0,50000 2 0,50000 0,75000 0,62500 0,14872 -0,13300 -0,00675 0,25000 3 0,50000 0,62500 0,56250 0,14872 -0,00675 0,06755 0,12500 4 0,56250 0,62500 0,59375 0,06755 -0,00675 0,02952 0,06250 5 0,59375 0,62500 0,60938 0,02952 -0,00675 0,01116 0,03125 6 0,60938 0,62500 0,61719 0,01116 -0,00675 0,00214 0,01563 7 0,61719 0,62500 0,62109 0,00214 -0,00675 -0,00232 0,00781 8 0,61719 0,62109 0,61914 0,00214 -0,00232 -0,00009 0,00391 9 0,61719 0,61914 0,61816 0,00214 -0,00009 0,00103 0,00195 10 0,61816 0,61914 0,61865 0,00103 -0,00009 0,00047 0,00098 11 0,61865 0,61914 0,61890 0,00047 -0,00009 0,00019 0,00049 12 0,61890 0,61914 0,61902 0,00019 -0,00009 0,00005 0,00024 13 0,61902 0,61914 0,61908 0,00005 -0,00009 -0,00002 0,00012 14 0,61902 0,61908 0,61905 0,00005 -0,00002 0,00001 0,00006 15 0,61905 0,61908 0,61906 0,00001 -0,00002 0,00000 0,00003 16 0,61905 0,61906 0,61906 0,00001 0,00000 0,00001 0,00002 17 0,61906 0,61906 0,61906 0,00001 0,00000 0,00000 0,00001 18 0,61906 0,61906 0,61906 0,00000 0,00000 0,00000 0,00000 Este resultado (0,61906) é exato com 5 casas decimais. Observar que quando os critérios de convergência são atingidos, os valores de a, b e xn são iguais com cinco casas decimais. x y Zeros de Funções: Método da bisseção 32 EXERCÍCIO: Traçar o gráfico da função f(x) com o objetivo de determinar o intervalo [a,b] que contenha a raiz da 2)x(sene)x(f x e refine pelo método da bisseção com precisão <10-2 e critério de parada | xn – xn-1 |<. n a b xn f(a) f(b) f(xn) | xn – xn-1 |< 0 1 A4. Número de Iterações A cada iteração o intervalo é dividido ao meio, e na enésima iteração o comprimento do intervalo será nnn 2 ab ab , ou seja, dado intervalo [a,b] são necessárias, no mínimo, n iterações para o cálculo da raizcom a margem de erro desejada. Usando como critério de parada |a-b|< , pode-se saber com antecedência o número de iterações aproximadas a serem feitas, sendo: 2ln ln ab n A5. Convergência do Método da Bisseção: • A convergência é garantida, a aproximação não sai do intervalo inicial, esse intervalo é cada vez dividido por dois; • A convergência é muito lenta: para ganhar uma casa decimal (base 10), precisa-se de 3 a 4 passos. • Não exige o conhecimento de derivadas; • O método deve ser usado para diminuir o intervalo que contém a raiz. Zeros de Funções: Método da bisseção 32 Métodos de ponto fixo São métodos que começam suas iterações de uma aproximação inicial x0, como Newton-Raphson e Iteração Linear. Método de Newton-Raphson (ou Método das Tangentes): Seja f(x) uma função contínua no intervalo [a,b] (que f(a).f(b) < 0), e xr o seu único zero neste intervalo; as derivadas )(xf com ]0)([ xf e )(xf também devem ser contínuas. Graficamente, temos: O método de Newton é equivalente a substituir um pequeno arco da curva y = f(x) por uma reta tangente, traçada a partir de um dos pontos (a ou b) da curvatura. Neste caso, é traçado a partir de Bo [xo, f(xo)], uma reta tangente a curva y = f(x), que intercepta o eixo x no ponto x1. Do ponto B1 traçamos outra reta tangente a curva e o processo se repete até que se encontre xr = xn, com tolerância requerida. Geometricamente, podemos mostrar que: 10 0 0 xx )x(f )x('f)(tg , daí tem-se: )x('f )x(f xx0 0 10 => )x('f )x(f xx 0 0 01 21 1 1 xx )x(f )x('f)(tg , onde: )x('f )x(f xx 1 1 12 Por indução: )x('f )x(f xx 1n 1n 1nn , para n = 1, 2,.. Critério de parada: |)x(f| , ou |xx| 1nn Zeros de Funções: Método da bisseção 32 Convergência do Método de Newton-Raphson e o melhor extremo: Observe que ao partir do ponto A, o ponto 1x [a, b], então o método não convergiria por A. Logo, o método garante convergência desde que: 1. f’(x) e f’’(x) sejam não nulas e preservem o sinal em [a, b]; 2. xo seja tal que f(x).f’’(x) > 0 O método requer o conhecimento da forma analítica de f’(x), mas sua convergência é extraordinária. Exemplo: Calcular novamente a raiz da função f(x) = ex - 3x localizada próxima ao valor x = 0 pelo método iterativo de Newton-Raphson, com precisão 10-5 e critério de parada |xn - xn-1|< erro. n xn-1 f(xn-1) f'(xn-1) xn |xn - xn-1|< erro 1 0,00000 1,00000 -2,00000 0,50000 ----- 2 0,50000 0,14872 -1,35128 0,61006 0,11006 3 0,61006 0,01036 -1,15946 0,61900 0,00894 4 0,61900 0,00007 -1,14294 0,61906 0,00006 5 0,61906 0,00000 -1,14282 0,61906 0,00000 A raiz calculada após 4 iterações é igual a 0,61906 com erro menor do que 10-5. Comparando-se este resultado com o obtido pelo método da bisseção, observa-se que a convergência do método da bisseção foi muito mais lenta do que a do método de Newton-Raphson. Exemplo: Determinar a raiz real de 4)x(senx2)x(f , utilizando o método de Newton-Raphson, com precisão <10-3. 34 Exercícios: 1. Resolva o problema de Equilíbrio de Mecanismos 2 ) Calcular pelo menos uma raíz real da equação 0)log()( xxxf , com 210 , usando o método da bisseção. 3) Calcular a raiz negativa de 3²5³)( xxxxf , usando o método Newton-Raphson com erro = 10-4. 4) Obter a raiz cúbica de 5, usando o método Newton-Raphson, sendo o erro = 10-3. 5) Uma boia esférica de raio R e densidade específica , ao flutuar na água, afunda de uma quantidade x, dada por 042 323 RRxx . a) Achar o afundamento quando R = 3 e o material é cortiça ( )25,0 ; b) Faça o gráfico; 6) Um corpo é movimenta-se verticalmente, sendo seu movimento dado pela lei 02,254,1²54,2³41,456,218,4)( 456 ttttttth . Usando o cálculo diferencial e numérico, verifique o tempo necessário para que a altura alcançada seja a máxima? e qual é a altura máxima? Zeros de Funções 35 Método da Iteração Linear Seja f(x) uma função contínua no intervalo [a, b] e seja xr uma raiz desta função, sendo xr (a, b), tal que f(xr) = 0. Inicialmente determina-se um intervalo I, onde o zero de f(x) esteja isolado, em seguida, por um artifício algébrico, pode-se transformar f(x) = 0 em duas funções que lhe sejam equivalentes, da forma x = g(x), ou seja: y1 = x e y2 = )x(g , onde g(x) é chamada de função de iteração. Interpretação geométrica do método da iteração linear: Busca-se a intersecção da reta x com a curva g(x), e assim o método transforma o problema de se encontrar uma raiz da equação f(x) = 0 na busca do ponto em que x = g(x). Sendo x0 a primeira aproximação da raiz xr, calcula-se g(x0). Faz-se então, x1 = g(x0), x2 = g(x1), x3 = g(x2) e assim vai gera-se uma seqüência de aproximação para a raiz pelo algoritmo: )x(gx 1nn para n = 0, 1, 2, ... B.2.2. Convergência do método Dependendo da função g(x) escolhida, a relação de recorrência )x(gx 1nn pode ou não fornecer uma sequência convergente, desta forma, o Teorema que segue pode estabelecer condições suficientes, porém não necessárias para garantir melhor extremo. Teorema: Seja xr um zero de uma função f(x), isolada em um intervalo I=[a,b], e seja g(x) uma função tal que g(xr) = xr. Se: ii) g(x) e g´(x) são funções contínuas em I iii) 1)x´(gmáx Ix Logo, o método tem sucesso quando | g'(x) | < 1 em todo intervalo. O extremo mais rápido para iniciar o método é aquele para o qual o módulo da primeira derivada é menor. xr Zeros de Funções 36 Se |g’(a)| < |g’(b)| então x0 = a, senão x0 = b. Observe graficamente o problema e verifique que existem funções g(x) que não são indicadas para a escolha. Casos de convergência: Seja f(x) = x3 - 5x + 3, as possíveis funções de iterações ( g (x)): 1. 5 3x )x(g 3 2 0 2 2 2 x g x( ) x Zeros de Funções 37 2. 2x 3x5 )x(g 2 0 2 10 5 x g x( ) x 3. 3/1)3x5()x(g 2 0 2 2 x g x( ) x 4. 5x 3 )x(g 2 2 0 2 10 5 x g x( ) B.2.3. Critério de Parada: |xx| 1nn ou |)x(f| Zeros de Funções 38 Considerações finais: A maior dificuldade neste método é encontrar uma função de iteração que satisfaça à condição de convergência; Teste de | g'(x) | < 1 pode levar a um engano se x0 não estiver suficientemente próximo da raiz. A velocidade de convergência dependerá de |g'(x)|: quanto menor este valor maior será a convergência; Devemos observar que o teste de erro ( |xn - xn-1 | < erro ) não implica necessariamente que | xn - xr| < erro, conforme vemos na figura abaixo: Exemplo: Dada a função f(x) = x2 + 3x - cos(x) - 2.45, obter sua raiz contida no intervalo [0,5; 1], pelo MIL, com um erro < 10-1. Zeros de Funções 39 Exercícios: Calcular as seguintes raízes reais das equações, com erro < 0.001, pelo MIL 1. f(x) = 3ex x32 entre [0, 1] 2. f(x) = 3)xcos(e x entre [0.5, 1] 3. f(x) = )cos(³ xx entre [0.5, 1] 4) A equação de Kepler da mecânica celeste é dada por )( xsenxy , onde corresponde à excentricidade da órbita. Considerando y = 1 e 0.5 , determine a solução para a equação de Kepler no intervalo , 0 . Utilize qualquer um dos métodos estudados.
Compartilhar