Cálculo Numérico
Syllabus
Aula 1: Introdução à Modelagem Matemática e Erros em Cálculos Numéricos
Teoria (1h):
- Introdução à modelagem matemática em engenharia.
- Tipos de erros: absoluto, relativo, truncamento e arredondamento.
- Propagação de erros em operações aritméticas.
Prática (1,5h):
- Implementação em Python para calcular erros absolutos e relativos em diferentes operações.
- Experimentos com erros de truncamento e arredondamento.
Aula 2: Representação Numérica e Aritmética de Ponto Flutuante
Teoria (1h):
- Revisão dos sistemas de numeração (binário, hexadecimal).
- Representação de números em ponto flutuante (IEEE 754).
- Limitações e problemas comuns, como underflow e overflow.
Prática (1,5h):
- Converter números entre diferentes bases utilizando Python.
- Implementação de operações de ponto flutuante e análise dos resultados.
[[Aula 3 - Métodos Iterativos para Zeros de Funções - Parte 1]]
Teoria (1h):
- Introdução aos métodos de bissecção e falsa posição.
- Análise de convergência e eficiência desses métodos.
- Aplicações na engenharia.
Prática (1,5h):
- Implementação dos métodos de bissecção e falsa posição em Python.
- Resolução de problemas práticos envolvendo a busca por raízes.
Aula 4: Métodos Iterativos para Zeros de Funções - Parte II
Teoria (1h):
- Introdução ao método de Newton-Raphson.
- Comparação entre os métodos de bissecção, falsa posição e Newton-Raphson.
- Discussão sobre a escolha do método adequado.
Prática (1,5h):
- Implementação do método de Newton-Raphson em Python.
- Exercícios de comparação entre os métodos aplicados a diferentes funções.
Aula 5: Sistemas de Equações Lineares - Parte I
Teoria (1h):
- Conceitos básicos de sistemas de equações lineares.
- Métodos diretos: eliminação de Gauss e fatoração LU.
- Aplicação na resolução de sistemas simples.
Prática (1,5h):
- Implementação da eliminação de Gauss e fatoração LU em Python.
- Resolução de sistemas de equações lineares utilizando os métodos discutidos.
Aula 6: Sistemas de Equações Lineares - Parte II
Teoria (1h):
- Métodos iterativos: Gauss-Jacobi e Gauss-Seidel.
- Análise de convergência e aplicabilidade dos métodos iterativos.
- Comparação entre métodos diretos e iterativos.
Prática (1,5h):
- Implementação dos métodos de Gauss-Jacobi e Gauss-Seidel em Python.
- Resolução de sistemas de equações lineares grandes e esparsos.
Aula 7: Interpolação Polinomial - Parte I
Teoria (1h):
- Introdução à interpolação polinomial.
- Polinômios interpoladores: forma de Lagrange.
- Aplicações da interpolação em engenharia.
Prática (1,5h):
- Implementação da interpolação de Lagrange em Python.
- Exercícios práticos com dados experimentais para gerar polinômios interpoladores.
Aula 8: Interpolação Polinomial - Parte II
Teoria (1h):
- Forma de Newton para interpolação polinomial.
- Comparação entre os métodos de Lagrange e Newton.
- Discussão sobre o erro de interpolação.
Prática (1,5h):
- Implementação da interpolação de Newton em Python.
- Análise do erro de interpolação em diferentes conjuntos de dados.
Aula 9: Ajuste de Curvas e Regressão Linear
Teoria (1h):
- Conceitos de ajuste de curvas e regressão linear.
- Método dos mínimos quadrados.
- Aplicação em engenharia para modelagem de dados.
Prática (1,5h):
- Implementação da regressão linear em Python.
- Ajuste de curvas para dados experimentais e análise de resultados.
Aula 10: Integração Numérica - Parte I
Teoria (1h):
- Introdução à integração numérica.
- Fórmulas de Newton-Cotes: regra do trapézio e regra de Simpson.
- Aplicações práticas da integração numérica.
Prática (1,5h):
- Implementação da regra do trapézio e regra de Simpson em Python.
- Cálculo de integrais definidas em problemas de engenharia.
Aula 11: Integração Numérica - Parte II
Teoria (1h):
- Análise dos erros em integração numérica.
- Métodos de quadratura gaussiana.
- Comparação entre métodos de integração.
Prática (1,5h):
- Implementação da quadratura gaussiana em Python.
- Resolução de integrais com diferentes métodos e análise dos erros.
Aula 12: Resolução de Equações Diferenciais Ordinárias - Parte I
Teoria (1h):
- Introdução às equações diferenciais ordinárias (EDOs).
- Método de Euler para a resolução de EDOs.
- Aplicações em problemas de engenharia.
Prática (1,5h):
- Implementação do método de Euler em Python.
- Resolução de problemas de EDOs simples aplicados à engenharia.
Aula 13: Resolução de Equações Diferenciais Ordinárias - Parte II
Teoria (1h):
- Métodos de Runge-Kutta para EDOs.
- Comparação entre métodos de Euler e Runge-Kutta.
- Discussão sobre a escolha do método mais adequado.
Prática (1,5h):
- Implementação do método de Runge-Kutta em Python.
- Resolução de EDOs complexas e análise dos resultados.
Aula 14: Sistemas de Equações Diferenciais
Teoria (1h):
- Introdução aos sistemas de EDOs.
- Métodos numéricos para a resolução de sistemas de EDOs.
- Aplicações em dinâmica de sistemas.
Prática (1,5h):
- Implementação da resolução de sistemas de EDOs em Python.
- Aplicação a problemas dinâmicos em engenharia.
Aula 15: Otimização Numérica - Parte I
Teoria (1h):
- Introdução à otimização numérica.
- Métodos de otimização não linear: gradiente descendente.
- Aplicações em engenharia para otimização de processos.
Prática (1,5h):
- Implementação do método de gradiente descendente em Python.
- Otimização de funções objetivo em problemas de engenharia.
Aula 16: Otimização Numérica - Parte II
Teoria (1h):
- Métodos de otimização com restrições.
- Programação linear e não linear.
- Aplicações de otimização em engenharia de projetos.
Prática (1,5h):
- Implementação de otimização com restrições em Python.
- Resolução de problemas de programação linear e não linear.