Fornecer ao aluno uma introdução à computação científica moderna, usando a linguagem Python e suas bibliotecas numéricas e gráficas mais populares: numpy, scipy, matplotlib e pandas. Ao final do curso, o aluno estará capacitado a desenvolver programas complexos, de pequeno e médio porte para solucionar problemas de engenharia que envolvam processamento numérico de grandes conjuntos de dados e correlacionar variáveis usando métodos numéricos.
Introdução à programação em Python; palavras-chave em Python; rotinas e funções; classes; numpy e o conceito de slicing e indexing de arrays; revisão de métodos numéricos usando scipy; geração de gráficos e animações com a biblioteca matplotlib; criação de interfaces gráficas com o usuário usando matplotlib.widgets
• Introdução à programação em Python • Instalação de uma distribuição Python em Windows e Linux • Formatação de arquivos em Python • Estruturas condicionais • Laços de repetição de comandos • Outras palavras-chaves e métodos • Rotinas e funções • Códigos multifonte e bibliotecas pessoais • Bibliotecas numéricas e gráficas: numpy, scipy e matplotlib • Programação orientada a objeto: classes • Conceito de objetos e instâncias • Classes e subclasses• “Arrays” em numpy • O conceito de array em numpy • “Slicing” e indexação • Trabalhando com arquivos (entrada e saída) • Gráficos em matplotlib • A biblioteca matplotlib.pyplot e gráficos em 2D e 3D • A biblioteca matplotlib.animation para criar gráficos animados. • Interfaces gráficas com o usuário (Graphical User Interface, GUI) • Interfaces simples com a biblioteca matplotlib.widgets.
Lambert, K. A. Fundamentos de Python: estruturas de dados. Cengage, 2ed, 2022. Nilo Ney Coutinho Menezes. Introdução à Programação com Python: Algoritmos e Lógica de Programação Para Iniciantes, 3a ed, 2019. Ramalho, L. Python Fluente. O’Reilly-Novatec, 2015 Downey, A. B. Pense em Python. O’Reilly-Novatec, 2016. STEWART, J. M. Python for scientists. Cambridge University Press, 2014. TELLES, M. Python Power, Boston: Thomson Course Technology PTR, 2008. LUTZ, Mark. Programming Python, 3a ed, Sebastopol, CA: O’Reilly Media, 2006. MCGREGGOR, D. M. Mastering matplotlib. Birmingham, UK: Packt Publishing, 2015.