Análise numérica

Question book-4.svg
Esta página ou secção cita fontes confiáveis e independentes, mas que não cobrem todo o conteúdo, o que compromete a verificabilidade (desde março de 2011). Por favor, insira mais referências no texto. Material sem fontes poderá ser acadêmico)
[1] com anotações. (Imagem por Bill Casselman)

A análise numérica é o estudo de algoritmos de aproximação para a solução de problemas matemáticos. Em geral, os algoritmos numéricos se dividem em diretos, recursivos e iterativos. Os iterativos apresentam uma sucessão de passos visando a convergência para o valor aproximado da solução exata. [1][2].

Uma das primeiras referências a métodos numéricos consta na tabuleta babilônica YBC 7289, que fornece uma aproximação sexagesimal de o comprimento da diagonal de um quadrado unitário. A aproximação da raiz quadrada de 2 consiste de quatro algarismos sexagesimais, que estão sobre seis dígitos decimais:[3]

Ser capaz de calcular as faces de um triângulo (e assim, sendo capaz de calcular raízes quadradas) é extremamente importante, por exemplo, em carpintaria e construção.[4] Em uma parede quadrada que tem dois metros por dois metros, uma diagonal deve medir metros.[5]

Embora a análise numérica tenha sido concebida antes dos computadores, tal como o entendemos hoje, o assunto se relaciona a uma interdisciplinaridade entre a matemática e a tecnologia da informação. Também é muito referido na disciplina de cálculo numérico.

Um dos procedimentos mais conhecidos de tal área do saber é o método de Newton e o Método de Newton-Raphson.

Pelo método de Newton, se determinam dois valores extremos, entre os quais deve estar o resultado do problema. A função, então, é aplicada à média dos dois valores e esta, na iteração posterior, passa a ser um dos valores extremos, em substituição a um dos anteriores, dependendo do resultado da função.

No método de Newton-Raphson, o número de iterações para se chegar a um resultado com uma determinada aproximação é diminuído pelo uso da derivada da função.

Introdução Geral

O objetivo do campo de análise numérica é projetar e analisar técnicas para encontrar soluções aproximadas, porém precisas, para problemas complexos, cuja variedade é demonstrada a seguir.

  • Métodos numéricos avançados são essenciais para previsões meteorológicas adequadas.
  • Calcular a trajetória de uma aeronave requer a solução numérica precisa de um sistema de equações diferenciais ordinárias.
  • Fabricantes de carros podem melhorar a segurança de seus veículos utilizando simulações computacionais de acidentes. Tais simulações consistem essencialmente da resolução de derivadas parciais numericamente.
  • Fundos de cobertura usam ferramentas de todos os campos da análise numérica para tentar calcular o valor de ações mais precisamente do que outros envolvidos no mercado.
  • Companhias aéreas usam sofisticados algoritmos de otimização para definir os valores de passagens, pagamentos de funcionários e necessidades de combustíveis. Historicamente, tais algoritmos foram desenvolvidos dentro do campo de pesquisa de operações.
  • Companhias de seguros usam programas numéricos para análise de riscos.
  • O resto desta seção destaca diversos temas importantes para a análise numérica.

Histórico

O campo da análise numérica antecede a invenção do computador em séculos. Interpolação linear é usada há mais de 2000 anos. Grandes matemáticos no passado trabalharam com análise numérica, o que é obviamente percebido pelo nome de importantes algoritmos como: Método de Newton, Polinômio de Lagrange, Eliminação Gaussiana, ou Método de Euler.

Para facilitar os cálculos manuais, grandes livros foram produzidos, com fórmulas e tabelas de dados como pontos de interpolação e coeficientes de funções. Utilizando estas tabelas, freqüentemente calculadas até a 16ª casa decimal ou além, qualquer um poderia olhar os valores e inseri-los nas fórmulas e encontrar estimações numéricas aproximadas para algumas funções. Este trabalho culminou em uma publicação do NIST em 1964, de um livro de mais de 1000 páginas editado por Abramowitz e Stegun com um grande número de formulas e funções comumente utilizadas e seus valores em diversos pontos. Os valores das funções não são mais de grande utilidade quando temos um computador à disposição, mas as diversas fórmulas podem ainda ser bastante úteis.

As calculadoras mecânicas também foram desenvolvidas como uma ferramenta para cálculos a mão. Estas calculadoras evoluíram para computadores eletrônicos nos anos 40, quando então se percebeu que estes computadores seriam úteis para fins administrativos. Mas a invenção do computador também influenciou campo da análise numérica, uma vez que cálculos maiores e mais complexos poderiam ser resolvidos.

Métodos diretos e iterativos

Método direto x Método iterativo

Considerando o problema:

3x3 + 4 = 28

para uma quantidade desconhecida de x.

Método direto
3x3 + 4 = 28.
Subtraindo 4 3x3 = 24.
Dividindo por 3 x3 = 8.
Fazendo a raiz cúbica x = 2.

Para o método iterativo, aplique o método da bissecção para f(x) = 3x3 − 24. Os valores iniciais são a = 0, b = 3, f(a) = −24, f(b) = 57.

Método iterativo
a b mid f(mid)
0 3 1.5 −13.875
1.5 3 2.25 10.17...
1.5 2.25 1.875 −4.22...
1.875 2.25 2.0625 2.32...

Concluímos desta tabela que a solução está entre 1.875 e 2.0625. O algoritmo deve retornar qualquer número neste intervalo com um erro menor que 0.2.

Discretização e Integração numérica

Schumacher (Ferrari) in practice at USGP 2005.jpg

Em uma corrida de 2 horas, foi medida a velocidade do carro em três instantes e inseridas na tabela a seguir.

Tempo 0:20 1:00 1:40
km/h 140 150 180

Uma Discretização seria dizer que a velocidade do carro foi constante de 0:00 até 0:40, depois de 0:40 até 1:20 e finalmente de 1:20 até 2:00. Por exemplo, a distância total percorrida nos primeiros 40 minutos é aproximadamente (2/3h × 140 km/h) = 93.3 km. Isto nos permitiria estimar a distância total percorrida em 93.3 km + 100 km + 120 km = 313.3 km, que é um exemplo de integração numérica, pois, o deslocamento é a integral da velocidade.

Problema mal posto: Considere a função f(x) = 1/(x − 1). Perceba que f(1.1) = 10 e f(1.001) = 1000: uma variação em x de menos de 0.1 resulta numa variação de f(x) em aproximadamente 1000. Avaliar f(x) próximo de x = 1 é um problema mal condicionado.

Problema bem posto: Em contraste temos a função que é continua e analisá-la consiste em um problema bem posto, ao mínimo para ‘x’ não muito próximo de zero.

Métodos diretos calculam a solução de um problema em um número finito de passos. Estes métodos resultariam na resposta precisa se eles fossem realizados com precisão infinita. Exemplos incluem a Eliminação Gaussiana, o método de fatoração QR para a resolução de sistemas lineares de equações e o Algoritmo simplex de programação linear. Na prática, é utilizada precisão finita e o resultado é uma aproximação da solução real (assumindo estabilidade).

Em contraste aos métodos diretos, Métodos Iterativos não terminam em um determinado número de passos. Atribuído um valor inicial, métodos iterativos realizam sucessivas aproximações que convergem para a solução exata em seu limite. Um teste de convergência é especificado para decidir quando uma solução suficientemente precisa foi encontrada. Mesmo usando uma precisão infinita, estes métodos (geralmente) não chegariam à solução em um número finito de passos. Exemplos incluem o Método de Newton, Método da Bissecção e a Interação de Jacob. Em matrizes de álgebra computacionais, métodos iterativos são geralmente necessários para problemas complexos.

Métodos iterativos são mais usuais do que métodos diretos em análise numérica. Alguns métodos são diretos em seu princípio, mas são utilizados como se não fossem; e.g Método do resíduo mínimo generalizado e o Método do gradiente conjugado. Para estes métodos o número de passos necessários para se obter a solução exata é tão grande que a aproximação é a aceita da mesma maneira que no método iterativo.

Discretização

Além disso, problemas contínuos devem as vezes ser substituídos por problemas discretos cuja solução é conhecidamente próxima da do problema contínuo; este processo é chamado “discretização”. Por exemplo, a solução da uma Equação diferencial é a Função. Esta função deve ser representada por uma quantidade limitada de dados, por exemplo, por seu valor em um número finito de números em seu domínio, apesar de seu domínio ser contínuo.