PROGRAMA DE ENSINO UNIDADE UNIVERSITÁRIA: UNESP – CÂMPUS DE ILHA SOLTEIRA CURSO: Engenharia (Resolução UNESP nº 74/2004 - Currículo: 4) HABILITAÇÃO: OPÇÃO: DEPARTAMENTO RESPONSÁVEL: Engenharia Mecânica CÓDIGO MEC095 6 DISCIPLINA OU ESTÁGIO SERIAÇÃO IDEAL/PERÍODO T.E.C.T.: Computação Científica Com Python 4º/ 7º OBRIGATORIA/ OPTATIVA/ ESTAGIO PRÉ-REQUISITO 919 - Cálculo Numérico Computacional Optativa CRÉDITOS CO-REQUISITO CARGA HORÁRIA ( ) SEMESTRAL 1º SEM. ( X ) 2º SEM. ( X ) DISTRIBUIÇÃO DA CARGA HORÁRIA TOTAL 04 ANUAL 60 TEÓRICA PRÁTICA 15 45 TEÓRICOPRÁTICA OUTRAS NÚMERO MÁXIMO DE ALUNOS POR TURMA AULAS TEÓRICAS AULAS PRÁTICAS 40 40 AULAS TEÓRICOPRÁTICAS OUTRAS OBJETIVOS: (ao término da disciplina o aluno deverá ser capaz de) Aplicar a Linguagem de Programação Python na obtenção, manipulação e visualização de dados, bem como na simulação de sistemas e processos decorrentes da pesquisa científica. CÓDIGO E DISCIPLINA: MEC0956 T.E.C.T.: Computação Científica Com Python CURSO: Engenharia Mecânica (Resolução UNESP nº 74/04 - Currículo: 4) CONTEÚDO PROGRAMÁTICO: (Título e descriminação das Unidades) Introdução: O que é Python; Objetivos da linguagem; Aplicações; Origem; Características; Diferenças básicas entre programação Orientada a Objetos e procedural, Interpretação e Comparações, Compilação; Comparações com outras linguagens; Noções de Desenvolvimento Rápido, usando Python em Linux e Windows. Programação Procedural: Tipos de objetos: strings, tuplas, listas, dicionários, floats, inteiros; Formatando objetos: formatando strings, recursos de manipulação de listas; Testes, loops, varreduras e erros: while, raw_input, if, for, break, tratamento de erros; Programas completos; Funções e módulos; Teoria de escopo; Manipulação de arquivos; Interações com o Sistema Operacional; Resolvendo problemas típicos de engenharia; Exemplos e Exercícios. Orientação a Objetos: Vantagens da Orientação a Objetos; Classes; Atributos; Métodos; Instâncias; Metaclasses; Herança; Superclasses, Métodos especiais, Aplicações; Resolvendo problemas típicos de engenharia; Exemplos e Exercícios. Introdução a Tkinter: Relações gráficas com o usuário; Módulo Tk; Janela Toplevel; Widgets; Interações entre widgets; Frames; Botões, Entradas de dados; Botões de opções; Barras de rolagem; Menu; Canvas; Criação de widgets próprios; Widgets lógicos; Animações; Aplicações; Resolvendo problemas típicos de engenharia; Exemplos e Exercícios. Introdução a wxPython: Relações gráficas com o usuário; Módulo wx; Janela Toplevel; Widgets; Interações entre widgets; Frames; Botões, Entradas de dados; Botões de opções; Barras de rolagem; Menu; Canvas; Criação de widgets próprios; Animações; Aplicações; Resolvendo problemas típicos de engenharia; Exemplos e Exercícios. Python Científico: Introdução a scipy: packages Numeric e Numarray: Álgebra Linear; Integração e DerivaçãoNuméricas; Equações Diferenciais Ordinárias; Progressões e Regressões; Estatística; Integração intermodular; Adaptações; Integração scipy – Tkinter; Visualização de dados científicos usando MayaVi; Gráficos 2D utilizando matplotlib; Modelamento 3D utilizando Blender; Simulação 3D com Vpython. Elementos Finitos usando Ellipt2D. 2 CÓDIGO E DISCIPLINA: MEC0956 T.E.C.T.: Computação Científica Com Python CURSO: Engenharia Mecânica (Resolução UNESP nº 74/04 - Currículo: 4) METODOLOGIA DE ENSINO: O curso será ministrado por meio de aulas expositivas e seminários utilizando o quadro negro e/ou retroprojetor, projetor de multimídia e principalmente do computador, que, devido ao caráter da disciplina, tem ser necessariamente um por aluno. PODERÁ SER INCLUÍDO ESTÁGIO DE DOCÊNCIA. BIBLIOGRAFIA BÁSICA E COMPLEMENTAR: (de tal forma que as primeiras sejam concisas e dêem conta do conteúdo programático das disciplinas) Embora exista um grande número de publicações disponíveis livremente através da Internet, infelizmente estão em Inglês. Assim, será adotado como base da disciplina o texto produzido por um aluno do Curso de Engenharia Mecânica, intitulado “Introdução a Python”, em 3 módulos, que estarão sendo disponibilizados a partir de 2005, através da página do Grupo Python da Unesp-Ilha Solteira. As referências são, então: BÁSICA: LABAKI, J. Bem-vindo a Python, publicação interna, UNESP-Ila Solteira, 2004 LABAKI, J. Python Orientado a Objetos, publicação interna, UNESP-Ilha Solteira, 2005 LABAKI, J. Tkinter, publicação interna, UNESP-Ilha Solteira, 2005 MARTELLI, A. Python in a Nutshell, second edition, O’Reilly, 2002 COMPLEMENTAR: VAN ROSSUM, G. Python Tutorial, www.python.org, 2004 Todas as publicações, do programador noviço ao mais avançado, disponíveis através do site www.python.org . Além disso, todos os manuais dos aplicativos que serão utilizados. CRITÉRIOS DE AVALIAÇÃO DA APRENDIZAGEM: 3 CÓDIGO E DISCIPLINA: MEC0956 T.E.C.T.: Computação Científica Com Python CURSO: Engenharia Mecânica (Resolução UNESP nº 74/04 - Currículo: 4) A avaliação do rendimento escolar será feita através das seguintes modalidades: a) provas em classe; b) trabalhos, projetos, seminários e ou atividades de laboratório. A média final (MF) será obtida pela relação: MF = ( MP + 4MT) / 5 onde: MP = Média das provas e avaliações realizadas; MT = Média de trabalhos, projetos e/ou seminários realizados. Critério para aprovação: MF ≥ 5,0 Haverá período de recuperação (aplicação de uma prova final) EMENTA: (Tópicos que caracterizam as unidades do programa de ensino) Introdução a Python. Programação Procedural. Orientação a Objetos. Introdução a Tkinter. Introdução a wxPython. Python Científico. APROVAÇÃO: CONSELHO DE DEPARTAMENTO CONSELHO DE CURSO Aprovado em reunião de 21/03/2013. Prof. Dr. André Luiz Seixlack Chefe do Depto de Engenharia Mecânica 4 CONGREGAÇÃO