INTRODUÇÃO A ALGORITMOS NUMÉRICOS Prof. Renata S.S. Guizzardi 2010/02 O QUE SÃO ALGORITMOS NUMÉRICOS? São programas de computador capazes de solucionar problemas matemáticos, fornecendo resultado numérico aproximado. Apesar de aproximada, a solução pode ser obtida em um grau crescente de exatidão. POR QUE UTILIZAR? (1/2) 1) Um problema de Matemática pode ser resolvido analiticamente, mas esse método pode se tornar impraticável com o aumento do tamanho do problema. Ex.: solução de sistemas de equações lineares. 3 POR QUE UTILIZAR? (2/2) 2) O problema não tem solução analítica. Exemplos: a) e x2 dx b) y y 2 t 2 não representável por funções elementares; não pode ser resolvido analiticamente; 4 FUNÇÃO DE ALGORITMOS NUMÉRICOS NA ENGENHARIA Solucionar problemas técnicos através de métodos numéricos, usando um modelo matemático 5 EXEMPLO DE APLICAÇÃO (1/2) Calcular tensões dos nós do circuito elétrico (pag. 117): 3 2 4 1 No nó 1, pela lei de Kirchhoff: 0 V1 V 2 V1 V 3 V1 V 4 V1 0 1 1 2 2 6V 1 2V 2 V 3 V 4 0 EXEMPLO DE APLICAÇÃO (2/2) O problema é resolvido a partir de um sistema linear de quatro equações e quatro variáveis V1, V2, V3 e V4. 1 1 V 1 0 6 2 3 4 1 V 2 0 0 3 2 13 6 V 3 254 1 0 2 3 V 4 0 RESOLUÇÃO DE PROBLEMAS Problema Real Levantar Dados Construir Modelo Matemático Escolher Método Numérico Implementar Método Computacionalment e Eventualmente Rever Analisar Resultados Solução Numérica NO EXEMPLO ANTERIOR Problema real: determinar tensões nos nós dos circuitos. Levantamento de dados: valores das resistências e tensões nos pontos A e B. Construir modelo matemático: montar equações e criar as matrizes a partir delas. Escolher método numérico: Decomposição LU, Decomposição de Cholesky, Fatoração LDLT, Método de Jacobi etc. Implementar Método Computacionalmente: criar e processar programa. Analisar resultados e verificar se o modelo matemático ou o método numérico precisam ser alterados. TIPOS DE ERROS (1/6) Erro na Modelagem Devido à expressão matemática que não reflete perfeitamente o fenômeno físico ou aos dados terem sido obtidos com pouca exatidão. Erro Grosseiro Devido a erro na elaboração ou implementação do algoritmo ou a erro de digitação. TIPOS DE ERROS (2/6) - TRUNCAMENTO Erro de Truncamento: Devido à aproximação de uma fórmula. expansão da função exponencial em séries de potência Exercício: Calcular o valor de e1 por meio de uma série truncada de segunda ordem. Verificar o erro sabendo-se que o valor com 4 algarismos significativos é 2,718. TIPOS DE ERROS (3/6) ARREDONDAMENTO Erro de Arredondamento: Devido à forma de representação de números no computador. Conversão de base (decimal→binário) Problema com o número de bits que são usados para representar os números (números fracionários). Nem sempre um número decimal exato tem representação exata em binário. Ex. 0,110 → 0,0001001100110012 = 0,09999084410 (erro de 0,000009155 ≈ 9.10-6). TIPOS DE ERROS (4/6) - ARREDONDAMENTO ARITMÉTICA DE PONTO FLUTUANTE Números em ponto flutuante (reais) são representados no formato normalizado: 5 = 0.5 x 101 0,007 = 0.7 x 10-2 35,42 = 0.3542 x 102 Representação no computador TIPOS DE ERROS (5/6) ARREDONDAMENTO ARITMÉTICA DE PONTO FLUTUANTE Suponha uma mantissa de tamanho 2: Represente 35,42 Some 4,32 e 0,064 Subtraia 372 e 371 TIPOS DE ERROS (4/6) ARREDONDAMENTO ARITMÉTICA DE PONTO FLUTUANTE Formato IEEE de ponto flutuante DESASTRES CAUSADOS POR ERROS NAS SOLUÇÕES (1/3) Exemplo 1: Falha no lançamento de mísseis (25/02/1991 – Guerra do Golfo – míssil Patriot) Limitação na representação numérica (24 bits) Erro de 0,34 s no cálculo do tempo de lançamento 16 DESASTRES CAUSADOS POR ERROS NAS SOLUÇÕES (2/3) Exemplo 2: Explosão de foguetes (04/06/1996 – Guiana Francesa – foguete Ariane 5) Limitação na representação numérica (64 bits/ 16 bits) Erro de trajetória 36,7 s após o lançamento Prejuízo: U$ 7,5 bilhões 17 DESASTRES CAUSADOS POR ERROS NAS SOLUÇÕES (3/3) Exemplo 3: Afundamento de Plataforma Marítima (23/08/1991 – Mar do Norte/Noruega – Plataforma Sleipner) Parcialmente causada por erro de análise no elemento finito Rompimento de uma das Células que compunham a parede Prejuízo: U$ 700 milhões ERRO ABSOLUTO E ERRO RELATIVO Duas formas de medir o erro. Erro Absoluto = valor real – valor aproximado. Erro Relativo = valor real – valor aproximado valor real Exercício: calcular erro absoluto e relativo para os exercícios anteriores. OUTROS CONCEITOS IMPORTANTES Complexidade computacional Medida do esforço computacional despendido para resolver o problema. Medido pelo número necessário de operações aritméticas e lógicas. Convergência Propriedade de gerar solução exata. Ordem de Convergência: rapidez com que a sequência gerada por dado método converge para a solução exata. DETALHES DA DISCIPLINA EMENTA 1. 2. 3. 4. 5. 6. 7. Introdução Sistemas Lineares Interpolação Polinomial Ajuste de Curvas Equações Diferenciais Ordinárias Integração Numérica Raízes de Equações LIVRO TEXTO Frederico Ferreira Campos Filho. Algoritmos Numéricos, 2 ed., Rio de Janeiro: LTC. 2007. 428 p. AVALIAÇÃO Duas provas parciais 1ª prova: 4 primeiros itens da ementa 2ª prova: 3 últimos itens da ementa Um trabalho computacional Duas listas de exercício Entrega: terceira semana de novembro Entrega: uma aula antes das provas. Cálculo da Média: (0,7 x Médias das provas) + (0,25 x Trabalho Computacional) + (0,05 x Entrega das listas de exercício completas) HORÁRIO DE ATENDIMENTO Horário de Atendimento 4ªs – 16:00 às 18:00 PÁGINA DO CURSO http://www.inf.ufes.br/~rguizzardi/an/mecanica20102.html