Download Uso de Python como herramientas del cálculo en ingeniería
Document related concepts
no text concepts found
Transcript
GUÍA DOCENTE DE LA ASIGNATURA 1. DATOS IDENTIFICATIVOS DE LA ASIGNATURA Universidad: Título: Departamento: Nombre de la asignatura: Politécnica de Madrid Centro E.T.S. de Ingenieros Navales Uso de Python como herramienta de cálculo en ingeniería ARQUITECTURA, CONSTRUCCIÓN Y SISTEMAS OCEÁNICOS Y NAVALES (DACSON) Uso de Python como herramienta de cálculo en ingeniería Código Créditos: 3 Ciclo: Curso: 4º Duración: Tipo de asignatura Profesores responsables: Francisco Pérez Arribas (coordinador) Leo Miguel González Amadeo Morán Guerrero Lengua en que se imparte la asignatura: Castellano Tutorías: Horario: Curso académico: XX/ Viernes 10:30-12:30 Lugar: Centro de Cálculo 2015-2016 1 de 11 2. DESCRIPCIÓN GENERAL DE LA ASIGNATURA Y CONTEXTO EN EL QUE SE DESARROLLA. 2.1 Descripción general de la asignatura: Se introduce al alumno en el aprendizaje de las tecnologías de la información, mediante el uso del lenguaje de programación Python. La asignatura no se centra en los métodos de programación, sino más bien en que el alumno disponga de herramientas para la resolución de cálculos habituales en ingeniería. Para ello hace uso de módulos tales como: numpy, symPy, matplotlib, sciPy… 2.2 Contexto en el que se desarrolla la asignatura: Alumnos de últimos cursos de grado, que quieran completar su formación con un lenguaje de programación como Python. 2.3 Conocimientos recomendados para el aprendizaje de la asignatura: Informática; Algebra lineal y geometría; Cálculo I; Cálculo II; Calculo III; Física I; Física II. 3. COMPETENCIAS Y RESULTADOS DE APRENDIZAJE. 3.2. Competencias generales UPM: Competencia CG3. Que los estudiantes alcancen la capacidad de reunir e interpretar datos relevantes, (dentro del área de la arquitectura Naval e Ingeniería marítima) para emitir juicios que incluyan una reflexión sobre temas relevantes de índole social, científica o ética. CG4. Que los estudiantes puedan transmitir información, ideas, problemas y soluciones a un público tanto especializado como no especializado. CG5. Que los estudiantes hayan desarrollado aquellas Nivel de competencia que se alcanzará 2 2 2 2 de 11 habilidades de aprendizaje necesarias para emprender estudios posteriores con un alto grado de autonomía 3.2. Competencias transversales UPM: Competencia CT4. Uso de las TIC CT5. Creatividad 3.3. Competencias específicas: Competencia CE1. Capacidad para la resolución de los problemas matemáticos que puedan plantearse en la ingeniería. Aptitud para aplicar los conocimientos sobre: álgebra lineal; geometría ; geometría diferencial; cálculo diferencial e integral; ecuaciones diferenciales y en derivadas parciales; métodos numéricos; algorítmica numérica; estadística y optimización CE4. Conocimientos básicos sobre el uso y programación de los ordenadores, sistemas operativos, bases de datos y programas informáticos con aplicación en la ingeniería Nivel de competencia que se alcanzará 3 3 Nivel de competencia que se alcanzará 3 3 3.4. Objetivos del Grado en la asignatura: OBJ1. Que los estudiantes alcancen la capacidad necesaria para realizar los cálculos que se propongan durante su formación curricular de grado y master. OBJ2. Que los estudiantes sepan resolver los problemas que se le puedan plantear por medio de métodos existentes en Python OBJ3. Que los estudiantes aprendan un lenguaje de programación muy utilizado en el ámbito laboral. OBJ4. Que los estudiantes mejoren su capacidad para comunicar un determinado tema técnico. OBJ5. Que los estudiantes tengan una actitud autodidacta y autocrítica. 3.5. Resultados de aprendizaje: RA1. Conocer las herramientas disponibles en el centro para realizar los trabajos que se realizarán en la asignatura. RA2. Desarrollar aplicaciones que impliquen entrada y salida de datos estándar así como manejo de archivos de datos. 3 de 11 RA3. Conocer de modo básico la estructura y funcionamiento del lenguaje de programación Python. RA4. Conocer los módulos de Python que sean útiles en la ingeniería. RA5. Especificar de manera detallada un determinado problema de tal manera que se pueda diseñar a partir de esa especificación un algoritmo que permita resolver ese problema. 3.6. Indicadores de logro: INDICADOR IL1. IL2. IL3. IL4. IL5. RESULTADOS DE APRENDIZAJE RA1 RA2 RA3 RA4 RA5 4 de 11 4. CONTENIDOS CURRICULARES. 4.1. Contenidos específicos (Temario) TEMA / CAPÍTULO LECCIÓN 1. Herramientas disponibles. APARTADO Enseñar a los estudiantes los medios que tienen para acceder a Python. Importar bibliotecas, tipos de variables numéricas, operadores básicos. 3. Diferencias Plantear unos ejemplos en los que los entre Python y estudiantes observen las diferencias Matlab con Matlab. Tema 1. Introducción a Python 4. Definiciones y operaciones Trigonometría trigonométricas básicas. Definiciones y operaciones con 5.Logaritmos logaritmos Definir array, matrix y lista. Conocer 6. Vectores y la diferencia entre todos ellos. Matrices Operaciones básicas. 7. Sistemas de Resolución de sistemas de ecuaciones ecuaciones lineales con Python. lineales Cálculo de derivadas con el módulo 1. Derivación Sympy Cálculo de integrales con el módulo 2. Integración Sympy. Tema 2. Sympy 3. Cálculo de Cálculo de límites con el módulo límites Sympy. Realizar gráficas con el módulo 4. Gráficas 2-D Sympy 1. Gráficas 2-D Realizar gráficas 2-D con matplotlib. 2. Estructura de Python INDICADORES RA1 IL1 IL3 y IL2 IL1 IL1 IL1 IL1 IL1 RA4 IL4 IL4 IL4 RA4 2. Gráficas 3-D Realizar gráficas 3-D con matplotlib. IL4 Usar complementos de matplotlib, 3. como leyendas, ejes, limitar la zona Complementos de visualización IL4 SCRIPT 1 Desarrollo de un SCRIPT detallado planteado por el profesor. RA5 SCRIPT 2 Desarrollo de un SCRIPT detallado planteado por el alumno. RA5 Tema 3. Matplotlib NOTAS RA - RESULTADOS DE APRENDIZAJE 5 de 11 5. METODOLOGÍA DE ENSEÑANZA-APRENDIZAJE 5.1. Metodología Docente: Clases teorico-prácticas impartidas en el centro de cálculo de la ETSI Navales. Aprendizaje on-line a través de los videos didácticos de la asignatura. 5.2. Actividades de aprendizaje y volumen de trabajo ACTIVIDADES DE TRABAJO PRESENCIAL: 8 HORAS ACTIVIDAD DESCRIPCIÓN HORAS CLASE PRESENCIAL Se impartirán 4 horas de clase, para que el alumno entre en contacto con Python. Además de explicar el método de evaluación 4 CLASES ONLINE -La práctica totalidad del curso se realizará mediante la visualización de unos videos tutoriales realizados por el profesor. 4 EVALUACIÓN POR CURSO El método de evaluación será la entrega de un Script y un Vídeo tutorial de un trabajo original. ACTIVIDADES DE TRABAJO AUTÓNOMO: 22 HORAS ACTIVIDADES SCRIPT SCRIPT 2 DESCRIPCIÓN El alumno desarrollara un notebook dentro de Python en el que resolverá algún ejercicio original propuesto por el alumno y validado por el profesor. El alumno desarrollara un notebook dentro de Python en el que resolverá algún ejercicio propuesto por el profesor. HORAS 12 10 6 de 11 5.3. Cronograma de la asignatura Semana 1 2 Tema Presentación de la asignatura. Duración 00:30 Tema 1: Introducción a Python Duración 1:30 Tema 2: Módulo sympy Duración 1:00 Tema 3: Matplotlib Duración 1:00 ET EP Horas 2 1 3 2 3 5 7 Entrega del Script 1 0 8 8 14 Entrega del Script 2 0 8 8 7 de 11 4. Calendario de docencia Materia Semana Clases Horas Tipo TEMA 1 1 1 2 P TEMA 2 y 3 2 1 2 P Tema Presentación de la asignatura. Duración 00:30 Tema 1: Introducción a Python Duración 1:30 Tema 2: Módulo sympy Duración 1:00 Tema 3: Matplotlib Duración 1:00 ET EP Horas 2 1 3 2 3 5 8 de 11 5.5. Carga semanal del alumno La asignatura “Python en ingeniería” es una asignatura de 3 créditos ECTS, luego el número total de horas de trabajo del alumno asciende a 30 horas, distribuidas en 4 horas de trabajo presencial y 26 horas de trabajo autónomo fuera del aula, a lo largo de 15/16 semanas de curso. Semana Trabajo Presencial Trabajo Autónomo Trabajo Total 1 2 1 3 2 2 3 5 3 0 2 2 4 0 2 2 5 0 2 2 6 0 2 2 7 0 2 2 8 0 2 2 9 0 2 2 10 0 2 2 11 0 2 2 12 0 2 2 13 0 1 1 14 0 1 1 15 0 0 0 16 0 0 0 TOTAL 4 26 30 9 de 11 6. SISTEMA DE EVALUACIÓN Y DE CALIFICACIÓN 6.1. Criterios de evaluación y calificación 1) Evaluación por curso de la asignatura. Se realizarán dos SCRIPTS (Uno propuesto por el profesor y otro por el alumno) y entre los 2 sumaran el 100% de la nota. Cada uno de estos ejercicios valdrá un 50% de la nota. 2) Convocatoria ordinaria: Se realizarán dos SCRIPTS (Uno propuesto por el profesor y otro por el alumno) y entre los 2 sumaran el 100% de la nota. 3) Convocatoria extraordinaria: Se realizarán dos SCRIPTS (Uno propuesto por el profesor y otro por el alumno) y entre los 2 sumaran el 100% de la nota. 7. RECURSOS DE ENSEÑANZA Y APRENDIZAJE 7.1. Bibliografía: Guzdial, M. (2010) “Why is it so hard to learn to program?”. Editors, In Andy Oram and Greg Wilson. Mannilla, L. et al. (2006) “What about a simple language? Analyzing the difficulties in learning to program, “ Computer Science Education, vol. 16(3): 211-227 Jeff Elkner and Chris Meyers (2002) “How to think like a computer scientist. Learning with Python,” Allen Downey, Green Tea press // Free book. Mark Lutz “Learning Python: Powerful Object-Oriented Programming”: 5th Edition 7.2. Recursos y otros materiales de apoyo 10 de 11 Plataforma Moodle de la UPM: https://moodle.upm.es/titulaciones/oficiales/login/login.php http://canal.etsin.upm.es/iepython/ https://www.enthought.com/ http://lorenabarba.com/blog/announcing-aeropython/ http://lorenabarba.com/figshare/aeropython/ 11 de 11