Documente Academic
Documente Profesional
Documente Cultură
2018
1 Objetivos
2 Programa Resumido
3 Bibliografia
4 Apoio extra-classe
5 Organização do curso
6 Calendário
7 Projeto de software
1 Objetivos
2 Programa Resumido
3 Bibliografia
4 Apoio extra-classe
5 Organização do curso
6 Calendário
7 Projeto de software
A disciplina pretende:
Fornecer ao aluno uma introdução à computação científica moderna, usando um dos códigos mais
amigáveis e difundidos nos meios industrial e acadêmico: a linguagem Python e, principalmente, suas
bibliotecas numéricas e gráficas mais populares: numpy, scipy, matplotlib e tkinter. 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 “number crunching” de grandes conjuntos de
dados e criar correlações entre variáveis, usando métodos numéricos como ajuste de mínimos
quadrados multivariável, desenvolvimento de modelos dinâmicos e simulação numérica de
problemas em forma diferencial.
1 Objetivos
2 Programa Resumido
3 Bibliografia
4 Apoio extra-classe
5 Organização do curso
6 Calendário
7 Projeto de software
Métodos numéricos:
1. Zeros de funções
2. Interpolação
3. Integração
4. Sistemas de equações lineares
5. Ajuste por mínimos quadrados
6. Sistemas de equações diferenciais
Implementação
1. códigos “caseiros”
2. usando as bibliotecas numpy e scipy, entre outras
1 Objetivos
2 Programa Resumido
3 Bibliografia
4 Apoio extra-classe
5 Organização do curso
6 Calendário
7 Projeto de software
1. Hans Petter Langtangen. A Primer on Scientific Programming with Python, 2nd ed, 2011.
2. Hans Petter Langtangen. Python Scripting for Computational Science, 2008.
3. Matt Telles. Python Power, 2008.
4. Mark Lutz. Programming Python, 3rd ed, 2006.
5. Jos Thijssen. Computational Physics, 2008.
6. Philipp O.J. Scherer. Computational Physics, 2013.
7. NumPy community, Numpy Reference, 2014.
8. Scipy community, Scipy Reference Guide, 2017.
9. John Hunter, Darren Dale, Eric Firing, Michael Droettboom, Matplotlib Manual, 2016.
www.numpy.org
www.scipy.org
www.python.org www.matplotlib.org
Tutoriais
Numpy:
I http://www.labri.fr/perso/nrougier/teaching/numpy/numpy.html
Matplotlib:
I http://www.labri.fr/perso/nrougier/teaching/matplotlib
Matplotlib animation:
I https://jakevdp.github.io/blog/2012/08/18/matplotlib-animation-tutorial
1 Objetivos
2 Programa Resumido
3 Bibliografia
4 Apoio extra-classe
5 Organização do curso
6 Calendário
7 Projeto de software
Moodle da USP
https://edisciplinas.usp.br/course/view.php?id=63809
1 Objetivos
2 Programa Resumido
3 Bibliografia
4 Apoio extra-classe
5 Organização do curso
6 Calendário
7 Projeto de software
Critério de avaliação
A nota final (N f ) na disciplina será composta da média de Listas de exercícios (L) e um Projeto
em equipe (P):
N f = 0.25L + 0.75P
A nota do projeto (P) tem duas partes:
P = 0.8Pe + 0.2Pi
sendo
I Pe : nota da equipe, atribuída pelo professor
I Pi : nota individual, atribuída pelos membros da equipe
F não podem ser todas iguais e max Pi = Pe
F diferença mínima de 0.15 ponto entre quaisquer duas notas
Obs.: Nesse curso, por razões práticas, usaremos o ponto (.) como separador decimal, ao invés da vírgula (,). Mas isso não é correto
em outros contextos!
LOM3260 (EEL-USP, 2018) Computação em Python — Info Prof. Luiz T. F. Eleno 14 / 20
Plano de aula
1 Objetivos
2 Programa Resumido
3 Bibliografia
4 Apoio extra-classe
5 Organização do curso
6 Calendário
7 Projeto de software
1 Objetivos
2 Programa Resumido
3 Bibliografia
4 Apoio extra-classe
5 Organização do curso
6 Calendário
7 Projeto de software
Notebooks
GUI (Graphi-
cal User Wrappers
Interface)
Entrada de
Código
dados (input)
Arquivos Funções
de confi-
guração
Objetivo:
a criação
do software
Algoritmos
começa aqui!
Projeto de
software
Licença
Alvo: usuário
Arquivos
de saída
Manual
Saída de
Documentação
dados (output)
Comentários
no código Gráficos
Terminal
Tutorial (linha de
comando)
Inline help Mensagens
https://github.com/luizeleno/LOM3260
LOM3260 (EEL-USP, 2018) Computação em Python — Info Prof. Luiz T. F. Eleno 19 / 20
Algumas ideias. . .
Algumas ideias devem servir apenas de inspiração para criar o próprio projeto: