Pasta do Professor — Métodos Numéricos Aplicados com Matlab® para Engenheiros e Cientistas
Autor(es): Steven C. Chapra
Steven Chapra, um dos autores mais conhecidos no ensino de métodos numéricos, oferece nesta nova edição, e de maneira didática, reformulações importantes para o aprendizado e a aplicação do MATLAB® na resolução de problemas em engenharia e métodos científicos. Trata-se de um livro rico em aplicações, com linguagem fácil para um estudo independente e atualizações significativas para estudantes iniciantes.
Capítulo 1. Modelagem matemática, métodos numéricos e solução de problemas
Parte 1 Modelagem, computadores e análise de erros
Modelagem matemática, métodos numéricos e solução de problemas
► OBJETIVOS DO CAPÍTULO
O objetivo principal deste capítulo é fornecer uma ideia concreta do que são métodos numéricos e como eles estão relacionados à solução de problemas científicos e de engenharia. Após esta leitura completa, você será capaz de:
Aprender como modelos matemáticos podem ser formulados com base em princípios científicos para simular o comportamento de um sistema físico simples.
Entender como os métodos numéricos fornecem meios de gerar soluções de maneira que possa ser implementada em um computador digital.
Compreender os diferentes tipos de leis de conservação presentes nos modelos empregados nas várias disciplinas de engenharia e avaliar a diferença entre as soluções desses modelos para condições dinâmicas e de estado estacionário.
Conhecer os aspectos básicos dos diferentes tipos de métodos numéricos que serão abordados neste livro.
Capítulo 2. Princípios básicos do MATLAB
Princípios básicos do MATLAB
O objetivo principal deste capítulo é fornecer uma introdução e uma visão geral de como o modo calculadora do MATLAB é usado para implementar cálculos interativos. Após esta leitura completa, você será capaz de:
Aprender como números reais e complexos são atribuídos a variáveis.
Aprender como atribuir valores a vetores e matrizes utilizando a atribuição simples, o operador dois-pontos e as funções linspace e logspace.
Entender as regras de prioridade para construir expressões matemáticas.
Compreender o que são funções nativas e aprender mais sobre elas com os recursos de Help
(Ajuda) do MATLAB.
Aprender como usar vetores para gerar um gráfico simples com base em uma equação.
No Capítulo 1, usamos um balanço de forças para determinar a velocidade terminal de um corpo em queda livre, por exemplo, um saltador de bungee jumping,
Capítulo 3. Programação com MATLAB
Programação com MATLAB
O objetivo principal deste capítulo é aprender como escrever programas no MATLAB (arquivos-M) para implementar métodos numéricos. Após esta leitura completa, você será capaz de:
Aprender como criar arquivos-M bem documentados na janela edit window e como chamá-los a partir da command window.
Entender as diferenças entre scripts e funções.
Saber como inserir comentários de ajuda nas funções.
Definir arquivos-M de modo que eles solicitem informações aos usuários de forma interativa e exibam resultados na command window.
Entender o papel das subfunções e como elas são acessadas.
Aprender como criar arquivos de dados e recuperá-los.
Aprender como escrever um arquivo-M claro e bem documentado empregando programação estruturada para implementar lógica e repetição.
Reconhecer a diferença entre as construções if...elseif e switch.
Capítulo 4. Erros de arredondamento e de truncamento
Erros de arredondamento e de truncamento
O objetivo principal deste capítulo é familiarizar o leitor com as principais fontes de erros envolvidas em métodos numéricos. Após esta leitura completa, você será capaz de:
Entender a diferença entre acurácia e precisão.
Aprender como quantificar o erro.
Aprender como usar estimativas de erro para decidir quando encerrar um cálculo iterativo.
Entender como erros de arredondamento ocorrem em computadores digitais por conta de sua capacidade limitada para representar números.
Entender por que existem limites de faixa e de precisão na representação de números em ponto flutuante.
Reconhecer que os erros de truncamento ocorrem quando formulações matemáticas exatas são representadas por aproximações.
Aprender como usar a série de Taylor para estimar erros de truncamento.
Escrever aproximações por diferença finita progressiva, regressiva e centrada para primeira e segunda derivadas.
Capítulo 5. Raízes: métodos intervalares
Parte 2 Raízes e otimização
Raízes: métodos intervalares
O objetivo principal deste capítulo é apresentar os métodos intervalares para calcular a raiz de uma equação não linear simples. Após esta leitura completa, você será capaz de:
Entender o que são problemas de raízes e onde eles ocorrem na engenharia e na ciência.
Aprender como determinar uma raiz graficamente.
Entender o método da busca incremental e suas deficiências.
Aprender como resolver um problema de raízes com o método da bissecção.
Compreender como estimar o erro da bissecção e por que ele difere do erro estimado para outros tipos de algoritmos de localização de raízes.
Entender o método da falsa posição e como ele difere da bissecção.
Segundo estudos médicos, as chances de um saltador de bungee jumping sofrer uma lesão significativa nas vértebras aumentam bastante se a velocidade de queda livre exceder 36 m/s após 4 s de queda livre. Seu chefe na empresa de bungee jumping solicita que você determine a massa na qual esse critério é excedido, dado um coeficiente de arraste de 0,25 kg/m.
Capítulo 6. Raízes: métodos abertos
Capítulo 6 Raízes: métodos abertos
Raízes: métodos abertos
O objetivo principal deste capítulo é familiarizar o leitor com os métodos abertos para encontrar a raiz de uma única equação não linear. Após esta leitura completa, você será capaz de:
Reconhecer a diferença entre os métodos intervalares e os métodos abertos para localização de raiz.
Compreender o método de iteração de ponto fixo e como se pode avaliar suas características de convergência.
Aprender como resolver um problema de raízes com o método de Newton-Raphson e apreciar o conceito de convergência quadrática.
Saber como implementar os métodos da secante e da secante modificada.
Entender como o método de Brent combina os métodos intervalares confiáveis com os métodos abertos rápidos para localizar raízes de uma maneira robusta e eficiente.
Aprender como usar a função fzero do MATLAB para estimar raízes.
Aprender como manipular e determinar raízes de polinômios com o MATLAB.
Capítulo 7. Otimização
O objetivo principal deste capítulo é apresentar uma introdução de como a otimização pode ser usada para determinar mínimos e máximos tanto de funções unidimensionais quanto de funções multidimensionais. Após esta leitura completa, você será capaz de:
Entender por que e onde a otimização ocorre na solução de problemas científicos e de engenharia.
Reconhecer a diferença entre otimização unidimensional e multidimensional.
Distinguir entre ótimos globais e locais.
Aprender como reformular um problema de maximização de modo que ele possa ser resolvido com um algoritmo de minimização.
Definir a razão áurea e entender por que ela torna a otimização unidimensional eficiente.
Localizar o ótimo de uma função de única variável com a busca da seção áurea.
Localizar o ótimo de uma função de única variável com a interpolação quadrática.
Aprender como aplicar a função fminbnd para determinar o mínimo de uma função unidimensional.
Capítulo 8. Equações algébricas lineares e matrizes
Capítulo 8 Equações algébricas lineares e matrizes
Equações algébricas lineares e matrizes
O objetivo principal deste capítulo é familiarizar o leitor com as equações algébricas lineares e suas relações com as matrizes e com a álgebra matricial. Após esta leitura completa, você será capaz de:
9 Entender a notação matricial.
9 Identificar os seguintes tipos de matrizes: identidade, diagonal, simétrica, triangular e tridiagonal.
9 Aprender como efetuar uma multiplicação matricial e avaliar quando ela é possível.
9 Aprender como representar um sistema de equações algébricas lineares na forma matricial.
9 Aprender como resolver equações algébricas lineares no MATLAB aplicando a divisão à esquerda ou a inversão de matriz.
Suponha que três saltadores de bungee jumping estão conectados por cordas. A Figura 8.1a mostra-os sendo mantidos no lugar verticalmente, de modo que cada corda está totalmente estendida, porém não esticada. Podemos definir três distâncias: x1, x2 e x3, como medidas para baixo a partir de cada uma de suas posições não esticadas. Depois que eles são lançados, a gravidade atua e os saltadores chegam, por fim,
Capítulo 9. Eliminação de Gauss
Capítulo 9 Eliminação de Gauss
O objetivo principal deste capítulo é descrever o algoritmo da eliminação de Gauss para solução de equações algébricas lineares. Após esta leitura completa, você será capaz de:
Aprender como resolver conjuntos pequenos de equações lineares com o método gráfico e com a regra de Cramer.
Entender como implementar a eliminação progressiva e a substituição regressiva como na eliminação de Gauss.
Entender como contar os flops para avaliar a eficiência de um algoritmo.
Entender os conceitos de singularidade e mau condicionamento.
Entender como o pivotamento parcial é implementado e como difere do pivotamento completo.
Aprender como calcular o determinante como parte do algoritmo da eliminação de Gauss com pivotamento parcial.
Reconhecer como a estrutura de banda de um sistema tridiagonal pode ser explorada a fim de obter soluções extremamente eficientes.
Capítulo 10. Decomposição LU
Parte 3 Sistemas lineares
O objetivo principal deste capítulo é familiarizar o leitor com a decomposição LU.1 Após esta leitura completa, você será capaz de:
Entender que a decomposição LU envolve a decomposição da matriz de coeficientes em duas matrizes triangulares que podem ser usadas de forma eficiente para avaliar diferentes vetores do lado direito.
Aprender como expressar a eliminação de Gauss como uma decomposição LU.
Aprender como avaliar múltiplos vetores do lado direito, dada uma decomposição LU.
Reconhecer que o método de Cholesky fornece uma maneira eficiente para decompor uma matriz simétrica e que a matriz triangular resultante e a sua transposta podem ser usadas para avaliar vetores do lado direito de maneira eficiente.
Entender em linhas gerais o que acontece quando o operador barra invertida do MATLAB é usado para resolver sistemas lineares.
Como descrito no Capítulo 9, a eliminação de Gauss é projetada para resolver sistemas de equações algébricas lineares:
Capítulo 11. Matriz inversa e condicionamento
Matriz inversa e condicionamento
O objetivo principal deste capítulo é mostrar como calcular a matriz inversa e ilustrar como ela pode ser usada para analisar sistemas lineares complexos que ocorrem na engenharia e na ciência. Além disso, é descrito um método para avaliar a sensibilidade de uma solução matricial a erros de arredondamento. Após esta leitura completa, você será capaz de:
9 Aprender como determinar a matriz inversa de modo eficiente com base na decomposição LU.
9 Entender como a matriz inversa pode ser usada para avaliar as características estímulo-resposta de sistemas de engenharia.
9 Entender o significado de normas de matrizes e de vetores e como elas são calculadas.
9 Aprender como usar normas para calcular o número de condicionamento da matriz.
9 Entender como o valor do número de condicionamento pode ser usado para estimar a precisão das soluções de sistemas de equações algébricas lineares.
Capítulo 12. Métodos iterativos
O objetivo principal deste capítulo é familiarizar o leitor com os métodos iterativos para resolução de equações simultâneas. Após esta leitura completa, você será capaz de:
Entender a diferença entre os métodos de Gauss-Seidel e de Jacob.
Aprender como avaliar a dominância da diagonal e entender o que ela significa.
Reconhecer como o relaxamento pode ser usado para melhorar a convergência de métodos iterativos.
Entender como resolver sistemas de equações não lineares com os métodos da substituição sucessiva e de Newton-Raphson.
Os métodos iterativos ou de aproximação fornecem uma alternativa aos métodos de eliminação descritos até agora e são semelhantes às técnicas desenvolvidas para obter as raízes de uma única equação nos Capítulos 5 e 6. Aquelas abordagens consistiam em escolher um valor e então usar um método sistemático para obter uma estimativa refinada da raiz. Como esta parte do livro trata de um problema similar
Capítulo 13. Autovalores
Capítulo 13 Autovalores
O objetivo principal deste capítulo é introduzir os autovalores. Após esta leitura completa, você será capaz de:
Entender a definição matemática de autovalores e autovetores.
Entender a interpretação física de autovalores e autovetores no contexto de sistemas de engenharia que vibram ou oscilam.
Aprender como implementar o método polinomial.
Aprender como implementar o método da potência para avaliar o menor e maior autovalores e seus respectivos autovetores.
Aprender como usar e interpretar a função eig do MATLAB.
No início do Capítulo 8 utilizamos a segunda lei de Newton e balanços de força para prever as posições de equilíbrio de três saltadores de bungee jumping conectados por cordas. Admitido que as cordas se comportavam como molas ideais (isto é, seguiam a lei de Hooke), a solução em estado estacionário foi reduzida à solução de um sistema de equações algébricas lineares (lembre-se da Equação 8.1 e do Exemplo 8.2). Na mecânica, isso é chamado de problema de estática.
Capítulo 14. Regressão linear
Parte 4 Ajuste de curvas
O objetivo principal deste capítulo é introduzir como a regressão por mínimos quadrados pode ser usada para ajustar uma reta a dados de medição. Após esta leitura completa, você será capaz de:
9 Identificar algumas estatísticas descritivas básicas e a distribuição normal.
9 Aprender como calcular a inclinação e a interseção (com o eixo y) de uma reta de melhor ajuste aplicando a regressão linear.
9 Aprender como gerar números aleatórios com o MATLAB e como eles podem ser empregados para simulações de Monte Carlo.
9 Aprender como calcular e compreender o significado do coeficiente de determinação e do erro-padrão da estimativa.
9 Entender como utilizar transformações para linearizar equações não lineares de modo que elas possam ser ajustadas com regressão linear.
9 Aprender como implementar regressão linear com o MATLAB.
Capítulo 15. Mínimos quadrados: modelo linear geral e regressão não linear
Capítulo 15 Mínimos quadrados: modelo linear geral e regressão não linear
Mínimos quadrados: modelo linear geral e regressão não linear
Este capítulo retoma o conceito de ajuste de uma reta e o estende para (a) ajustar um polinômio e (b) ajustar uma variável que é uma função linear de duas ou mais variáveis independentes. Em seguida, mostra-se como tais aplicações podem ser generalizadas e aplicadas a um amplo grupo de problemas. Por fim, ilustra como técnicas de otimização podem ser usadas para implementar regressão não linear. Após esta leitura completa, você será capaz de:
9 Aprender como implementar regressão polinomial.
9 Aprender como implementar regressão linear múltipla.
9 Entender a formulação do modelo de mínimos quadrados linear geral.
9 Entender como o modelo de mínimos quadrados linear geral pode ser resolvido com o MATLAB utilizando as equações normais ou a divisão à esquerda.
9 Entender como implementar regressão não linear com técnicas de otimização.
Capítulo 16. Análise de Fourier
O objetivo principal deste capítulo é introduzir a análise de Fourier. O tema, que recebeu o nome de
Joseph Fourier, envolve a identificação de ciclos e padrões dentro de uma série temporal de dados.
Após esta leitura completa, você será capaz de:
9 Compreender as senoides e como elas podem ser usadas para ajuste de curvas.
9 Aprender como usar a regressão por mínimos quadrados para ajustar uma senoide aos dados.
9 Aprender como ajustar uma série de Fourier a uma função periódica.
9 Compreender a relação entre senoides e exponenciais complexas com base na fórmula de Euler.
9 Reconhecer os benefícios de analisar funções matemáticas e sinais no domínio da frequência (ou seja, como uma função da frequência).
9 Entender como a integral e a transformada de Fourier estendem a análise de Fourier para funções não periódicas.
9 Entender como a transformada de Fourier discreta (TFD) estende a análise de Fourier para sinais discretos.
Capítulo 17. Interpolação polinomial
O objetivo principal deste capítulo é apresentar a interpolação polinomial. Após esta leitura completa, você será capaz de:
9 Reconhecer que o cálculo dos coeficientes do polinômio com equações simultâneas é um problema mal condicionado.
9 Aprender como calcular os coeficientes do polinômio e interpolar com as funções nativas do
MATLAB polyfit e polyval.
9 Saber como efetuar uma interpolação utilizando polinômios de Newton.
9 Saber como efetuar uma interpolação utilizando polinômios de Lagrange.
9 Aprender como resolver um problema de interpolação inversa reformulando-o como um problema de raízes.
9 Avaliar os perigos da extrapolação.
9 Reconhecer que polinômios de grau mais alto podem manifestar grandes oscilações.
Se quisermos melhorar a predição de velocidade para o saltador de bungee jumping em queda livre, podemos expandir nosso modelo para ter em conta outros fatores além da massa e do coeficiente de arraste. Como mencionado na Seção 1.4, este último pode ser formulado como uma função de outros fatores, tais como a área do saltador e características como a densidade e viscosidade do ar.
Capítulo 18. Interpolação por splines e por Partes
Interpolação por splines e por partes
O objetivo principal deste capítulo é apresentar a interpolação por splines. Após esta leitura completa, você será capaz de:
9 Entender que os splines minimizam as oscilações ajustando, por partes, polinômios de ordem mais baixa aos dados.
9 Aprender como desenvolver um código para implementar uma tabela de consulta.
9 Reconhecer por que polinômios cúbicos são preferíveis aos quadráticos e splines de ordem mais alta.
9 Entender as condições que fundamentam um ajuste por spline cúbico.
9 Compreender as diferenças entre as condições de extremidade natural, amarrada e sem um nó.
9 Aprender como ajustar um spline aos dados com funções nativas do MATLAB.
9 Entender como uma interpolação multidimensional é implementada com o MATLAB.
18.1 INTRODUÇÃO AOS SPLINES
No Capítulo 17, polinômios de grau (n – 1) foram usados para interpolar entre n pontos dados. Por exemplo, para oito pontos, pode-se determinar exatamente um polinômio de grau sete. Essa curva capturaria todas as sinuosidades (pelo menos até a sétima derivada, inclusive) sugeridas por esses pontos. Entretanto, há casos em que essas funções podem levar a resultados errôneos devido a erros de arredondamento e oscilações. Uma abordagem alternativa é aplicar polinômios de grau mais baixo a subconjuntos de pontos dados, de uma maneira por partes. Esses polinômios conectores são chamados de funções splines.