Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Apostila calc numerico, Notas de estudo de Engenharia Civil

Apostila de Cálculo Numérico - Por: <br>Marcelo Gameiro Munhoz <br>Antonio Cesar Germano Martins <br>

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 16/08/2006

hugo-makoto-6
hugo-makoto-6 🇧🇷

4.7

(78)

242 documentos

Pré-visualização parcial do texto

Baixe Apostila calc numerico e outras Notas de estudo em PDF para Engenharia Civil, somente na Docsity! Apostila de Complementos de Cálculo Numérico 2002 Marcelo Gameiro Munhoz 1 Apostila de Complementos de Cálculo Numérico Antonio Cesar Germano Martins 2 Apostila de Complementos de Cálculo Numérico • Apresentar ao aluno maneiras práticas de se desenvolver e utilizar métodos numéricos. Isso significa mostrar como usar esses métodos numéricos na calculadora e em um computador; • Treinar o aluno a aprender outros métodos numéricos por conta própria. No seu dia-a-dia profissional, ele pode se deparar com um problema cuja solução depende de um método numérico que não foi visto no curso. Portanto, ele deverá ser capaz de encontrar a literatura pertinente, estudar o método e aprender a sua utilização de maneira conceitual e prática (usando um aplicativo computacional) por conta própria. 5 Apostila de Complementos de Cálculo Numérico 2. Representação Numérica 1. Introdução A fim se realizarmos de maneira prática qualquer operação com números, nós precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos tomar como exemplo o número . A fim de calcularmos, por exemplo, o valor de - 1, nós precisamos escrever o número de alguma outra forma, caso contrário não é possível realizar essa operação. Podemos escreve-lo na base decimal, por exemplo, que é a base mais usada na história da humanidade (graças a nossa anatomia). O valor de na base decimal pode ser escrito como 1,41 ou 1,4142 ou ainda 1,41421356237. Qual é a diferença entre essas várias formas de representar ? A diferença é a quantidade de algarismos significativos usados em cada representação. Agora podemos realizar a operação proposta: -1=0.41 ou 0.4142 ou ainda 0.41421356237, conforme o número de algarismos significativos adotados na nossa representação. Em uma máquina digital, como uma calculadora ou um computador, os números não são representados na base decimal. Eles são representados na base binária, ou seja, usam o número 2 como base ao invés do número 10. Como na base decimal existem 10 algarismos diferentes (0, 1, 2 ,3, 4, 5, 6, 7, 8, 9), na base binária existem somente 2 números: 0 e 1. Portanto, a base binária é usada porque essas máquinas utilizam-se de sinais elétricos, sendo o 0 correspondente a ausência de sinal e o número 1 a presença do sinal elétrico. 2.2 Ponto fixo e Ponto Flutuante A princípio, toda vez que escrevemos um número, deveríamos mencionar a base numérica a qual estamos nos referindo. Obviamente, isso não se faz necessário na prática, pois estamos sempre representando os números na base decimal, portanto sabemos exatamente o seu significado. Por exemplo, quando escrevemos o número 1532, o que realmente queremos dizer? Estamos dizendo que esse número representa uma quantidade equivalente a 1F 0B 41000 + 5 F 0 B 4100 + 3 F 0 B 410 + 2, ou, escrevendo a base de outra forma, 1 F 0 B 410 3 + 5F 0B 410 2 + 3F 0B 410 1 + 2F 0B 410 0. Essa é a chamada representação posicional de números. Na base binária, o mecanismo é o mesmo, porém, ao invés de potências de 10, utilizamos potências de 2. Portanto, um número binário como 1011 (lembre-se que na base binária só existem os algarismos 0 e 1) significa 1F 0B 42 3 + 0F 0B 42 2 + 1F 0B 42 1 + 1F 0B 42 0 que na base 10 seria 8+2+1=11. Essa idéia que está por trás da representação dos números em bases numéricas é utilizada para representar números no computador. A fim de tornar a manipulação de números mais eficiente, os computadores fazem a distinção entre números inteiros e números reais. Um número inteiro apresenta a chamada representação de ponto fixo, onde a posição do ponto “decimal” está fixa e todos os dígitos são usados para representar o número em si, com exceção do primeiro dígito usado para representar o sinal desse número. A figura 2.1 ilustra essa representação. 6 Apostila de Complementos de Cálculo Numérico Sinal Dígitos Figura 2.1 - Representação de números inteiros. Para um número real qualquer (inteiro ou não inteiro) é utilizada a representação de ponto flutuante, que é dada pela expressão: F 0 B 1(0.d1d2d3 0 0 1 F...d t) 0 B 4 be onde: 0.d1d2d3 0 0 1 F...d t é uma fração na base b, também chamada de mantissa, com 0 F 0 A 3 di F 0 A 3 b-1, para todo i = 1,2,3,...,t, sendo t o número máximo de dígitos da mantissa que é determinado pelo comprimento de palavra do computador; e é um expoente que varia em um intervalo dado pelos limites da máquina utilizada. Esse tipo de representação é chamada 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. A figura 2.1 ilustra essa representação. Sinal posição do ponto = expoente e dígitos = mantissa Figura 2.2 - Representação de números reais. Alguns exemplos da representação de ponto flutuante pode ser visto na tabela a seguir: Número na base decimal Representação em ponto flutuante mantissa base Expoente 1532 0.1532F 0 B 4104 0.1532 10 4 15.32 0.1532F 0 B 4102 0.1532 10 2 0.00255 0.255F 0 B 410-2 0.255 10 -2 10 0.10F 0 B 4102 0.10 10 1 10 0.1010F 0 B 424 0.1010 2 4 3. Aplicação à Linguagem de Programação C Na linguagem C é possível especificar a representação que deve ser usada para os números a serem armazenados em uma dada variável. Para números inteiros (representação de ponto fixo) existem duas palavras chaves para declarar uma variável: int e long. A diferença entre essas duas representações é o número de dígitos a ser usado. No caso do int, utiliza-se 15 dígitos binários e mais um dígito para o sinal, ou seja, 16 bits que é igual a 2 bytes. Portanto, uma variável declarada com int pode armazenar números de –32768 (=-215) a +32767 (=215-1). Já a palavra chave long corresponde a representação de ponto fixo com 32 bits (31 dígitos binários para o número mais um dígito para o sinal), ou seja, 4 bytes. Neste caso, uma variável declarada como long pode armazenar números de – 2.147.483.648 (= -231) a 2.147.483.647 (=231-1). 7 Apostila de Complementos de Cálculo Numérico O erro cometido ao se calcular o valor de , por exemplo, é apenas um tipo de erro que pode surgir ao se resolver um problema real. Outros tipos de erros também podem aparecer devido a outros tipos de problemas ou limitações. A solução matemática de um determinado problema envolve diversas etapas, como discutido na introdução desta apostila. A solução do problema se inicia com a criação de um modelo matemático do sistema em questão. Esse modelo sempre apresentará aproximações e limitações. Além disso, na grande maioria das vezes, dados experimentais serão utilizados para se obter a solução. Como toda medida experimental apresenta uma incerteza, a solução do problema será influenciada pelas mesmas. Portanto, logo de início, existem diversos fatores que introduzem incertezas na solução numérica do problema. Esse tipo de erro é chamado de erro inicial. O problema discutido na introdução deste capítulo para o cálculo de , que se refere a inevitável limitação na representação de números irracionais (por exemplo), introduz erros no resultado. Esse tipo de erro é chamado de erro de arredondamento. Vamos considerar um outro tipo de problema prático que pode surgir ao realizarmos determinadas operações. Digamos que precisamos calcular o valor de ex. Mais uma vez, iremos utilizar uma máquina digital (calculadora ou computador). Como esse equipamento irá realizar essa operação? Sabemos que a exponencial é uma função que pode ser representada por uma série infinita dada por: (3.3) e na prática é impossível calcular seu valor exato. Portanto, mais uma vez, teremos que fazer uma aproximação, que levará a um erro no resultado final de ex. Neste caso, faremos um truncamento dessa série, e o erro gerado no valor de ex é chamado de erro de truncamento. 3. Propagação e Condicionamento de Erros Numéricos Vamos supor que queremos calcular o valor de - e3. Como vimos anteriormente, ao calcularmos o valor de , teremos que realizar um arredondamento, que leva ao um resultado aproximado de , ou seja, existe um erro de arredondamento associado ao resultado. Para calcularmos o valor de e3 teremos que fazer um truncamento, que também irá gerar um erro no resultado obtido. Portanto, o resultado da operação de subtração entre e e3 apresentará um erro que é proveniente dos erros nos valores de e e3 separadamente. Em outras palavras, os erros nos valores de e e3 se propagam para o resultado de - e3. Podemos concluir então que, ao se resolver um problema numericamente, a cada etapa e a cada operação realizada, devem surgir diferentes tipos de erros gerados das mais variadas maneiras, e estes erros se propagam e determinam o erro no resultado final obtido. A propagação de erros é muito importante pois, além de determinar o erro final de uma operação numérica, ela também determina a sensibilidade de um determinado problema ou método numérico. Se uma pequena variação nos dados de entrada de um problema levar a uma grande diferença no resultado final, considera-se que essa operação é mal-condicionada, ou seja, existe uma grande propagação de erros nessa operação. Por outro lado, se uma pequena variação nos dados de entrada leva a apenas uma pequena diferença no resultado final, então essa operação é bem-condicionada. 4. Erros na Aritmética de Ponto Flutuante 10 Apostila de Complementos de Cálculo Numérico Nós vimos nas seções anteriores que ao manipularmos os números de maneira prática, estaremos sempre trabalhando com erros, devido a diversos fatores. Vamos agora examinar os erros mais comuns que aparecem quando um computador manipula os números. O primeiro tipo de erro que está presente na forma como computadores trabalham com números corresponde aos erros de arredondamento e truncamento. Como citado anteriormente, esses erros estão presentes pois os computadores precisam representar os números com uma quantidade finita de algarismos. Vamos supor, para simplificação, um computador com uma representação de ponto flutuante na base decimal (b=10) e uma mantissa de 4 algarismos (t=4). A fim de representarmos em ponto flutuante nesse computador, por exemplo, o número 734,68, teríamos que trunca-lo para 0,7346F 0 B 4103 ou arredonda-lo para 0,7347F 0 B 4103. Portanto, no truncamento, estaríamos cometendo um erro de 0,8F 0 B 410-1 e no arredondamento, um erro de 0,2F 0 B 410-1. Podemos generalizar esse exemplo e dizer que, em uma representação de ponto flutuante na base b e mantissa de t algarismos, os erros de truncamento serão dados por: (3.4) onde o número em questão foi representado na forma x=fxF 0 B 4 be. E os erros de arredondamento serão dados por: (3.5) Portanto, para uma representação numérica com t=24 ou t=53 (como no caso da maioria dos computadores) esse erro é muito pequeno. Apesar de pequeno, é importante lembrar que ele se propagará nas operações aritméticas realizadas pelo computador. Vamos tomar como exemplo a soma dos números 6563 (= 0,6563F 0 B 4104) e 3,375 (= 0,3375F 0 B 4101) no nosso computador fictício de mantissa com 4 algarismos. A soma desses dois números corresponde a 6566,375. Como nosso computador pode representar com apenas 4 algarismos, o resultado dessa operação será 0,6566F 0 B 4104 = 6566. Ou seja, apesar de partirmos de dois números exatos, o resultado da soma não será exata. Mais uma vez, para um computador real, esse erro será pequeno, porém, se um número muito grande de operações for realizado e se existir a necessidade de se obter um resultado bastante preciso, será necessário se levar em consideração esse tipo de erro para avaliar o resultado obtido. Existe mais um tipo de erro que aparece quando computadores manipulam números. Esse erro se refere à conversão de números de uma base para a outra. O tipo de conversão mais comum é da base decimal (usada por humanos) para a base binária (usada por computadores) e vice-versa. Um exemplo bastante peculiar é o número 0,1. Ao convertermos esse número da base decimal para a base binária (existem diversos algoritmos para se realizar essa conversão, mas não vamos entrar nesse detalhe aqui), obtemos como resposta: (0,1)10 = (0,0001100110011...)2 (3.6) onde representamos com um subscrito a base em que esse número está escrito. Portanto, notamos que, ao se converter o número 0,1 da base decimal para a base binária, obtemos um número com infinitos algarismos! Como esse número não pode ser representado pelo computador, ele será truncado, introduzindo um erro na sua representação. Uma forma interessante de constatar esse problema é escrevendo um pequeno programa que calcule o valor de . Você verá que esse número não é igual a 100! 11 Apostila de Complementos de Cálculo Numérico 12 Apostila de Complementos de Cálculo Numérico Assim, os valores de x em que o gráfico g(x) intercepta o gráfico de h(x) é a raiz de f(x). Exemplo: Dada a função f(x) = sen(x) - [-cos( x )], encontrar os intervalos que contenham raízes entre 0 e . Partindo de f(x)=0, segue que: sen( x ) – [-cos( x )] = 0 e que sen( x ) = -cos( x ) Fazendo os gráficos de sen(x) e -cos(x) temos: Pelo gráfico, vemos que a função g(x) irá interceptar a função h(x) entre F 0 7 0/2 e F 0 7 0 e entre 3F 0 7 0/2 e 2F 0 7 0. Portanto, podemos afirmar que existe uma raiz de f(x) no intervalo [F 0 7 0/2, F 0 7 0] e no intervalo [3F 0 7 0/2,2F 0 7 0]. Nem sempre o esboço gráfico é a forma mais prática de se obter um intervalo que contém pelo menos uma raiz da função f(x). Muitas vezes é preciso se utilizar um método algébrico. Para isso, vamos recorrer ao teorema de Bolzano. 4.1.. Teorema de Bolzano. Seja uma função f(x) contínua em um intervalo [a,b], tal que, f(a).f(b)<0. Então a função f(x) possui pelo menos uma raiz no intervalo [a,b]. Podemos verificar este teorema graficamente: Exemplo: Seja a função f(x)=xF 0 D 7ln(x)-3.2. Podemos calcular o valor de f(x) para valores arbitrários de x, como mostrado na tabela abaixo: 15 Apostila de Complementos de Cálculo Numérico x 1 2 3 4 f(x) -3.20 -1.81 0.10 2.36 Pelo teorema de Bolzano, concluímos que existe pelo menos uma raiz real no intervalo [2,3]. 5. Método da Dicotomia ou Bissecção. O método da dicotomia ou bissecção é a forma mais intuitiva de se obter a raiz de uma função. Seja uma função f(x) contínua em um intervalo [a,b], e F 0 6 1 uma raiz de f(x) isolada neste intervalo através de um dos métodos descritos no item anterior. Inicialmente, subdividimos este intervalo em suas duas metades, ou seja: Verificamos se a raiz está contida na primeira ou na segunda metade do intervalo inicial, usando o teorema de Bolzano. Ou seja, se a função f(x) mudar de sinal entre a e saberemos que a raiz está nessa primeira metade do intervalo [a,b]. Caso a função f(x) mude de sinal entre e b, a raiz deverá estar na segunda metade do intervalo original. Em seguida repetimos o processo para aquela metade que contém a raiz de f(x): dividimos o intervalo ao meio e verificamos em qual metade está a raiz. Podemos continuar repetindo esse processo indefinidamente. A estimativa da raiz F 0 6 1 em cada etapa será o ponto médio do intervalo em estudo onde sabemos que existe uma raiz. E, como todo processo numérico, é importante estimarmos o erro nesse resultado obtido. No caso do método da bissecção, o erro na estimativa será dado pela metade do comprimento do intervalo em estudo. A seguir, uma ilustração desse processo, onde os sinais acima do eixo horizontal representam o sinal da função: 16 Apostila de Complementos de Cálculo Numérico Exemplo: Encontre uma estimativa para a raiz de: com um erro menor ou igual a 0,050. Os gráficos de ex e de -x são: Através da interseção mostrada no grafíco, podemos concluir que a raiz de f(x) F 0 C E [-1,0]. Utilizando o método da dicotomia, temos: 17 Apostila de Complementos de Cálculo Numérico 7. Método das Aproximações Sucessivas ou Método de Iteração Linear (MIL) O método da iteração linear é um processo iterativo que apresenta vantagens e desvantagens em relação ao método da bissecção. Seja uma função f(x) contínua em um intervalo [a,b] que contenha uma raiz de f(x). O Método de Iteração Linear inicia- se reescrevendo a função f(x) como, f(x) = F 0 6 A(x) – x (4.14) Essa forma de escrever f(x) é bastante útil. No ponto x que corresponde à raiz de f(x), isto é, f(x) = 0, teremos que: f(x) = F 0 6 A(x) – x =0 (4.15) F 0 6 A(x) = x (4.16) ou seja, no ponto x que corresponde à raiz de f(x), ao substituirmos o valor de x na função F 0 6 A(x), teremos como resultado o próprio valor de x. Portanto, a raiz de f(x) será o ponto fixo de F 0 6 A(x), ou seja, o valor que ao ser substituído em F 0 6 A(x) retorna o próprio valor de x. Por exemplo, a função f(x) = x2 - x – 2 pode ser reescrita como, f(x) = x2 – 2 – x = F 0 6 A(x) – x , onde F 0 6 A(x) = x2 – 2. Essa função tem como ponto fixo o valor x=2, pois F 0 6 A(2) = 22 – 2 = 2. E esse é exatamente o valor da raiz de f(x), pois f(2) = 22 – 2 – 2 = 0. Portanto, para encontrarmos a raiz de f(x), podemos encontrar o valor numérico que ao substituirmos em F 0 6 A(x) retorna o próprio valor de x. Para encontrarmos esse valor de x, vamos utilizar um processo iterativo, onde começamos a calcular o valor de F 0 6 A(x) com um valor inicial de x, e recalculamos repetidamente o valor de F 0 6 A(x) sempre usando o resultado de uma dada iteração como a nova estimativa de x, ou seja, fazendo: (4.17) onde, k é a ordem da iteração em que estamos (k = 0, 1, 2, 3, 4, ...). A função F 0 6 A(x) é chamada de função de iteração. Pode-se notar que dada uma função f(x) existem diversas funções de iteração que podem ser usadas no processo. Exemplo: Encontre algumas funções de iteração a partir de f (x) = x2 + ln(x) - x +1. ou então, ou ainda, 20 Apostila de Complementos de Cálculo Numérico Mais um exemplo, Exemplo: Encontre uma estimativa para a raiz de : usando o método da iteração linear. Vamos iniciar a solução encontrando uma boa estimativa inicial para o valor da raiz de f(x). Para isso, vamos usar o método gráfico para o isolamento de raízes. Escrevendo: f(x) = g(x) – h(x) F 0 D E g(x) = x2 e h(x) = ex temos: A partir do esboço gráfico acima, conclui-se que a raiz encontra-se no intervalo [-1,0]. Devemos agora escolher uma função de iteração F 0 6 A(x). Para isso, escrevemos: Ou seja, podemos ter como função iteração, os dois casos abaixo: Substituindo os valores de xk em f(x) para cada iteração k, vemos que a cada etapa nos aproximamos mais da raiz de f(x), pois o valor dessa função fica mais próximo de zero a cada iteração, como mostrado na tabela abaixo: x -1 0,632 -0,606 -0,178 -0,738 0,067 -0,691 -0,024 21 Apostila de Complementos de Cálculo Numérico -0,707 0,007 7.1.. O problema da convergência no Método da Iteração Linear Como já discutido, para se obter um resultado coerente e preciso com um processo iterativo, é necessário que a cada iteração a resposta se aproxime mais e mais da solução real, ou seja, que o método convirja para o valor real. No caso do método da bissecção, nós não precisamos nos preocupar com a convergência, pois com esse método ela está sempre garantida, já que isolamos a raiz em um dado intervalo e nunca deixamos esse intervalo inicial. Já no método da iteração linear, a convergência não é garantida a priori. A cada iteração podemos nos aproximar ou nos afastar da solução real. Portanto, antes de resolver um problema através desse método é preciso se verificar se haverá ou não a convergência. O seguinte Teorema coloca condições suficientes, porém não necessárias para que o método de iteração linear seja convergente. Teorema: Seja uma função f(x) contínua em um intervalo [a,b] e F 0 6 1 uma raiz de f(x) contida em [a,b]. Seja F 0 6 A(x) uma função de iteração obtida a partir de f(x). Se: i) F 0 6 A(x) e F 0 6 A’(x) forem contínuas em [a,b]; ii) |F 0 6 A’(x)| < 1 (para todo) F 0 2 2 x F 0 C E [a,b]; iii) x0 F 0 C E [a,b]. Então: Exemplo: Deseja-se encontrar a raiz de . Para isto, pretende-se usar uma das seguintes funções de iteração: Verifique se F 0 6 A1(x) e F 0 6 A2(x) satisfazem as condições (i) e (ii) do Teorema de convergência no intervalo [1,2]. Vamos iniciar verificando a condição (i) para a função F 0 6 A1(x). Ambas as funções F 0 6 A1(x) e F 0 6 A1‘(x) são contínuas (para todo) F 0 2 2 x F 0 C E R com x F 0 B 9 -0,96. Em seguida, vamos verificar a condição (ii) para F 0 6 A1(x). Portanto, para os valores de x que satisfazem a equação acima, teremos |F 0 6 A1(x)| < 1, ou seja , a condição (ii) do teorema da convergência é satisfeita. Vamos encontrar as raízes da função acima (x2 + 1.92x – 1,1584) e, como ela se trata de uma 22 Apostila de Complementos de Cálculo Numérico 4.8 Método de Newton-Raphson O Método de Newton-Raphson é um caso particular do método de iteração linear. O método de iteração linear consiste em estimar a raiz de uma função f(x) usando o processo iterativo: (4.18) Podemos escrever uma forma geral para a função de iteração: (4.19) pois, para x igual à raiz de f(x), tem-se f(x)=0, ou seja x=F 0 6 A(x) para qualquer A(x)F 0 B 90. Para haver a convergência no método da iteração linear é preciso que |F 0 6 A’(x)|<1 em um intervalo [a,b] que contém a raiz de f(x). Portanto, a idéia no método de Newton-Raphson é escolher uma função F 0 6 A(x) tal que F 0 6 A’(F 0 6 1)=0 onde F 0 6 1 é a raiz de f(x) e F 0 6 1 F 0 C E [a,b]. Com isso, teremos |F 0 6 A’(x)|<1 desde que não nos afastemos muito do valor de F 0 6 1 durante o processo de resolução do problema. Derivando F 0 6 A(x) dada pela expressão (2) em relação a x, temos: (4.20) Exigindo que F 0 6 A’(x)=0, tem-se: (4.21) Portanto: (4.22) Calculando (4.22) em x=F 0 6 1, segue que: (4.23) ou seja: (4.24) Escolhendo: (4.25) em (4.19) segue que: (4.26) O Método de Newton-Raphson consiste em usar o processo iterativo xn+1 = F 0 6 A (xn) e como função de iteração a expressão (4.26). 25 Apostila de Complementos de Cálculo Numérico 4.8.1 Convergência do Método de Newton-Raphson Apesar de obtermos a forma da função F 0 6 A(x) procurando garantir a convergência do processo iterativo, esta não esta sempre garantida para este método (mas quase sempre). A convergência no método de Newton-Raphson esta sempre garantida para um certo intervalo [a,b] que contém a raiz de f(x), desde que f(x) e f ’(x) sejam contínuas nesse intervalo e que f’(F 0 6 1)F 0 B 90, onde F 0 6 1 é a raiz de f(x) (f(F 0 6 1)=0). Portanto, se utilizarmos uma estimativa inicial x0 tal que x0 F 0 C E [a,b], a convergência estará garantida. Em outras palavras, para o método de Newton-Raphson convergir, é preciso que nossa estimativa inicial esteja próxima da raiz de f(x). A proximidade exigida para a convergência vai depender de caso a caso e nem sempre é simples de determinar. 2.. Interpretação Geométrica Dado xn, o ponto xn+1 será obtido pela intercessão da reta tangente a f(x) em xn com o eixo x (a abscissa). Podemos ilustrar isso matematicamente. A reta tangente a f(x) em xn é dada por: (4.27) A partir dessa expressão, obtemos a fórmula de Newton-Raphson, ou seja: (4.28) Portanto, a cada iteração do nosso processo, nos aproximamos cada vez mais da raiz de f(x) através da tangente (ou seja, da derivada) da função f(x). A figura a seguir ilustra essa interpretação geométrica do Método de Newton-Raphson. Exemplo: Calcule a raiz de , usando o método de Newton-Raphson, x0 = 3 como estimativa inicial e como critério de parada |f(xn)| ≤ 0,020. Para encontrar a raiz de f(x) usando o método de Newton-Raphson, devemos ter: onde, Portanto, temos que: xn f(xn) F 0 6 A(xn) 3 6 2,1429 2,1429 0,7349 2,0039 2,0039 0,0195 26 Apostila de Complementos de Cálculo Numérico A estimativa da raiz de f(x) é: 4.9 Lista de Exercícios .1 Quais são as 3 causas mais importantes de erros numéricos em operações realizadas em computadores e calculadoras? .2 Cite as características básicas de todo processo iterativo. .3 O que é um zero ou raiz de função? .4 Como você poderia usar o método da bissecção para estimar o valor de ? Estime esse valor com uma precisão de (ou erro menor que) 0,1. .5 Dada a função : (a) Determine o intervalo em x que contém pelo menos uma raiz de f(x) (graficamente ou aritmeticamente usando o Teorema de Bolzano); (b) Partindo-se desse intervalo, utilize o método da bissecção para determinar o valor dessa raiz após 4 iterações. (c) Qual é o erro no seu resultado final? .6 Dada a função : (a) Determine graficamente o intervalo em x que contém pelo menos uma raiz de f(x); (b) Faça a mesma estimativa, mas desta vez aritmeticamente usando o Teorema de Bolzano; (c) Partindo-se desse intervalo, utilize o método da bissecção para determinar o valor dessa raiz com uma precisão de 0,05. .7 O que significa a convergência de um método iterativo? Que condições garantem a convergência no método da iteração linear? O que fazer caso seja constatado que o método da iteração linear não irá convergir para um dado problema? .8 Dada a função f(x)=ln(x) –x2 + 4, mostre 3 formas para a função F 0 6 A(x) que poderiam ser usadas para se estimar a raiz de f(x). .9 Mostre que as seguintes funções de interação satisfazem as condições (i) e (ii) do teorema de convergência: (a) (b) (c) (d) .10Estime as raízes positivas das seguintes funções pelo método de iteração linear, usando o critério de parada dado: (a) (b) 27 Apostila de Complementos de Cálculo Numérico 1.. Interpolação para 2 pontos (n+1=2) - ajuste de retas (n=1) xi x0 x1 f(xi) f(x0) f(x1) De (5) : (5.6) As funções Li (x) devem satisfazer (3), ou seja: L0 (x0) =1 L1 (x0) =0 L0 (x1) =0 L1 (x1) =1 (5.7) É fácil verificar que, as seguintes funções, satisfazem (7) : (5.8) De (8) em (6) : 2.. Interpolação para 3 pontos (n+1=3) - ajuste de parábolas (n=2) xi x0 x1 x2 f(xi) f(x0) f(x1) f(x2) De (5): (5.9) onde: L0 (x0) =1 L1 (x0) =0 L2 (x0) =0 L0 (x1) =0 L1 (x1) =1 L2 (x1) =0 L0 (x2) =0 L1 (x2) =0 L2 (x2) =1 Por construção: 30 Apostila de Complementos de Cálculo Numérico Portanto: Exemplo: Ajuste uma reta aos seguintes pontos: x 2 4 f(x) 3,1 5,6 5.3 Forma de Newton 5.3.1 Tabela de Diferenças Divididas. Para que possamos discutir a Forma de Newton temos que antes nos familiarizar com a construção da chamada “Tabela de Diferenças Divididas” Dada a tabela de valores: x x0 x1 x2 x3 f(x) f(x0) f(x1) f(x2) f(x3) podemos construir a seguinte tabela: x f(xi) f[xi, xi+1] f[xi, xi+1, xi+2] f[xi, xi+1, xi+2, xi+3] 31 Apostila de Complementos de Cálculo Numérico x0 f(x0) f[x0,x1] f[x0,x1,x2] x1 f(x1) f[x1,x2] f[x0,x1,x2,x3] x2 f(x2) f[x1,x2,x3] f[x2,x3] x3 f(x3) onde: Exemplo: Dados os seguintes valores: xi 0,1 0,4 0,7 1 1,2 f(xi) 0,813 0,536 0,682 1,25 1,864 a tabela de diferenças divididas é: xi f(xi) f[xi , xi+1] f[xi , xi+1, xi+2] f[xi , xi+1 , xi+2 ,xi+3] 0,1 0,813 0,4 0,536 0,7 0,682 32 Apostila de Complementos de Cálculo Numérico Exemplo: Dado: x 0,2 0,5 0,9 1,5 2,0 F(x) 4,88 5,00 5,72 8,00 11,00 encontre o polinômio interpolador p(x) usando a forma de Newton: xi f(xi) f[xi , xi+1] f[xi , xi+1, xi+2] 0,2 4,88 0,5 5,00 0,9 5,72 1,5 8,00 2,0 11,00 Usando (5.9): Note que usando a forma de Newton, p(xi) = f(xi) 5.4 Exercícios 1. Qual é a condição básica para se obter o polinômio interpolador? 2. Qual a relação entre o número de pontos usados na interpolação e o grau do polinômio interpolador que pode ser calculado? 3. Se você tiver um conjunto de 5 dados {(x0,f(x0), (x1,f(x1), (x2,f(x2), (x3,f(x3), (x4,f(x4),}, e deseja fazer uma interpolação linear, isto é, encontrar uma reta que lhe permita obter o valor de f(xF 0 A 2), onde x1<xF 0 A 2<x2: a) Qual seria o grau do polinômio que você calcularia, isto é, quantos pontos você utilizaria? b) E quais pontos da tabela você usaria? 4. A seguinte tabela informa o número de carros que passam por um determinado pedágio em um determinado dia: Horário 10:00 10:30 11:00 11:30 12:00 12:30 Número (em mil) 2.69 1.64 1.09 1.04 1.49 2.44 a) Faça um gráfico de horário vs. número de carros para verificar qual a tendência da curva. b) Estime o número de carros que passariam pelo pedágio às 11:10, usando a forma de Lagrange para encontrar um polinômio interpolador p(x) que estima o número de carros em função do tempo. Use uma reta como função interpoladora. c) Agora, faça a mesma estimativa, mas utilizando uma parábola como polinômio interpolador. 35 Apostila de Complementos de Cálculo Numérico 5. Na fabricação de determinadas cerâmicas é muito importante saber as condições de temperatura em que o produto foi assado no forno. Como não é possível medir a temperatura do forno a todo instante, ela é medida em intervalos periódicos de tempo e esses dados são interpolados para o instante em que cada peça foi “queimada” a fim de se conhecer a temperatura do forno nesse instante. Em um dia de funcionamento do forno, os seguintes dados foram coletados: Horário 7:00 10:00 13:00 16:00 19:00 21:00 Temperatura (102 oC) 2.32 2.51 2.63 2.55 2.41 2.28 a) Construa a tabela de diferenças divididas para esses pontos. b) Estime a temperatura do forno ás 14:30 usando a forma de Newton para apenas dois pontos. c) Faça essa estimativa novamente, desta vez usando 3 pontos. 36 Apostila de Complementos de Cálculo Numérico
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved