Baixe o app para aproveitar ainda mais
Prévia do material em texto
Indaial – 2020 Introdução à FísIca computacIonal Prof.a Luciane Janice Venturini da Silva Prof.a Priscila Chaves Panta 1a Edição Copyright © UNIASSELVI 2020 Elaboração: Prof.a Luciane Janice Venturini da Silva Prof.a Priscila Chaves Panta Revisão, Diagramação e Produção: Centro Universitário Leonardo da Vinci – UNIASSELVI Ficha catalográfica elaborada na fonte pela Biblioteca Dante Alighieri UNIASSELVI – Indaial. Impresso por: S586i Silva, Luciane Janice Venturini da Introdução à física computacional. / Luciane Janice Venturini da Silva; Priscila Chaves Panta. – Indaial: UNIASSELVI, 2020. 204 p.; il. ISBN 978-65-5663-340-4 ISBN Digital 978-65-5663-339-8 1. Física computacional. - Brasil. I. Panta, Priscila Chaves . II. Centro Universitário Leonardo da Vinci. CDD 004 apresentação Caro aluno! Seja bem-vindo à disciplina de Introdução à Física Computacional. Cada capítulo deste livro apresenta um número razoável de exemplos resolvidos passo a passo, bem como um resumo e autoatividades acerca do conteúdo abordado. A Unidade 1 fornece uma introdução geral e alguns conceitos básicos sobre métodos numéricos e sobre erros em soluções numéricas. Inclui também um tópico dedicado à Linguagem de Programação Fortran, onde será apresentado o programa, incluindo sua estruturação e processamento. Na Unidade 2, você terá acesso a alguns dos mais utilizados aplicativos de auxílio para o ensino de ciências, como o Geogebra, Modellus X, OpenScad e o Tracker. O GeoGebra é um programa com finalidades didáticas para ser utilizado em situações de ensino e aprendizagem de ciências. Por meio dele é possível utilizar múltiplas representações gráficas de objetos matemáticos e realizar cálculos aritméticos, algébricos. Uma breve abordagem de seu desenvolvimento será feita, apresentando sua interface, algumas de suas funcionalidades e as etapas necessárias para construção de alguns objetos. O Modellus X é um aplicativo didático extremamente amigável que dá as aulas de Física simulações e gráficos com grande riqueza de detalhes. A partir de pouca habilidade algébrica é possível criar suas próprias animações. OpenScad é um software de código aberto que auxilia na criação de sólidos 3D CAD. É um modelador baseado somente em scripts e utiliza sua linguagem própria. Nas animações em 3D é possível visualizar com riqueza de detalhes. E o Tracker para o estudo do movimento em aulas de física. O Tracker é um programa vinculado ao projeto Open source Phisics (Davidson College), que cria programas abertos designado ao ensino de física. Na sequência, a Unidade 3 apresenta uma introdução a linguagem de programação Latex. Você encontrará um breve apanhado a respeito do contexto histórico do programa, sua estrutura, bem como o processamento do documento. Desejamos um bom estudo a todos! Prof.a Luciane Janice Venturini da Silva Prof.a Priscila Chaves Panta Você já me conhece das outras disciplinas? Não? É calouro? Enfi m, tanto para você que está chegando agora à UNIASSELVI quanto para você que já é veterano, há novidades em nosso material. Na Educação a Distância, o livro impresso, entregue a todos os acadêmicos desde 2005, é o material base da disciplina. A partir de 2017, nossos livros estão de visual novo, com um formato mais prático, que cabe na bolsa e facilita a leitura. O conteúdo continua na íntegra, mas a estrutura interna foi aperfeiçoada com nova diagramação no texto, aproveitando ao máximo o espaço da página, o que também contribui para diminuir a extração de árvores para produção de folhas de papel, por exemplo. Assim, a UNIASSELVI, preocupando-se com o impacto de nossas ações sobre o ambiente, apresenta também este livro no formato digital. Assim, você, acadêmico, tem a possibilidade de estudá-lo com versatilidade nas telas do celular, tablet ou computador. Eu mesmo, UNI, ganhei um novo layout, você me verá frequentemente e surgirei para apresentar dicas de vídeos e outras fontes de conhecimento que complementam o assunto em questão. Todos esses ajustes foram pensados a partir de relatos que recebemos nas pesquisas institucionais sobre os materiais impressos, para que você, nossa maior prioridade, possa continuar seus estudos com um material de qualidade. Aproveito o momento para convidá-lo para um bate-papo sobre o Exame Nacional de Desempenho de Estudantes – ENADE. Bons estudos! NOTA Olá acadêmico! Para melhorar a qualidade dos materiais ofertados a você e dinamizar ainda mais os seus estudos, a Uniasselvi disponibiliza materiais que possuem o código QR Code, que é um código que permite que você acesse um conteúdo interativo relacionado ao tema que você está estudando. Para utilizar essa ferramenta, acesse as lojas de aplicativos e baixe um leitor de QR Code. Depois, é só aproveitar mais essa facilidade para aprimorar seus estudos! UNI Olá, acadêmico! Iniciamos agora mais uma disciplina e com ela um novo conhecimento. Com o objetivo de enriquecer seu conhecimento, construímos, além do livro que está em suas mãos, uma rica trilha de aprendizagem, por meio dela você terá contato com o vídeo da disciplina, o objeto de aprendizagem, materiais complementares, entre outros, todos pensados e construídos na intenção de auxiliar seu crescimento. Acesse o QR Code, que levará ao AVA, e veja as novidades que preparamos para seu estudo. Conte conosco, estaremos juntos nesta caminhada! LEMBRETE sumárIo UNIDADE 1 — MÉTODOS NUMÉRICOS ....................................................................................... 1 TÓPICO 1 — MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN ................................................................................... 3 1 INTRODUÇÃO .................................................................................................................................... 3 2 INTRODUÇÃO AOS MÉTODOS NUMÉRICOS ......................................................................... 3 3 ERROS EM SOLUÇÕES NUMÉRICAS .......................................................................................... 5 3.1 ERROS DE ARREDONDAMENTO ............................................................................................. 6 3.2 ERROS DE TRUNCAMENTO ...................................................................................................... 7 3.3 ERRO ABSOLUTO E ERRO RELATIVO .................................................................................... 8 4 FORMAS DE REPRESENTAÇÃO NUMÉRICA E ARITMÉTICA DE PONTO FLUTUANTE ...................................................................................................................................... 11 5 MÉTODOS NUMÉRICOS ............................................................................................................... 19 5.1 CRITÉRIOS DE PARADA ............................................................................................................ 23 5.1.1 Método da Bissecção ........................................................................................................... 24 5.1.2 Método da Posição Falsa .................................................................................................... 31 5.1.3 Método de Newton-Raphson ............................................................................................. 35 RESUMO DO TÓPICO 1..................................................................................................................... 39 AUTOATIVIDADE .............................................................................................................................. 40 TÓPICO 2 — LINGUAGEM DE PROGRAMAÇÃO FORTRAN ............................................... 43 1 INTRODUÇÃO .................................................................................................................................. 43 2 HISTÓRICO ........................................................................................................................................44 2.1 APRESENTAÇÃO DO PROGRAMA ........................................................................................ 46 2.2 FORMATAÇÃO DO PROGRAMA ............................................................................................ 47 2.3 COMPILAÇÃO E EXECUÇÃO DO PROGRAMA .................................................................. 48 3 ESTRUTURAÇÃO DO DOCUMENTO – CONCEITOS BÁSICOS ........................................ 49 3.1 CONSTANTES EM FORTRAN ................................................................................................... 51 3.1.1 Tipo inteiro (em FORTRAN: INTEGER) .......................................................................... 51 3.1.2 Tipo real (em FORTRAN: REAL) ...................................................................................... 51 3.1.3 Tipo complexo (em FORTRAN: COMPLEX) .................................................................. 52 3.1.4 Tipo caracter (em FORTRAN: CHARACTER) ................................................................ 52 3.1.5 Tipo lógico (em FORTRAN: LOGICAL)........................................................................... 53 3.1.6 Identificadores ...................................................................................................................... 54 3.1.7 Variáveis (simples) ............................................................................................................... 54 3.1.8 A instrução IMPLICIT NONE ............................................................................................ 56 3.1.9 Comando PARAMETER ..................................................................................................... 57 3.1.10 Comando STOP .................................................................................................................. 58 4 PROCESSAMENTOS DO DOCUMENTO .................................................................................. 58 4.1 I/O SIMPLES .................................................................................................................................. 58 4.2 ENTRADA E SAÍDA DE DADOS COM ARQUIVOS ............................................................. 59 4.3 INSTRUÇÃO OPEN ..................................................................................................................... 59 4.4 INSTRUÇÃO CLOSE ................................................................................................................... 60 LEITURA COMPLEMENTAR ............................................................................................................ 62 RESUMO DO TÓPICO 2..................................................................................................................... 64 AUTOATIVIDADE .............................................................................................................................. 65 REFERÊNCIAS ...................................................................................................................................... 67 UNIDADE 2 — MÉTODOS BÁSICOS DE COMPUTAÇÃO CIENTÍFICA OU MÉTODOS COMPUTACIONAIS EM FÍSICA .....................................................................................69 TÓPICO 1 — GEOGEBRA .................................................................................................................. 71 1 INTRODUÇÃO .................................................................................................................................. 71 2 APLICATIVOS COMPUTACIONAIS DE AUXÍLIO PARA O ENSINO DE CIÊNCIAS ......... 71 2.1 SOFTWARE GEOGEBRA ............................................................................................................ 72 2.2 INSTALAÇÃO DO SOFTWARE GEOGEBRA ......................................................................... 74 2.3 APRESENTANDO O GEOGEBRA – NOÇÕES BÁSICAS ...................................................... 75 2.4 BARRA DE MENUS ..................................................................................................................... 75 2.5 JANELAS ....................................................................................................................................... 77 2.6 CAMPO DE ENTRADA DE TEXTO .......................................................................................... 77 2.7 BARRA DE FERRAMENTAS ...................................................................................................... 78 RESUMO DO TÓPICO 1..................................................................................................................... 98 AUTOATIVIDADE .............................................................................................................................. 99 TÓPICO 2 — SOFTWARE MODELLUS ........................................................................................ 101 1 INTRODUÇÃO ................................................................................................................................ 101 2 INTRODUÇÃO AO MODELLUS X ............................................................................................. 102 2.1 O SOFTWARE MODELLUS X E SUA UTILIZAÇÃO NO ENSINO DE CIÊNCIAS ........ 102 2.2 PROBLEMA PROPOSTO PARA NO MODELLUS X: MOVIMENTO DE PROJÉTIL ........ 103 2.3 COMO GERAR E SALVAR ARQUIVO NO MODELLUS X ................................................. 105 2.4 INTERFACE GRÁFICA NO MODELLUS X ........................................................................... 106 2.5 MODELAGEM ALGÉBRICA NO MODELLUS X ................................................................. 107 2.6 PARÂMETROS DO MODELLUS X ......................................................................................... 110 3 CONTROLE NO MODELLUS ...................................................................................................... 111 3.1 COMO PLOTAR UM GRÁFICO NO MODELLUS X ............................................................ 112 3.2 TABELA NO MODELLUS X ..................................................................................................... 113 3.3 ANIMAÇÃO NO MODELLUS ................................................................................................. 114 4 TESTES CONDICIONAIS ............................................................................................................. 117 4.1 NOTAS NO MODELLUS X ....................................................................................................... 119 RESUMO DO TÓPICO 2................................................................................................................... 121 AUTOATIVIDADE ............................................................................................................................ 122 TÓPICO 3 — OPENSCAD ................................................................................................................ 123 1 INTRODUÇÃO ................................................................................................................................ 123 2 OPENSCAD – INTRODUÇÃO AO OPENSCAD ..................................................................... 123 3 O SOFTWARE OPENSCAD E SUA UTILIZAÇÃO NO ENSINO DE CIÊNCIAS ............. 124 4 INSTALAÇÃO DO OPENSCAD .................................................................................................. 125 4.1 BIBLIOTECA OPENSCAD ........................................................................................................ 126 5 COMANDOS BÁSICOS DO OPENSCAD ................................................................................ 127 RESUMO DO TÓPICO 3................................................................................................................... 129 AUTOATIVIDADE ............................................................................................................................ 130 TÓPICO 4 — TRACKER ...................................................................................................................131 1 INTRODUÇÃO ................................................................................................................................ 131 2 TRACKER .......................................................................................................................................... 131 3 A UTILIZAÇÃO DO TRACKER PARA O ENSINO DE CIÊNCIAS ..................................... 132 4 INSTALAÇÃO E NOÇÕES BÁSICAS DO SOFTWARE TRACKER .................................... 134 LEITURA COMPLEMENTAR .......................................................................................................... 141 RESUMO DO TÓPICO 4................................................................................................................... 147 AUTOATIVIDADE ............................................................................................................................ 148 REFERÊNCIAS .................................................................................................................................... 149 UNIDADE 3 — LINGUAGEM DE PROGRAMAÇÃO LATEX ........................................................... 153 TÓPICO 1 — LINGUAGEM LATEX – NOÇÕES INTRODUTÓRIAS .................................... 155 1 INTRODUÇÃO ................................................................................................................................ 155 2 HISTÓRICO DO PROGRAMA .................................................................................................... 156 3 APRESENTAÇÃO DA PROGRAMAÇÃO LATEX ................................................................... 157 3.1 ESTRUTURAÇÃO DE DOCUMENTO LATEX...................................................................... 161 4 TEXTO TIPOGRÁFICO ................................................................................................................. 166 RESUMO DO TÓPICO 1................................................................................................................... 189 AUTOATIVIDADE ............................................................................................................................ 190 TÓPICO 2 — PROCEDIMENTOS BÁSICOS DE PROCESSAMENTO DO LATEX ............ 191 1 INTRODUÇÃO ................................................................................................................................ 191 2 PROCESSAMENTO DO DOCUMENTO LATEX ..................................................................... 191 LEITURA COMPLEMENTAR .......................................................................................................... 198 RESUMO DO TÓPICO 2................................................................................................................... 201 AUTOATIVIDADE ............................................................................................................................ 202 REFERÊNCIAS .................................................................................................................................... 203 1 UNIDADE 1 — MÉTODOS NUMÉRICOS OBJETIVOS DE APRENDIZAGEM PLANO DE ESTUDOS A partir do estudo desta unidade, você deverá ser capaz de: • reconhecer a importância do cálculo numérico como uma ferramenta indispensável na área da pesquisa pura e aplicada; • analisar os erros obtidos devido à aplicação de métodos numéricos e propor soluções para se minimizá-los ou mesmo eliminá-los, quando for possível; • apresentar alguns métodos numéricos para a resolução de diferentes problemas matemáticos; • conhecer e aplicar os principais métodos numéricos computacionais para a resolução de sistemas de equações algébricas lineares. Esta unidade está dividida em dois tópicos. No decorrer da unidade você encontrará autoatividades com o objetivo de reforçar o conteúdo apresentado. TÓPICO 1 – MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN TÓPICO 2 – LINGUAGEM DE PROGRAMAÇÃO FORTRAN Preparado para ampliar seus conhecimentos? Respire e vamos em frente! Procure um ambiente que facilite a concentração, assim absorverá melhor as informações. CHAMADA 2 3 TÓPICO 1 — UNIDADE 1 MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 1 INTRODUÇÃO Nesta unidade, estabeleceremos as bases gerais para o nosso estudo da disciplina, fornecendo uma introdução geral sobre os métodos numéricos e sobre a forma pela qual computadores armazenam números e realizam operações numéricas. Estudaremos na sequência formas de representação dos números em sistemas de numeração, enfatizando a representação em ponto flutuante, comumente adotada em sistemas digitais como calculadoras e computadores e trataremos, ainda, sobre erros em soluções numéricas. Esta unidade inclui também um tópico sobre linguagem de programação científica FORTRAN. Neste contexto, vamos pensar nos computadores e como estes estão em toda parte em nossas vidas, entre desktop, laptop, smartphone, é muito difícil ficar completamente longe dos computadores. Com isso só faz sentido aprender um pouco mais sobre os computadores e como eles funcionam. Aprender o básico e de como os computadores funcionam e, ainda, como os programas são criados é útil e diretamente aplicável. Neste sentido, a linguagem de programação FORTRAN é bastante utilizada pela comunidade científica. Seu nome é uma contração de FORmula TRANslation, ou seja, FORTRAN. O FORTRAN é uma das linguagens de programação mais antigas e foi projetado especificamente para resolver problemas computacionais científicos e de engenharia. 2 INTRODUÇÃO AOS MÉTODOS NUMÉRICOS Nosso propósito inicial nesta unidade é deixar claro para você, caro acadêmico, a relevância do cálculo numérico em inúmeras áreas, em especial nas ciências exatas e engenharias, como ferramenta matemática para a resolução de problemas reais. A estruturação de uma base conceitual fundamental consideravelmente sólida que torna o analista apto à estabelecer um método de solução apropriado, seja ele analítico ou numérico, é a etapa inicial do estudo para buscar a solução de qualquer problema matemático real. Parte considerável dos problemas numéricos nas mais diversas áreas de conhecimento advém da necessidade de solucionar problemas da natureza, sendo possível explicar muitos fenômenos naturais através de modelos matemáticos UNIDADE 1 — MÉTODOS NUMÉRICOS 4 (HUMES, 1984). A expressão modelo matemático contempla, de forma geral, um grupo de símbolos e relações matemáticas que caracterizam, de alguma maneira, um fenômeno em questão ou um problema de situação real (CUNHA; CASTRO, 2010). São duas as categorias em que se baseiam os métodos utilizados na resolução dos modelos matemáticos de problemas, abrangendo diversos ramos das engenharias ou ciências aplicadas: os métodos analíticos e os métodos numéricos. Assim, o método analítico fornece soluções exatas do problema matemático real, a partir de uma expressão matemática explícita em termos das variáveis atreladas ao problema que está sendo solucionado. Já os métodos numéricos, desenvolvidos no cálculo numérico, são um conjunto de técnicas matemáticas sob a forma de uma sequência de operações elementares (adição, subtração, multiplicação e divisão) utilizadas para a aproximação da solução de problemas matemáticos complexos que surgem nas mais diversas áreas e que não podem ser solucionados ou que são de resolução analítica intratável. Este método ou solução fornece um número, ou seja, um valor numérico aproximado para a solução do problema matemático. Em grande parte dos métodos numéricos a sequência de operações é executada de forma iterativa (repetição de um processo) até que a precisão desejada seja obtida. As soluções numéricas (métodos numéricos), apesar de serem uma aproximação, podem ser muito precisas (SUBRAMANIAN; GILAT, 2008). Uma solução analítica é uma resposta exata do problema matemático real. De forma geral, essas soluções são obtidas na forma de equações matemáticas específicas.Por outro lado, uma solução numérica (método numérico) conduz a uma resposta numérica aproximada para o problema real. Os métodos numéricos são ferramentas extremamente poderosas na resolução de problemas matemáticos e, em geral, servem como aproximação da solução de problemas complexos que, normalmente, não são solucionados por técnicas analíticas. IMPORTANT E Geralmente, a aplicação das técnicas numéricas para a resolução de problemas matemáticos compreende um amplo número de cálculos (ou seja, o esforço computacional é alto), tornando inviável a tarefa de maneira integrada com calculadoras científicas, gráficas ou programáveis ou ainda com ambientes computacionais programáveis, os quais dispõem de ferramentas algébricas, numéricas e gráficas, facilitando o trabalho. No entanto, a popularização de eficientes computadores digitais e de alta capacidade de processamento, tornou possível a execução de um grande número de cálculos operacionais repetitivos em um curto espaço de tempo, utilizando TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 5 cada vez mais os métodos e técnicas computacionais na resolução de problemas reais, para os quais as soluções manuais são impraticáveis, imprecisas ou, ainda, são muito demoradas em relação ao tempo de execução; gerando, assim, soluções muito precisas, ainda que inexatas. A solução aproximada gerada a partir de um método numérico é obtida, em geral, partindo de aproximações até que uma aproximação considerada “aceitável” seja obtida. Assim, um método numérico pode ser expresso em termos de algoritmo, que é constituído de uma sequência de n passos, cada um compreendendo um número finito de operações. Ao término desses n passos, o algoritmo resulta valores no mínimo “próximos” daqueles que são almejados (SPERANDIO; MENDES; SILVA, 2003). IMPORTANT E Importante deixar claro que propósito do cálculo numérico é estabelecer técnicas numéricas ou métodos numéricos para determinar soluções de problemas matemáticos reais que possam ser representados por modelos matemáticos, em outras palavras, o cálculo numérico busca localizar respostas numéricas para problemas matemáticos. 3 ERROS EM SOLUÇÕES NUMÉRICAS Você já deve ter percebido que, uma vez que o processo de resolução de problemas reais, via os métodos numéricos, fornece soluções aproximadas para os problemas numéricos reais, ocorre o surgimento de erros cuja análise se torna fundamental. Adverso a isso, o processo pode conduzir a resultados distantes do que é esperado ou ainda a outros resultados que não têm relação alguma com a solução do problema original (SPERANDIO; MENDES; SILVA, 2003). Neste tópico, estudaremos várias fontes de erros que interferem nas soluções de problemas em cálculo numérico. Trataremos, também, sobre noções de erro absoluto e erro relativo, necessárias para o entendimento de todo o conteúdo contemplado pela disciplina. Serão apresentadas a seguir as principais fontes de erros que conduzem as diferenças entre uma solução exata e uma solução aproximada de um problema numérico: • erros nos dados de entrada; • erros na determinação do modelo matemático; • erros de arredondamento durante a computação; • erros de truncamento; e • erros Absolutos e Relativos. UNIDADE 1 — MÉTODOS NUMÉRICOS 6 Uma vez que os métodos numéricos fornecem soluções aproximadas para os problemas, a análise de erros torna-se essencial. ATENCAO Nem sempre é trivial representar ou traduzir o fenômeno que está ocorrendo no mundo físico (problema real) através de um modelo matemático. Para obtenção de um modelo matemático que forneça uma solução para o problema real, são necessárias simplificações no modelo físico. Essas simplificações realizadas são consideradas fontes de erros, o que muitas vezes acarreta necessidade de reorganização do modelo físico e matemático (SPERANDIO; MENDES; SILVA, 2003). Enquanto na matemática alguns números são representados por dígitos infinitos, isso não possível na máquina, visto que a própria memória da máquina é finita, ou seja, algumas propriedades básicas da aritmética real não se aplicam quando executadas no computador, o que conduz a erros de arredondamento e truncamento que serão abordados a seguir. 3.1 ERROS DE ARREDONDAMENTO Os erros de arredondamento são aqueles que surgem das operações aritméticas que circundam o método numérico, ou seja, que ocorrem no durante o processo de cálculo de uma solução numérica. Ocorrem pela limitação da quantidade de algoritmos significativos utilizados por computadores digitais para armazenagem de números e execução de operações numérica. É o que é chamado de aritmética de precisão finita (CUNHA; CASTRO, 2010). Como um exemplo simples, consideremos a forma decimal do número 2/9. No formato decimal com quatro algarismos significativos, 2/9 pode ser escrito como 0,6666 ou 0,6667. No segundo caso, o último algarismo foi arredondado. Utilizando uma calculadora digital, o valor real da raiz de 2 é 1,41421356 e o valor arredondamento apresentado é 1,4142136. Uma estimativa do cálculo da área de uma circunferência cujo raio é de 100 m, considerando para π os respectivos valores 3,14; 3,1416 e 3,141592654. É possível determinarmos exatamente essa área? Em função do erro de arredondamento ocasionados pelos valores de π, a determinação exata da área da circunferência não é possível. No entanto, são determinadas as seguintes aproximações para o perímetro em função do erro de arredondamento realizado para os valores de π são determinadas: 628 m; 628,32 m e 628,3185308 m. TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 7 Percebam que erros de arredondamento resultam da forma como os números são representados na máquina, e essa descrição, por sua vez, depende da base em que são registrados os números e do agrupamento máximo de dígitos aplicados nessa representação (SPERANDIO; MENDES; SILVA, 2003). Cálculos envolvendo números que não podem ser representados por meio de um número finito de dígitos não fornecem um valor exato como resultado, em decorrência aos erros de arredondamento. IMPORTANT E De qualquer modo, principalmente quando são utilizadas muitas operações aritméticas, o arredondamento de números reais no método numérico conduz a erros nos cálculos (SUBRAMANIAN; GILAT, 2008). 3.2 ERROS DE TRUNCAMENTO Os erros de truncamento são inerentes ao método numérico utilizado na solução. Métodos numéricos fazem uso de aproximações para solucionar problemas numéricos reais. Os erros gerados por essas aproximações são os erros de truncamento. Surgem quando substituímos um procedimento matemático exato, infinito por processos com uma limitação prefixada (CUNHA; CASTRO, 2010). A aproximação de uma função pela série de Taylor, é um exemplo de erro de truncamento, tais como funções trigonométricas, logarítmicas, exponenciais, entre outras. Para estes casos, é usual mantermos fixas as quantidades de termos que serão considerados, já que as séries contêm infinitos termos. A propagação de erros em processos iterativos se manifesta tanto através de erros por arredondamento como por truncamento, podendo conduzir a solução obtida a um valor em desacordo com a resposta desejada. Não podemos confiar que o resultado provido de uma operação seja exato, até mesmo quando os fatores de uma operação puderem ser representados exatamente no sistema. ATENCAO UNIDADE 1 — MÉTODOS NUMÉRICOS 8 Finalizamos esse subtópico apresentando noções bastante úteis de erro absoluto e erro relativo. 3.3 ERRO ABSOLUTO E ERRO RELATIVO Como já mencionado anteriormente, na tentativa de resolvermos um problema físico real utilizamos métodos numéricos, e os resultados estimados serão aproximações do valor que seria o exato de uma solução do problema em questão. Nesse sentido, sempre que um resultado for estabelecido por aproximação, torna-se necessário determinar a estimativa do errocometido durante a aproximação. Com a limitação do erro dispomos de um valor em que o erro projetado é inferior a um limite. A fim de avaliar a qualidade da aproximação e para termos uma percepção distinta sobre o valor exato da solução é fundamental nos munirmos de informação sobre o erro que acompanha a aproximação para a obtenção da solução de um problema. Os conceitos de Erro Absoluto e Erro Relativo são fundamentais para a estimativa da delimitação de erros gerados durante as aproximações. Vejamos um exemplo: • Seja a equação 2x3 + 3x - 7 = 0. Essa equação possui uma única raiz real. Os seguintes números são aproximações para essa raiz: 1,19500; 1,195175 e 1,195200. Qual dessas aproximações mais se aproxima do valor exato da raiz, ou qual delas é a mais exata? A resposta para essa pergunta baseia-se em conhecer a qualidade da aproximação. Vamos quantificar o quão próximo pode estar uma aproximação do valor exato introduzindo o conceito de erro absoluto. Seja x um número e x sua aproximação, designamos como erro absoluto a diferença entre o valor do número x e o valor aproximado de x . Simbolicamente: Para o caso de x > x , ou seja, quando EAx > 0, definimos que x é uma aproximação por falta e no caso de x < x , ou seja, quando EAx < 0 definimos que x é uma aproximação por excesso. Por exemplo, 3,14 < x < 3,15, a aproximação de x por falta é 3,14 e uma aproximação de x por excesso é 3,15. Em geral, o valor exato de x não é conhecido (razão pela qual procuramos uma aproximação x para x), o que torna impossível determinar o valor exato do erro absoluto. Para esses casos, o que pode ser feito é obter a determinação de um limitante superior ou uma estimativa para o módulo do erro absoluto. TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 9 No exemplo anterior, considerando que x ∊ (3,14; 3,15), se tomarmos como aproximação para π, um valor π também pertence ao intervalo (3,14; 3,15), assim: Portanto, o erro cometido é inferior a um centésimo. Todavia, o erro absoluto não é suficiente para contemplar a qualidade da aproximação. Vejamos uma situação na tentativa de ilustrar isso: Situação 1: adaptada de Ruggiero e Lopes (1988): Considerando-se um número x com uma aproximação x = 2112,9 tal que |EAx|< 0,1, o que condiciona x ∊ (2112, 8; 2113) e tomando um número y com uma aproximação y = 5,3 tal que |EAy| < 0,1, o que condiciona y ∊ (5, 2; 5,4). Percebam que os limites superiores para os módulos dos erros absolutos são os mesmos, assim, podemos dizer que os números estão representados por suas aproximações com a mesma precisão? Em primeira análise percebemos que as grandezas dos números envolvidos são bastante diferentes. Além disso, a aproximação para x é mais precisa que a aproximação para y, vejam que as cotas para os erros absolutos são iguais (0,1), e a grandeza de x é superior a ordem de grandeza de y. No entanto, é necessário que façamos uma análise mais detalhada. Para isso, introduzimos o conceito de erro relativo. Seja x um número e x ≠ 0, sua aproximação EAx é chamada de erro relativo, e representada por ERx, a razão entre EAx e o valor aproximado x. Simbolicamente: Dá-se o nome de erro percentual ou percentual de erro ao produto 100 x ERx. Vejamos um exemplo: Calcularemos cotas para os erros relativos cometidos nas aproximações relativas à situação 1: Solução: UNIDADE 1 — MÉTODOS NUMÉRICOS 10 e Esses resultados confirmam que a aproximação para x é mais precisa que a aproximação para y. Efetivamente, um erro da ordem de 0,1 possui um valor significativo menor para x que é da ordem de milhares do que é para y que é da ordem de unidades. Em grande dos casos, da mesma forma que para o erro absoluto, a exatidão na determinação do erro relativo não é possível. Em geral, isso acontece por não se conhecer o valor exato de x, e sim somente uma aproximação x. Uma cota para o erro relativo pode ser determinada a partir de uma cota para o erro absoluto. ATENCAO A resolução de problemas matemáticos reais (fazendo uso de um modelo numérico) em um computador, causa, em geral, uma solução aproximada do problema em questão. Erros podem surgir em decorrência de diversos fatores. Em função da sua origem, podemos considerar erros inerentes ao modelo matemático escolhido, visto que raramente ele oferece condições de representação exata de fenômenos reais, sendo eles, na maioria dos casos, modelos idealizados, considerando que ao investigar fenômenos naturais somos induzidos a aceitar condições que simplifiquem o problema de maneira a torná-lo tratável. Existem soluções de equações que podem ser construídas somente no sentido que um processo infinito possa ser definido como limite da solução que está sendo procurada. Não é possível completar um processo infinito. Assim, ele é truncado após um número finito de operações. A substituição de um processo infinito por um processo finito resulta em um erro chamado de erro de truncamento. Sejam eles efetuados manualmente ou via computador, os cálculos nos direcionam a o utilizar uma aritmética de precisão finita, isto é, um número finito apenas de dígitos deverá ser considerado. Damos o nome de erro de arredondamento quando desprezamos os outros dígitos e arredondamos o TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 11 número. Os erros ocorridos em função da escolha do modelo e inertes aos dados são considerados erros iniciais do problema matemático, externos ao processo de cálculo. Já os erros de truncamento e erros de arredondamento acontecem durante o processo de operações numéricas. Na próxima tópico, apresentaremos formas de representação numérica e aritmética de ponto flutuante. ESTUDOS FU TUROS 4 FORMAS DE REPRESENTAÇÃO NUMÉRICA E ARITMÉTICA DE PONTO FLUTUANTE Este tópico é dedicada ao tratamento das formas de representação dos números em sistemas de numeração. Será dado enfoque à representação dos números em forma de ponto flutuante, normalmente utilizada em sistemas digitais como calculadoras e computadores. O ato de contar e de anotar a totalidade de objetos descritos, ou seja, realizar medições e registrar os resultados obtidos a partir dessas medições é bastante remoto e diversos processos já foram utilizados para fazê-los. A humanidade, conforme o avanço da civilização, foi detendo-se de modelos abstratos para os registros das contagens e das medições, “os números”. Por consequência, os números apareceram, essencialmente, da necessidade de o homem contar e medir. Os “números” são noções abstratas que servem para aferir as quantidades diversas de uma grandeza, são expressos pelo homem como modelos que permitem contar e medir (LIMA et al., 2003). Para que possamos representar os números, é essencial vincularmos a sua definição aos conceitos de numeral e de sistema de numeração. Em linhas gerais, podemos defini-los como: • Um número é um ente matemático que permitem descrever uma quantidade ou medida. • Um numeral é um símbolo ou um agregado de símbolos que representam um número. • Ao conjunto de numerais que representam os números definimos como sistema de numeração. Faz-se necessário, para tal, definir a base de numeração, que é um número natural fixo, b, b > 1, e são utilizados elementos do conjunto {0,1, 2, ..., b - 1}, chamados de algarismos ou dígitos do sistema de numeração. UNIDADE 1 — MÉTODOS NUMÉRICOS 12 Estamos familiarizados no nosso cotidiano a utilizar o sistema de numeração de base 10, que, por sua vez, é o utilizado com maior frequência para nossa comunicação; ou o sistema de numeração de base decimal, cuja base é negligenciada por ser desnecessária. Então, tratando-se de um número ou numeral, devemos relacioná-los ao sistema de numeração decimal, exceto se a base estiver especificada. É primordial, ao escrevermos o numeral que representa um número, indicar a base do sistema de numeração adotado. ATENCAO Vamosdemonstrar esses conceitos em forma de um exemplo: Exemplo 1 O número 82057 representa: Solução: 1- O algarismo 8 está na posição das dezenas de milhares, equivalente a 8 dezenas de milhares ou 8 x 10000 = 80000 unidades, ou seja, 8 x 104 unidades. 2- O algarismo 2 está ocupando a posição das unidades de milhar, indicando 2 unidades de milhar ou 2 x 1000 = 2000 unidades, ou seja, 2 x 103 unidades. 3- O algarismo 0 está na posição das centenas, equivalente à ausência de centenas ou 0 x 10² unidades. 4- O quarto algarismo 5 está a ocupar a posição das dezenas, valendo 5 dezenas ou 5 x 101 unidades. 5- O último algarismo é o número 7 e está na posição das unidades, equivalente a 7 unidades ou 7 x 100 unidades. Então, 82057 significa 8 x 104 + 2 x 103 + 0 x 102 + 5 x 101 + 7 x 100. Todo e qualquer número natural pode ser representado de forma única em uma base qualquer, isso é estabelecido pelo teorema a seguir. Teorema 1: seja B um número inteiro qualquer superior a 1, assim cada N ∊ aos números naturais, assume uma representação única da forma: N = am x Bm + am - 1 x Bm -1 + … + a2 x B2 + a1 x B1 + a0 Em que am ≠ 0 e 0 ≤ ai ≤ B, para todo i entre 0 ≤ i ≤ m. TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 13 Esse teorema está demonstrado e pode ser visto em livros de teoria dos números. Para exemplificar, vamos expressar um dado número em algumas bases bem conhecidas. Exemplo 2 Vamos representar o número 77 nas bases 2 (binária), 8 (octal), 10 (decimal) e 16 (hexadecimal). Temos Solução: 77 = 1 x 26 + 0 x 25 + 0 x 24 + 1 x 23 + 1 x 22 + 0 x 21 + 0 x 20 77 = 1 x 82 + 1 x 81 + 5 x 80 77 = 7 x 101 + 7 x 100 77 = 4 x 161 + 13 x 160 Assim, o número 77 pode ser escrito como 1001100 na base 2, 115 na base 8, 76 na base 10 e 413 na base 16. Uma notação com o numeral entre parênteses e base como índice, temos que 77 é escrito como (1001100)2, (115) 2, (77) 10 e (413)16. Então: (1001100)2 = (115) 2 = (77) 10 = (413)16. A representação de números inteiros positivos em uma base qualquer é apresentada pelo Teorema 1, visto anteriormente. Todavia, ele pode ser utilizado para a exibição de números reais positivos de modo natural. Assim, se B é um inteiro maior que 1, então, o número: amam -1 ... a2a1a0, a-1a-2 ... Representa o número, na base 10: am x Bm + am-1 x Bm-1 + a2 x B2 + a1 x B1 + a0 x B0 + a-1 x B-1 + a-2 x B-2 + ... , Parte Inteira Parte Fracionária Em que am ≠ 0 e 0 ≤ ai ≤ B, para todo i entre 0 ≤ i ≤ m. A seguir, alguns exemplos para você refazer. Exemplo 3 (142, 857)10 Solução: (142, 857)10 = = 1 x 102 + 4 x 101 + 2 x 100 + 8 x 10-1 + 5 x 10-2 + 7 x 2-3 = 142,857. UNIDADE 1 — MÉTODOS NUMÉRICOS 14 Exemplo 4 (1101, 101)2 Solução: (1101, 101)2 = = 1 x 23 + 1 x 22 + 0 x 21 + 1 x 20 + 1 x 2-2 + 1 x 2-3 = 13,625. Exemplo 5 (470, 75)8 Solução: (470, 75)8 = 4 x 82 + 7 x 81 + 0 x 80 + 7 x 8-1 + 5 x 8-2 = 312,953125. A fim de facilitar a comunicação entre as máquinas digitais, a definição e a representação física das operações aritméticas e a comunicação entre as máquinas digitais, tornou-se essencial o uso de outros sistemas de representação. Os computadores operam geralmente no sistema binário (base 2), o qual utiliza somente dois algarismos (0 e 1), equivalentes aos estados ausência ou presença de sinal elétrico, respectivamente. Outras bases também são ou foram aplicadas. Isto posto, a importância de conhecermos a representação de números em bases diferentes da base decimal e a mudança de números de uma para outra base é um trabalho muitas vezes indispensável. Por isso dá importância de conhecermos a representação de números em bases diferentes da base decimal e a mudança de números de uma para outra base é um trabalho muitas vezes indispensável. Importante salientar que a própria representação de um número em uma dada base pode ser uma fonte de erros, visto que um mesmo número pode ter representação determinada em uma base, mas sua representação em outra base pode ser ilimitada. Conforme Ruggiero e Lopes (1988, p. 3), na interação entre o usuário e o computador: “Inicialmente, os dados de entrada são emitidos no sistema decimal ao computador pelo usuário; ocorre a conversão no sistema decimal de toda esta informação, e todas operações serão processadas neste sistema de numeração. Este processo de conversão afeta o resultado dos cálculos, ou seja, é uma fonte de erros”. TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 15 Todavia, a representação em ponto fixo, não é apropriada para processamento nos computadores ou calculadoras, embora ainda que proveitosa para cálculos escrito. Utiliza-se para estes sistemas, um modelo chamado representação em ponto flutuante. Nessa representação, um número é escrito da seguinte forma: seja x um número qualquer na base B em aritmética de ponto flutuante de t dígitos, ± (0, d1d2 ... dt) x Be Em que: • A representação ± (0, d1d2 ... dt) é chamada de mantissa, B é a base do sistema, t é o número máximo de dígitos da mantissa (algarismos significativos). • Para cada i = 1, 2, ..., t, di é um inteiro com 0 ≤ di ≤ B e d1 ≠ 0, e é um número inteiro no intervalo tal que m ≤ e ≤ M. Dizemos que um número em aritmética de ponto flutuante está normalizado se d1 ≠ 0. Nessa representação, m e M são os limites inferior e superior para o expoente e, respectivamente. Em outras palavras, di ∊ {0, 1, 2, ..., B - 1} e ∊ [m, M]. Um número só poderá ser representado dessa forma se o seu expoente “e” pertencer aos limites m e M. Assim, “Underflow” se e < m “Overflow” se e > M Qualquer número (inteiro ou fracionário), de forma geral, pode ser escrito no formato número x baseexpoente, em que variam a posição da vírgula e o expoente ao qual elevamos a base. Chamamos essa representação de ponto flutuante, já que o ponto muda sua posição de acordo com a determinação do expoente. Quando na forma normalizada, o número é representado deslocando-se a vírgula de maneira que o número seja inferior a 1, o mais perto possível de 1. Logo o primeiro dígito significativo estará logo após a vírgula. NOTA Números cuja representação em aritmética de ponto flutuante de extrapolam o número máximo de dígitos da mantissa são armazenados por arredondamento ou por truncamento. Especifiquemos esses enunciados: • Truncagem: descarta-se todos os decimais a partir de um específico. Por exemplo: 0,57 representamos por truncamento como 0,5; 0,72 pode ser truncado e sua representação fica 0,7. UNIDADE 1 — MÉTODOS NUMÉRICOS 16 • Arredondamento: para cima, descartado para > 5, como exemplo simples tomemos 0,57, se arredondarmos para cima teremos 0,6; se formos arredondar para baixo, descartado para > 5, considerando o número 0,72 teremos 0,7. Como forma de fixação da representação em ponto flutuante, tratamos de alguns exemplos. Exemplo 6 A Tabela 1 ilustra a representação um sistema de aritmética de ponto flutuante, cuja mantissa tenha t = 3 dígitos, base B = 10, m = - 4 e M = 4. TABELA 1 – REPRESENTAÇÃO EM PONTO FLUTUANTE COM ARREDONDAMENTO E TRUNCAMENTO x Representação por Arredondamento Representação por Truncamento 2,71828 0,272 x 101 0,271 x 101 10,053 0,101 x 102 0,100 x 102 1,25 0,125 x 10 0,125 x 10 - 238,15 - 0,238 x 103 - 0,238 x 103 718235,82 Underflow Overflow 0,0000007 Underflow Underflow FONTE: Adaptada de Ruggiero (1988) Exemplo 7 Dados x = 0,937 x 104 e y = 0,1272 x 102, calculemos x + y para um sistema em que t = 4 e B = 10 (RUGGIERO, 1988). Solução: Uma observação relevante sobre a representação em aritmética de ponto flutuante é que a soma de dois números é realizada com o alinhamento dos pontos decimais, da seguinte forma: a mantissa do número de menor expoente é movida para a direita até que os expoentes se equiparem, em outras palavras, o deslocamento é de um número de casas é o mesmoda diferença dos expoentes. Fazendo o alinhamento dos pontos decimais dos valores anteriores teremos: x = 0,937 x 104 e y = 0,001272 x 104. Logo, x + y = (0,937 + 0,001272) x 104 = 0,938272 x 104. TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 17 Este valor pertence ao resultado exato desta operação. Este resultado deve ser arredondado ou truncado, visto que em nosso sistema t = 4. Assim, no arredondamento x + y = 0,9383 x 104 e no truncamento x + y = 0,9382 x 104. As operações de adição e multiplicação em aritmética de ponto flutuante não desfrutam das propriedades associativas e distributivas. ATENCAO Exemplo 8 Vamos obter xy, consideremos x e y do exemplo 7. Solução: xy = (0,937 x 104) x (0,1272 x 10²) = (0,937 x 0,1272) x 106 = = 0,1191864 x 106. Se realizarmos o arredondamento xy = 0,1192 x 106, e se efetuarmos o truncamento, xy = 0,1192 x 106. Exemplo 9 Para um sistema de base 10 com t = 4, temos: Solução: 0,4370 x 105 + 0,1565 x 103 = 0,4370 x 105 + 0,0016 x 105 = (0,4370 + 0,0016) x 105 = 0,4386 x 105. O zero em ponto flutuante é representado por mantissa nula (0,00...0) e com o expoente inferior disponível. Se a mantissa fosse nula, mas se o expoente não fosse o menor possível, poderia ocorrer a ausência de dígitos significativos na adição deste zero a um outro número. Isso acontece em função da maneira como a adição é feita em aritmética de ponto flutuante (CUNHA; CASTRO, 2010). UNIDADE 1 — MÉTODOS NUMÉRICOS 18 Exemplo 10 Representemos os seguintes números cuja base é decimal em aritmética de ponto flutuante: (a) x = 235,89(10) Solução: Um número qualquer na base B em aritmética de ponto flutuante de t dígitos tem a forma: ± (0, d1d2 ... dt) x Be Então, x = 0, 23589 x 103 O expoente da base refere-se ao número de dígitos antecedentes à vírgula. (b) x = 0,000875(10) Solução: Novamente, para esse caso a representação em aritmética de ponto flutuante é estabelecida pela expressão: ± (0, d1d2 ... dt) x Be Assim, x = 0,875 x 10?. A regra diz que d1 deve ser ≠ 0, então não estamos utilizando a representação que nos propomos inicialmente. Então repetimos os dígitos seguindo a regra: x = 0,875 x 10?, elevamos ao número de zeros a direita da vírgula negativamente. Então: x = 0,000875(10) em aritmética de ponto flutuante corresponde a x = 0,875 x 10-3 Esses conhecimentos podem ser aprofundados por você por meio das referências disponibilizadas ao final desta unidade e/ou visitando páginas da internet. O conteúdo disponível no endereço http://www.profwillian.com/_diversos/download/livro_ metodos.pdf poderá ajudá-lo nessa pesquisa. Bons estudos! DICAS TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 19 Apresentamos brevemente neste tópico a importância do cálculo numérico para a resolução de diversos problemas reais nas áreas mais variadas, especialmente ciências exatas e engenharias. Algumas noções sobre erros foram vistas, mostrando como surgem e de que forma podemos medi- los, já que o Cálculo Numérico trabalha com aproximações. Por fim, estudamos formas de representação dos números, com especial ênfase a representação em ponto flutuante. 5 MÉTODOS NUMÉRICOS Este tópico é destinado ao tratamento do problema de determinação de zeros reais (raízes reais) de função reais. Alguns dos principais métodos numéricos iterativos serão estudados para a localização de tais zeros, com destaque ao método da bissecção, método da posição falsa e método de Newton-Raphson. Já é sabido que, para algumas equações, contamos com fórmulas explícitas que nos fornecem as raízes em função dos coeficientes, como as equações polinomiais de segundo grau. Como um exemplo simples, veja uma função do segundo grau e suas raízes: f(x) = ax² + bx + c Suas raízes são x1 e x2, ou seja, x1e x2 são as raízes de f(x). Quando o valor de x na equação anterior for igual a x1 e x2, o valor de f(x) será nulo. Graficamente, como mostrado no Gráfico 1, a solução da equação (suas raízes) é o ponto onde a função f(x) intercepta ou toca o eixo x. GRÁFICO 1 – ILUSTRAÇÃO DE UMA FUNÇÃO DO SEGUNDO GRAU E SUAS RAÍZES FONTE: <http://twixar.me/2y4m>. Acesso em: 22 jul. 2020. UNIDADE 1 — MÉTODOS NUMÉRICOS 20 Percebam que determinar os zeros de uma função significa encontrar as raízes reais dessa função ou dessa equação f(x) = 0, ou seja, determinar os valores de y ∊ R que satisfazem f(y) =0. Chamamos de zeros da função as raízes, porque, nesses valores (nas raízes), a função assume valor nulo (BURIAN; LIMA; HETEM JUNIOR, 2013). No entanto, é praticamente impossível a determinação dos zeros de uma função no caso de funções mais complexas e no caso de polinômios de grau mais elevado. Como exemplo, vamos considerar um circuito elétrico constituído de uma fonte de tensão (uma pilha, por exemplo), um resistor e um diodo, como pode ser visualizado na Figura 1. FIGURA 1 – CIRCUITO ELÉTRICO CONSTITUÍDO DE UMA FONTE DE TENSÃO, UM RESISTOR E UM DIODO FONTE: Adaptado de Buffoni (2002) Queremos determinar a corrente elétrica i que percorre o circuito (queremos a (s) raiz (s) da equação), sendo o valor da tensão V e da resistência R. Inicialmente, precisamos estabelecer um modelo matemático para o nosso sistema físico (o circuito), e estabelecer a solução do problema representado por esse modelo. A relação entre a tensão em função da corrente elétrica para esse dispositivo, ou seja, sua curva característica é dada por: Em que k e Is são constantes, q é a carga do elétron e T a temperatura a qual o dispositivo está sujeito (BUFFONI, 2002). Essa equação corresponde ao modelo matemático para o circuito (lembre-se: esta equação é apenas um exemplo, não é necessário compreendê-la como um todo). Assim, a equação representando nosso circuito e descrevendo o comportamento da corrente elétrica que circunda por ele é expressa por: TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 21 O modelo apresenta uma solução analítica complexa. Então, como obtermos uma expressão que nos forneça o valor para a corrente elétrica i? Em outras palavras, precisamos determinar os zeros da função matemática anterior. A solução desse problema está na utilização de métodos numéricos que serão tratados a seguir e que nos permitirão resolver problemas matemáticos como o visto anteriormente. Toda vez que tivermos que resolver uma equação, recorreremos à determinação dos zeros da função. IMPORTANT E Os métodos numéricos, com o objetivo de localizar as raízes em uma função podem ser identificados de duas formas. O primeiro é o método direto, utilizado quando a solução é obtida por meio de um único passo, com uma raiz exata a menos de erros de arredondamento. O segundo é o método iterativo ou indireto, que constitui um processo de cálculo finito, recursivo, cujo valor atingido a cada etapa origina-se dos valores calculados em etapas precedentes. Grande parte dos casos para esse tipo de processo, determina uma solução aproximada dentro de uma faixa de erro que é considerada aceitável, ou seja, não atinge uma solução exata para as raízes (SANCHES; FURLAN, 2007). Estes métodos são processos iterativos, ou seja, consistem em processos descritos pela repetição de uma determinada operação. Em outras palavras, formam uma sequência de instruções que são executadas passo a passo, algumas das quais formam ciclos repetidos. A ideia, nesse tipo de processo, é partir de uma aproximação inicial para a raiz (um intervalo onde imaginamos a raiz estar contida) e repetir (refinar) um determinado cálculo diversas vezes, obtendo-se, a cada iteração, uma aproximação mais refinada do que aquela encontrada no processo iterativo anterior. E, a cada iteração, utiliza-se o resultado da iteração anterior como parâmetro inicial para o cálculo posterior. UNIDADE 1 — MÉTODOS NUMÉRICOS 22 Métodos numéricos iterativos são soluções numéricas utilizadas paraa determinação aproximada dos zeros de uma função a partir de uma solução inicial para a raiz, e na sequência, refinamos essa aproximação utilizando um processo iterativo, que se caracterizam pela repetição de uma dada operação e que converge para a solução desejada, sob determinadas condições teóricas. NOTA Assim, os métodos iterativos para a determinação das raízes ou zeros de funções envolvem duas fases (RUGGIERO; LOPES, 1988): Fase I – Localização ou isolamento das raízes, que consiste em obter um intervalo que contém a raiz da função. Tomamos como exemplo uma função f(x): f(x) = g(x) - h(x) As raízes de f(x) são: g(x) - h(x) = 0 Assim, os valores de x em que o gráfico g(x) cruza o gráfico de h(x) é a raiz de f(x). Fase II – Refinamento da raiz, que consiste em escolher as aproximações iniciais no intervalo encontrado na Fase I, refiná-las (melhorá-las) sucessivamente até se obter uma aproximação para a raiz que satisfaça uma precisão prefixada. No fluxograma da Figura 2 é possível visualizar a forma como os métodos iterativos fazem o refinamento da aproximação inicial para a determinação da raiz exata. TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 23 FIGURA 2 – FLUXOGRAMA DA FASE DE REFINAMENTO FONTE: Adaptado de Ruggiero e Lopes (1988) 5.1 CRITÉRIOS DE PARADA Por certo um processo numérico iterativo não pode se repetir infinitamente. Em determinado instante é necessário pará-lo. Para decidirmos quando o processo iterativo deve acabar e preciso adotarmos determinados critérios chamado critérios de parada ou teste de parada (BUFFONI, 2002). Em algum momento precisamos cessar um processo numérico iterativo, não podemos repeti-lo infinitamente. Para isso, utilizamos os chamados critérios de parada, que dependerão do problema matemático a ser solucionado e da precisão que almejamos obter na solução. ATENCAO UNIDADE 1 — MÉTODOS NUMÉRICOS 24 Os critérios de parada interrompem a sequência de aproximações geradas pelos métodos iterativos. E estes devem estimar quando uma aproximação está suficientemente perto da raiz exata. No entanto, o que significa estar suficientemente próximo da raiz exata (do zero exato da função)? Que significado possui aproximação ou zero aproximado? Especificadamente, o processo iterativo é interrompido ou finalizado com uma dada precisão ε no momento em que se obtém um intervalo cujo tamanho é menor ou igual a ε, então, qualquer ponto nele contido é tomado como uma estimativa para a raiz ou zero aproximado da função; ou, ainda, quando for alcançado um número máximo de iterações. A partir deste subtópico, estudaremos alguns métodos numéricos de refinamento dos zeros da função, considerando que a forma como se efetua o refinamento é que diferencia cada método. Iniciamos com o método da bissecção, também chamado de método da dicotomia. 5.1.1 Método da Bissecção O método da bisseção é um método de confinamento, bastante intuitivo usado para a determinação da solução de uma equação na forma f(x) = 0 quando é sabido que, dentro de um dado intervalo [a, b], f(x) é contínua, tal que f (a) . f (b) < 0; e que a equação possui uma única solução. Para esse caso, podemos supor f (a) > 0 e f (b) < 0. Para seguirmos falando sobre o método precisamos ter de conhecer o Teorema do Valor Médio (TVM): Teorema do Valor Médio (TVM) Seja f(x) uma função contínua em [a, b] e diferenciável no intervalo (a,b). Então existe um ponto c ∊ (a,b), tal que f(b) – f(a) = f’(c) (b - a) Assim, pelo TVM, temos uma raiz x de f(x) = 0 entre a e b que pode estar em qualquer ponto entre o intervalo [a, b]. O objetivo desse método é diminuir ou fechar o intervalo [a, b] até atingir a precisão ε desejada |b - a| < ε. Para isso, usa-se a sucessiva divisão de [a,b] ao meio, ou seja, a cada iteração, divide-se o intervalo ao meio, modificando o valor de a ou de b. Graficamente o método da bissecção pode ser representado pelo Gráfico 2. TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 25 GRÁFICO 2 – INTERPRETAÇÃO GEOMÉTRICA DO MÉTODO DA BISSECÇÃO FONTE: Adaptado de Barroso (1987) Vejam que temos pouca informação sobre o valor da raiz dessa forma. O objetivo do método de bissecção é reduzir o tamanho do intervalo [a, b] com o intuito de determinar um intervalo menor no qual localizamos a raiz. Por convenção, a primeira aproximação de x, é o ponto médio do intervalo: O método da bissecção requer um intervalo fechado [a, b] em que a função f seja contínua de forma f (a) . f (b) < 0 (a função inverte de sinal nos extremos do intervalo). Por questões de simplicidade, exige-se, ainda, que o zero da função em [a, b] seja único. Considerando que localizar uma raiz significa encontrar um intervalo que a contenha apenas essa raiz. ATENCAO Se obtivermos f (x1) = 0, o problema estará solucionado, pois, neste caso: x= x1. Se f(x1) ≠ 0, x estará no interior de [a, x1] ou no interior de [x1; b] Utilizamos o TVM para determinarmos em qual destes intervalos estará a raiz: I- Se f(a) . f(x1) < 0, a raiz estará em [a, x1]. II- Se f(x1) . f(b) < 0, a raiz estará em [x1, b]. UNIDADE 1 — MÉTODOS NUMÉRICOS 26 No primeiro caso, fazemos b = x1 e no caso II, fazemos a = x1. Em qualquer dos casos, o tamanho do intervalo diminui à metade. Com este último intervalo, reproduzimos o processo e determinamos uma segunda aproximação x2 a partir da qual, caso não seja a raiz, reduzimos novamente o intervalo na metade. Notem que, dependendo do valor de f(x2), teremos a = x2 ou b = x2. Uma sequência de aproximações xn+1 será obtida quando este processo for seguido, considerando n = 0, 1, 2,... pertencentes ao intervalo In = [an; bn] sendo a0 = b0 = b de modo que f(an)f(bn) < 0, e o comprimento de cada In+1. É metade do comprimento de Ii. Então: e Critério de Parada O processo da bissecção, idealmente, deve ser interrompido com a determinação da solução exata. Isso significa que o valor médio de x deve ser f(x) = 0. Na prática, o processo deve ser interrompido quando o erro estimado for menor que algum valor predeterminado (SUBRAMANIAN; GILAT, 2008). No terminado do processo, tem-se um intervalo [a, b] que contém a raiz e uma aproximação x para a raiz exata é determinada. Estimativa do Número de Iterações (k) Seja uma precisão ε e um intervalo inicial [an,bn], é possível determinarmos quantas iterações serão necessárias pelo método da bissecção, que contenha a aproximação xn+1, tal que | xn+1 - x| < ε, Em que ε é a precisão desejada. A estimativa para o número de iterações é dada por: TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 27 O valor de k deve ser tal que (bk-ak) < ε, sendo ε ≠ 0. O método da bissecção pode ser esquematizado com o seguinte algoritmo: Intervalo Inicial: [a0, b0] = [a, b] Repetir: 1- 2- Se f(xn+1) . f(an) < 0 Assim, se an+1 = an; bn+1 = xn+1. Caso contrário: an+1 = xn+1; bn+1 = bn Até que (xn+1) = 0 ou |xn+1-xn| < ε Vantagens do Método da Bissecção • O método sempre apresenta estabilidade e convergência garantida para uma resposta (a raiz sempre será encontrada), ou seja, para a solução procurada, desde que a função f(x) seja contínua no intervalo [a,b] e f(a).f(b) < 0. • Desempenho regular e previsível, as iterações não envolvem cálculos trabalhosos. • O número de interações k é dependente da precisão considerada. Desvantagem do Método • Em comparação com outros métodos, a convergência do método da bissecção é bastante lenta, pois se o intervalo inicial é tal que (b – a) >> ε e se ε for muito pequena, o número de iterações tende a ser muito extenso. Enfim, como você já deve ter percebido, localizar os zeros de uma função significa determinar as raízes dessa função. O método da bissecção apresentado é bem simples de ser compreendido e implementado, porém, ele não é o processo iterativo mais eficiente para a determinação das raízes de uma função, pois consome muitos passos paraatingir uma dada precisão (BURIAN; LIMA; HETEM JUNIOR, 2013). Existem outros métodos iterativos mais eficazes que serão apresentados. Vejamos um exemplo para finalização deste método. UNIDADE 1 — MÉTODOS NUMÉRICOS 28 Exemplo 1 Usando o método da bissecção, encontre uma aproximação para com uma precisão ε = 10-2, no intervalo inicial de [an,bn] = [1,2]. Solução: Pelo enunciado, este problema em questão é equivalente a determinar uma aproximação para o zero de f(x) = x² - 2 com erro inferior a 10-2. Temos uma única raiz de f(x) = 0 no intervalo entre [1,2]. Vamos estimar inicialmente o número de iterações que serão necessárias para a determinação do zero da função. Já sabemos que esse valor pode ser determinado por Ou seja, o número de iterações a ser considerado é k = 7,0. Aproximações: Como f(a1) e f(x1) possuem sinais opostos: b2 = x1 = 1,5 f(a1) < 0 a2 = 1 f(b1) > 0 b1 – a1 = 1,0 > 10-2. TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 29 Como f(a2) e f(x2) possuem o mesmo sinal: a3 = x2 = 1,25 f(a2) < 0 b3 = 1,5 f(b2) > 0 b2 – a2 = 0,5 > 10-2. Como f(a3) e f(x3) possuem o mesmo sinal: a4 = x3 = 1,375 f(a3) < 0 b4 = 1,5 f(b3) > 0 b3 – a3 = 0,25 > 10-2. Como f(a4) e f(x4) possuem sinais opostos: b5 = x4 = 1,4375 f(a4) < 0 a5 = 1,375 f(b4) > 0 b4 – a4 = 0,125 > 10-2. UNIDADE 1 — MÉTODOS NUMÉRICOS 30 Como f(a5) e f(x5) possuem mesmo sinal: a6 = x5 = 1,4062 f(a5) < 0 b6 = 1,4375 f(b5) > 0 b5 – a5 = 0,0625 > 10-2. Como f(a6) e f(x6) possuem sinais opostos: b7 = x6 = 1,4218 f(a6) < 0 a7 = 1,4062 f(b6) > 0 b6 – a6 = 0,0313 > 10-2. TABELA 2 – MÉTODO DA BISSECÇÃO PARA CALCULAR PRECISÃO DE E = 10-2 k ak bk bk- ak xk f(xk) 0 1 2 1 1,5 0,25 1 1 1,5 0,5 1,25 -0,4375 2 1,25 1,5 0,25 1,375 - 0,1093 3 1,375 1,5 0,125 1,4375 0,0664 4 1,375 1,4375 0,0625 1,4062 - 0,0226 5 1,4062 1,4375 0,0312 1,4218 0,0216 6 1,4062 1,4218 0,0156 1,4140 - 0,000604 7 1,4140 1,4218 0,0078 1,4179 0,01044 FONTE: Adaptado de Cunha (2010) Então, temos um intervalo de [a7, b7] = [1,4140; 1,4218] após 7 iterações (k = 7,0), com b7 - a7 = 0,0078 < 10-2. Os resultados anteriores estão expostos na Tabela 2, para melhor compreensão das aproximações e visualização delas. TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 31 Então, temos um intervalo de [a7, b7] = [1,4140; 1,4218] após 7 iterações (k = 7,0), com b7 - a7 = 0,0078 < 10-2. Assim: Esse valor corresponde a uma aproximação x de com precisão inferior a ε = 10-2 e coincidindo, se compararmos, com o valor de pelo menos duas casas decimais. E, se ainda almejássemos obter uma aproximação para com uma precisão inferior a ε = 10-4? Ou melhor, coincidindo com o valor de até pelo menos 5 casas decimais. Seria possível determinarmos o número de iterações que seriam necessárias e executáveis? Certamente que sim, o processo de redução dos intervalos deverá prosseguir para obter uma maior precisão. Tente determinar quantas iterações serão necessárias para garantir uma aproximação para com a precisão estabelecida, utilizando a Estimativa do Número de Iterações (k). 5.1.2 Método da Posição Falsa O método da posição falsa, em sua gênese histórica, é uma técnica iterativa de resolução de problemas lineares já bastante antiga. Muito embora o método da bissecção seja uma técnica perfeitamente válida para determinar raízes de funções, sua abordagem do tipo “força bruta” é relativamente trabalhosa, como você deve ser percebido. O método da posição é uma variação do método da bisseção. Contudo, neste método, mudamos a maneira de escolher a aproximação xn+1. Na técnica da bissecção, a aproximação da raiz era feita com base no ponto médio do intervalo. Na posição falsa aproximaremos a raiz utilizando a reta L que passa pelos pontos (a; f (a)) e (b; f (b)). Em outras palavras, f (x) é aproximada por L e assim x1 (a aproximação de , será o ponto onde a ordenada y da reta L é zero. O Gráfico 3 representa uma análise geométrica do método da posição falsa. UNIDADE 1 — MÉTODOS NUMÉRICOS 32 GRÁFICO 3 – INTERPRETAÇÃO GEOMÉTRICA DO MÉTODO ITERATIVO DA POSIÇÃO FALSA FONTE: Adaptado de Barroso (1987) A equação da reta L é representada por: Como tomamos y = 0, então x = x1. Assim, Logo, Tendo sido determinado o valor de x1, o critério da bissecção poderá ser utilizado para a escolha do próximo intervalo [a,b], ou seja: • Se f(a) . f(x1) < 0, a raiz estará em [a, x1]. • Se f(x1) . f(b) < 0, a raiz estará em [x1, b]. No caso de (i) determinamos b = x1 e para o caso de (ii) determinamos a = x1. E o processo seguirá até a obtenção da solução desejada, obtendo intervalos [an, bn], com a0 = a e b0 = b e TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 33 O método da bissecção utiliza somente informações dos valores a e b para determinar , enquanto o processo da posição falsa utiliza informações de a, b e f(b). Em outras palavras, percebam que a diferença entre os métodos da bissecção e da posição falsa é a forma como cada um divide o intervalo de cada iteração. No método da bissecção, “quebra-se” o intervalo ao meio, enquanto no método da posição falsa considera-se os limites do intervalo que envolve a raiz ([a n , b n ],) como a média ponderada. IMPORTANT E Enquanto o método da bissecção calcula a média aritmética dos limites do intervalo que contém a raiz ([a, b]), o método da posição falsa calcula a média ponderada dos limites do intervalo que contém a raiz ([a, b]). ATENCAO • Convergência: sempre que f(x) for contínua no intervalo [an, bn], com f(a)f(b) < 0, o método da posição falsa irá convergir. • Critério de Parada: no método da posição falsa pode ocorrer que an ou bn permanece fixo a partir de um certo n, nesse caso, não há garantia que bn - an tenda para zero. Em função disso utilizamos o módulo da função |f(x)| < ε como critério de parada, lembrando que ε a precisão estabelecida. Assim, o método iterativo da posição falsa deverá ser interrompido quando atingimos |f(x)| < ε. Finalizamos este método com um exemplo. Exemplo 1 Utilizando o método da posição falsa, localize a raiz da função: UNIDADE 1 — MÉTODOS NUMÉRICOS 34 E, para isso, considere o intervalo inicial de [1, 2] e uma precisão ε de 0,1. Solução: Temos que: f(a1) = - 0,2817 < 0 f(b1) = 2,3890 > 0 O que significa que temos ao menos 1 raiz contida nesse intervalo! Como f(a1) e f(x1) possuem o mesmo sinal: a2 = x1 = 1,1054 f(a1) < 0 b2 = 2 f(b1) > 0 Como f(a2) e f(x2) possuem o mesmo sinal: a3 = x2 = 1,1714 f(a2) < 0 b3 = 2 f(b2) > 0 Como f(a3) e f(x3) possuem o mesmo sinal: a4 = x3 = 1,1714 f(a3) < 0 b4 = 2 f(b3) > 0 TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 35 Esse valor corresponde a raiz da função f(x) = ex __ 1 com precisão inferior a ε = 10-1. f(x4) = (X4) = e 1,2309 __ 2 . (1,2309) __ 1 = __0,0372 < 0 A raiz está entre o intervalo de [a4, b4] = [1,2098; 2], com |f(x)| = 0,0374 < 10-1. TABELA 3 – MÉTODO DA POSIÇÃO FALSA PARA A DETERMINAÇÃO DA RAIZ DA EQUAÇÃO, COM PRECISÃO E = 10-1 ak bk f(a) f(b) x f(x) |f(x)| 1 2 - 0,2817 2,3890 1,1054 - 0,1903 0,1903 1,1054 2 - 0,1903 2,3890 1,1714 -0,1162 0,1162 1,1714 2 - 0,1162 2,3890 1,2098 - 0,0666 0,0666 1,2098 2 - 0,066 2,3890 1,2309 - 0,0374 0,0374 FONTE: A autora Em síntese, o Método da Falsa Posição é uma técnica eficaz quando há pouca precisão no intervalo escolhido para a raiz. Em último caso podemos simplesmente escolher dois pontos x que tenham f(x) de sinais opostose aplicar o método. Apresenta estabilidade e sua convergência para a solução procurada é menos lenta que a convergência estabelecida pelo método da bissecção. 5.1.3 Método de Newton-Raphson Isaac Newton, o criador do cálculo diferencial e integral foi o cientista que desenvolveu o método de Newton-Raphson. Em seguida, outro pesquisador chamado Raphson aperfeiçoou a técnica, e, a partir disso, o nome do método ficou atrelado ao nome dos dois fundadores (BURIAN; LIMA; HETEM JUNIOR, 2013). O método de Newton-Raphson é uma técnica eficiente, além de poder ser generalizada com grande facilidade. A ideia, em todos os métodos, é partir de uma (ou mais) aproximação inicial x0 e após determinar a próxima aproximação seguindo uma repetição do mesmo procedimento para localizar uma raiz da equação f(x) = 0. No método de Newton- Raphson usa-se a reta tangente para determinar as próximas aproximações, até chegar a precisão pretendida. Essa técnica procede da seguinte forma: Seja f: [a,b] uma função contínua em [a,b] diferenciável em (a, b), e seja x0 ∊ (a, b) uma aproximação inicial da raiz x. A determinação da nova aproximação é realizada a partir da reta tangente no ponto (x0, f(x0)). Percebam, assim, que a aproximação seguinte será o valor de x1 para o qual a ordenada (y) da reta tangente será nula, como pode ser visualizado no Gráfico 4, o qual mostra uma interpretação geométrica do método de Newton-Raphson. UNIDADE 1 — MÉTODOS NUMÉRICOS 36 GRÁFICO 4 – INTERPRETAÇÃO GEOMÉTRICA DO MÉTODO DE NEWTON-RAPHSON FONTE: Adaptado de Barroso (1987) A equação da reta tangente no ponto (x0, f(x0)) é dada por: Substituindo as condições mencionadas anteriormente x = x1 e y = 0, teremos: Obteremos a equação do método Newton-Raphson no ponto x0 isolando-se: O mesmo procedimento deve ser adotado na sequência para a determinação da aproximação x2 a partir de x1, seguindo para x2: E, por consequência, a aproximação (n+1) - é representada por: TÓPICO 1 —MÉTODOS NUMÉRICOS E INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO FORTRAN 37 Por fim, vamos exemplificar a aplicação do método de Newton-Raphson. Exemplo 1 Utilizando o método iterativo de Newton-Raphson, determine a raiz da equação f(x) = x² - ex. Considere uma precisão de ∊ = 10-3 e uma aproximação inicial de x0 = -2. Solução: A função é: f(x) = x² - ex, e temos que a derivada da função é: f’(x) = 2x - ex. Se usarmos a expressão (definida anteriormente), Na Tabela 4 estão expostas as iterações do Método de Newton-Raphson: TABELA 4 – MÉTODO DE NEWTON-RAPHSaON PARA A DETERMINAÇÃO DA RAIZ DA EQUAÇÃO F(X) = X² - ex, COM PRECISÃO E = 10-3 n xn f(xn) f’(xn) 0 -2 3,86466 - 4,13533 1 - 1,06545 0,79061 - 2,47547 2 - 0,74607 - 0,08239 - 1,96636 3 0,70417 - 0,00133 -1,90285 4 - 0, 70347 0,000004 - 1,90180 FONTE: A autora Notem que |x4 – x3| = 0,0007 < 0,001. Então, qual é o valor aproximado para a raiz da equação? A raiz da equação deve estar localizada aproximadamente em x4 = - 0,70347. Findamos este subtópico através da qual conhecemos os principais métodos numéricos iterativos que são úteis para determinação de aproximações para zeros reais de funções reais e os aplicamos para a resolução de alguns problemas matemáticos. Além disso, estudamos, também, condições para a garantia da convergência destes métodos e indicamos critérios de parada dos processos. UNIDADE 1 — MÉTODOS NUMÉRICOS 38 Você pode aprimorar e aplicar seus estudos consultando as referências ao final do tópico e acessando páginas da internet relacionadas ao tema que estudamos de forma a complementar seus conhecimentos. Veja a seguir algumas páginas interessantes como sugestões. Bons estudos! • http://www.profwillian.com/_diversos/download/livro_metodos.pdf. • www.ime.usp.br/~asano/LivroNumerico/LivroNumerico.pdf. • http://www.das.ufsc.br/~camponog/Disciplinas/DAS-5103/LN.pdf. • www.ime.usp.br/~asano/LivroNumerico/LivroNumerico.pdf. • www.professores.uff.br/salete/imn/calnumI.pdf. • http://www.das.ufsc.br/~camponog/Disciplinas/DAS-5103/LN.pdf. DICAS http://www.profwillian.com/_diversos/download/livro_metodos.pdf http://www.ime.usp.br/~asano/LivroNumerico/LivroNumerico.pdf http://www.das.ufsc.br/~camponog/Disciplinas/DAS-5103/LN.pdf 39 Neste tópico, você aprendeu que: • O objetivo de um método numérico é determinar um ou mais valores numéricos, que são as chamadas soluções de um problema matemático. • Os métodos numéricos constituem-se em processos recíprocos que possuem como finalidade principal, determinar raízes de equações a partir de uma aproximação inicial. A partir da qual são promovidas as interações diante do uso de metodologias estabelecidas por cada método (RIBEIRO, 2012). • O método numérico é um método não analítico. Adverso as metodologias analíticas, que determinam soluções exatas para os problemas, os métodos numéricos conduzem a soluções aproximadas, de forma geral. Neste sentido, antecedendo a utilização de qualquer método numérico, é fundamental a determinação precisão dos cálculos com que se almeja obter a solução numérica pretendida desejada. • Um importante critério para a seleção de um algoritmo particular na resolução de um dado problema matemático é também a precisão dos cálculos numéricos. • Em geral, um processo numérico iterativo é uma repetição de aproximações de um zero de função, cada uma mais precisa que a anterior. • A sequência do processo proporciona uma aproximação a qual distingue-se do valor exato do zero por alguma precisão prefixada, em um número finito de vezes. • A determinação de cada nova aproximação é realizada utilizando-se aproximações anteriores, e as aproximações iniciais, utilizadas no processo devem ser fornecidas no problema. A Tabela 5 resume algumas características distintas de cada um dos métodos numéricos iterativos estudados por nós. RESUMO DO TÓPICO 1 TABELA 5 – CARACTERÍSTICAS DOS MÉTODOS NUMÉRICOS Método Numérico Expressão Matemática Critério de Parada Convergência Garantida Velocidade de Convergência Bissecção |a - b|< ε Sim Baixa Posição Falsa |f(x)| < ε Sim Alta Newton- Raphson |xn+1 - xn| < ε Nem sempre Muito alta FONTE: Chapman (1998, s.p.) 40 1 Seja um sistema de aritmética de ponto flutuante de quatro dígitos e base decimal. Dados os números: x = 0,7237 x 104, y = 0,2145 x 10-3 e z = 0,2585 x 101. Efetue as seguintes operações e obtenha o erro relativo no resultado, supondo que x, y e z estão exatamente representados: a) x + y + z b) x - y – z c) x/y d) e) 2 Seja o sistema F (10, 4, m, M). Determine o erro absoluto ao representar x = 1428,756 com arredondamento e com truncamento. 3 Sejam x1 = 1000,5 e = 1000,6; x2 = 10,5 e = 10,6. Nota-se que: EA ( ) = EA ( ) = 0,1. Quais os erros relativos? 4 Represente o número abaixo cuja base é decimal em aritmética de ponto flutuante para t = 5, m = -5 e M = 5 (126,4)10. 5 Represente os números na tabela a seguir com um sistema de aritmética de ponto flutuante, cuja base é decimal, t = 3, m = -5 e M = 5. AUTOATIVIDADE Número Representação por Arredondamento Representação por Truncamento 18,054 2,7182818282 10,053 979251 6 Encontre a raiz da função abaixo, pelo método da bissecção, com precisão ε de 0,01. Utilize como intervalo inicial [1,2] e faça uma estimativa do número de iterações para a tolerância de ε = 0,01. 41 Trabalhe com 4 casas decimais após a vírgula para esse exercício. Utilize como critério de parada |b - a| < ε. Este método apresenta convergência garantida? 7 Localize a raiz da função f(x) = x3 – 9x +3 utilizando o método da bissecção e considera as seguintes condições: Intervalo Inicial [a,b] = [0,1], e precisão ε = 2 x10-3. 8 Determine a raiz da função abaixo pelo método da posição falsa, com ε = 10-5 . Utilize como critério de parada |b - a| < ε e o intervalo inicial de [0,1]. 9 Determine uma aproximação para utilizando o método de Newton- Raphson com ε = 0,001. Utilize como aproximação inicial x0 = 2,0 e o critério de
Compartilhar